SVG 座標系統
繪製任何圖形都必須位於一個座標系中。
很多操作由於過於常態化,反而沒有意識到。
如同蘋果落地,如果沒有刻意強調或者過人的探究精神,誰會意識到萬有引力在起作用。
看如下CSS程式碼效果圖示:
上述程式碼將紅色div元素水平垂直居中在父div中。
很顯然,div必須處於一個座標系中,否則無法定位。
同理,SVG繪圖也必須位於一個座標系中,下面對其座標系統進行一下介紹。
SVG座標系統分為兩類:
(1).視口座標系統。
(2).使用者座標系統。
關於視窗內容可以參閱SVG viewport視窗和畫布一章節。
比如通過<svg>元素即可建立一個視口,看如下程式碼例項:
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style> svg { background-color: #ccc; } </style> </head> <body> <svg x="10" y="10" width="200" height="130"> <rect x="50" y="20" width="100" height="100" fill="blue"/> </svg> </body> </html>
程式碼執行效果截圖如下:
程式碼分析如下:
(1).通過<svg>元素建立一個視口,隨之建立一個視口座標系。
(2).建立視口座標系的同時,也會建立一個使用者座標系,此時兩個座標系重合。
(3).最後在此使用者座標系中建立一個藍色矩形。
SVG中的座標系,大致圖示如下:
特別說明:此圖是借用網路上一張常用圖片,不知道最初它的出處,所以無法標註引用地址。
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style> svg { background-color: #ccc; } </style> </head> <body> <svg> <rect x="20" y="20" width="100" height="100" fill="blue" transform="rotate(10)"/> </svg> </body> </html>
程式碼執行效果截圖如下:
上述程式碼通過transform將藍色矩形旋轉一定角度。
從表面上看,是將矩形本身旋轉了一定角度,我想很多初學者也是這麼認為。
然而實質是,真正被旋轉的不是矩形本身,而是矩形所在的使用者座標系。
對於元素的縮放、斜切或者旋轉其實都是對座標系的操作,這時,使用者座標系與視口座標系分離了。
上面是對座標系的一些簡單介紹,更多內容參閱如下兩篇文章:
(1).SVG transform 詳解一章節。
(2).SVG transform座標變化深入理解一章節。
相關文章
- OpenGL 座標系統詳解
- 座標系
- svg06——svg中座標變換與順序的關係SVG
- 座標系的生成
- 形象化理解笛卡爾座標系和極座標系
- canvas 座標系原點Canvas
- canvas座標系原點Canvas
- 地心地固座標系(ECEF)與站心座標系(ENU)的轉換
- CAD夢想畫圖如何自定義座標系統
- 招聘—軟體系統架構師,座標北京知春路架構
- Qt - 座標系及轉換QT
- 【matplotlib 實戰】--平行座標系
- android自定義View——座標系AndroidView
- Threejs的三維座標系JS
- 機器人工具座標系標定原理機器人
- 將座標系統儲存為一個檔案.prj
- C++ opencv的圓轉矩形,極座標轉笛卡爾座標系C++OpenCV
- WebGL座標系的小祕密Web
- MoseEvent 中的幾種座標系
- 座標系相關知識科普
- 類似淘票票 選座功能(svg)SVG
- AUTOCAD——座標標註
- 座標系CM和ZONE的區別
- Excel轉百度座標系(AngularJS)ExcelAngularJS
- GIS中座標系的基本概念
- 世界座標系到攝像機座標系的矩陣變換推導過程矩陣
- vue 實現高德座標轉GPS座標Vue
- OpenGL入門第三課--矩陣變換與座標系統矩陣
- 流體力學守恆形式Euler方程(笛卡爾座標、柱座標、球座標)
- iOS開發必會的座標系探究iOS
- 【Unity3D的四種座標系】Unity3D
- Stanford機器人D-H座標系機器人
- 【GIS工具】百度poi載入工具之玩轉座標系統!
- 利用齊次座標進行二維座標轉換
- 海康相機 畫素座標(px,py)到sdk ptz 座標轉換最後到onvif ptz座標
- canvas-座標系、圓角矩形、紋理、剪裁Canvas
- webgl入門(3)-座標系與滑鼠互動Web
- aecmap直接用地理座標系計算面積