2011-05-02 48 views
1

我在我的Silverlight應用程序中使用Path類和BezierSegment。 我正在繪製使用它的不同的拱門和線條。Silverlight - 在BezierSegment上獲取點

我想要做的是得到我的弓/線的中間。 我注意到BezierSegment沒有經過第二點,但只是接近它。 我怎樣才能得到真正的曲線點(其座標)?

回答

1

BezierSegment類使用三次Bézier曲線,this Wikipedia page給出了這些曲線的方程。你可以採取這個方程式,並把t = 0.5加入到它來得到一個點在曲線上的某個點。

請注意,t = 0.5處的點不能保證從開始到結束沿曲線的中點。獲得曲線的確切中點更加複雜,如果您真的需要這樣做,您最好問問如何在https://math.stackexchange.com/處計算它。

+2

如果你的曲線是對稱的,中點在(start + Point3 + 3 * Point1 + 3 * Point2)/ 8。 – 2011-05-02 19:00:04