| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Script-Datei einlesen (2513 mal gelesen)
|
YR Mitglied
Beiträge: 45 Registriert: 14.04.2009 Autocad 2008, Autocad Map 2009
|
erstellt am: 14. Apr. 2009 15:11 <-- editieren / zitieren --> Unities abgeben:
Hi, hab mal ne Frage. Ich möchte eine ascii-Datei ins Autocad einlesen. Ich bin mit meinen Ermittlungen nun schon so weit, dass ich meine ascii-Datei in eine Script-Datei umwandeln soll. Nachfolgend stehend: aus ------------- 700001 72 1002.000 5000.000 120.00 700002 72 1003.000 5000.000 120.00 700003 72 1004.000 5000.000 120.00 usw. umwandeln in ------------- ATTREQ 1 ATTDIA 0 _-INSERT 72 1002.000,5000.000,120.00 1 1 0 700001 _-INSERT 72 1003.000,5000.000,120.00 1 1 0 700002 _-INSERT 72 1004.000,5000.000,120.00 1 1 0 700003 usw. Meine Frage noch dazu. Die 72 ist der Punktcode, wenn ich meine Datei einlese, soll der Punktcode in den dazugehörigen Block bzw. Symbol umgewandelt werden. Ist das realisierbar? Oder muss ich das in der Script-Datei bereits ändern und dort anstatt der 72 den Namen des dazugehörigen Blockes eingeben? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cosgeo Mitglied Vermessungsingenieur
Beiträge: 591 Registriert: 16.12.2004
|
erstellt am: 14. Apr. 2009 15:29 <-- editieren / zitieren --> Unities abgeben: Nur für YR
Entweder du änderst in der Skriptdatei "72" in den entsprechenden Blocknamen, oder du benennst den Block auf Windows Ebene um .-) Aber auf Dauer wirst Du damit doch nicht arbeiten wollen ?! Wie im ACAD Forum schon festgestellt, sind einige "MAP Funktionen" nur noch im AutoCAD Civil vorhanden. Korrekter muß man sagen, die Civil Funktionen sind aus AutoCAD MAp verschwunden :-) Zum Verständnis: Basis con allem ist AutoCAD. Drüber kommt Map. Bis Version 2007/2008 (etwa) kam direkt drüber das AutoCAD Civil 3D. (das bedeutet in Civil war das komplette Map enthalten) Inzwischen versucht AUtodesk Civil und Map (aus Marketinggründen ?) sauberer auseinaderzudivdieren. Deshalb hast SU in Map 2009 keine Funktion zum Einlesen von Punkten. In Map 2010 könnte das schon wieder etwas anders aussehen - kommt in Kürze raus :-). Das Stichwort im Autodesk-Deutsch lautet COGO-Punkte.
------------------ Wer aufräumt - ist nur zu faul zum suchen :-) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
YR Mitglied
Beiträge: 45 Registriert: 14.04.2009 Autocad 2008, Autocad Map 2009
|
erstellt am: 14. Apr. 2009 15:48 <-- editieren / zitieren --> Unities abgeben:
Da ich nur selten mit AutoCad arbeite, würde mir das schon genügen. Ich arbeite sonst mit Geograf. Außerdem würden wir einen Tool schreiben, der meine Ascii-Datei in eine Script-Datei umwandelt. Nur funktionieren muss es noch. Ich hab gelesen, dass man eine Zeichnung, die man mit Civil erstellt, nicht komplett im normalen AutoCad bearbeiten kann, sondern dass da einige Teile der Zeichnung nur betrachtet werden können. Und da nützt mir das Civil nichts, spätestens wenn unsere Auftraggeber die Zeichnung erhalten und weiterbearbeiten kommt der Anschiss. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
marc.scherer Moderator CAD-Administrator
Beiträge: 2490 Registriert: 02.11.2001 Windows 10 64bit AutoCAD Architecture 2018/2019 (deu/eng) AEC-Collection 2019 (Revit und Zeugs) Wenn sich's nicht vermeiden läßt: D-A-CH Erweiterung (mies implementierter Schrott)
|
erstellt am: 14. Apr. 2009 15:57 <-- editieren / zitieren --> Unities abgeben: Nur für YR
Hi YR, in einigen der "AutoCAD-Vertikal-Produkte" ist eine Funktion: Export to AutoCAD (Befehl im ADT 2007 "_AecExportToAutoCAD2007") enthalten. Ich könnte mir Vorstellen, das es das auch im Civil gibt. Damit wird dann in der Regel eine reine AutoCAD Zeichnung erstellt. Das solltest Du bezüglich Civil mal in Erfahrung bringen (evtl. weiß auch einer der Kollegen hier genaues), denn dann kannst Du mit den ganzen netten Funktionen arbeiten und saubere AutoCAD Dateien zur Abgabe exportieren.
------------------ Ciao, Marc Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cosgeo Mitglied Vermessungsingenieur
Beiträge: 591 Registriert: 16.12.2004
|
erstellt am: 14. Apr. 2009 15:57 <-- editieren / zitieren --> Unities abgeben: Nur für YR
|
Stelli1 Moderator Verm.-Ing.
Beiträge: 1521 Registriert: 17.08.2005 AutoCAD Map aktuell, Designsuite VS6, VS.net
|
erstellt am: 14. Apr. 2009 16:31 <-- editieren / zitieren --> Unities abgeben: Nur für YR
Hi, du hast in deiner Systeminfo keine Angabe über die verwendete Version. Ich nehme mal an Map 2009. Du kannst dort deine Daten auch über ODBC einlesen. Zuvor solltest du die Daten aber mindestens in Excel oder besser Access haben. In Excel kannst du zb mit SVERWEIS deine Punktcodes in Blocknamen umwandeln. In Access mit einer kleinen Abfrage. Dann hast du die Punkte schon mal in Map. Wilfried Stelberg ------------------ Warum lisp'eln wenn's auch anders geht. www.ib-stelberg.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
YR Mitglied
Beiträge: 45 Registriert: 14.04.2009 Autocad 2008, Autocad Map 2009
|
erstellt am: 14. Apr. 2009 16:39 <-- editieren / zitieren --> Unities abgeben:
@ Stelli1: ja, Map 2009. Hatte ich eigentlich angegeben. Komisch. Wenn du mir noch sagst, was ODBC ist und wie die Excel-Datei auszusehen haben muss, würde mir das sehr helfen. Sorry, aber hab mit Autocad nicht viel am Hut. [Diese Nachricht wurde von YR am 14. Apr. 2009 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stelli1 Moderator Verm.-Ing.
Beiträge: 1521 Registriert: 17.08.2005 AutoCAD Map aktuell, Designsuite VS6, VS.net
|
erstellt am: 14. Apr. 2009 20:42 <-- editieren / zitieren --> Unities abgeben: Nur für YR
|
KlaK Ehrenmitglied V.I.P. h.c. Dipl. Ing. Vermessung, CAD- und Netz-Admin
Beiträge: 2624 Registriert: 02.05.2006 AutoCAD LandDesktop R2 bis 2004 Civil 3D 2005 - 2019 Plateia, Canalis Visual Basic
|
erstellt am: 14. Apr. 2009 21:12 <-- editieren / zitieren --> Unities abgeben: Nur für YR
|
YR Mitglied
Beiträge: 45 Registriert: 14.04.2009 Autocad 2008, Autocad Map 2009
|
erstellt am: 15. Apr. 2009 08:26 <-- editieren / zitieren --> Unities abgeben:
|
YR Mitglied
Beiträge: 45 Registriert: 14.04.2009 Autocad 2008, Autocad Map 2009
|
erstellt am: 15. Apr. 2009 17:44 <-- editieren / zitieren --> Unities abgeben:
Hallo Stelli1, hab jetzt doch schon mal angefangen, diese Beschreibung durchzugehen. Hab da mal ne Frage. Bei dem Anlegen der ODBC Datenquelle muss ich doch diese punkte.mdb auswählen. Verstehe ich das richtig, dass das dann meine Koordinatendatei sein muss? Muss ich diese Datenquelle immerwieder neu definieren, wenn ich eine neue Datei einlesen will? Hab alles Schritt für Schritt so gemacht. Das Ändern der Symbole funktioniert, aber ich sehe nichts in meiner Karte. Auch nicht nach Zoom Grenzen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stelli1 Moderator Verm.-Ing.
Beiträge: 1521 Registriert: 17.08.2005 AutoCAD Map aktuell, Designsuite VS6, VS.net
|
erstellt am: 15. Apr. 2009 17:49 <-- editieren / zitieren --> Unities abgeben: Nur für YR
Hallo, mit dem Zoom Grenzen das geht anderes. Du musst im Aufgabenfenster den Layer markieren und dann RMT "an Grenzen zoomen". Ich würde die Datenquelle so beibehalten. Sonst hast du Probleme mit der Stilisierung. Du kannst aber, wenn du eine andere MDB hast, die ODBC Quelle neu konfigurieren. Da wählst du halt eine andere MDB. Die Daten hast du aber richtig nach Access importiert ? (KOmma,Punkt Problem) Wilfried Stelberg ------------------ Warum lisp'eln wenn's auch anders geht. www.ib-stelberg.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
YR Mitglied
Beiträge: 45 Registriert: 14.04.2009 Autocad 2008, Autocad Map 2009
|
erstellt am: 16. Apr. 2009 10:33 <-- editieren / zitieren --> Unities abgeben:
ich habe jetzt mal die Variante mit der Script-Datei probiert, weil die andere Variante nicht so richtig funktioniert. Hab die Script-Datei wie oben beschrieben erstellt, im Autocad mit dem script-Befehl die Datei geladen. Jetzt fragt er mich nach einen Einfügepunkt, das ist ja nicht das Problem. Aber er liest nur einen Punkt ein, nicht die komplette Datei. Ist da irgendwas an der Datei falsch? Oder muss ich beim Einlesen etwas beachten? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Ehrenmitglied V.I.P. h.c. 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 16. Apr. 2009 10:40 <-- editieren / zitieren --> Unities abgeben: Nur für YR
"Irgendwas" stimmt halt noch nicht mit dem Script.. Entweder du gehst es mal von Hand durch (das im Script geschriebene Schritt für Schritt eingeben - Zeilenumbruch im Script = Enter "per Hand") Oder starte das Script (SCRIPT oder SR) und kopiere das Textfenster (F2) von dem Script Aufruf an bis 3-4 Zeilen unter dem Punkt wo das Script in stolpert kommt. Sollte dann ca. so aussehen (Beispiel): --------------------------------- Befehl: sr SCRIPT Befehl: _.-INSERT Blocknamen eingeben oder [?] <Q1>: NOname *Ungültig* Befehl: --------------------------------- [EDIT: Wenn ich RATEN muss: Hast du denn einen Block mit EINEM Attribut in Verwendung dabei ? ] ------------------ die alte SUCHfunktion.. - System-Angaben - User:FAQ(Adesk) [Diese Nachricht wurde von cadffm am 16. Apr. 2009 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
YR Mitglied
Beiträge: 45 Registriert: 14.04.2009 Autocad 2008, Autocad Map 2009
|
erstellt am: 16. Apr. 2009 10:47 <-- editieren / zitieren --> Unities abgeben:
|
cadffm Ehrenmitglied V.I.P. h.c. 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 16. Apr. 2009 10:58 <-- editieren / zitieren --> Unities abgeben: Nur für YR
|
YR Mitglied
Beiträge: 45 Registriert: 14.04.2009 Autocad 2008, Autocad Map 2009
|
erstellt am: 16. Apr. 2009 11:08 <-- editieren / zitieren --> Unities abgeben:
|
YR Mitglied
Beiträge: 45 Registriert: 14.04.2009 Autocad 2008, Autocad Map 2009
|
erstellt am: 16. Apr. 2009 11:09 <-- editieren / zitieren --> Unities abgeben:
|
cadffm Ehrenmitglied V.I.P. h.c. 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 16. Apr. 2009 11:12 <-- editieren / zitieren --> Unities abgeben: Nur für YR
du hast noch mehr Leerzeichen darin wo keine hinsollen, ich habe dir das GrundScript erstellt, halte dich daran und es sollte funktionieren. (bei mir funktioniert es schon wenn ich die Leerzeichen nach dem Blocknamen entferne - jedoch schreibe ich dann als Pos.Nr nicht "31" zB sondern "31 " in das Attribut - lauffähig sollte es aber sein.) Schau es dir nochmal in Ruhe an, teste mit wenig Einträgen (wie im geposteten Script ja getan = 5 Positionen nur) Und vermelde dann deinen Erfolg der eigenen Lösungsfindung + Nacht das es jetzt komplett funktioniert ! ------------------ die alte SUCHfunktion.. - System-Angaben - User:FAQ(Adesk) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
YR Mitglied
Beiträge: 45 Registriert: 14.04.2009 Autocad 2008, Autocad Map 2009
|
erstellt am: 16. Apr. 2009 11:20 <-- editieren / zitieren --> Unities abgeben:
Hab die Leerzeichen entfernt, kommt bei der ersten Koordinate ins stocken. Bringt ungültiger Befehl und zeigt mir die Koordinate an. Ich verstehe halt nicht, was du oben meinst. Soll ich die Befehle, die du oben schreibst ins Autocad eingeben. Oder muss ich bei der Scriptdatei noch was zusätzlich eingeben. darum weiß ich nicht, was ich vergleichen soll. Hab nichts zum vergleichen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Ehrenmitglied V.I.P. h.c. 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 16. Apr. 2009 11:30 <-- editieren / zitieren --> Unities abgeben: Nur für YR
Dein Posting eines Script (eigentlich von mir) ------------- ATTREQ 1 ATTDIA 0 _-INSERT 72 1002.000,5000.000,120.00 1 1 0 700001 _-INSERT 72 1003.000,5000.000,120.00 1 1 0 700002 _-INSERT 72 1004.000,5000.000,120.00 1 1 0 700003 usw.dieses kannst du mit deiner selbst erstellten Datei vergleichen.. aber egal. es scheint wohl zu schwierig zu sein bzw. zu umständlich. Mein letzter Tip, auch wenn es die xte Wiederholung ist hier im Forum: Gehe es Schritt für Schritt in der Befehlszeile durch ! Befehl:_-INSERT<enter>TO_AVP_GP<enter>usw. Dabei wärst du nun schon über das erste überflüssige Leerzeichen gestolpert isw. "Ungültiger Befehl" ist auch klar: Acad ist längst aus dem "_-INSERT" Befehl raus und du schickst irgendetwas in die Befehlszeile - nur keinen Befehl. {dieser ist in der AcadHilfe im übrigen als "-EINFÜGE" bekannt } PS: Es könnte natürlich sein das dein Block tatsächlich "TO_AVP_GP " lautet, aber dann höre ich hier sofort auf zu helfen ------------------ die alte SUCHfunktion.. - System-Angaben - User:FAQ(Adesk) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
YR Mitglied
Beiträge: 45 Registriert: 14.04.2009 Autocad 2008, Autocad Map 2009
|
erstellt am: 16. Apr. 2009 11:36 <-- editieren / zitieren --> Unities abgeben:
Hat sich jetzt alles mit dem hin und her schreiben überschnitten. Hab jetzt deinen Anfang rein kopiert und nur einen Punkt verwendet, da funktioniert es, wobei das Symbol automatisch mit Punktnummer und Punkthöhe ergänzt werden soll. Aber er ergänzt bei der Punkthöhe die Punktnummer, somit hab ich sie 2mal dastehen. Hab es danach mit 2 Punkten versucht, da bleibt er nach dem ersten Punkt stehen und ergänzt bei der Höhenbeschriftung den Namen des Blocksymbols des nächsten Punktes. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Ehrenmitglied V.I.P. h.c. 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 16. Apr. 2009 11:42 <-- editieren / zitieren --> Unities abgeben: Nur für YR
Zitat: Original erstellt von cadffm: ...Mein letzter Tip, auch wenn es die xte Wiederholung ist hier im Forum: Gehe es Schritt für Schritt in der Befehlszeile durch ! Befehl:_-INSERT<enter>TO_AVP_GP<enter>usw. Dabei wärst du nun schon über das erste überflüssige Leerzeichen gestolpert isw. "Ungültiger Befehl" ist auch klar: Acad ist längst aus dem "_-INSERT" Befehl raus und du schickst irgendetwas in die Befehlszeile - nur keinen Befehl. {dieser ist in der AcadHilfe im übrigen als "-EINFÜGE" bekannt }
------------------ die alte SUCHfunktion.. - System-Angaben - User:FAQ(Adesk) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
YR Mitglied
Beiträge: 45 Registriert: 14.04.2009 Autocad 2008, Autocad Map 2009
|
erstellt am: 16. Apr. 2009 11:47 <-- editieren / zitieren --> Unities abgeben:
Ich hab's jetzt. So muss meine Datei aussehen, nachdem ich ein bischen rum probiert habe: ATTREQ 1 ATTDIA 0 OSNAPCOORD 1 _-INSERT TO_AVP_GP 4550707.643,5677485.321,130.243 1 1 0 130.243 31 _-INSERT TO_AVP_GP 4550705.394,5677486.451,130.245 1 1 0 130.245 32 Eine Frage hab ich aber noch. Kann ich es noch irgendwie beeinflussen, dass meine Punkte mit Skalierungsfaktor 1 eingelesen werden, jetzt liest es sie mit 0.001 ein. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Ehrenmitglied V.I.P. h.c. 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 16. Apr. 2009 12:02 <-- editieren / zitieren --> Unities abgeben: Nur für YR
Dann wurde der verwendete Block mit einer anderen Einheit definiert wie die aktuelle Einheite der aktuellen Datei. (Menü Format / Einheiten oder Ändern/Objekt/Blockbeschreibung) Weitere Möglichkeiten sind je nach Definition bestimmte Systemvariablen etc. (sorry - da macht es keinen Spaß mehr) Und wenn du das "schritt für Schritt" gemacht hast/hättest oder in der Hilfe den Befehl nachgelesen hättest - dann wüßtest du auch das&wie du ratzfatz den Einfügefaktor ändern könntest. hoffe du versteht "meinen Ärger" wenigstens etwas Ganz besonders weil du nichts von 2 Angaben = 2 Attribute im Block erzählt hattest. Jetzt höre ich ausnahmsweise mal auf meinen Chef und mache das wofür ich bezahlt werden. Viel Glück - hat ja noch gut geklappt ------------------ die alte SUCHfunktion.. - System-Angaben - User:FAQ(Adesk) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Betriebsingenieur (m/w/d) | Koehler Renewable Energy ist ein Teil der Koehler-Gruppe, eines Familienunternehmens in der 8. Generation mit über 2.000 Mitarbeiterinnen und Mitarbeitern weltweit. Das Unternehmen akquiriert, plant, entwickelt und betreibt Projekte im Bereich Kraft-Wärme-Kopplung mit CO2-neutralen Brennstoffen, Windkraft, Wasserkraft und Photovoltaik. Innovation ist dabei der Schlüssel zum Erfolg ? nicht nur in der Forschung, sondern auch in der Förderung und Begleitung unserer Mitarbeiterinnen und Mitarbeiter.... | Anzeige ansehen | Projektmanagement |
|
YR Mitglied
Beiträge: 45 Registriert: 14.04.2009 Autocad 2008, Autocad Map 2009
|
erstellt am: 16. Apr. 2009 12:18 <-- editieren / zitieren --> Unities abgeben:
Trotzdem vielen vielen Dank. Weißt ja, Frauen und Technik. Kann ich gar nicht wieder gut machen. Das mit dem Skalierungsfaktor hat sich erledigt. Viel Spaß noch auf Arbeit. Ich bin heut Mittagskind und gehe jetzt ins Wochenende. Aber zu Hause warten schon die nächsten Herausforderungen. Muss morgen ne 3stöckige Hochzeitstorte backen. Ich weiß, hat jetzt nichts mit Autocad zu tun, aber dafür brauche ich wenigstens keinen Computer. LG [Diese Nachricht wurde von YR am 16. Apr. 2009 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |