Bu sayısal olarak çözülebilir. 4 kontrol noktasına sahip bir kübik bezerin olduğunu kabul ediyorum. Her adımda , ilk (P0) ve son (P3) noktalara sahip olursunuz ve toplam uzunluk sabit olacak şekilde P1 ve P2'yi hesaplamak istersiniz. Biz 1 sol zorunda Bu kısıtlamayı ekleme
(4 ile başlayan bitiş noktaları (2) ve sabit bir uzunluğa belirlenen başka -1) belli bir serbestlik derecesine kaldırır. Bu yüzden buna karar vermelisin.
Bezier eğrisi, 0 ile 1 arasında tanımlanan bir polinomdur, öğelerin toplamının kareköküne (2d?) Entegre etmeniz gerekir. kübik bir bezier için, bu, wolfram'ın nasıl çözüleceğini bilmediği 6 derecelik bir polinomun sqrt'u anlamına gelir. tüm diğer kontrol noktaları bilinen (veya başka bir kısıt bir bağımlılık kadar bilinir) varsa Ama bu sınırlama için önceden hesaplanmış değerlerin bir tasarruf tablo olabilir.
o satırı tamamen aynı uzunlukta veya sadece sıfıra alır başlangıç ve bitiş noktası yakın olduğumuzda kritik mı:
İşte alakalı JavaScript kodu? – idanzalz
Bezierin derecesi (kaç puan?) Küp şeklindedir? (4 puan - başlangıç, bitiş ve ortadaki 2) – idanzalz
Bir çabuk ve kirli çözüm, bir optimizasyon problemi olarak formüle etmektir: Eğriyi bir düz çizgi parçası dizisine bölün ve bunların toplam uzunluğu arasındaki farkı en aza indirin çizgi parçaları ve istenen sabit uzunluk, wrt serbest kontrol noktaları. Bunun için degrade alçalma http://en.wikipedia.org/wiki/Gradient_descent gibi algoritmalar kullanabilirsiniz. Ama analitik bir çözüm daha güzel olurdu. – Rulle