ST_AsSVG — Returnerar SVG-banedata för en geometri.
text ST_AsSVG(
geometry geom, integer rel=0, integer maxdecimaldigits=15)
;
text ST_AsSVG(
geography geog, integer rel=0, integer maxdecimaldigits=15)
;
Returnerar geometrin som SVG-banedata (Scalar Vector Graphics). Använd 1 som andra argument om du vill att sökvägsdata ska implementeras i form av relativa förflyttningar, standard (eller 0) använder absoluta förflyttningar. Det tredje argumentet kan användas för att minska det maximala antalet decimaler som används i utdata (standard är 15). Punktgeometrier kommer att återges som cx/cy när 'rel'-argumentet är 0, x/y när 'rel' är 1. Multipoint-geometrier avgränsas med kommatecken (","), GeometryCollection-geometrier avgränsas med semikolon (";").
För att arbeta med PostGIS SVG-grafik, kolla in biblioteket pg_svg som innehåller plpgsql-funktioner för att arbeta med utdata från ST_AsSVG.
Förbättrad: 3.4.0 för stöd för alla kurvtyper
Ändrad: 2.0.0 för att använda standardargs och stödja namngivna args
![]() |
|
Tillgänglighet: 1.2.2. Tillgänglighet: 1.4.0 Ändrat i PostGIS 1.4.0 för att inkludera L-kommandot i absolut sökväg för att överensstämma med http://www.w3.org/TR/SVG/paths.html#PathDataBNF |
Denna metod stöder cirkulära strängar och kurvor.
SELECT ST_AsSVG('POLYGON((0 0,0 1,1 1,1 0,0 0))'::geometry); st_assvg -------- M 0 0 L 0 -1 1 -1 1 0 Z
Cirkulär sträng
SELECT ST_AsSVG( ST_GeomFromText('CIRCULARSTRING(-2 0,0 2,2 0,0 2,2 4)') ); st_assvg -------- M -2 0 A 2 2 0 0 1 2 0 A 2 2 0 0 1 2 -4
Multi-kurva
SELECT ST_AsSVG('MULTICURVE((5 5,3 5,3 3,0 3), CIRCULARSTRING(0 0,2 1,2 2))'::geometry, 0, 0); st_assvg ------------------------------------------------ M 5 -5 L 3 -5 3 -3 0 -3 M 0 0 A 2 2 0 0 0 2 -2
Flera ytor
SELECT ST_AsSVG('MULTISURFACE( CURVEPOLYGON(CIRCULARSTRING(-2 0,-1 -1,0 0,1 -1,2 0,0 2,-2 0), (-1 0,0 0.5,1 0,0 1,-1 0)), ((7 8,10 10,6 14,4 11,7 8)))'::geometry, 0, 2); st_assvg --------------------------------------------------------- M -2 0 A 1 1 0 0 0 0 0 A 1 1 0 0 0 2 0 A 2 2 0 0 0 -2 0 Z M -1 0 L 0 -0.5 1 0 0 -1 -1 0 Z M 7 -8 L 10 -10 6 -14 4 -11 Z