Hot News aus dem CAD.de-Newsletter:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  AutoCAD LT
  Scriptdatei Blockeinfügen, was ist falsch ?

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
Autor Thema:   Scriptdatei Blockeinfügen, was ist falsch ? (3134 mal gelesen)
khugel
Mitglied
Technischer Zeichner


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

Beiträge: 93
Registriert: 11.08.2005

System: Intel Core i7 3770, CPU 3,4 Ghz, 16 Gbyt RAM ,NVIDIA Geforce Quadro 600
Autocad LT 2015,Visio 2007, Office 2010, Windows 7,64bit

erstellt am: 26. Nov. 2009 11:26    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 zusammen,
ich hab gerade damit begonnen für mein AutoCad LT 2009 scripte zu schreiben.
Ein script zum öffnen einer zeichnungsdatei läuft bereits, ist ja auch noch rewcht einfach.
Aber jetzt hab ich folgendes Probiert: Ich möchte einen Block einfügen. Dabei soll der Skalierfaktor auf 1 und der Drehwinkel immer auf 0 Grad bleiben.
Mein Scriptext in der Scriptdatei lautet bei mir wie folgt:

;Einfügepunkt erster Beschriftungstext
_insert Kasten.dwg
Einfügepunkt angeben oder [Basispunkt/Faktor/Drehen]:
X-Skalierfaktor eingeben*<1>:mführausr
Drehwinkel angeben*<0>:mführausr

Das ich den Einfügepunkt ist mir ja noch klar, aber warum übernimmt mir das Script nicht den Skalierfaktor mit 1 und den Drehwinkel mit 0 Grad ?
Was ist falsch an meinem Script ?

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

Dig15
Ehrenmitglied V.I.P. h.c.
Dipl.-Ing. für Markscheidewesen und Geodäsie



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

Beiträge: 5801
Registriert: 27.02.2003

DWG TrueView 2014

erstellt am: 26. Nov. 2009 11:39    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 khugel 10 Unities + Antwort hilfreich

Wie sieht denn Dein Script aus? Das im Beitrag ist ja nur die Textfensterausgabe. Ich habe ein ähnliches Script und das sieht so aus:
-einfüge C:\Pfad\Block.dxf 0,0,0 1 1 0

------------------
Viele Grüße Lutz

Glück Auf!

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

khugel
Mitglied
Technischer Zeichner


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

Beiträge: 93
Registriert: 11.08.2005

System: Intel Core i7 3770, CPU 3,4 Ghz, 16 Gbyt RAM ,NVIDIA Geforce Quadro 600
Autocad LT 2015,Visio 2007, Office 2010, Windows 7,64bit

erstellt am: 26. Nov. 2009 11:57    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

Schade Dig15, hat leider auch mit deiner Methode nicht geklappt. er fragt weiterhin nach dem einfügepunkt, nach dem skalierfaktor und dem drehwinkel

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

cadffm
Moderator
良い精神




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: 18058
Registriert: 14.06.2002

System: F1
und Google

erstellt am: 26. Nov. 2009 12:05    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 khugel 10 Unities + Antwort hilfreich

Nochmal ganz deutlich: Wir brauchen deine Scriptdatei !

Oder du suchst selbst den "Fehler" = gehe das Script Schritt für Schritt
per Hand durch, dann siehst du was Acad will (befehlszeile/Textfenster[F2])
und was dein Script ihm in dem Moment gibt !

PS: ich tippe auf ein Leerzeichen im Pfad oder Dateiname - dann müßte die Angabe der Datei in Anführungszeichen gesetzt werden imho.


------------------
die alte SUCHfunktion.. - System-Angaben - User:FAQ(Adesk)

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

khugel
Mitglied
Technischer Zeichner


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

Beiträge: 93
Registriert: 11.08.2005

System: Intel Core i7 3770, CPU 3,4 Ghz, 16 Gbyt RAM ,NVIDIA Geforce Quadro 600
Autocad LT 2015,Visio 2007, Office 2010, Windows 7,64bit

erstellt am: 26. Nov. 2009 12:25    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


Beschriftung.zip

 
Anbei meine Original Scriptdatei !

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

cadffm
Moderator
良い精神




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: 18058
Registriert: 14.06.2002

System: F1
und Google

erstellt am: 26. Nov. 2009 12:30    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 khugel 10 Unities + Antwort hilfreich

ok, das ist dein 1.Versuch der zeigt das du noch garnichts von Scripten weißt  

1. Das Script (das ist der komplette Scripteintrag !) ist richtig !
   Also kopiere es und passe die DWG-Eingabe an, speichern,fertig

2. Scripte lassen keine Benutzeringaben zu, wenn du also vorhast den
Einfügepunkt "per Maus oder Tastatur selbst anzugeben" : NoChance !

Nachfolgendes Script funktioniert WENN:
Datei im Supportpfad liegt(oder dem aktuellen Pfad)
und keine Attribute hat (oder ATTREQ=AUS geschaltet ist)
und: "einheitlich skalieren" darf für die(Block)DWG nicht
aktiviert sein, bzw, dann müßte eine "1" aus dem Script raus.

;---script
-EINFÜGE
KASTEN.dwG
0,0,0
1
1
0

------------------
die alte SUCHfunktion.. - System-Angaben - User:FAQ(Adesk)

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

CADmium
Ehrenmitglied V.I.P. h.c.
Maschinenbaukonstrukteur



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

Beiträge: 13322
Registriert: 30.11.2003

.

erstellt am: 26. Nov. 2009 12:32    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 khugel 10 Unities + Antwort hilfreich

also mein ACAD kann mit
"Einfügepunkt angeben oder [Basispunkt/Faktor/Drehen]:"

in der Befehlszeile eingegeben gar nichts anfangen .. deins sicher auch nicht.. du vermischt Bildschirmausgaben mit Usereingaben

dein script sollte so aussehen
_insert
"Kasten.dwg"
0,0,0
1
1
0


------------------
  - Thomas -          
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

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

mourixin
Mitglied
Student

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

Beiträge: 8
Registriert: 04.01.2010

erstellt am: 04. Jan. 2010 19:44    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 khugel 10 Unities + Antwort hilfreich

Hallo khugel,

ist deine Frage denn mittlerweile beantwortet (ist ja schon über einen Monat her)?

Mein Skript sieht folgendermaßen aus:
_insert (oder alternativ -einfüge) für CAD-Befehl
Blockname (hier schreibe ich nicht .dwg, sondern einfach nur den Blocknamen, den ich bei der Blockdefinition vergeben habe)
10,10 (Lagekoordinaten [X,Y] des Einfügepunktes)
1 (Skalierfaktor X [?])
1 (Skalierfaktor Y [?])
0 (Drehung)

Ich weiß, dass es bei mir mit 1,1,0 immer klappt, aber ich bin mir nicht sicher, ob meine Erklärung stimmt. Es könnte auch sein, dass die zweite 1 für die Blockeinheit steht.

Worauf du noch achten solltest: hinter dem jeweiligen Befehl oder Eingabewert darf kein Leerzeichen stehen. Das liest ACAD ja wie eine Eingabe. Dieses Problem habe ich ab und zu, wenn ich Koordinaten mit verschiedenen Vorkommastellen habe. Wenn ich nicht aufpasse, bekomme ich gleich eine Fehlermeldung.

Wie viele Blöcke willst du denn hintereinander einfügen?

Ich arbeite mit ACAD-Map. Es kann also sein, dass du in ACAD LT wirklich zu dem Blocknamen noch das .dwg hinzufügen musst.

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

mourixin
Mitglied
Student

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

Beiträge: 8
Registriert: 04.01.2010

erstellt am: 04. Jan. 2010 20:09    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 khugel 10 Unities + Antwort hilfreich

Ich hab' grad noch mal einen Versuch ohne "1 1 0" gestartet, sondern nur mit "1" und "0". Funktioniert genauso.
Wenn ich die ACAD-Hilfe richtig interpretiere, dann wird, wenn man nur eine 1 verwendet, die Skalierung vom Einfügepunkt aus berechnet. Aber ob´s stimmt?? Die ACAD-Hilfen sind manchmal nicht so hilfreich oder produzieren ihrerseits zu der eigenen Frage noch fünf weitere. 

Also zusammenfassend:
-einfüge
Block
10,10
1
0

... und die Leerzeichen nicht vergessen wegzumachen.

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

cadffm
Moderator
良い精神




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: 18058
Registriert: 14.06.2002

System: F1
und Google

erstellt am: 04. Jan. 2010 22:40    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 khugel 10 Unities + Antwort hilfreich

Hallo mourixin

wüßte ich auch gerne was daraus wurde.. khugel

abgesehen davon das die Befehlszeilenversion ganz deutlich macht nach welchem Wert (wann) Acad verlangt
so ist die Frage ob mit oder ohne ".dwg" oder sogar Block=Dateiname.dwg einzig vom User zu entscheiden,
die Helfer hier haben dabei den Versuch des Fragenden versucht zu integrieren/interpretieren - diese drei
Möglichkeiten dazu sind in der Hilfe sehr gut dokumentiert (Hilfe: Befehlszeilenversion Einfüge).
Ob man dem Dateinamen dann noch einen Pfad voranstellt oder nicht ist abhängig davon ob man die Datei
immer vom gleichen Platz mit festem Pfad als Block einlesen möchte oder ob die Datei (flexibel) über die
Supportpfade gesucht werden soll.

  

Zitat:
Original erstellt von mourixin:
Ich hab' grad noch mal einen Versuch ohne "1 1 0" gestartet, sondern nur mit "1" und "0". Funktioniert genauso.
-> Funktioniert NICHT "genauso" ! Dein letztes Script sollte (wenn das vorherige funktionierte) in einen Fehler laufen
bzw. das Script nicht beendet werden: [Acad-Meldung: Wert muss ungleich Null sein. ]
(beides ist zwar Möglich, je nach Situation und Version. Funktionieren tut dann aber immer nur eine der Varianten)

Wenn ich die ACAD-Hilfe richtig interpretiere, dann wird, wenn man nur eine 1 verwendet, die Skalierung vom Einfügepunkt aus berechnet.
Aber ob´s stimmt??
->Nicht wirklich, die Hilfe ist sehr gut in diesem Fall, schau einfach nochmal nach.
"21,55"(Einfügepunkt) bis "1"(aus deinem Script) wäre ja auch keine schlüssige Angabe als Skalierfaktor ;)

Die Option XYZ verlangt nur einen skal.Wert, die Option ECKE eine Koordinate - aber du rufst ja keine der Optionen auf im Script.
Was funktionieren würde wäre das einfache bestätigen, dann würde der voran eingegebene X-skal.Wert genutzt, dafür würde
das Script aber noch ein "Enter" mehr benötigen
(zwischen der 1 und der 0).

Die ACAD-Hilfen sind manchmal nicht so hilfreich oder produzieren ihrerseits zu der eigenen Frage noch fünf weitere.    
->"Nicht so hilfreich" :  kommt natürlich vor - anderseits ist sie aber auch sehr gut im Vergleich mit anderen Programmen
Falls aus der Information aus der Hilfe 5 weitere Fragen produziert werden, so ist das ja kein Indiz für die Qualität der Hilfe ;) 


------------------
die alte SUCHfunktion.. - System-Angaben - User:FAQ(Adesk)

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

mourixin
Mitglied
Student

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

Beiträge: 8
Registriert: 04.01.2010

erstellt am: 05. Jan. 2010 23:03    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 khugel 10 Unities + Antwort hilfreich

Bei mir funktionieren beide Versionen ohne Fehlermeldung. Komisch...
Ich will natürlich in meiner Arbeit, die ich gerade schreibe (zu der ich auch ein Skript verwendet) auch die richtige Erklärung schreiben. Bis gerade eben war ich davon ausgegangen, dass die Erklärung auch richtig ist.  Danke für die Hinweise!

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

cadffm
Moderator
良い精神




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: 18058
Registriert: 14.06.2002

System: F1
und Google

erstellt am: 06. Jan. 2010 09:15    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 khugel 10 Unities + Antwort hilfreich

na dann füge deinem Script doch nochmal eine Zeile hinzu, zB. nach der
Blockeinfüge-Aktion noch ein "REGEN" oder ähnliches hinzu:

Version1:

-einfüge
Block
10,10
1
0
REGEN

oder auch Version2:

-einfüge
Block
10,10
1
1
0
REGEN

laufen immernoch beide Versionen bei dir ?

PS: Zudem muß man zwingend die Attribute-Möglichkeiten in einem Sript handeln,
zumindest sobald es sich nicht immer um den gleichen Block ohne Attribute handelt.
(ATTREQ ATTDIA und/oder die Attributewerte)

<<Aber danke auch: der Thread animiert mich mal wieder die FAQ zum Thema Makro&Script zu erweitern   >>

------------------
die alte SUCHfunktion.. - System-Angaben - User:FAQ(Adesk)

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

mourixin
Mitglied
Student

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

Beiträge: 8
Registriert: 04.01.2010

erstellt am: 06. Jan. 2010 18:44    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 khugel 10 Unities + Antwort hilfreich

Hmm. Folgendes finde ich nun schon komisch: Nun, da mein Skript nur aus "1,0,Attribut" besteht, kann ich das andere Skript mit "1,1,0,Attribut" nicht mehr einlesen. Das hat aber vorher sicher funktioniert. Als ich in eine neu erstellte Datei das "1,1,0"-Skript eingelesen habe, wurde dieses ausgefürt. Nun habe ich es ja auf "1,0" umgestellt und das "alte" Skript funktioniert nicht mehr.
Am Wichtigsten ist mir ja nun erstmal, dass ich meine Punkte richtig in der Datei habe. Dennoch finde ich es auch sehr interessant zu erfahren, welche Feinheiten in einem Skript beachtet werden müssen.

Bin ich eigentlich die einzige, die das Problem mit der aktivierten Fang-Funktion und dem Einlesen von Blöcken habe? Wenn ich den Objektfang aktiviert habe, dann kann es vorkommen, dass die Punkte nicht an der im Skript angegebenen Koordinate landen, sondern z. B. im Mittelpunkt des zuvor eingelesenen Blocks.

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

cadffm
Moderator
良い精神




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: 18058
Registriert: 14.06.2002

System: F1
und Google

erstellt am: 06. Jan. 2010 21:40    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 khugel 10 Unities + Antwort hilfreich

Nur weil dir der Fehler bei einem der beiden Versionen vorher nicht aufgefallen ist
bedeutet es ja nicht automatisch das beide (gleich) funktionierten   das war nämlich
sicher nicht der Fall, zumindest nicht bei der gleichen Blockdefinition.


Objektfang:
Du bist nicht der einzigste, aber die Anwenderzahl die Script (oder Makros oder auch sendcommand-Anweisungen in Programmen)
einsetzen ist ja schonmal sehr gering, von diesen Wenigen bist du einer der Wenigen die einen Zusammenhang des Problems mit
dem OFang hergestellt haben  

Auch zu diesem Thema hat der User FAQ einen Beitrag verfasst => KLICK!

------------------
die alte SUCHfunktion.. - System-Angaben - User:FAQ(Adesk)

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)2018 CAD.de