Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  Lisp
  Blöcke in der akuellen Zeichnung neu definieren

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:  Blöcke in der akuellen Zeichnung neu definieren (256 / mal gelesen)
woppi
Mitglied
cnc-programmierung


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

Beiträge: 72
Registriert: 16.01.2009

Acad Architecture 2022

erstellt am: 30. Apr. 2025 13:33    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


Sicherheitsabfrage.jpg

 
Hallo,

ich habe eine Frage zu dem _INSERTCONTENT Befehl.

Ich möchte mit Lisp, Blöcke in der aktuellen Zeichnung aus meinen Vorlagendateien heraus neu definieren.
Das funktioniert soweit auch mit der Zeile:

(command "_INSERTCONTENT" Dateiname Blockname "0,0,0" "1.0" "1.0" "0" )

Sind die Blöcke aber in der aktuellen Zeichnung verändert worden, kommt immer eine Abfrage (Screenshot im Anhang)
Kennt jemand eine Möglichkeit diese Abfrage zu verhindern, bzw. zu unterdrücken?

Wenn es in Lisp nicht möglich ist, gerne auch in VBA.

Für Tipps wäre ich sehr dankbar.
Gruß Woppi


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

Bernd P
Ehrenmitglied V.I.P. h.c.
cook-general



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

Beiträge: 3452
Registriert: 07.06.2001

W10-64bit, AMD Ryzen 7 3700X,32GB RAM, Sapphire Pulse Radeon RX 570 8G G5, Canon TX-3000 MFP, Maus Cherry MW4500, Sub:Infrastructure Design Suite, Office 365

erstellt am: 30. Apr. 2025 13:35    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 woppi 10 Unities + Antwort hilfreich

servus,

(command "_INSERT" "Dateiname.dwg=Blockname" ())

------------------
<----- Bitte Systeminfo eintragen, warum siehst du hier. Schöne Grüsse aus der Steiermark  Bernd P.

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: 22517
Registriert: 03.06.2002

Alles

erstellt am: 30. Apr. 2025 14:22    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 woppi 10 Unities + Antwort hilfreich

@Bernd Es geht um Blöcke in einer Vorlagendatei, nicht darum einen Block durch den Modelbereich einer DWG neu zu definieren.

@Woppi
Schau dir das mal genauer an und teste
[F1] BlockRedefineMode

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

woppi
Mitglied
cnc-programmierung


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

Beiträge: 72
Registriert: 16.01.2009

Acad Architecture 2022

erstellt am: 30. Apr. 2025 16:52    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 Cadffm,

danke für den Tipp!!
Kann ich leider erst Mintag testen, (habe Zuhause kein Autocad)

Gruß Woppi

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

woppi
Mitglied
cnc-programmierung


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

Beiträge: 72
Registriert: 16.01.2009

Acad Architecture 2022

erstellt am: 05. Mai. 2025 16: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

Hallo Cadffm,

ich konnte gerade die Systemvariable BLOCKREDEFINEMODE testen.
Im Prinzip funktioniert es, es gibt aber leider einen kleinen Haken:

Ist der Block in der aktuellen Zeichnung verändert worden, funktioniert alles, weil man die Abfrage aus der Eingabeaufforderung in der
Lisp berücksichtigen kann:

(setvar "BLOCKREDEFINEMODE" 2)                          ;Dialogfeld oder eine Eingabeaufforderung in der Befehlszeile  siehe : BLOCKREDEFINEMODE Hilfe
(command "-INSERTCONTENT" Dateiname Blockname "j" "0,0,0" "1.0" "1.0" "0" )
(setvar "BLOCKREDEFINEMODE" 1)

Ist der Block in der aktuellen Zeichnung aber nicht verändert worden, kommt keine Abfrage.
Und dadurch kommt es bei dem "j" im Code zu einem Abbruch.

Kann ich selbst vorher feststellen ob der Block in der Zeichnung mal geändert worden ist, bzw. ob es zu einer Abfrage kommt oder nicht, damit ich das entsprechend berücksichtigen kann?

Gruß Woppi

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: 22517
Registriert: 03.06.2002

Alles

erstellt am: 05. Mai. 2025 17:11    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 woppi 10 Unities + Antwort hilfreich

>"es gibt aber leider einen kleinen Haken:"

Rückfrage:

>"(setvar "BLOCKREDEFINEMODE" 2)"
Überlege mal warum du das machst und erkläre es uns - in Bezug auf den Haken
nachdem du ' siehe : BLOCKREDEFINEMODE Hilfe' noch eiinmal gelesen hast.

Vllt hat sich das Problem dann schon erledigt. 

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

woppi
Mitglied
cnc-programmierung


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

Beiträge: 72
Registriert: 16.01.2009

Acad Architecture 2022

erstellt am: 06. Mai. 2025 14: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

Hallo,

ich habe nochmals in die Hilfe von BLOCKREDEFINEMODE geguckt, und setze die Variabel auf 2, damit kein Dialogfeld angezeigt werden soll.
Wenn nur eine "Eingabeaufforderung in der Befehlszeile kommt", kann ich das mit dem "J" in dem Lispcode quittieren.

Zur Erklärung, die Blöcke sollen mit meinem kleinen Programm automatisch neu definiert werden.
Der Benutzer des Programms soll selbst keine Entscheidung treffen.
Mein Problem ist, die "Eingabeaufforderung in der Befehlszeile" kommt nicht jedes Mal, sondern nur wenn der Block geändert worden ist.
Es kann aber sein das mein Programm hunderte oder mehr Blöcke neu definiert, und ich dann nicht weiß das z.B. beim fünften Block keine "Eingabeaufforderung in der Befehlszeile" kommt, und mein Programm dann leider abbricht.

Oder habe ich die "Autocad Hilfe" falsch verstanden.
Es müsste eine Einstellung geben, dass Blöcke Grundsätzlich neu definiert werden.

Gruß

Woppi

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: 22517
Registriert: 03.06.2002

Alles

erstellt am: 06. Mai. 2025 15: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 woppi 10 Unities + Antwort hilfreich

Du jetzt dn Wert 1 und 2 erwähnt, was ist denn mit dem Verhalten des Wert 0 [F1] ?

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: 22517
Registriert: 03.06.2002

Alles

erstellt am: 06. Mai. 2025 15: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 woppi 10 Unities + Antwort hilfreich

ah STOP
DAS hatte ich anders in Erinnerung - mein Fehler.
Lasse mich kurz meine Arbei fertig machen, dann kann ich bestimmt einen Workaround aufzeigen.

GANZ GROSSES  S O R R Y     

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: 22517
Registriert: 03.06.2002

Alles

erstellt am: 06. Mai. 2025 15:58    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 woppi 10 Unities + Antwort hilfreich

Ich nehme mein Sorry zurück und bin noch mehr verwirrt wie zuvor 

Nach eigenem Test kann ich deine Aussage NICHT bestätigen!
Die Rückfrage zum neudefinieren (Wert2) kommt bei mir IMMER, also besteht auch das Problem nicht (bei mir).

Es kann an meiner Version liegen,
daher zunächst die Frage ob du die neueste AutoCAD Produktversion deiner Software installiert hast oder nicht.
Schau mal im Dialog INFO
Dort solltest du die AutoCAD Produktinformation sehen können, welche ist das?

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: 22517
Registriert: 03.06.2002

Alles

erstellt am: 06. Mai. 2025 17:17    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 woppi 10 Unities + Antwort hilfreich

woppi
Mitglied
cnc-programmierung


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

Beiträge: 72
Registriert: 16.01.2009

Acad Architecture 2022

erstellt am: 06. Mai. 2025 17:17    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

So jetzt bin auch verwirrt!

Habe es aus noch einmal ausführlich getestet, und du hast Recht, die Abfrage kommt immer!

Wahrscheinlich habe ich einen Fehler gemacht, wenn ich zum Testen verschiedene Zeilen meiner Lisp ausgeblendet habe.

Jetzt klappt alles.

Vielen Dank für die Hilfe!


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: 22517
Registriert: 03.06.2002

Alles

erstellt am: 06. Mai. 2025 17:21    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 woppi 10 Unities + Antwort hilfreich

nurproblememithardundsoftware - hoffe jetzt kappt es endlich (der Post-Inhalt ist 1h alt)

So in Rotz (@AutoDESK) 

@woppi

Jetzt denke ich zu wissen worüber du stolperst! Vermutlich testest du viel hin und her,

genau das kann zu einem weniger offensichtlichem Problem führen, welches du in einer realen Situation

eher selten hast?!

Du hast geschrieben "Sind die Blöcke aber in der aktuellen Zeichnung verändert worden, kommt immer eine Abfrage",

das stimmt aber nicht uneingeschränkt.

Die Abfrage kommt IMMER, es sei denn

der Block wurde bereits in der Dateisitzung mit insertcontent eingefügt UND danach NICHT geändert!

Ich nehme mal das für gewöhnlich dein "Update alle" nur einmal laufen muss in einer Dateisitzung,

dann würde es kein Problem geben. Also für den Fall eines Batchlaufes - kein Problem. Für andere Workflows aber schon noch.

Andernfalls müsste man wirklich prüfen ob die Abfrage erfolgt oder nicht.

Extra etwas holzig gschrieben, zur besseren Lesbarkeit


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: 22517
Registriert: 03.06.2002

Alles

erstellt am: 06. Mai. 2025 17:24    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 woppi 10 Unities + Antwort hilfreich


250506_zorn.JPG

 
dann also als Bild

siehe Anhang

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

woppi
Mitglied
cnc-programmierung


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

Beiträge: 72
Registriert: 16.01.2009

Acad Architecture 2022

erstellt am: 07. Mai. 2025 13: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

Moin,

du hast Recht, nach dem ich gestern geantwortet habe, ist bei weitern Test der Fehler wieder aufgetreten.

Aber Du hast dir ja krass viel Mühe gegeben! Vielen Dank!

Ich habe Deinen Code eingebaut:

(progn
(setq LE (entlast))
(command "_.-insertcontent" Dateiname Blockname)
(terpri)
(if (wcmatch (setq LP (getvar 'LASTPROMPT)) "*Neu*") (command "_yes" "0,0" 1 1 0)(command "0,0" 1 1 0))
(if (eq LE (entlast)) (alert "error") (entdel(entlast)))
)

Hatte dann aber mit dem ? ein Problem
(if (wcmatch (setq LP (getvar 'LASTPROMPT)) "*'?*") (command "_yes" "0,0" 1 1 0)(command "0,0" 1 1 0))

Und seit dem ich das dann durch das  "*Neu*" ersetzt habe, funktioniert es!!  (natürlich nur in Deutschland  )

Perfekt, vielen Dank! Das hätte ich alleine nicht hinbekommen.

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: 22517
Registriert: 03.06.2002

Alles

erstellt am: 07. Mai. 2025 13:36    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 woppi 10 Unities + Antwort hilfreich

woppi
Mitglied
cnc-programmierung


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

Beiträge: 72
Registriert: 16.01.2009

Acad Architecture 2022

erstellt am: 08. Mai. 2025 08: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

Das war natürlich mein Fehler.

Hatte beim Abschreiben von deinem Scrennshot das falsche Zeichen vor das Fragezeichen getippt.

' anstatt  ` (reverse quote)

Jetzt ist alles perfekt.

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)2025 CAD.de | Impressum | Datenschutz