| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für BricsCAD |
Autor
|
Thema: Script Datei (1751 / mal gelesen)
|
cadstudi Mitglied Student
Beiträge: 149 Registriert: 22.01.2013 Windows 7 aktuelles ServicePack, Office 2007 Ich arbeite auf verschiedenen Rechner, da fällt die Info verdammt schwer!
|
erstellt am: 04. Jul. 2017 09:40 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, ich benötige mal Hilfe bei einem Script. Und Zwar habe ich eine Datei im txt Format mit gemessenen Koordinaten, diese möchte ich gern ins BricsCAD über Script einlesen. Soweit klappt das auch, aber ich hätte gern an die Punkte die ich automatisch eine Koordinate als Text geschrieben. Hat Jemand eine Idee wie man dies machen kann? Ich dachte vielleicht an Stelle eines Punktes einen Block mit Attribut einzufügen, aber was muss ich dann im Script eingeben? So sieht meine Datei aus! _point 100,100,100 _point 50,80,20 _point 150,250,200 _point 0,250,250 Ich bin verzweifelt und hoffe auf euch! Liebe Grüße Studi Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADwiesel Moderator CAD4FM UG
Beiträge: 1968 Registriert: 05.09.2000 AutoCAD, Bricscad Wir machen das Mögliche unmöglich
|
erstellt am: 04. Jul. 2017 09:54 <-- editieren / zitieren --> Unities abgeben: Nur für cadstudi
im script machst du nichts anderes als was du auch über die Eingabezeile machen kannst. Wenn du einen block einfügen willst, geht das ja auch über die Eingabezeile: _-insert Blockname 100,100,100 1 1 0 Wenn du die Systemvariable Attreq auf ein stellst, werden auch die attribute des Blockes abgefragt und du kannst sie gleich befüllen ------------------ Gruß CADwiesel Besucht uns im CHAT
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadstudi Mitglied Student
Beiträge: 149 Registriert: 22.01.2013 Windows 7 aktuelles ServicePack, Office 2007 Ich arbeite auf verschiedenen Rechner, da fällt die Info verdammt schwer!
|
erstellt am: 04. Jul. 2017 10:33 <-- editieren / zitieren --> Unities abgeben:
Vielen Dank für die schnelle Antowrt. Ich habe es mal versucht und bin echt zu blöd dafür. Ich habe in der Datei einen Block mit dem Namen Punkt angelegt, dieser hat das Attribut das er seine X,Y,Z Koordinaten automatisch schriebt. Leider geht es nicht. Einfüge Punkt 100,100,100 Einfüge Punkt 50,80,20 Einfüge Punkt 150,250,200 Einfüge Punkt 0,250,250 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KlaK Ehrenmitglied V.I.P. h.c. Dipl. Ing. Vermessung, CAD- und Netz-Admin
Beiträge: 2624 Registriert: 02.05.2006 BricsCAD V11 - V22 Pro Visual Basic
|
erstellt am: 04. Jul. 2017 12:32 <-- editieren / zitieren --> Unities abgeben: Nur für cadstudi
Hi, Wie bereits von cadwiesel beschrieben: Probiere es zunächst manuell aus Du verwendest "Einfüge" anstelle von "-einfüge", das heißt hier geht die Maske auf und nicht die Abfrage in der Befehlszeile. Letztere wird durch Angabe des Bindestrichs erzwungen. Der von cadwiesel zusätzliches hinzugefügte Unterstrich bewirkt Ausführen auch der englischen Befehle Die zusätzlichen Zeilen bei cadwiesel geben dann noch die Skalierung für X und Y an sowie den Drehwinkel, die müssen in Deinem Script natürlich auch vorhanden sein. Weitere Zeilen wären dann noch erforderlich wenn bestimmte Attribute des Blockes abgefragt werden, aber das sieht man ja wenn man einmal die Sequenz in der Befehlszeile ablaufen lässt. Grüße Klaus [Edit]Erläuterungen zum Script [Diese Nachricht wurde von KlaK am 04. Jul. 2017 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadstudi Mitglied Student
Beiträge: 149 Registriert: 22.01.2013 Windows 7 aktuelles ServicePack, Office 2007 Ich arbeite auf verschiedenen Rechner, da fällt die Info verdammt schwer!
|
erstellt am: 04. Jul. 2017 20:48 <-- editieren / zitieren --> Unities abgeben:
|
cadffm Ehrenmitglied V.I.P. h.c. 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 04. Jul. 2017 21:39 <-- editieren / zitieren --> Unities abgeben: Nur für cadstudi
Wenn du es denn mal wirklich per hand testen würdest.. Dann würde dir auffallen: der Befehl Einfüge möchte mehr wissen wie den Blocknamen und die Position! Also tippe mal -Einfüge ein, LESE was der Befehl möchte dann gib ihm den Blocknamen, die Position, und JETZT fehlen da noch die weitere Angaben die nötig sind.. lese im Textfenster was gefordert wird und ergänze das Script entsprechend. Du machst mit dem Script nichts anderes wie Tastatureingaben automatisieren. Wenn nach dem Skalierfaktor gefragt wird macht es keine Sinn mit "Einfüge" zu antworten ;-) Bei deinem bisherigen Versuch sollte das Problem bereits im Textfenster aufgefallen sein, nur hinschauen muss man natürlich auch [F2] Versuche es noch einmal, Daumendrück ------------------ CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KlaK Ehrenmitglied V.I.P. h.c. Dipl. Ing. Vermessung, CAD- und Netz-Admin
Beiträge: 2624 Registriert: 02.05.2006 BricsCAD V11 - V22 Pro Visual Basic
|
erstellt am: 05. Jul. 2017 12:49 <-- editieren / zitieren --> Unities abgeben: Nur für cadstudi
Zitat: Original erstellt von cadstudi: Vielen Dank! Es hat auch mit Einfüge funktioniert, nur eben immer nur 1 Punkt und dieser war dann verdreht und komisch skaliert. Ich gebe es einfach auf. Ich bin zu blöd dafür.
Vielleicht solltest Du wirklich mal genau die Vorschläge lesen die man Dir gibt In Deinem Fall müßte das Script so aussehen: Code:
-Einfüge Punkt 100,100,100 1 1 0 -Einfüge Punkt 50,80,20 1 1 0 -Einfüge Punkt 150,250,200 1 1 0 -Einfüge Punkt 0,250,250 1 1 0
Grüße Klaus PS.: Wenn es geklappt hat und Du keine Fragen mehr hast wäre ein Hinweis schön. Bei vielen Deiner bisherigen Fragen sieht man nur Lösungsvorschläge und keine weiteren Reaktionen darauf. Die Gefahr besteht dann dass gar keine Lösungsvorschläge mehr kommen, man hat schließlich auch noch andere Dinge zu tun ... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADwiesel Moderator CAD4FM UG
Beiträge: 1968 Registriert: 05.09.2000 AutoCAD, Bricscad Wir machen das Mögliche unmöglich
|
erstellt am: 05. Jul. 2017 13:04 <-- editieren / zitieren --> Unities abgeben: Nur für cadstudi
bleibt nur noch die Berücksichtigung der Variable ATTREQ. ist die auf 1 werden die Attribute der Blockreferenz (soweit vorhanden) abgefragt und wollen auch noch durch die Befehlszeileneingabe bedient werden. ------------------ Gruß CADwiesel Besucht uns im CHAT
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
TorstenMoses Mitglied Software-Entwickler
Beiträge: 1 Registriert: 05.07.2017
|
erstellt am: 05. Jul. 2017 15:30 <-- editieren / zitieren --> Unities abgeben: Nur für cadstudi
|
cadffm Ehrenmitglied V.I.P. h.c. 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 05. Jul. 2017 15:44 <-- editieren / zitieren --> Unities abgeben: Nur für cadstudi
Für dieses Ziel lässt man Osmode besser unangetastet und schaltet osnapcoord entsprechend ein(1), damit verstellt man sich dann seine aktuelle Einstellung des Objektfanges nicht. EDIT: Hi Thorsten, was ist mit deinem Account "T.Moses"? ------------------ CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD
[Diese Nachricht wurde von cadffm am 05. Jul. 2017 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
T.Moses Mitglied
Beiträge: 82 Registriert: 16.03.2005 Win10, Core i9-9900k @5.0 GHz, 32 GB Ram, NVidia GT1030
|
erstellt am: 05. Jul. 2017 23:27 <-- editieren / zitieren --> Unities abgeben: Nur für cadstudi
Jede PUNKT Eingabe per Script wird durch ObjectFang verarbeitet ... wenn also OSMODE=1 ist, und zufällig ein geeigneter Fangpunkt existiert, ist doe Koordinate aus dem Script "futsch" ... Ich denke, die Koordinaten aus dem Script sollten so genutzt werden, wie im Script eingegeben ... und damit das auch wirklich klappt, muss OSMODE=0 sein (den originalen OSMODE kann man ja am Ende des Scripts restaurieren) viele Grüsse P.S. T.Moses Account war mir entfallen :-) 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: 06. Jul. 2017 00:21 <-- editieren / zitieren --> Unities abgeben: Nur für cadstudi
Dann muss ich mich wohl entschuldigen. Ich dachte osnapcoord ist vorhanden und arbeitet dann auch entsprechend wie seit Jahrzehnten in Autocad. Sorry :-) Zudem wäre Osnap deaktivieren auch noch besser wie osmode=0 setzen, denn ein Script oder der User bricht auch mal ab. ------------------ CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD [Diese Nachricht wurde von cadffm am 06. Jul. 2017 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
T.Moses Mitglied
Beiträge: 82 Registriert: 16.03.2005 Win10, Core i9-9900k @5.0 GHz, 32 GB Ram, NVidia GT1030
|
erstellt am: 07. Jul. 2017 13:53 <-- editieren / zitieren --> Unities abgeben: Nur für cadstudi
|
cadffm Ehrenmitglied V.I.P. h.c. 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 07. Jul. 2017 14:07 <-- editieren / zitieren --> Unities abgeben: Nur für cadstudi
Bei Bricscad vielleicht, bei Adesk seit Jahrzehnten jedoch nicht. Wurde denn Osnapcoord=1 in Bricscad vergessen oder einfach die Funktion nicht identisch umgesetzt? In Acad steuert die Sysvar das Verhalten bei sämtlichen Befehlszeilen-Eingaben, händisch, Makro, Script, command (command command-s sendcommand usw.) EDIT: Link ergänzt ------------------ CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD
[Diese Nachricht wurde von cadffm am 07. Jul. 2017 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
T.Moses Mitglied
Beiträge: 82 Registriert: 16.03.2005 Win10, Core i9-9900k @5.0 GHz, 32 GB Ram, NVidia GT1030
|
erstellt am: 08. Jul. 2017 12:35 <-- editieren / zitieren --> Unities abgeben: Nur für cadstudi
OSNAPCOORD ist auch bei BricsCAD so drin ... halt "historische" Gründe, dass ich persönlich eher OSMODE bevorzuge. Auf jeden Fall muss eine der beiden Methoden in den Script rein, sonst gibt es sporadisch ein "merkwürdiges" Verhalten :-) viele Grüsse ! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |