我正在爲用戶創建一種方法來在屏幕上移動多邊形,並通過拖動角點頂點來更改它們的形狀。然後我需要能夠在其他設備上重新繪製這些修改的多邊形 - 所以我需要能夠在屏幕上獲得所有多邊形的所有頂點的最終位置。路徑轉換後可以獲取UIBezierPath當前控制點嗎?
這是我目前在做什麼:
我畫使用UIBezierPath
在drawRect
功能的覆蓋每個形狀的多邊形。然後,我允許用戶通過應用CGAffineTransformMakeTranslation
函數和x
和y
座標增量在touchedMoved
函數覆蓋中在屏幕上拖動它們。我有初始控制點從中初始繪製多邊形(如描述here)。但是一旦路徑實例在屏幕上移動,這些值不會改變 - 所以我只能獲得初始值。
Core Graphics
框架內有什麼內置的東西,可以讓我抓取UIBezierPath
實例中的一組當前控制點?我試圖避免手動跟蹤這些點。我會考慮用其他方式吸引用戶,如果:
- 有一個內置 - 中的方式來檢測一個點位於該多邊形內(如
UIBezierPath#contains
方法 - 一種能夠方便地引入約束使用戶可以」 T移至多邊形走出上海華盈的界限(我需要整個多邊形是可見的)
- 一種能夠方便地抓住所有的點,當用戶完成
- 一切都可以在iPhone 5
感謝您的時間!