2013-03-02 21 views
5

Diyelim ki bezierCurveTo() çağrıları kullanılarak yapılan eğimli yol var. Çerçeveden sonra çizilen çerçevenin yüzdesini artırarak, bir animasyonda aşamalı olarak görünmesini istiyorum. Sorun şu ki, bir tuval yolunun sadece bir parçasını çizmenin standart bir yolunu bulamıyorum - bunu başarmak için iyi bir yoldan (hatta zor bir yoldan) haberdar mıdır?HTML5'in tuvalinde kısmen bir yol nasıl çizilir?

+1

Bir önceki soruya verilen bu cevap sizin için yararlı olabilir. http://stackoverflow.com/questions/878862/drawing-part-of-a-bezier-curve-by-reusing-a-basic-bezier-curve-function – jing3142

+0

Oh, bu çok yardımcı oluyor. Kudos. – Gnurou

cevap

2

Elbette ... ve Simon Porritt bizim için tüm zor matematik yaptı!

jsBezier, işlevini küçük bir kitaplıktır: pointAlongCurveFrom (eğri, konum, mesafe), her bir noktayı Bezier eğriniz boyunca adım adım çizmenize izin verir.

jsBezier GitHub'dan geçerli:

+0

Teşekkürler - ancak bu yöntemi (eğri boyunca çizim noktaları) diğer ortamlarla denedim ve sonuç, yüksek aşırı çekiş nedeniyle maalesef oldukça yavaş. Bu, tire kullanmanın bir yolu standart hale getirilene kadar kullanılabilir (kesikli çizgiler kullanmak bu etkiyi elde etmenin kolay bir yoludur). Hala diğer cevaplara açık. – Gnurou

+0

BTW, Denemedim, ancak Chrome'un şimdi context.setLineDash ([5]) ile kesikli hatları desteklediğini düşünüyorum. – markE

+0

Bu doğru - Tamamen uyumlu bölgede kalmak istiyorum ama :) – Gnurou

İlgili konular