SwiftUI繪圖之深入講解Path的使用

本文價值與收獲

看完本文您將掌握的技能

  • 全面了解Path的基本原理
  • 掌握Path的5大繪圖元組
    • move
    • addLine
    • addQuadCurve
    • addCurve
    • colseSubpath
  • 掌握addArc的使用
  • 將Path組件化,方便以后使用

在SwiftUI中,Path是對某種形狀的逐步描述。它可能是一個圓圈,一個正方形,一個情人心,一個單詞頻率直方圖或一張笑臉。它不包含任何信息,例如像素顏色,線寬或漸變。Path主要用于繪圖,我們可以單獨用一種顏色填充,或用stroke去勾勒輪廓。

這次您將看到構(gòu)成路徑的原因。下篇文章文章將給您演示用path來繪制一些很酷的東西。

Path是對形狀的描述,因此我們需要對其進行渲染,以便有人可以實際看到它。每個Core Graphics上下文都將盡其所能去更完美的渲染Path。當(dāng)繪制吧bitmap時,所有曲線和對角線都將消除鋸齒。這意味著即使陰影是由正方形像素構(gòu)成的,也要使用陰影來欺騙眼睛,讓其認為形狀是平滑的。使用打印機繪圖時,會發(fā)生相同的事情,但像素極小。繪制為PDF時,路徑大多只是放到原處,因為Core Graphics繪制模型與PDF繪制模型基本相同。 PDF引擎(例如Preview或Adobe Acrobat)可以呈現(xiàn)這些PDF路徑,而不是Core Graphics引擎。

Path Elements

路徑是由少量基本形狀(curves,arcs和line)連接的點序列,稱為元素。您可以想象每個元素都是對專門拿著鉛筆的機器人的命令。您告訴機器人抬起鉛筆并移動到笛卡爾平面中的某個點,但不要留下任何標(biāo)記。您可以告訴機器人放下鉛筆,然后從當(dāng)前點畫點到新點。有五個基本路徑元素:

  • move
    將當(dāng)前點移動到新位置而不繪制任何內(nèi)容。機器人抬起鉛筆并移動手臂。

  • addLine
    從當(dāng)前點到新點添加一條線。機器人放下了鉛筆并畫了一條直線。

path.move(to: 起始點)
path.addLine(to: 下一個點)
path.addLine(to: 終止點)
apath move to
  • addQuadCurve

使用單個控制點從當(dāng)前點到新點添加二次曲線。機器人將鉛筆放下并繪制一條曲線。線不是直接畫到控制點上,而是控制點會影響形狀??刂泣c離曲線越遠,形狀就越極端。

還有 80% 的精彩內(nèi)容
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
支付 ¥1.59 繼續(xù)閱讀

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容