Bu, @ bummzack'in cevabına yapılan yorum hakkında yorum olarak başladı, ancak çok uzun büyüdü.
kaç segmente sahip olmam gerektiğini nasıl belirleyebilirim
İki yaklaşım vardır. Birincisi sadece bir Bézier eğrisi oluşturmak için standart algoritmadır: kontrol noktaları eğrinin sınırlayıcı bir kutusunu oluşturur, bu nedenle kontrol noktalarının tümü başlangıç noktasından bitiş noktasına kadar çizgi segmentinin epsilonundaysa, bir çizgi olarak yaklaşık olarak; aksi takdirde de Casteljau algoritmasını kullanarak alt bölümlere ayırırsınız. Epsilon, nihai sonuçta istediğiniz hataya göre seçilir. (Oluşturmak için genellikle 0,5 pikseldir).
Diğer yaklaşım aralık aritmetiği kullanılarak yapılanı geliştirmektir. Çizginin uzunluğunu alt sınır olarak baştan sona ve kontrol noktalarından üst sınır olarak çizgilerin uzunluklarının toplamını alın. Yine, son hata gereksinimlerinizin gerektirdiği şekilde alt bölümlere ayırın.
Bir tanesi normalde t = 0.5'e bölünür, ancak de Casteljau'nun algoritması herhangi bir noktada bölünmeye izin verir, bu nedenle kontrol noktaları C_0 ila C_3 ve C_2 olan bir kübik Bézier'iniz varsa, bitiş noktaları arasındaki çizgi segmentinin C_1'den çok daha yakın olduğunu görebilirsiniz. 1/3 veya 2/3'ten biri daha sıkı sınırlar verir. Hangisinin daha iyi olacağını gerekçelendirmek için cebirde çalışmadım, ancak isterseniz deneyebilir ve geri bildirebilirsiniz. Başka bir şey yoksa, seçeneğin orada olduğunu belirtmek istedim.