See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 15140|Vastuse: 0

SVG tee/Glüüf D atribuut selgitatakse üksikasjalikult

[Kopeeri link]
Postitatud 04.05.2018 11:29:47 | | | |


See omadus määratleb tee.

kasutus

Kategooria tee määratluse atribuudid

väärtus

Varieeruvus Jah
Spetsifikatsioonidokumentatsioon SVG 1.1 (2. väljaanne)
Omadus d on tegelikult string, mis sisaldab rida teekirjeldusi. Need rajad koosnevad järgmistest juhistest:

  • Moveto
  • Lineto
  • Curveto
  • Arcto
  • ClosePath


Need ühendatakse nööriks. Need erinevad käsud on täibilised; Suurtähed näitavad, et selle parameetrid on absoluutsed positsioonid, samas kui väikesed käsud näitavad punkti praeguse asukoha suhtes. Negatiivse väärtuse saab määrata käsu parameetrina: negatiivne nurk on vastupäeva ning absoluutsed x ja y positsioonid loetakse negatiivseteks koordinaatideks. Negatiivne suhteline x väärtus liigub vasakule, samas kui negatiivne suhteline y väärtus liigub ülespoole.

Moveto

Moveto käsku võib mõelda kui joonistuspastaka haaramist ja maandumist teises kohas. Eelmise punkti ja selle määratud punkti vahel ei ole joonistatud joonlõiku. Hea mõte on alustada teekonda käsuga Moveto, sest ilma initsialiseeritud Movetota on alguspunkt koht, kus eelmine operatsioon toimus, mis võib viia määramatu käitumiseni.

Süntaks:

M x,y siin x ja y on absoluutsed koordinaadid, mis esindavad vastavalt horisontaalseid ja vertikaalseid koordinaate.
m dx, dy siin dx ja dy on kaugused võrreldes praeguse punktiga, vastavalt paremale ja alla.
Näide:

Absoluutpositsioonil x=50, y= 100:<tee d="M50,100..." />
Liigu 50 paremale, 100 alla: <tee d="m50,100..." />

Lineto

Erinevalt Moveto käsust joonistab Lineto käsk sirge segmendi. See sirgjooneline lõik liigub praegusest asukohast määratud asukohta. Natiivse Lineto käsu süntaks on "L x, y" või "l dx, dy", kus x ja y on absoluutkoordinaadid ning dx ja dy on vastavalt kaugused paremale ja allapoole. On ka tähed H ja V, mis tähistavad vastavalt horisontaalseid ja vertikaalseid liikumisi. Neil on sama süntaks mis L-il, nende väiketähted on suhteline kaugus ja suurtähed absoluutne asukoht.

Curveto

Curvto käsk määrab Bézieri kõvera. Bézieri kõveraid on kahte tüüpi: kuubiline ja ruut. Kvadratiline Bézieri kõver on spetsiaalne kuup-Bézieri kõver, kus kontrollpunkti kaks otsa on samad. Kvadratilise Bézieri kõvera süntaks on "Q cx, cy x, y" või "q dcx, dcy dx, dy". Cx ja Cy on mõlemad kontrollpunktide absoluutsed koordinaadid, samas kui DCX ja DCY on vastavalt kontrollpunktide kaugused X ja Y suunas.

Kuubiline Bézieri kõver järgib sama kontseptsiooni nagu ruutne Bézieri kõver, kuid peab arvestama kahte kontrollpunkti. Kuubilise Bézieri kõvera süntaks on: "C c1x, c1y c2x, c2y x, y" või "c dc1x, dc1y dc2x, dc2y dx, dy", kus c1x, c1y ja c2x, c2y on vastavalt algus- ja lõpp-punktide kontrollpunktide absoluutsed koordinaadid. DC1X, DC1Y ja DC2X, DC2Y on suhteliselt alguspunktiga, mitte lõpp-punktiga. DX ja DY on vastavalt kaugused paremale ja alla.

Sujuvate Bézieri kõverate ühendamiseks saab kasutada ka käske T ja S. Nende süntaks on lihtsam kui teistel Curveto käskudel, kuna eeldatakse, et esimene kontrollpunkt peegeldab eelmist kontrollpunkti eelmisel või et see on tegelikult eelmine punkt, kui eelmist kontrollpunkti pole. T süntaks on "T x,y" või "t dx,dy", mis vastab vastavalt absoluutstele koordinaatidele ja suhtelistele kaugustele ning mida kasutatakse ruut-Bézieri kõvera loomiseks. S kasutatakse kuubikulise Bézieri kõvera loomiseks, süntaks on "S cx, cy x, y" või "s dcx, dcy dx, dy", kus (d)cx määrab teise kontrollpunkti.

Lõpuks saavad kõik Bézieri kõvera käsud luua mitmekülgse Bézieri graafi, initsialiseerida käsu esmalt ja seejärel määrata kõik parameetrid mitu korda, et luua mitmekülgne Bézieri graaf. Seetõttu võivad järgmised kaks käsku luua täpselt sama tee:


Arcto

Mõnikord on elliptilise kaare kõvera rada lihtsam kirjeldada kui Bézieri kõvera rada. Lõppkokkuvõttes toetab tee element Arcto käsku. Kaare keskpunkti arvutavad teised muutujad. Arcto deklaratsioon on suhteliselt Visual Studio kordus: "A rx, ry xAxisRotate LargeArcFlag, SweepFlag x, y". Dekonstrueerides on rx ja ry vastavalt x ja y suundade raadiused ning LargeArcFlagi väärtus on 0 või 1, et määrata, kas joonistada väike kaar (0) või suur kaar (1). SweepFlag on samuti kas 0 või 1, mida kasutatakse selleks, et määrata, kas kaar on päripäeva (1) või vastupäeva (0). x ja y on sihtkoha koordinaadid. Kuigi xAxisRotate toetab x-telje orientatsiooni muutmist võrreldes praeguse taustsüsteemiga, ei tundu see parameeter Gecko 7-s suurt mõju avaldavat.

ClosePath

Käsk ClosePath joonistab lihtsalt sirgjoonelise joone praegusest punktist praeguse tee esimese punktini. See on kõige lihtsam käsk ega sisalda parameetreid. See järgib lühimat lineaarset rada alguspunkti ning kui sellel rajal on teised rajad, ristuvad võimalikud rajad. Süntaks on "Z" või "z" ning mõlemal kirjutamismeetodil on sama funktsioon.

Element

Järgmised elemendid võivad kasutada d-atribuuti:

  • <path>
  • <glyph>


Sama reegleid saab <animate>rakendada ka animatsiooniradadele.

Meeldetuletus

Alguspunkt (koordinaatsüsteem 0,0 punkti) on sageli konteksti vasakus ülanurgas. Kuid <glyph>elemendi päritolu peitub selle kirjakasti vasakus alumises nurgas.

Koma on lubatud kahe numbri vahel, kuid mitte kusagil mujal.

näide

<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
             viewBox="0 0 50 50" enable-background="new 0 0 50 50" xml:space="säilita">
    <path fill="#F7931E" d="M37,17v15H14V17H37z M50,0H0v50h50V0z"/>
</svg>

Et näidata, mida d="M37,17v15H14V17H37z M50,0H0v50h50V0z" tegelikult tähendab, arutame iga selle stringi alalõiku.

d=" M37,17 || v15 || H14 || V17 || H37 || z // M50,0 || H0 || v50 || h50 || V0 || z"


d=
See omadus sisaldab stringe, mis moodustavad kogu SVG.
M37,17
M on lühend sõnast MoveTo. Suurtäht "M" tähendab absoluutseid koordinaate ja väiketäht "m" suhtelist kaugust. See tähendab, et see põhineb alguskoordinaatidel, joon on kasti sees ja alustad ristküliku paremas ülanurgas kastis.
37 on lühend algsest svg asukohast, 37 pikslit X-teljel.
17 Alusta svg asendit, 17 pikslit y-teljel.
v15
V tähistab vertikaalset. Suur täht V tähistab absoluutseid koordinaate ja väiketäht V suhtelist pikkust ja kaugust. dx/dy ja x/y saab kasutada vastavates H/V ja H/V positsioonides.
Siin kujutatakse seda joonistamas vertikaalset joont 15 piksliga antud koordinaadi suhtes. See tähendab, et joonistad 15 pikslit koordinaatidele 37, 32.
H14
H tähistab taset, mis on absoluutsed koordinaadid, sest see on suurtähtedega.
V15 lõpust joonista horisontaalne joon kuni absoluutkoordinaat 14 ja joonejoonistus lõpetatakse, kui see jõuab x-koordinaadini 14. Jooned asuvad koordinaatidel 14, 32.
V17
Nagu varemgi, alusta eelmise joone lõpust ja joonista vertikaalne joon, kuni jõuad y-telje koordinaadini 17. Jooned asuvad koordinaatidel 14, 17.
H37
Lõpuks, alustades 14,17, joonista horisontaalne joon, kuni jõuate x-telje koordinaadini 37. Löök asub koordinaatidel 37,17 (väärtus M)
z
Nii väikesed kui suured Z-tähed lõpetavad SVG segmentide seeria.
,
Koma alustab järgmist lihtsate vektorgraafiliste segmentide jada. Järgmine lihtsate vektorjoonte lõikude seeria moodustab väliskasti.
M50,0
Alusta x-teljelt 50 ja y-teljelt 0.
H0
Tõmba sirge joon kuni (0,0).
v50
Joonista vertikaalne joon 0,0 pikslit võrreldes 50-ga. See joon tõmmatakse (0,50).
h50
Joonista horisontaalne joon 50 pikslit suhtes (0,-50). See joon tõmmatakse paremale (50,50).
V0
Tõmba vertikaalne joon, kuni jõuad y-telje koordinaadini 0. See tõmbab joone väärtusele (50,0), mis on M väärtus.
z
Nii väikesed kui suured Z-tähed lõpetavad SVG segmentide seeria.

Lisa kood:


Lõpuks on dokumendi link lisatud: https://developer.mozilla.org/zh-CN/docs/Web/SVG/Attribute/d





Eelmine:Plokiahela rakenduste arendusjuhend
Järgmine:.net/c# Quartz.NET Kaugülesannete ajastamine [lähtekoodiga]
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com