ConcatString [CSA, CST]

Top  Previous  Next

Verknüpfung von Linienelementen mit identischen Anfangs- und/oder Endpunkten.

Die Funktion ConcatString verfolgt von einem identifizierten Linienelement aus all die Linienelemente, die überdeckende Anfangs- und/oder Endpunkte haben. Die Funktion erstellt aus den einzelnen Linienelementen ein neues Linienelement, wenn der Anwender dies bestätigt.

ConcatString kann auf zwei unterschiedliche Arten bedient werden.

Die erste Möglichkeit (automatische Verfolgung) besteht darin, daß der Anwender ein Linienelement auswählt, von dem aus die Verfolgung beginnen soll, um alle erreichbaren Linienelement aufzunehmen. Die Verfolgung stoppt entweder, wenn es keine Nachfolger gibt, oder wenn eine Verzweigung von mehreren Linienelementen kommt.

Die zweite Möglichkeit (halbautomatische/interaktive Verfolgung) beginnt ebenfalls mit der Identifikation eines Linienelements. Der Anwender kann dann per Taste entscheiden, ob er selbst die Richtung der weiteren Verfolgung bestimmt, oder ob von dem Anfangspunkt (P-Verbindung) des identifizierten Linienelements aus die Nachfolger gesucht werden sollen. Hat der Anwender einmal die Richtung selbst mit der Taste <P> festgelegt, kann nur noch in diese Richtung weiter verfahren werden. Ebenso verhält es sich, wenn mit <CLS> die Verfolgung aufgenommen werden soll. Ist erst einmal die Richtung festgelegt, kann zwischen den Tasten <P> und <CLS> beliebig gewechselt werden. Erst bei einer Verzweigung muß der Anwender mit <P> den weiteren Verlauf wieder bestimmen. Es ist jederzeit möglich die Verfolgung abzubrechen (ohne Linienelemente zu verknüpfen) oder die Verfolgung zu beenden um danach entscheiden zu können, ob die ausgesuchten Linienelemente verknüpft werden sollen.

Voraussetzung

Es muß ein Objekt eröffnet sein.

Parameter

/CST

Schaltet in den Modus der halbautomatischen/interaktiven Verknüpfung (Standardeinstellung ist die automatische Verfolgung).

/connect

Bei Angabe dieser Option wird eine Linienverfolgung innerhalb der Selektionsmenge durchgeführt. Dabei wird aus anschließenden Linienelementen ein neues Linienelement erstellt. Diese Linien - Aggregation erfolgt objektübergreifend, ausgehend von dem aktuellen "Startlinienelelement" werden alle gefundenen "Anschlußlinienelemente" dem Objekt des Startlinienelementes zugeordnet und zu einem durchlaufenden Linienelement vereinigt. Die Referenzen auf die ursprünglichen Objekte werden gelöscht, entstehen so Objekte ohne graphische Elemente, werden diese gelöscht. Die Linienverfolgung endet an Knoten vom Grad > 2, passende Strings werden nur verkettet, falls die Objekt-, Zeichen- und Flächenschlüssel identisch sind.

/noDel

Wird dieser Schalter gesetzt, werden bei der Linienelement–Verknüpfung die ursprünglichen Linienelemente nicht gelöscht (Standardeinstellung ist Löschen der alten Linienelemente).

DKY/x

Der Zeichenschlüssel des neuen Linienelements wird mit dem neuen Wert x versehen (Standardwert ist der Wert des identifizierten Linienelements).

NAM/x

Wird bei NAM eine 1 übergeben, werden nur der Anfangs- und der Endstützpunkt markiert, sonst werden alle Stützpunkte eines Linienelements markiert (Standardwert ist alle Punkte markieren).

/H

Mit dem Schalter H wird eine kurze Beschreibung der Parameter ausgegeben.

Rückgabewert

Wert

Beschreibung

0

Aufruf wurde erfolgreich durchgeführt

sonst

Fehler aufgetreten

Dialog

Die Parameter /noDel, NAM/x und DKY/x verhalten sich in beiden Funktionsaufrufen gleich und haben keine Auswirkung auf die unten beschriebenen Dialoge.

Dialog (sowohl bei ConcatString als auch bei ConcatString /CST):

Ersten Linienzug identifizieren mit <P> oder <L>, Abbruch <CON>:

Der Anwender muß einen Linienzug entweder mit <P> oder mit <L> identifizieren, von dem aus die Verfolgung starten soll. Bei Parameter /CST wird von diesem Linienelement nur noch in eine Richtung weiter verfolgt. Die Verfolgungsrichtung der weiteren Linienzüge wird durch einen darauffolgen Dialog gesteuert.

Bei ConcatString (ohne /CST–Parameter) wird vom Anfangs- und Endpunkt des Linienelements weiterverfolgt, d.h. der Anwender kann keine Richtung angeben.

Gibt der Anwender <CON> ein, wird die Verfolgung abgebrochen und es wird kein neues Linienelement erzeugt.

Dialog (nur bei ConcatString /CST):

Nächsten Linienzug identifizieren mit <P> oder suchen lassen mit <CLS>, Verknüpfung beenden <EBD>, Abbruch <CON>:

Bei diesem Dialog wird der Anwender aufgefordert, die nächste Linienelementaufnahme zu veranlassen. Die Aufnahme geschieht entweder interaktiv, d.h. der Anwender muß mit <P> das nächste Linienelement selbst identifizieren oder die Aufnahme geschieht halbautomatisch, indem der Anwender mit <CLS> eine Suche veranlaßt. Mit der Identifizierung durch <P> kann der Anwender die Richtung festlegen in der danach weiter aufgenommen wird. Bei der halbautomatischen Verfolgung (<CLS>) wird von dem zu allererst identifizierten Linienelement in Richtung der P-Verbindung („Anfangspunkt“) weiterverfolgt.

Die Verfolgung kann beendet werden, indem der Anwender <EBD> eingibt. Abgebrochen wird die Verfolgung durch <CON>, hiernach erfolgt keine Absicherung der bisherigen Linienelementverknüpfung. Im Gegensatz zu <CON> wird bei <EBD> der Dialog Nr. 6 gestartet, der auch dann erfolgt, wenn es keine weiteren Verknüpfungen mehr gibt.

Dialog (nur bei ConcatString /CST):

Weitere Verknüpfung nicht eindeutig. Auswahl treffen mit <P>, Verknüpfung beenden <EBD>, Abbruch <CON>:

Dieser Dialog erscheint, wenn die Verfolgung an einer Verzweigung von mehreren Linienelement angelangt ist. Die Verzweigung besteht immer nur aus identischen Anfangs- und/oder Endpunkten. Der Anwender kann jetzt nicht mehr mit <CLS> die Verfolgung veranlassen, weil es jetzt mehr als eine Möglichkeit der Verknüpfung gibt. Jetzt muß der Anwender interaktiv, also mit <P>, genau eines der möglichen Linienelemente auswählen.

Dialog (nur bei ConcatString /CST):

Auswahl nur mit <P>, Verknüpfung beenden <EBD>, Abbruch <CON>:

Dieser Dialog wird nur dann gestartet, wenn der Anwender im Falle von Dialog Nr. 3 anstatt mit <P> versucht mit <CLS> weiterzuverfahren. Weiteres siehe Dialog Nr. 3.

Dialog (nur bei ConcatString /CST):

Abstand zu groß!

Hat der Anwender erst einmal die Verfolgungsrichtung festgelegt, kann er sich nicht mehr umentscheiden und in der entgegengesetzten Richtung identifizieren. Auf diesen Dialog folgt der Dialog Nr. 2

Dialog (sowohl bei ConcatString als auch bei ConcatString /CST):

Dieses Linienelement ist bereits aufgenommen!

Wird durch den Anwender ein bereits bearbeitetes Linienelement erneut identifiziert (z.B. bei mehreren Linienelementen, die eine Schleife bilden), erscheint diese Meldung. Dieser neu identifizierte Zug wird dann nicht mehr aufgenommen. Bei ConcatString wird die Verfolgung danach beendet, weil es dann keine weitere Möglichkeit gibt. Bei ConcatString /CST hängt es davon ab, ob es noch weitere Linienelemente (in einer Verzweigung) gibt.

Dialog (sowohl bei ConcatString als auch bei ConcatString /CST):

Verknüpfungen im Arbeitsspeicher ablegen? [J|N]

Gibt es keine weiteren Verknüpfungen mehr, oder hat der Anwender die Verfolgung mit <EBD> beendet (nur bei ConcatString /CST), kann jetzt bestimmt werden, ob dieses neue Linienelement in der Datenbank aufgenommen werden soll. Ist beim Funktionsaufruf der Parameter /noDel mitangegeben worden, und wird dieser Dialog bejaht, dann wird dieses neue Linienelement abgelegt und die ursprünglichen Linienelemente verbleiben auch in der Datenbank. Ohne den Parameter /noDel werden die ursprünglichen Linienelemente jetzt aus der Datenbank entfernt.

Wird das neue Linienelement abgelegt, ist es auch gleichzeitig eröffnet.

Weitere Meldungen:

Anzahl der Argumente ist nicht korrekt!

Hier wurden zuviele Argumente oder falsche Argumente übergeben. Hiernach folgt das Funktionsende.

Es ist kein Objekt identifiziert!

Diese Meldung besagt, daß vorher das Objekt nicht eröffnet wurde. Siehe auch IdentifyObject.

Hiernach folgt das Funktionsende.

Es konnte kein Linienzug identifiziert werden!

Diese Meldung erfolgt, wenn die Identifizierung von Linienelement nicht eindeutig genug ist. Hiernach wird der zuvor erschienene Dialog wiederholt.

Ende der Verkettung erreicht!

Diese Meldung dient lediglich als Information. Hiernach folgt z.B. der Dialog Nr. 6.

Beispiel

ConcatString NAM/1 DKY/131

ConcatString /CST NAM/1 /noDel

ConcatString DKY/53 /CST

ConcatString /H

Bemerkung

Die Verfolgung von Linienelementen verläuft in allen Objekten der Selektionsliste.

Es kann auch ein Objekt eröffnet werden, daß keine Linienelemente enthält. Wird dann ein Linienelement aus einem anderen Objekt identifiziert und die Verfolgung gestartet und auch beendet, wird das neue Linienelement in dem eröffneten Objekt abgelegt.

Es kann nach Funktionsaufruf nicht von der automatischen zur halbautomatischen/interaktiven Verknüpfung oder umgekehrt gewechselt werden.

Der Anwender muß beachten, wenn er ConcatString /CST aufruft, und nach der Identifizierung des ersten Linienelementes mit <CLS> das nächste Linienelement verfolgen will, daß die Verfolgung in Richtung der P-Verbindung („Anfangspunkt“) des identifizierten Linienelementes erfolgt.

Siehe auch