2015-11-06 25 views
1

我使用草圖繪製份額如下圖所示 基本上圖片,形狀有4個控制點,我想這些點連接成一個形狀順利如何在iOS中根據4個點繪製平滑的形狀?

我試過UIBezierPath,但似乎該API不適合我。例如,圖片中顯示的右側點,其中我需要的線實際上是cross它,而我拖動這4點中的每一點,我可以得到一個光滑的形狀,我該如何實現這一點?

回答

3

你想要的東西叫的Catmull-ROM樣條。這是一種所有控制點位於曲線上的樣條曲線。

Catmull-Rom樣條曲線所面臨的問題是,在一些控制點上,您可以在曲線中引入不想要的循環或扭結。

我在github上有一個名爲RandomBlobs的項目,演示瞭如何做到這一點。

Here is a Youtube video顯示應用程序的輸出:。

(信用埃麗卡喪盾,優秀的「iOS Developers' Cookbook」系列技術的作者和免責聲明我的技術評論家之一一對夫婦的她書,但是我這樣做是因爲我真的很喜歡她的作品,並且想要幫助。)