0
我有一個貝塞爾曲線在Javascript中用一些貝塞爾曲線構建。 我可以移動手柄並保持對稱。我首先計算 Handle和Point onBeziér之間的距離。然後我比較兩個手柄的距離 ,計算一個乘數並將其應用於未拖動的 句柄。這適用於保持對稱性。貝塞爾手柄保持半徑和對稱性,但不是長度
但我想實現的是,未拖動的句柄的長度保持不變。
http://cl.ly/image/0c1z00131m2y(解釋我的意思的小圖片)。
的代碼,我目前使用計算運動是這樣的:
dx = Math.abs(drag.x - point.p[(draggedItemIndex)/2].x);
dy = Math.abs(drag.y - point.p[(draggedItemIndex)/2].y);
dx2 = Math.abs(point.cp[draggedItemIndex-1].x - point.p[draggedItemIndex/2].x);
dy2 = Math.abs(point.cp[draggedItemIndex-1].y - point.p[draggedItemIndex/2].y);
dxdx = dx2/dx;
dydy = dy2/dy;
point.cp[draggedItemIndex-1].x -= dragX*dxdx;
point.cp[draggedItemIndex-1].y -= dragY*dydy;
謝謝您的回答。