Thursday 21 November 2013

TB2 Darstellungsmodell nach Map umstellen – Beispiel 2 – Linie


In Fortführung des Beitrages von letzten Monat (Blöcke). Mir fehlt etwas die Zeit für eine ausführlichere Beschreibung, bei Fragen antworte ich gerne.


In Kurzform wie man Liniensignaturen aus TB2 nach Map übernimmt und diese auch wieder über den DWG Export als Zeichnung sauber abgeben kann:

Hinweise: 
(1) Die Angaben bei der AutoCAD Linientypdefinition sind ohne Einheiten. Die Angaben der Linientypdefinition im Map-Layer (zumindest bei <Geometry>, <Repeat>) sind immer in "Millimeter".

(2) Die Linie im Beispiel stammt aus einem TB2 DM für den Plotmassstab 1:1000.

Vorgehensweise:

1. TB2 Prototypzeichnung öffnen und Liniendefinitionen als LIN Datei exportieren (falls man die LIN Dateien nicht mehr hat) – Empfohlen mit frei verfügbaren Werkzeug von CadStudio, Export mit dem Befehl "Linout1" (ohne SHX Symbol-Export), nicht mit LINOUT (mit SHX Export), Link  Download.

2. Bildaufbau mit Map
3. Stil-Editor für Linienfeatureklasse öffnen
3. Karteneinheiten auf Meter setzen
4. Lin Datei importieren und der Linie die gewünschte Liniensignatur zuweisen
5. Darstellungsmodell/Layer speichern
6. Layer im Text-Editor öffnen

Liniendefinition – für AutoCAD
*LTYPWZS2,[WLT2] LTYPWZS2
A, 0.5, -0.2

Liniendefinition in der Layer-Datei in Map nach dem Import
<Geometry>M 0,0 L 5,0 </Geometry>
...
<Repeat>5.6</Repeat>

Signaturdefinition im Map-Layer wie Signaturdefinition für AutoCAD Linie aber mit Faktor 10 multipliziert. In AutoCAD ist der Abstand zwischen zwei Linien "0.2" Einheiten, im Map Layer dagegen "0.6" Einheiten, da bei <Repeat> der Wert "5.6" eingetragen ist.

8. Der Abstand zwischen den Linienstückchen ist in Map also falsch und muss korrigiert werden. Abstand bei AutoCAD – "0.2", den Wert mit Faktor 10 multiplizieren ergibt: "2"

Repeat Faktor = Länge der Geometrie (<Geometry>) + gewünschter Abstand
Repeat Faktor = 5 + 2 = 7

<Repeat>7</Repeat>

9. Bei  <ParameterOverrides> die Werte bei

<ParameterIdentifier>StyleEditorGenerated_ScaleX_0</ParameterIdentifier>
<ParameterIdentifier>StyleEditorGenerated_ScaleY_0</ParameterIdentifier>
auf "1" setzen.

Jetzt ist die Liniensignatur in Map mit der von AutoCAD identisch. Was noch fehlt ist die korrekte Skalierung. Im Beispiel ist der Skalierfaktor für die Linien in AutoCAD "1"  (1:1000 Plotmassstab der Zeichnung in TB2)

Linieneigenschaften in TB2 DM


10. Skalierung anpassen
Nach </ParameterOverrides> folgende Ergänzungen vornehmen:
<ScaleX>1000</ScaleX>
<ScaleY>1000</ScaleY>

Jetzt ist die Linie in Map gleich skaliert wie die Linie in AutoCAD. Das funktioniert nun auch für den DWG Export. Die exportierte Linie behält ihre Skalierung (zumindest in Map 2013, SP2).

Restarbeiten: Linienstärke ist im TB2 Darstellungsmodell mit "ElementSize" = "2" angegeben. In Map errechnet sich dann die Linienstärke so:

Wert ElementSize in TB2 DM * gewünschter Plotmassstab

Bei ParameterOverrides gibt man dann bei LINEWEIGHT an:
<ParameterIdentifier>LINEWEIGHT</ParameterIdentifier>
<ParameterValue>2 * 1000</ParameterValue>

Im Abschnitt <Path> noch abgeben, dass die Linienenden nicht abgerundet werden sollen:
<LineCap>None</LineCap>

Hier die Gegenüberstellung - TB2 und Map (1:1000)


Links - Map, rechts - TB2

 Hier die modifizierten Teile des Layers:
 

<Path>
<Geometry>M 0,0 L 5,0 </Geometry>
<ScaleX>%StyleEditorGenerated_ScaleX_0%</ScaleX>
<ScaleY>%StyleEditorGenerated_ScaleY_0%</ScaleY>
<LineColor>%LINECOLOR%</LineColor>
<LineWeight>%LINEWEIGHT%</LineWeight>
<LineWeightScalable>false</LineWeightScalable>                                                                       <LineCap>None</LineCap>
</Path>
</Graphics>
<LineUsage>
<Repeat>7</Repeat>
</LineUsage>
....
<ParameterOverrides>
<Override>
<SymbolName>LTYPWZS2</SymbolName>
<ParameterIdentifier>LINECOLOR</ParameterIdentifier>
<ParameterValue>ff000000</ParameterValue>
</Override>
<Override>
<SymbolName>LTYPWZS2</SymbolName>
<ParameterIdentifier>LINEWEIGHT</ParameterIdentifier>
<ParameterValue>2 * 1000</ParameterValue>
</Override>
<Override>
<SymbolName>LTYPWZS2</SymbolName>                        <ParameterIdentifier>StyleEditorGenerated_ScaleX_0</ParameterIdentifier>
<ParameterValue>1</ParameterValue>
</Override>
<Override>
<SymbolName>LTYPWZS2</SymbolName>
<ParameterIdentifier>StyleEditorGenerated_ScaleY_0</ParameterIdentifier>
<ParameterValue>1</ParameterValue>
</Override>
</ParameterOverrides>
<ScaleX>1000</ScaleX>
<ScaleY>1000</ScaleY>
....


No comments:

Post a Comment