Vektorgrafik
Vektorgrafik är ett sätt att representera grafiska objekt och bilder (beskrivningsformat) i datorgrafik , baserat på den matematiska beskrivningen av elementära geometriska objekt, vanligtvis kallade primitiver , såsom: punkter, linjer, splines , Bezier-kurvor , cirklar, cirklar, ellipser , polygoner .
Vektorgrafikobjekt beskrivs av en uppsättning koordinater , parametrar och attribut .
Termen "vektorgrafik" används för att skilja det från rastergrafik , där en bild representeras som en grafisk matris av pixlar .
Vid utmatning till matrisdisplayenheter (bildskärmar, mekaniska enheter - skrivare, etc.), konverteras vektorgrafik först till rastergrafik, konverteringen utförs av mjukvara eller hårdvara för moderna grafikkort . För plottrar och vektormonitorer krävs inte konvertering från vektor- till rasterformat, eftersom i sådana enheter byggs primitiver genom att flytta en penna eller en elektronstråle.
Bildlagringsmetod
Matematiskt är vektorgrafik baserad på analytisk geometri . I vektorgrafik beskrivs primitiver av en uppsättning koordinater av kontrollpunkter, primitiva parametrar, som inkluderar till exempel initialkoordinater, skalningsfaktorer, rotationer, sträckningsfaktorer längs axlarna. Attribut inkluderar färgen och typen av färgfyllningen av områdena, tjockleken och färgen på linjerna.
I animerad vektorgrafik, när den visas på en utmatningsenhet, kan koordinater, attribut och parametrar förändras dynamiskt över tiden enligt givna tidsfunktioner, vilket skapar en rörlig bild.
Betrakta till exempel beskrivningen av en sådan grafisk primitiv som en cirkel med radien r . För att bygga den måste du ange följande initiala data:
- Cirkelcentrumkoordinater . _ _
- Radievärde . _
- Fyllningens färg och/eller struktur (om cirkeln är byggd för att visa en cirkel ).
- Färgen och tjockleken på konturlinjen vid definition av en kontur.
- Fyll och beskriv transparens.
- Planera ordning i förhållande till andra primitiver fram, bak (förgrund, bakgrund). När de visas visas primitiver och objekt sekventiellt på displayenheten, och senare visade objekt täcks eller överlagras på tidigare visade objekt.
Centrumkoordinaterna och radien är obligatoriska parametrar, resten av data från cirkelbeskrivningen kallas ofta attribut och kan utelämnas. I det här fallet ersätts de av standard- eller nuvarande attribut när de plottas.
Ett exempel på en beskrivning av en röd cirkel med centrumkoordinater 79; 77, radie 20 med en svart kontur med tjocklek 1 i XML (används i Wikipedias rekommenderade
SVG -format):
<circle cx="79" cy="77" r="20" fill="#f00" stroke="#000" stroke-width="1"/>
Fördelarna med vektorsättet att beskriva grafik framför rastergrafik
- Mängden data som upptas av beskrivningen av primitiver beror inte på det verkliga linjära värdet för det beskrivna objektet, vilket gör det möjligt att beskriva ett godtyckligt stort objekt med en fil av minsta storlek. Till exempel, för att beskriva en cirkel med godtycklig radie, krävs endast 3 siffror om attribut utesluts.
- Eftersom information om objektet lagras i numerisk form är det möjligt att förstora bilden på obestämd tid när den matas ut till displayenheten, till exempel kommer cirkelbågen att förbli jämn vid vilken förstoring som helst. Å andra sidan, om kurvan beskrivs som en streckad linje , bestående av ett stort antal segment, kan den vid låg förstoring se jämn ut, men vid hög förstoring kan du se att det faktiskt är en bruten linje.
- Beskrivning av objekt lagras i numerisk form och kan enkelt ändras. Därför försämrar inte bildens kvalitet att flytta , skala , rotera , fylla osv. I vektorgrafikformat anges storlekar vanligtvis i enhetsoberoende enheter , vilket förbättrar bildkvaliteten under rastrering för rastervisningsenheter .
Grundläggande nackdelar med vektorgrafik
Nackdelarna med vektorgrafik är [1] :
- Inte varje bild kan beskrivas kompakt i vektorform - en hög likhet med originalbilden kan kräva beskrivning av ett mycket stort antal primitiver, vilket kräver mängden minne som upptas av bilden och den tid som krävs för att konvertera den till ett rasterformat för grafisk utdata till rasterdisplayenheter.
- Att konvertera vektorgrafik till en rasterbild är algoritmiskt ganska enkelt. Men den omvända transformationen är vanligtvis svår - denna transformation kallas bitmappsspårning och kräver ofta betydande datorkraft och processortid, och ger inte alltid hög kvalitet på den resulterande vektorbilden.
- Vektorformatspecifikationer (och därför vektorgrafikrenderare) är mycket mer komplicerade än de för rastergrafik.
- Fördelen med en vektorbild – skalbarhet – försvinner när en bild i vektorformat visas i ett lågupplöst raster (till exempel som en ikon 32x32 eller 16x16). För att undvika "smuts" måste bilden för sådana upplösningar redigeras manuellt. I rasteriserare av vektorteckensnitt, till exempel TrueType , används ganska komplexa antydningsalgoritmer för att bli av med saknade (och omvänt alltför tjocka) linjer i teckenbilder när de reduceras.
Typiska primitiva objekt
Denna lista över primitiver är ofullständig. Det finns olika typer av kurvor (Catmull-Rom splines, NURBS , etc.) som används i olika applikationer. Det är också möjligt att tänka på en bitmapp som ett primitivt objekt, beskrivet som en rektangel med en komplex textur.
Vektoroperationer
Vektorgrafikredigerare låter dig vanligtvis rotera, flytta, reflektera, sträcka, skeva, d.v.s. utföra alla affina transformationer på objekt, ändra ordningen och kombinera primitiver till sammansatta objekt.
Mer sofistikerade transformationer används också , till exempel booleska operationer som tillämpas på slutna figurer som uppsättningar av punkter som hör till dessa figurer: union , addition , intersection som visas i figuren, etc.
Vektorgrafik är att föredra för enkla eller sammansatta ritningar som behöver vara enhetsoberoende eller inte behöver fotorealism . Till exempel använder format som PostScript och PDF en vektorgrafikmodell.
Vissa format
- SVG är det rekommenderade formatet för Wikipedia.
- EMF .
- CDR .
- cgm .
- dxf .
- openvg .
- GXL är ett sällan använt format.
- WMF .
- EPS .
- PDF .
- AI .
- SWF - ( Small W eb Format ; stod tidigare för Shock wave Flash , vilket orsakade förvirring med ShockWave ) är ett standardtillägg för kompilerade flashfiler (animationer, spel och interaktiva applikationer). SWF- filer kan ses med de kostnadsfria Gnash- eller swfdec- spelarna . Du kan använda det kostnadsfria kommandoradspaketet SWFTools för att skapa och arbeta med SWF -filer .
- DXE.
- FLA.
Anteckningar
- ↑ Andy Harris. Vektorgrafik . wally.cs.iupui.edu . Hämtad 16 juni 2014. Arkiverad från originalet 18 maj 2012. (obestämd)
Se även
Länkar