2011-06-03 75 views
1

我有這樣的XML文件:點之間繪製線在的UIImage

<PointCollection> 
<Point x="2453.553575623344" y="1011.755461592671"/> 
<Point x="2260.662874593102" y="1102.865398167724"/> 
<Point x="2259.547233128629" y="1276.871740662439"/> 
<Point x="2293.490150676198" y="1444.799859055673"/> 
<Point x="2375.667740528206" y="1696.692036645525"/> 
<Point x="2480.350615792477" y="1865.216215309236"/> 
<Point x="2757.972180274506" y="1877.125440451022"/> 
<Point x="2939.521225544476" y="1715.15279036209"/> 
<Point x="3052.739622134972" y="1443.013389711065"/> 
<Point x="2997.359072452096" y="1135.740662438337"/> 
<Point x="2774.050404375987" y="1030.338971106413"/> 
</PointCollection> 

我需要繪製這些點之間的線,並創建過的UIImage的形狀來註釋對形象方面例如我米的特定區域將在根據圖像的分辨率具有x和y座標的點x =「2453.553575623344」y =「1011.755461592671」和點x =「2260.662874593102」y =「1102.865398167724」之間畫一條線。我怎樣才能做到這一點? 謝謝。

+1

你有什麼開始?這不是一個小項目,我們不會爲你做。 – 2011-06-03 14:55:30

+0

首先用'drawRect'查看繪圖 – Dancreek 2011-06-03 14:58:40

+0

@Jesse Naugher,我已經在項目的中間,我只是新來繪畫,只是問了一個意見。對於將來的問題,我找到一個有用的教程:http://www.techotopia.com/index.php/An_iPhone_Graphics_Drawing_Tutorial_using_Quartz_2D – aeciftci 2011-06-03 15:02:30

回答

4

總之,你應該:

  • 圖了多少要在圖像顯示模型空間。
  • 從繪圖上下文中,獲取當前的CGContextRef(iOS上的UIGraphicsGetCurrentContext())。
  • 通過操作當前變換矩陣(CTM)來翻譯和縮放座標系,以便根據模型座標而不是位圖座標進行繪製。更改繪圖的座標系使系統可以完成所有的數學運算,以便將線條放入圖像的實際位中。
  • 然後,反覆:
    • 使用CGPath/CGMutablePath描述的形狀。
    • 設置描邊/填充顏色(或任何其他設置)。
    • 適當地描邊/填充路徑。

需要注意的是,如果你正在繪製在現有的圖像而不是創建一個全新的形象,你可能要在空白畫布當前圖像繪製變換CTM之前。

直到閱讀使用CoreGraphics繪圖時,您可能都不會理解這些內容。查看Quartz 2D Programming Guide,瞭解如何使用CoreGraphics繪製2D圖像。