| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für PTC CREO |
Autor
|
Thema: MI to DXF mit Layerstruktur (3071 mal gelesen)
|
Mark E Mitglied Ingenieur
Beiträge: 15 Registriert: 09.08.2012 OSDD V15.5 Solid Works 2010 PE CATIA V5R16 ACAD 2011
|
erstellt am: 13. Aug. 2012 11:13 <-- editieren / zitieren --> Unities abgeben:
Hallo, noch eine Frage zu dem bekannten Problem der Konvertierung zu MI zu DXF. Ich muss Zeichnungen von MI zu DXF konvertieren und eine bestimmte Layer-Struktur erzeugen. Über die Namensräume kann ich die Layererzeugen und diesen werden auch korrekt in ACAD (zumindest laut Viewer, ich selber habe leider kein ACAD mehr um dies zu Überprüfen) Der Kunde überprüft die Zeichnungen mit einem Tool und dieses Tool sagt, dass die Farbe des Layers falsch ist. Nehmen wir an: Ich zeichne 4 Linien auf dem Layer 'Test' in rot -> Die Linien liegen auf dem korrekten Layer, da ich ihnen über ADD_ELEM_INFO den entsprechenden Layer zugewiesen habe, und die Linien sind in rot gezeichnet worden. Das Prüfungstool schaut sich (meines Erachtens) aber die Layereigenschaften an und findet dort wahrscheinlich die Standdardfarbe weiß Kann mir jemand sagen, wie ich einem Layer in OSDD V15.5, den Layern die entsprechenden Eigenschaften geben kann? Aus der README des DXFDWG-Konverters bin ich leider nicht schlau geworden. Danke Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
friedhelm at work Mitglied Techniker Aluminium Profile
Beiträge: 882 Registriert: 01.04.2003 Creo Elements Direct /Drafting 17+20.x ui classic-Tablett + Ribbon, Modeling 17-20.0,.2,.4,.5 Lizenz auf USB-Netzwerkadapter PE-Express 8 Win 10 Enterprise 64 @work Win 10 Pro 64 @home Notepad++,IrfanView,eDrawings, ....
|
erstellt am: 13. Aug. 2012 15:30 <-- editieren / zitieren --> Unities abgeben: Nur für Mark E
|
Mark E Mitglied Ingenieur
Beiträge: 15 Registriert: 09.08.2012 OSDD V15.5 Solid Works 2010 PE CATIA V5R16 ACAD 2011
|
erstellt am: 14. Aug. 2012 07:24 <-- editieren / zitieren --> Unities abgeben:
Hallo Friedhelm, der Link war mir schon bekannt und mit ihm konnte ich die Layer-Struktur vergeben. Leider schaffe ich es nicht den Layern auch Eigenschaften zuzuweisen. Folgende Informationen habe ich noch dazugefunden, leider bringt mich das nicht weiter: In der README des DXFDWG-Konverters steht folgendes: RecordByLayerInfo This switch is used in both directions of the translation. It is set to OFF by default. If set to ON in DXF->MI translation, it will add a special ACAD_COLOR_BY_LAYER info text to every entity that has color set to ByLayer. Similarly it will add ACAD_LINETYPE_BY_LAYER for line types. It will also add special ACAD_LAYER, ACAD_LAYER_STATUS and ACAD_LAYER_LINETYPE info text for each layer, to keep layer's color, linetype and status (visible, frozen and locked) at DXF->MI->DXF translation. At MI->DXF translation, the geometry that has above mentioned info texts attached will have assigned ByLayer color and/or line type. All this properties must belong to 'SYS:LAYER_SCOPE' standard name space (using INFO_NAMESPACE option in Drafting). Wenn ich das richtig verstehe, muss ich in den Namesraum 'SYS:LAYER_SCOPE' die Info-Texte ACAD_LAYER, ACAD_LAYER_STATUS und ACAD_LAYER_LINETYPE anhängen. Kann mir jemand sagen wie das geht? Von der ME10-Homepage hab ich eine Datei gefunden, die sich ebenfalls mit dem Thema beschäftigt, nur leider für eine alte Version (von 97 und für den Konverter DXF) Aber vielleicht kann mir jemand sagen, wie ich das auf die neue Version umstricken kann. Folgendes steht dort: er DXF-Translator wird nun beim Uebersetzen vom MI- in das DXF-Format die Layer erzeugen. Notwendig hierzu ist, das in der DXF.CON der Schalter KEEP BLOCKLAYER INFORMATION auf ON gesetzt wird! Im dritten Schritt werden nun noch die Linienfarben der Layer gesetzt. Hierzu steuert man den DXF-Translator ueber die Variable ACAD_LAYER_COLOR_[Layername]_[Farbnummer]. Diese Angabe 'heftet' man als Info an den TOP. z.B.: ADD_ELEM_INFO 'ACAD_LAYER_COLOR_MITTELLINIE_7' SELECT PARTS '~1' CONFIRM END Dieses Beispiel setzt den Layer 'Mittellinie' (siehe oben) auf die Farbe weiss (7). Wegen des eineindeutigen Teilenamens funktioniert dies natuerlich nicht bei aelteren ME10-Versionen als 6.0! Vielen Dank, ich bin bei diesem Thema langsam am Ende meines Latein. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
friedhelm at work Mitglied Techniker Aluminium Profile
Beiträge: 882 Registriert: 01.04.2003 Creo Elements Direct /Drafting 17+20.x ui classic-Tablett + Ribbon, Modeling 17-20.0,.2,.4,.5 Lizenz auf USB-Netzwerkadapter PE-Express 8 Win 10 Enterprise 64 @work Win 10 Pro 64 @home Notepad++,IrfanView,eDrawings, ....
|
erstellt am: 14. Aug. 2012 21:52 <-- editieren / zitieren --> Unities abgeben: Nur für Mark E
Hallo, die beiliegede Zeichnung module.mi habe ich mal bekommen. Wenn man mit dem Befehl LIST_GLOBAL_INFO_NAMESPACE 'SYS:LAYER_SCOPE' die die Layer betreffenden Infos listet kommt das heraus ACAD_LAYER 0 7 0 0.0000 ACAD_LAYER LAYER15 2 0 0.0000 ACAD_LAYER LAYER16 4 0 0.0000 ACAD_LAYER LAYER2 1 0 0.0000 ACAD_LAYER LAYER3 64 0 0.0000 ACAD_LAYER LAYER4 3 0 0.0000 ACAD_LAYER LAYER5 2 0 0.0000 ACAD_LAYER LAYER7 5 0 0.0000 LAYER: 0 LAYER: 1 LAYER: LAYER15 LAYER: LAYER16 LAYER: LAYER2 LAYER: LAYER3 LAYER: LAYER4 LAYER: LAYER5 LAYER: LAYER7 Wenn man dann einzelne Elemente mit dem Befehl EDIT_ELEM_INFO INFO_NAMESPACE 'SYS:LAYER_SCOPE' <Punkt auf Element> abfragt kommt zB. das heraus: ACAD_LAYER LAYER5 2 0 0.0000 LAYER: LAYER5 oder: ACAD_LAYER LAYER4 3 0 0.0000 LAYER: LAYER4 Jedes Element hat also im NAMESPACE 'SYS:LAYER_SCOPE' zwei Infos. Eine zur Bestimmung des Layernamen und die andere vermutlich als Kommando für den Translator Habe dann diese Zeichnung als module.dxf gespeichert und mit DraftSight geöffnet. Die Farben der Layer scheinen gut rüber gekommen zu sein. Dann habe ich in der DXFDWG.con RecordByLayerInfo auf ON gestellt und dann diese dxf-Datei wieder im Drafting geladen. LIST_GLOBAL_INFO_NAMESPACE 'SYS:LAYER_SCOPE' Lieferte dann zusätzlich zu den oben genannten Infos: ACAD_LAYER_STATUS 0 1 0 0 ACAD_LAYER_STATUS 1 1 0 0 ACAD_LAYER_STATUS LAYER15 1 0 0 ACAD_LAYER_STATUS LAYER16 1 0 0 ACAD_LAYER_STATUS LAYER2 1 0 0 ACAD_LAYER_STATUS LAYER3 1 0 0 ACAD_LAYER_STATUS LAYER4 1 0 0 ACAD_LAYER_STATUS LAYER5 1 0 0 ACAD_LAYER_STATUS LAYER7 1 0 0 ACAD_LINETYPE_BY_LAYER Diese werden wohl die Angaben für "visible, frozen and locked" mitgeben und ich glaube nicht das du das benötigst. Jetzt haben die Elemente also drei Infos, ausser die Punkte in den grünen Kreisen. Die haben als 4.Info zusätzlich 'ACAD_LINETYPE_BY_LAYER' Jetzt scheint klar zu sein wie du dem Translator sagst was er zu tun hat. Wenn du den verschiedenen Elementen die Layer-Infos geben kannst, kannst du auf dem gleichen Weg die Zusatzinfo anhängen. Nur was die Zahlen im Einzelnen bedeuten muss noch ermittelt werden. Vieleicht kannst du deinen Kunden bitten, dir eine dxf zur Verfügung zu stellen, in der alle Layer und dazugehörigen Farben vorkommen. Event. könnten auch Linienarten dabei herauskommen, das war in meiner Beispielzeichnung nicht vorgekommen. Mit RecordByLayerInfo auf ON geladen und schon hast du alle Angaben die du brauchst. Hoffe, das hilft dir weiter. ------------------ Gruss Friedhelm Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Mark E Mitglied Ingenieur
Beiträge: 15 Registriert: 09.08.2012 OSDD V15.5 Solid Works 2010 PE CATIA V5R16 ACAD 2011
|
erstellt am: 15. Aug. 2012 08:06 <-- editieren / zitieren --> Unities abgeben:
Hallo Friedhelm, danke, dass ist genau das was ich heute durch eine DXF-Datei umgewandelt in Mi herausgeunden habe. Da hatten wir wohl die gleiche Idee. Was die Zahlen bedeuten, kann ich wohl die Tage hier posten, denn das sollte ich nun herausbekommen. Danke für die Zeit und Mühe! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
friedhelm at work Mitglied Techniker Aluminium Profile
Beiträge: 882 Registriert: 01.04.2003 Creo Elements Direct /Drafting 17+20.x ui classic-Tablett + Ribbon, Modeling 17-20.0,.2,.4,.5 Lizenz auf USB-Netzwerkadapter PE-Express 8 Win 10 Enterprise 64 @work Win 10 Pro 64 @home Notepad++,IrfanView,eDrawings, ....
|
erstellt am: 15. Aug. 2012 22:00 <-- editieren / zitieren --> Unities abgeben: Nur für Mark E
Kam mir an Ende selber etwas lang vor, aber lieber zu ausführlich als zu knapp und dann hilfts am Ende nicht. Waren die Linienarten "ACAD_LINETYPE_BY_LAYER" bzw. "ACAD_LAYER_LINETYPE" auch in der Zeichnung dabei? Würde mich freuen das bis zum Ende auszutüfteln. Man findet ja herzlich wenig darüber. ------------------ Gruss Friedhelm Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Mark E Mitglied Ingenieur
Beiträge: 15 Registriert: 09.08.2012 OSDD V15.5 Solid Works 2010 PE CATIA V5R16 ACAD 2011
|
erstellt am: 16. Aug. 2012 13:46 <-- editieren / zitieren --> Unities abgeben:
Also, ich werd an dem Projekt noch 1-3 Tage sitzen und noch eine Erklärung schreiben. Ich werde also noch das Ergebnis posten, so dass man entsprechend dieser Informationen, dann selber basteln kann. Die Info ACAD_LAYER_BY_LINETYPE, ACAD_LAYER_STATUS müssen ebenfalls gesetzt werden, wenn man eine Layerstruktur für AutoCad erzeugen will, in dem jede Linienart einen eigenen Layer bekommt und in AutoCad entsprechend Linienfarbe, Linienstärke und Linientyp nach Layer eingezeigt werden. Eine vollständige Erklärung der zu vergebenen Zahlen bei der Eigenschaftszuweisung werde ich nicht posten können, aber meine gesammelten Erkenntnisse, werde ich dann wahrscheinlich Montag oder Dienstag hier zeigen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Mark E Mitglied Ingenieur
Beiträge: 15 Registriert: 09.08.2012 OSDD V15.5 Solid Works 2010 PE CATIA V5R16 ACAD 2011
|
erstellt am: 17. Aug. 2012 11:19 <-- editieren / zitieren --> Unities abgeben:
Also hier die ersten Ergebnisse: In die Elem-Infos müssen folgende Informationen (Namensraum: "SYS:LAYER_SCOPE": ACAD_COLOR_BY_LAYER ACAD_LINETYPE_BY_LAYER Damit zeigt AutoCAD, die Elemente auf dem Layer, mit den Eigenschaften des Layers an. Entscheidend für die Darstellung sind nun die folgende Parameter mit denen die Eigenschaften der Layer erzeugt werden. Jedes Element muss mit der Information im Namensraum "SYS:_LAYER_SCOPE" versehen werden: ACAD_LAYER [LAYERNAME] [Zahl1] [Zahl2] [Zahl3] [Zahl1] regelt die Farbe 0 -> 250 (Schwarz) 1 -> Rot 2 -> Grün 3 -> Gelb 4 -> Blau 5 -> Magenta 6 -> Cyan 7 -> Weiß [Zahl2] regelt den Linientypen 0 -> Continious 1 -> Dashed 2 -> Dotted 3 -> Dot-Center 4 -> 5 -> Long-Dashed 6 -> Dash-Center 7 -> Phantom Zahl3 regelt vermutlich die Stiftstärke, ich bin gerade am untersuchen. Ergebnisse sind durch ausprobieren entstanden... Angehängt mal meine WUI_INFO_Browser. Laut DWG-Editor kommen meine Layer aus ME10 korrekt in ACAD an. ACAD_LAYER_STATUS [Diese Nachricht wurde von Mark E am 17. Aug. 2012 editiert.] [Diese Nachricht wurde von Mark E am 17. Aug. 2012 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
friedhelm at work Mitglied Techniker Aluminium Profile
Beiträge: 882 Registriert: 01.04.2003 Creo Elements Direct /Drafting 17+20.x ui classic-Tablett + Ribbon, Modeling 17-20.0,.2,.4,.5 Lizenz auf USB-Netzwerkadapter PE-Express 8 Win 10 Enterprise 64 @work Win 10 Pro 64 @home Notepad++,IrfanView,eDrawings, ....
|
erstellt am: 14. Mrz. 2013 12:32 <-- editieren / zitieren --> Unities abgeben: Nur für Mark E
|
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|