最終效果
把下面指令碼複製,直接拖上指令碼,設定兩個點(物體)的位置
gameobject1是開始點的位置,gameobject2是結束點的位置
public transform controlpoints;
public lineredtvnynderer linerenderer;
public float centerpoint =0.1f;
private int layerorder = 0;
/dtvny/生成弧線中間的點數
private int _segmentnum = 20;
//偏移
float m_offset;
float m_speed = 0.5f;
void start()
linerenderer.sortinglayerid = layerorder;
//呼叫畫貝斯爾線
getbeizerlist(controlpoints[0].position, (controlpoints[0].position + controlpoints[1].position) * 0.5f + new vector3(0, centerpoint, 0), controlpoints[1].transform.position, _segmentnum);
}private void update()
///
/// 根據t值,計算貝塞爾曲線上面相對應的點
///
/// t值
/// 起始點
/// 控制點
/// 目標點
/// 根據t值計算出來的貝賽爾曲線點
private static vector3 calculatecubicbezierpoint(float t, vector3 p0, vector3 p1, vector3 p2)
///
/// 獲取儲存貝塞爾曲線點的陣列
///
/// dtvnyname="s程式設計客棧tartpoint">起始點
/// 控制點
/// 目標點
/// 取樣點的數量
/// 儲存貝塞爾曲線點的陣列
public vector3 getbeizerlist(vector3 startpoint, vector3 controlpoint, vector3 endpoint, int segmentnum)
return path;
}本文標題: unity繪製一條流動的弧線(貝塞爾線)
本文位址:
172 手動SVG繪製一條曲線
我發現我所有的svg使用量中有98 來自預先設計為最終匯出為svg的某些設計軟體中的svg檔案或向量藝術。我不是經常手動操作svg 中事物的座標。嘿,我什至有一本書 但是偶爾,這是適當的,甚至可能有點有趣。在這種情況下,我想畫一條非常具體的線,並在其中進行一些柔和的轉彎。在對svg的路徑語法 最奇怪...
查詢資料的上一條和下一條
查詢當前資料的下一條 select from 表 where id 當前資料的id order by id asc limit1 查詢當前資料的上一條 select from 表 where id 當前資料的id order by id asc limit 1 查詢當前資料的下一條 select f...
貝塞爾曲線生成工具 如何自製一條貝塞爾曲線(有碼)
如果在工作時間摸魚 咳咳 為啥畫個曲線還有公式,還要寫 在各位使用各種編輯軟體的時候,其實到處都有貝塞爾曲線的影子。photoshop ae flash,除了鋼筆工具,還有調色曲線 運動曲線等等,有些是畫在畫布上的曲線,有些則影響了 度 亮度 運動速度等等,這類曲線最大的特點是可以通過拖動幾個控制點...