unity+android學習筆記--未完成的工作

來源:互聯網
上載者:User

var old:float; 
var news:float; 
var h:float; 
var d:float; 
var v:float; 
var a:float; 
function Start(){ 
  h=0; 
  d=0; 
  old=Input.acceleration.z; 
  news=0; 
  v=0; 
} 
function FixedUpdate(){ 
 news=Input.acceleration.z;   
    a=news*9.81; 
    if(a>-10.2&&a<-9.7){            
      if(v>0.01&&v<-0.01){ 
        h+=v; 
      }            
    } 
    else if(a<=-10.2){ 
       h+=(0.5*Mathf.Abs(a)+v); 
       v=a+v;  
    } else{ 
       h+=(0.5*a+v); 
       v=a+v;  
    } 
    old=news;  
} 
     
function Update () {       
 
   if(Input.GetKey(KeyCode.Escape)){ 
      Application.Quit(); 
   }   
      
} 
function OnGUI(){  
    
    GUI.Label(Rect(100,210,100,100),"a:"+a); 
    GUI.Label(Rect(100,320,100,100),"h:"+h); 
    print(news); 
} 




ChiziActivity.java:
[java]
package nate.dlnu; 
 
 
import android.app.Activity; 
import android.content.Context; 
import android.graphics.Canvas; 
import android.graphics.Color; 
import android.graphics.Paint; 
import android.graphics.Rect; 
import android.os.Bundle; 
import android.util.DisplayMetrics; 
import android.view.View; 
import android.widget.TextView; 
 
public class ChiziActivity extends Activity { 
    /** Called when the activity is first created. */ 
     
    private CanvasView canvasView; 
    public void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        DisplayMetrics metric = new DisplayMetrics(); 
        getWindowManager().getDefaultDisplay().getMetrics(metric);  
//      float sw=metric.widthPixels;//擷取手機解析度 
//      float sh=metric.heightPixels; 
        float densityDpi = metric.densityDpi;//160,240,320 
        float density = metric.density; //1,1.5,2; 
        System.out.println(density+"/"+densityDpi); 
        canvasView=new CanvasView(this,densityDpi);  
        setContentView(canvasView);  
    } 
} 
class CanvasView extends View {  
       public float d; 
       public int i; 
       public CanvasView(Context context,float d1) { 
            super(context); 
            setFocusable(true); 
            setFocusableInTouchMode(true); 
            d=d1; 
        } 
      public void onDraw(Canvas canvas) { 
            Paint paint = new Paint(); 
            // 設定顏色 
            paint.setColor(Color.WHITE); 
            // 設定樣式-填充 
            //paint.setStyle(Style.FILL); 
            canvas.drawRect(new Rect(0, 0, 5000, 5000), paint); 
            // 設定顏色 
            paint.setColor(Color.BLUE); 
            // 繪文字 
            float dy=0.04f*d; 
            for(i=1;i<=30;i++){ 
                canvas.drawText(i+"", 70, i*dy*10, paint); 
                canvas.drawLine(0, i*dy*10, 70, i*dy*10, paint); 
                canvas.drawLine(0, i*dy*5, 50, i*dy*5, paint); 
            } 
            for(i=0;i<300;i++){ 
                canvas.drawLine(0, i*dy, 30, i*dy, paint); 
            } 
       } 
} 

 

 

摘自 dlnuchunge的專欄

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.