Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  AutoCAD Civil 3D
  Zwei Dateien Zusammenfügen / jedoch nur die Attribute

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Zwei Dateien Zusammenfügen / jedoch nur die Attribute (1576 mal gelesen)
Legacy
Mitglied
Ingenieur

Sehen Sie sich das Profil von Legacy an!   Senden Sie eine Private Message an Legacy  Schreiben Sie einen Gästebucheintrag für Legacy

Beiträge: 8
Registriert: 26.03.2014

erstellt am: 08. Sep. 2016 12:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo liebes CAD-Forum
und ein Hallo an alle die das hier lesen und mir ggf. helfen können.

Kurz zu mir, ich bin kein CAD Anfänger mehr aber auch kein CAD Guru – irgendetwas dazwischen.

Nun zu meinem Problem:

Beginnen wir so, ich habe vorliegend eine dwg Datei mit ca. 15‘000 Blöcken. Diese Blöcke unterteilen sich in ca. 10 verschieden Blockkategorien, jeder dieser Blöcke besitzt die gleichen Attribute, dennoch mit unterschiedlichem Inhalt. Diese dwg wird nachfolgend DWG-1 genannt.

Zu der DWG-1 gibt es eine x-Ref dwg. Hier ist es dieselbe Konstellation wie bei der DWG-1.  Also ca. 15‘000 Blöcke mit gleichen Attributen jedoch unterschiedlichen Inhalt. Die x-Ref wird nachfolgend DWG-2 genannt.

Die Blöcke der DWG-1 sowie der DWG-2 sind in ähnlicher Position – aber nicht Koordinaten exakt und somit auch nicht „Mittelpunktgenau“. Sagen wir, +/- ein paar Millimeter Differenz.
Zieldatei soll die DWG-1 sein.

Problemstellung – was will ich:

Die Blöcke der DWG-1 wurden in den Attributen falsch beschriftet, jedoch befindet sich in der DWG-2 die richtige Beschriftung der Attribute. Im Kehrschluss bedeutet dass also, Attribute der DWG-2 müssen in die DWG-1. Jedoch ist ein „Einfaches“ Kopieren der Blöcke nicht möglich, da die „Blocksymbole“ in der DWG-2 wiederum falsch sind, jedoch in der DWG-1 richtig.

Was habe ich versucht / Was waren meine Ideen:

1.Ganz banal mit „Datenextrakt“ – es werden die Koordinaten, die Lage, die Attribute und sonst noch ausgegeben. Der Export erfolgt in eine CSV Datei. Theoretisch kann ich das bei beiden machen, jedoch hilft mir das an der Stelle später nicht weiter, da die Koordinaten nicht an der „Selben“ Stelle sind und somit die Zuordnungen fehlschlagen würden.

2.Unter der Rubrik Express Tools gibt es die Option „Attribute Export und Import“. Prinzipiell genau das was ich suche. In beiden DWG Dateien den Export machen, im Excel ist die DWG-1 dann die Referenz, Daten „Anpassen, Suchen und Ersetzen, Reinkopieren“ und wieder den Import in der DWG-1 machen – fertig. (Den Bezug zu den einzelnen Blöcken stellt das CAD mit dem HANDLE dar (hoff ich zumindest), somit wäre ein Import wieder an der richtigen Stelle)
Das Problem hierbei ist nur, es gibt keine exakte Zuordnung. Woher weiß ich dann in Excel, welcher Block aus der DWG-1 zur DWG-2 gehört? Ich kann mich wohl nicht darauf verlassen, das CAD die „Reihenfolge“ beim Export der Blöcke in beiden DWG’s gleich macht?

3.Um die Lösung von 2. anwenden zu können – wäre ideal, müsste ich in beiden DWG’s den Blöcken eine identische Nummer zuweisen. Dann könnte es mit Nr. 2 klappen.

Ist es im CAD überhaupt möglich, die Blöcke Automatisch so Nummerieren zu lassen, das es dieselbe Reihenfolge in beiden DWG’s macht – oder muss das von Hand erfolgen. Denn wenn ich das von Hand machen muss, kann ich auch gleich die Attribute selber eintragen.

Ich hoffe ich habe mein Problem verständlich dargestellt und jemand kann mir hier helfen. Vielleicht hat ja auch jemand eine ganz andere Idee, wie ich zur „einfachen“ Lösung komme. Nebenbei, der Export in eine CSV sollte sein, da diverse Sachen im Excel angepasst werden sollen/müssen.

Vielen Dank an Alle und in Guter Hoffnung bis später.
Grüße Legacy

[Diese Nachricht wurde von Legacy am 08. Sep. 2016 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RL13
Ehrenmitglied V.I.P. h.c.
Dipl.-Ing. Bauwesen


Sehen Sie sich das Profil von RL13 an!   Senden Sie eine Private Message an RL13  Schreiben Sie einen Gästebucheintrag für RL13

Beiträge: 2373
Registriert: 23.10.2008

Civil 3D 2018.1
Civil 3D 2016 64 Bit SP 3
mit DACH und Extensions
W7 Professional 64Bit
HP Z440
Intel Xeon CPU E5-1620 v4
32 GB RAM
NVIDIA Quadro P4000

erstellt am: 08. Sep. 2016 13:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Legacy 10 Unities + Antwort hilfreich

Hallo,

ich glaube zwar Dich verstanden zu haben, denke aber das Problem ist nicht so trivial zu lösen.
1. Mit MAP-Funktionen würde ich es "grob umrissen" über _mapfdobuffercreate lösen. Damit kann man Objekte (GIS-Punkte) welche nahe beieinander liegen über eine Puffer-Entfernung miteinander verknüpfen und die Attribute von einem auf den anderen übertragen.

2. Mir stellt sich jedoch die Frage woher stammen denn die räumlichen Abweichungen in der ansonsten inhaltlich korrekten DWG-2
Vielleicht hilft da ja der AutoCAD-Befehl: AUSRICHTEN 

------------------
mfg Roman

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Ehrenmitglied V.I.P. h.c.
良い精神



Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

System: F1
und Google

erstellt am: 08. Sep. 2016 14:41    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Legacy 10 Unities + Antwort hilfreich

Mir würden etliche Lösungen einfallen, insbesondere weil viele Daten  nicht bekannt sind.
Daher grobe Beispiel:

a)
Falls sich die Positionen der Blöcke innerhalb der Datei deutlich unterscheiden(im Zweifelsfall kann man mit Varia dafür sorgen):

Sortiere in Excel über die XY-Koordinaten, wenn die Listen dann gleich sortiert sind -> übertragen.

b)
Wenn die DWG2 eine Kopie der DWG1 ist, darin die vorhandenen Referenzen nur verschoben wurden(um Millimeter),
dann reicht es aus der einen Datei die Daten auszulesen und in die andere zu importieren(denn dann wären die Handle identisch)
Dieser Fall trifft in der Praxis aber selten zu und muss penibel geprüft werden.

c)
Programmierung mit Übertrag durch Umkreissuche, aber wenn du das könntest würdest du nicht Fragen. Daher Hausmittel a) verfolgen.

zu a) das Das ist eine reine Excellösung was die Zuordnung angeht,
zuvor besteht die Aufgabe darin Handle, Attribwerte und XY-Koordinaten in eine Tabelle zu bringen, da gibt es auch mehrere Wege.

Nun: Was wird deine erste konkrete Frage?

------------------
CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADsolutions
Mitglied
Konstrukteur Straßenbau


Sehen Sie sich das Profil von CADsolutions an!   Senden Sie eine Private Message an CADsolutions  Schreiben Sie einen Gästebucheintrag für CADsolutions

Beiträge: 403
Registriert: 04.01.2013

AutoCAD Civil 3D 2018.2
Windows 7 64bit

erstellt am: 08. Sep. 2016 17:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Legacy 10 Unities + Antwort hilfreich

Habs noch nicht ganz:
Sind in DWG1und2 NUR 10 unterschiedliche Blöcke mit je 1.500 unterschiedlichen Attributdefinitionen? Wenn dem so wäre, müsstest Du ja nur die 10 Blöcke in DWG2 bearbeiten (Blockeditor), so dass sie die richtigen Symbole wie in DWG1 haben.
Oder hast Du 1500 unterschiedliche Blöcke? Dann wird natürlich zäh ;-)

Was meinst Du mit "Blocksymbolen"? Wenn Die Blocknamen der DWG1 und 2 identisch ist, müsste doch beim Kopieren die Attribute von DWG2 übernommen werden, jedoch die Blockdefinition (Darstellung des Blocks)von DWG1 beibehalten werden.

Gruß
CADso

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Ehrenmitglied V.I.P. h.c.
良い精神



Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

System: F1
und Google

erstellt am: 08. Sep. 2016 17:47    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Legacy 10 Unities + Antwort hilfreich

Die Blockdefinition hat nichts mit dem Einfügepunkt der Blockreferenzen und nichts mit dem Attributwert zutun(solange man nicht von "konstanten Attributen" spricht, die es eigentlich nicht gibt)


DWG1 enthält korrekte Einfügepunkte der Blockreferenzen
DWG2 enthält die korrekten Attributwerte, aber (leicht) andere Einfügepunkte.

Aufgabe: Bitte erstelle DWG3
Positionen der Referenzen aus DWG1, aber mit den Attributwerten aus DWG2.

Und entweder muß der Mensch mit Excel oder ein extra Programm die Zuordnung von->nach schaffen,
nur in einer Variante würde es direkt gehen (meine Antwort b), wenn die Handels identisch sind.

------------------
CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RL13
Ehrenmitglied V.I.P. h.c.
Dipl.-Ing. Bauwesen


Sehen Sie sich das Profil von RL13 an!   Senden Sie eine Private Message an RL13  Schreiben Sie einen Gästebucheintrag für RL13

Beiträge: 2373
Registriert: 23.10.2008

Civil 3D 2018.1
Civil 3D 2016 64 Bit SP 3
mit DACH und Extensions
W7 Professional 64Bit
HP Z440
Intel Xeon CPU E5-1620 v4
32 GB RAM
NVIDIA Quadro P4000

erstellt am: 09. Sep. 2016 08:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Legacy 10 Unities + Antwort hilfreich

Hallo cadffm,

Zitat:
Und entweder muß der Mensch mit Excel oder ein extra Programm die Zuordnung von->nach schaffen,
nur in einer Variante würde es direkt gehen (meine Antwort b), wenn die Handels identisch sind.

Er brauch kein extra Programm geht wie gesagt auch mit MAP-Befehlen in Civil

hier mal die Vorgehensweise die ich erst grob umrissen hatte:
1) _mapexport -> die Blöcke aus beiden DWG als Punkt-SDF exportieren. Als Attribute die Blockattribut wählen
2) mit _mapfdobuffercreate einen Puffer um die Punkte aus 1)(DWG1) erzeugen. Als Puffer einen Abstand wählen, der etwas größer ist, als der größte Abstand der Punkte-SDF aus DWG1 zu DWG2.
3) mit _MapGisOverLay die Punkt-SDF aus 1) (DWG2) (Quelle) mit dem Puffer aus 2) (Verschneidung) als Identität (Typ) verschneiden.
4) Verknüpfung der Punkte 1) (DWG2) mit den aus 3) entstandenen SDF erstellen über die Identitätseigenschaften.

Ergebnis sind GIS-Punkte an der korrekten Position mit den Attributen aus beiden Blockvarianten welche dann wieder in normale attributierte AutoCAD-Blöcke umgewandelt werden können (Sofern man nicht gleich bei den, wie ich finde, vorteilhafteren GIS-Punkten bleibt, geraden wenn es um 15.000 Stück geht)

------------------
mfg Roman

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Legacy
Mitglied
Ingenieur

Sehen Sie sich das Profil von Legacy an!   Senden Sie eine Private Message an Legacy  Schreiben Sie einen Gästebucheintrag für Legacy

Beiträge: 8
Registriert: 26.03.2014

erstellt am: 09. Sep. 2016 11:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Beispiel_1.JPG

 
Zunächst erst einmal ein Hallo an Alle und vielen Dank für die qualifizierten Aussagen!

Auch wenn es der eine oder andere nicht ganz verstanden hat, ist nicht schlimm, ich steh auch gern auf dem Schlauch.

Also, nachdem ich gestern die beiden DWG Dateien auf das „wesentliche“ (mittels Layer ausknipsen) reduziert habe, sind es „nur noch“ was um die 1000 Blöcke die es betrifft. Alles andere ist Nebensache. Am meisten gefällt mir jedoch die Aussagen von „RL13“ ohne jetzt die anderen zu beleidigen(!) alles Gute Ideen - DANKE, aber RL13 liegt näher dran. Ich hatte diesen Weg auch im Kopf, aber keinen Schimmer wie das geht (auch jetzt noch nicht so richtig – zumindest ab Punkt 3).

Nachdem alles reduziert war, wurden die Attribute in eine txt file gesendet und mit Notepad angeschaut. Blockanzahl stimmt jeweils, jedoch exportiert Civil die Blöcke nicht gleich und die HANDELS stimmen auch nicht – prima! Das heißt also, Block Nummer sowieso aus DWG-1 mit der Zeile (z.B.) Nr.: 18 stimmt nicht mit dem Block aus DWG-2 auf Zeile Nr.: 18 überein. Wäre ja zu einfach gewesen.

Um die ganze Sache etwas zu vereinfachen (hätte ich schon eher machen sollen) ist im Anhang mal ein Screen.

Also, das grau hinterlegte ist die xRef Datei (DWG-2). Rechts stehen die Lampennummer, Links die Heizung dazu. Die Kreise in dem jeweiligen weißen Kasten, gehören zu der jeweiligen Bezeichnung aus der xRef.
Der Weiße Kasten mit dem „X“ kommt aus der DWG-1 – das ist die MASTER DWG. Hier stimmt die Lage des Symbols und auch die dazugehörige Attributbeschriftung – NICHT DER ATTRIBUTWERT, dass ja das Problem.

Beispiel anhand des Screen:

Unterster Block, Die Bezeichnung aus der xRef „14 Netz B TDZ 4L-704“ mit der Attributkennung *xy* (nicht zu sehen) soll (so wie es ist) in den weißen Block an die Stelle des „X“ in die DWG-1 mit der Attributkennung *abc*. Wenn möglich (aber nicht primär) soll die Linke Kennung „14 Netz A TDZ 4H-704“ mit in die DWG-1 übernommen werden, auf die Attributkennung *cde*.
Es muss nicht zwingend in einem Aufwasch gemacht werden, wenn erst das Licht und dann die Heizung ergänzt werden, wäre das kein Problem.

Es sollte also so funktionieren:

Step-1: Der Attributwert *14 Netz B TDZ 4L-704* aus der xRef, soll in die DWG-1 an Stelle des *X*
Step-2: Der Attributwert * (Heizung) Links* aus der xRef, soll in die DWG-1 an Stelle des Attributwertes *Heizung*.

Eigentlich war‘s das… und nun? Die Idee von RL13 kommt da schon sehr nah ran, nur scheitere ich am Punkt 3 und 4… Ich bin leider kein CAD-Guru. Könntest du das evtl. noch etwas genauer erklären? Oder besser, die Formulierung etwas breiter ziehen???

Vielen Dank an Alle!!!

EDIT:
Also, bis Punkt 3) hab ich es, nur
4) Verknüpfung der Punkte 1) (DWG2) mit den aus 3) entstandenen SDF erstellen über die Identitätseigenschaften.
komm ich nicht klar. Ich habe die SDF in die Originale mittels "Verbinden mit" reingeholt. Nun habe ich die zwei Punkte mit den beiden Attributwerten in der DWG. Glaube aber das das falsch ist. Wie bekomme ich jetzt den Wert in das oben genannte "X"???

[Diese Nachricht wurde von Legacy am 09. Sep. 2016 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RL13
Ehrenmitglied V.I.P. h.c.
Dipl.-Ing. Bauwesen


Sehen Sie sich das Profil von RL13 an!   Senden Sie eine Private Message an RL13  Schreiben Sie einen Gästebucheintrag für RL13

Beiträge: 2373
Registriert: 23.10.2008

Civil 3D 2018.1
Civil 3D 2016 64 Bit SP 3
mit DACH und Extensions
W7 Professional 64Bit
HP Z440
Intel Xeon CPU E5-1620 v4
32 GB RAM
NVIDIA Quadro P4000

erstellt am: 09. Sep. 2016 13:56    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Legacy 10 Unities + Antwort hilfreich

Merk grad hatte in meiner Beschreibung einen Fehler drin Punkt 4) müsste so lauten:

4) Verknüpfung der Punkte 1) (DWG1) mit den aus 3) entstandenen SDF erstellen über die Identitätseigenschaften.

der Punkte noch etwas ausführlicher bedeutet:
dass Du im MAP-Aufgabenfenster  (mit _MAPWSPACE einschalten) rechte Maus auf die SDF der Punkte aus DWG1 -> Verknüpfung erstellen...
und als übereinstimmende Eigenschaft jeweils "FeatID" von dwg1 Punkte-sdf und Identität-sdf verlinkst.

------------------
mfg Roman

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RL13
Ehrenmitglied V.I.P. h.c.
Dipl.-Ing. Bauwesen


Sehen Sie sich das Profil von RL13 an!   Senden Sie eine Private Message an RL13  Schreiben Sie einen Gästebucheintrag für RL13

Beiträge: 2373
Registriert: 23.10.2008

Civil 3D 2018.1
Civil 3D 2016 64 Bit SP 3
mit DACH und Extensions
W7 Professional 64Bit
HP Z440
Intel Xeon CPU E5-1620 v4
32 GB RAM
NVIDIA Quadro P4000

erstellt am: 09. Sep. 2016 14:06    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Legacy 10 Unities + Antwort hilfreich

Übrigens hat cadffm das Problem genauso wie ich verstanden (denk ich zumindest) und seine Lösung über Excel würde auch funktionieren.
Du müsstest nur sozusagen die Koordinaten in beiden Blockdateien in einer extra Spalte über Formeln so runden das sie identisch und damit verknüpfbar sind (nichts anderes mach ich mit dem Puffer in MAP)

------------------
mfg Roman

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz