STPos |
Top Previous Next |
STPos stellt die Stationstexte der Selektionsliste frei, indem in einem Freistellungskreis um das Stationssymbol durch eine Versuchs, -und Irrtummethode eine freie Position für die Stationsbetextung ermittelt wird. Voraussetzung ist, daß jedes Stationsobjekt ein Symbol enthält. Ist eine Freistellung nicht möglich, verbleibt die Betextung an ihrer ursprünglichen Position. Die Positionierungsversuche folgen konzentrischen, größer werdenden Kreisen um das Stationssymbol. Der Defaultabstand der Kreise beträgt 2.0 m und mit diesem Abstand werden auch die zu testenden Textpositionen auf dem Kreis ausgeteilt. So wird im Erfolgsfall eine Position mit dem kleinsten Abstand zum Symbol ermittelt.
Hinweis: Bei dieser Funktion werden blattrandparallele Texte unterstellt ! Ohne den Parameter /SEL wird vom geöffneten Objekt ausgegangen ! Syntax STPos stationkeys/5500 radius/50.0 sdky/1,2 tdky/3,4 sym/5500 step/5.0 dist/1.0 /reset /makethebest Parameter stationkeys/n,n. Objektschlüssel der Stationen. radius/x.x Radius des Freistellungskreises in m. Definition des maximalen Abstandes des Textes zum Symbol, d.h. keine Stelle des Textumringes ist nach der Verschiebung weiter als x Meter vom Symbol entfernt sdky/n,n.. Definition der freistellungsrelevanten Strings. (Alternativ können Strings auch über Objektschlüssel definiert werden: skey/n,n...) Ist dieser Parameter nicht angegeben, sind alle Strings der Selektionsliste relevant ! Sollen bei einer engen Ortslage z.B. grundsätzlich Schnitte zwischen Stationstexten und Strings zulässig sein, kann dies durch sdky/n erreicht werden (wobei n einen nicht vorkommenden Schlüssel bezeichnet). Ob die Parameter sdky, tdky oder sym bei Verwendung der Option /makethebest noch sinnvoll sind, mag der Programmautor nicht entscheiden. tdky/n,n... Definition der relevanten Texte. (Alternativ können Texte auch über Objektschlüssel definiert werden: tkey/n,n...) . Ist dieser Parameter nicht angegeben, sind alle Texte der Selektionsliste relevant ! sym/n,n... Definition der relevanten Symbolnummern. Ist dieser Parameter nicht angegeben, sind alle Symbole der Selektionsliste relevant !
step/x.x Schrittweite für die Rasterung der Positionierung in m, Default: 2.0 m. Kleine Schrittweiten erzeugen eine besseres Ergebnis, verschlechtern aber die Laufzeit. Als Schrittweite sollte ein Wert von 5% des Freistellungsradius gewählt werden.
dist/x.x Abstand zwischen Stationstext und benachbarter Geometrie in m, Default: 0.0 Die Freistellung arbeitet intern mit Text- und Symbolumringen, es werden daher nur angenäherte Werte erreicht. Ist im Modus /makethebest eine Textfreistellung bei vorgegebener Distanz nicht zu erreichen, wird diese schrittweise reduziert um doch noch eine Freifläche zu finden.
/reset Ist „/reset“ angegeben, dann beginnt die Freistellung des Textes unabhängig von der aktuellen Textposition am Knoten. Ist „/reset“ nicht angegeben und der Text an der aktuellen Position ist schon freigestellt, wird er nicht bearbeitet. Ist der Text noch nicht freigestellt, dann beginnt die Freistellung am Knoten (wie oben). /makethebest Kollisionen werden bewertet, es erfolgt eine Positionierung auf das "kleinste Übel". Der Parameter trägt zur Verbesserung des Ergebnisses bei, verschlechtert allerdings das Laufzeitverhalten Kollisionen werden bewertet, es erfolgt eine Positionierung auf das "kleinste Übel". Konnte ein Text nicht freigestellt werden, ermittelt STPos die beste (der schlechten) Positionen. Dabei ist ein Konflikt zwischen dem Stationstext und anderen Texten schwerwiegender als ein Konflikt mit einem Symbol. Der Konflikt mit einem String hat die geringste Wertigkeit.
tscalew/x.x Faktor für die Breite der Textrahmen Bei der Verwendung von Windows-Fonts passen ggf. die Moskitointernen Fonts. tscaleh/x.x Faktor für die Höhe der Textrahmen. Diese Parameter sind nur sinnvoll, falls die Text nicht über einen Mosktio-Vektorfont dargestellt werden. Passen Textumringe nicht zum dargestellten Text, das Ergebnis der Textfreistellung wird dann fragwürdig. Über diese beiden Parameter (tscalew/ und tscaleh/ ) können die Umringe justiert werden. Durch die Hilfsfunktion ShowTxtUmr lassen sich diese Parameter wie folgt ermitteln: - Bildauschnitt mit Stationstexten in 1:10000 bzw. 1:25000 präsentieren - ShowTxtUmr /sel tscalew/1.0 tscaleh/1.0 zeigt die Textumringe an. Evtl. diese Werte anpassen, bis die Umringe zu den Texten passen, diese Werte sind auch bei STPos anzugeben.
/SEL Die Funktionalität wird auf die gesamte Selektionsmenge angewendet /h Kurzhilfe
Beispiel Minimalaufruf:
STPos /sel stationkeys/5500 radius/50.0 Bearbeitet werden die Stationen der Selektionsliste mit dem Schlüssel 5500. Gesucht wird für jede Stationsbetextung eine zu allen graphischen Elementen der Selektionsliste konfliktfreie Position, wobei der kleinste Abstand zwischen dem Stationstext und der Koordinaten des Stationssymbols 50 Meter nicht überschreiten darf. Ist ein Text an seiner Position schon freigestellt, wird er nicht bearbeitet. Ansonsten beginnt die Freistellungsversuche an der Symbolposition.
Maximialaufruf:
STPos /sel stationkeys/5500 radius/50.0 sdky/1,2 tdky/3,4 sym/5500 step/5.0 dist/1.0 /reset /makethebest STPos stationkeys/5500 radius/50.0
Zur Freistellung werden alle im Freistellungskreis liegenden Strings, Texte und Symbole ausgewertet. Die Freistellung beginnt bei der aktuellen Textposition. Siehe auch
|