SVG-Symbolerstellung für sisIMS


 Produkt(e):Bentley sisIMS
 Version(en):08.11.09.XXX
 Umgebung:Window Server
 Produktbereich:Allgemein
 Produktunterbereich:N\A

Problem

sisIMS benötigt im enginelosen Betrieb mit SDO-Daten die Grafikzellen als SVG-Grafik.

Problemlösung

Diese Grafiken werden in der Datei c:\Bentley\sisIMS\web_appl\sisnet\projects\demo\svgDefs.xml definiert.

Alle im Projekt benötigten Zellen müssen im CDATA-Block dieser xml-Datei aufgelistet werden, z.B.

Die eigentliche Symboldefinition findet in den Symbolblocks statt, und kann z.B. wie folgt aussehen (in diesem Beispiel wird ein rechteckiger Kabelverteilerschrank definiert) :

<symbol id="KVS_ST" overflow="visible" viewBox="0 0 100 100">
       <path d="M-50,20 L50,20 L50,-20 L-50,-20 Z"/>
</symbol>

Die Definition der einzelnen Punkte erfolgt immer in einer Viewbox mit der Ausdehnung 0,0/100,100, wobei der Koordinatenursprung, also der Punkt der das Zentrum der Celle definiert, genau in der Mitte liegt.

Im Pfad wird nun der Linienzug festgelegt, wobei das Koordinatenpaar hinter M für den Startpunkt steht, hinter L werden die einzelnen Stützpunkte definiert und Z schließt die Grafik vom letzten Punkt zum Startpunkt ab.

Weiteres wichtiges Element für Zellen ist der Kreis wie z.B. ein runder Schacht:

<symbol id="SCHACH" overflow="visible" viewBox="0 0 100 100">
    <circle cx="0" cy="0" r="50"/>
</symbol>

Eine mehrfarbige Zelle kann folgendermassen aufgebaut werden:

<symbol id="G_BLO" overflow="visible" viewBox="0 0 100 100">
            <circle cx="0" cy="0" r="50"/>
            <circle style='fill:RED' cx='0' cy='0' r='15'/>
</symbol>

Hinweis: 
Grundsätzlich wird die Grafikausprägung für EBENE, FARBE, Linienstyle und Linienstärke hierbei nicht in der SVG Definitionsdatei angegeben, sondern über die für dieses Objekt gespeicherte FSSTYLE_ID aus der für das Objekt vorhandenen Spatial VIEW, die dann aus der N_SYS_FEATURE_STYLES Tabelle den zugehörigen Eintrag für die Grafikausprägung nutzt.

Merke:
Wird Sie in der SVG Definition mit angegeben überschreibt sie die Tabellendefinition!

Mit Hilfe dieser Vorlage, maßstäblich ausgedruckt, können über kariertem Papier die benötigten Koordinaten leicht ermittelt werden: 

Sehen Sie hierzu auch

https://www.w3schools.com/graphics/svg_intro.asp


 Ursprünglicher Autor:Andreas Becker