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>
....