變換順序和產生的扭曲
在SVG 中,當變換屬性應用於元素時,它會取得目前使用者座標系。然後依序套用後續變換,每次都會從先前的狀態修改座標系。
這種變換順序會顯著影響最終輸出。如指定引號所述:
由於變換而傾斜序列
考慮提供的程式碼中的範例,其中兩個矩形進行變換:
矩形1: 縮放(2, 1) 然後旋轉(10deg)
矩形2:旋轉(10deg)然後Scale(2, 1)
矩形 1 由於變換的特定順序而扭曲或傾斜。當元素進行縮放時,其目前座標系首先水平拉長。然後將這個新座標系旋轉 10 度。結果,矩形實際上是傾斜的。
相反,矩形 2 由於變換順序相反而沒有傾斜。 10 度的初始旋轉會在縮放發生之前修改座標系。因此,縮放只是沿著新的旋轉軸拉長矩形,避免任何變形。
技術說明
先應用縮放時,元素的邊界框會放大或承包。當應用旋轉變換時,它發生在這個修改後的邊界框內。當旋轉應用於縮放比例時,這會導致傾斜效果。
相反,當首先應用旋轉時,它會改變座標系的方向。隨後,將縮放應用於此旋轉系統,確保沿新軸發生伸長或收縮,從而產生不傾斜的矩形。
透過理解變換的順序和交互作用,就可以清楚為什麼連結變換如本例所示,不同的順序可能會導致不同的結果。
以上是SVG 變換的順序如何影響最終的形狀扭曲?的詳細內容。更多資訊請關注PHP中文網其他相關文章!