Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Rund um AutoCAD
  Lisp-Aufruf

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:  Lisp-Aufruf (457 mal gelesen)
wisch
Mitglied



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

Beiträge: 78
Registriert: 22.05.2003

erstellt am: 28. Nov. 2003 14:48    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!

Habe da ein eigenartiges Phänomen:
Ich lade beim Start von ACADM2004 eine Lisp.
In dieser Lisp steh u.a. folgende Zeile:

(command "_explode" "ALLE" )

Die Lisp wird aber nach Befehlsaufruf nicht erfolgreich ausgeführt.
Schreib ich diese Zeile jedoch 3x hintereinander:

(command "_explode" "ALLE" )
(command "_explode" "ALLE" )
(command "_explode" "ALLE" )

funktioniert's !?!

Hat da wer eine Idee?

------------------
wisch

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

T. Bürger
Mitglied
Technischer Angestellter


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

Beiträge: 201
Registriert: 30.01.2001

AcadCAD MEP 2008 (D A CH)

erstellt am: 28. Nov. 2003 15:12    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 wisch 10 Unities + Antwort hilfreich

Hallo wisch,

der Befehl _explode (Ursprung) kann mit Lisp nur ein Objekt auflösen!

So geht es:

  (while
    (setq #ss# (ssget "x"))
    (if #ss#
      (command "_explode" #ss# "")
    )
  )

Aber warum um Himmelswillen willst Du alles beim starten eine Datei in den Ursprung versetzen

------------------
Grüße Thomas   

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

wisch
Mitglied



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

Beiträge: 78
Registriert: 22.05.2003

erstellt am: 28. Nov. 2003 15:51    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

Hi!

Vorweg - bin kein Lisp-Spezialist!
Habe deinen Befehl so übernommen, nur bleibt der Befehlsaufruf nicht mehr stehen - ist das eine Schleife?

Der Grund ist der, ich will eigentlich nur alle Blöcke in der Zeichnung auflösen (nicht Polylinien!), denn aus dem Schriftfeld will ich über ein Wort (mit definierter Schrifthöhe 2,5mm) den Maßstabswert ausrechnen, mit dem ich später wieder einen Block mit eben diesem Maßstab einfüge.
Zu dem Wort gelange ich jedoch nur, wenn es als Textelement zu finden ist und nicht in einem Block mit Attributen "vergraben" ist.

------------------
wisch

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

sinsa
Mitglied
zeichnerin am rande des nervenzusammenbruchs


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

Beiträge: 24
Registriert: 25.11.2003

ACAD 2002, xp prof., matrox 550 dual head

erstellt am: 28. Nov. 2003 16:34    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 wisch 10 Unities + Antwort hilfreich

wähle einfach alles, gehe in die eigenschaften, wähle dort nur die blöcke und laß diese dann explodieren.

voila! block konfetti

gruß sinsa

------------------
toll, da lernte ich mühsam sprechen um im hohen alter mit dem lispeln anzufangen 

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

Brischke
Ehrenmitglied V.I.P. h.c.
CAD on demand GmbH



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

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools

erstellt am: 28. Nov. 2003 21:46    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 wisch 10 Unities + Antwort hilfreich

Hallo Wisch,

es ist in der Tat eine Schleife. Nur die Bedingung zum Enden ist nicht gesetzt. Da du nur die Blöcke explodieren möchtest ist nur eine kleine Änderung notwendig, und die Schleife wird nicht merh durchlaufen, wenn kein Block mehr gefunden wird.
(while
    (setq #ss# (ssget "_X" '((0 . "INSERT"))))
    (if #ss#
      (command "_explode" #ss# "")
    )
  )

Bei Fragen ...

Grüße Holger

------------------
Holger Brischke
(defun - Lisp over night!
AutoLISP-Programmierung für AutoCAD

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

TK_KE
Mitglied



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

Beiträge: 67
Registriert: 15.07.2003

.

erstellt am: 28. Nov. 2003 23: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 wisch 10 Unities + Antwort hilfreich


Explode_auswahl.zip

 
Hallo Wisch!
Zum Auswahl "explodieren" (nur die Blockreferenzen )
hilft die vielleicht der Dateianhang weiter.
(etwas aufgeblähter und etwas komfortabler als Holgers Fünfzeiler  )
Gruß Thomas

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

CADwiesel
Moderator
CAD4FM UG




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

Beiträge: 1968
Registriert: 05.09.2000

AutoCAD, Bricscad
Wir machen das Mögliche unmöglich

erstellt am: 29. Nov. 2003 13: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 wisch 10 Unities + Antwort hilfreich

@ Sinsa

Ich denke nicht, dass du die Blockreferenz, oder sogar alle Blockreferenzen auflösen musst, um an deinen Text ranzukommen.
ist der Text ein Attributwert, so kann man den ganz einfach auslesen, Tools dazu gibt's hier wie Sand am Meer, ist dein Text tatsächlich ein Text, kann man die Blocktabelle durchsuchen und den wert auslesen.
Aber um's genauer zu machen, könntest du mag etwas detailiertere Angaben zu deinem Vorhaben machen, dann können wir dir evtl auch etwas genauer helfen - aber nur, falls dir dein bisheriges Vorgehen zu unbefriedigend ist.

------------------
Gruß
CADwiesel
Besucht uns im CHAT

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

wisch
Mitglied



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

Beiträge: 78
Registriert: 22.05.2003

erstellt am: 01. Dez. 2003 09: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

@BRISCHKE

Vielen Dank, jetzt funzt's so wie ich es brauche!

------------------
wisch

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