Produkt(e): | Bentley sisIMS | ||
Version(en): | 08.11.09.XXX | ||
Umgebung: | Window Server | ||
Produktbereich: | Allgemein | ||
Produktunterbereich: | N\A |
sisIMS benötigt im enginelosen Betrieb mit SDO-Daten die Grafikzellen als SVG-Grafik.
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:
https://www.w3schools.com/graphics/svg_intro.asp
Ursprünglicher Autor: | Andreas Becker |