android 拋物線動畫

2021-07-10 03:38:40 字數 2566 閱讀 9776

拋物線動畫:根據拋物線方程式得出x軸,y軸的座標(x,y),再根據動畫使其移動,就完成乙個簡單的軌跡動畫.實現思路:自定義個view,隨著x軸的水平移動根據拋物線方程得到y軸的值,利用path畫出一條軌跡;在高出這條拋物線小人的高度再畫一天拋物線,這條拋物線就是小人的運動軌跡。直接上**。。。

自定義view:

public class myanimationview extends linearlayout

public myanimationview(context context, attributeset attrs)

public myanimationview(context context)

int left;

int top;

int right;

int bottom;

int height;

private float rsweepanglea = 0;

public powerimageview iv;

private path path;

private layoutparams p;

private path pp;

private paint paints;

private animationdrawable animationdrawable;

@override

protected void onlayout(boolean changed, int left, int top, int right,

int bottom) ;

for (int x = p.height; x <= (right - p.height); x += 1) else

}iv.setimageresource(r.drawable.animation_list);

//animationdrawable = (animationdrawable) iv.getdrawable();

height = p.height;

float y = line(p.height, height - height / 4) + right/4 + p.height;

pp.moveto(height - height / 4, y);

}public void init(context context)

canvas canvas;

@override

protected void ondraw(canvas canvas)

super.ondraw(canvas);

}public void update(float rsweepanglea)

public void suan(float x)

/*** 開啟動畫

* @param view

* @param x

* @param y

*/public void startanimation(imageview view, float x, float y)

/***拋物線方程

* @param height

* @param x

* @return

*/public float urveequation(float height, float x)

public float gety(float x)

public float line(float height, float x)

/*** 畫虛線

* @param x

* @param y

*/public void ligthline(float x, float y)

@override

protected void onmeasure(int widthmeasurespec, int heightmeasurespec)

}activity的**

public class myanimationactivity extends activity

try catch (exception e)

anglea+=4;

message msg = new message();

msg.obj=anglea;

handler.sendmessage(msg);}};

}.start();

myview.iv.start();

}handler handler = new handler();

};public void onwindowfocuschanged(boolean hasfocus) ;

public  int getscreenwidth(activity context )

}xml**

<?xml version="1.0" encoding="utf-8"?>

動畫是用的nineoldandroids-2.4.0.jar這個框架

cad拋物線曲線lisp CAD能畫拋物線嗎?

方法一 1.在excel生成座標x,y列 x為分段值控制曲線精度,y為公式計算的對應值 2.假定excel中x數值在a列,y數值在b列,生成acad的pline繪圖資料,方法如下 1 在新的列單元 如c列 輸入公式 an bn n為資料的行號 按次辦法將an及bn單元格中的資料在cn單元格中形成 x...

拋物線交點式公式 拋物線公式大全

拋物線方程是指拋物線的軌跡方程,是一種用方程來表示拋物線的方法。在幾何平面上可以根據拋物線的方程畫出拋物線。拋物線在合適的座標變換下,也可看成二次函式影象。拋物線方程公式 一般式 ax2 bx c a b c為常數,a 0 頂點式 y a x h 2 k a h k為常數,a 0 交點式 兩根式 y...

拋物線的精靈

拋物線 msprite 需要做拋物線的精靈 startpoint 起始位置 endpoint 中止位置 dirtime 起始位置到中止位置的所需時間 void movewithparabola ccsprite msprite startp cgpoint startpoint endp cgpoi...