Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  mittels Lisp erzeugte Gruppe erscheint nicht im Gruppenmanager

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:  mittels Lisp erzeugte Gruppe erscheint nicht im Gruppenmanager (881 mal gelesen)
romi1
Mitglied
Bautechniker


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

Beiträge: 638
Registriert: 09.02.2006

Xeon E3-1245V2
16GB RAM
Windows 10 Professional 64 bit
AutoCAD 2014

erstellt am: 18. Jul. 2007 11: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

Hallo Forum!

Habe ein Lisp gebaut, mit welchem die gewählten Objekte automatisch
in die Gruppen 10000, 10001, 10002 usw. gegeben werden - sofern diese
noch nicht vorhanden sind. Der beschreibende Text wird manuell eingegeben.
Die Gruppe wird auch recht schön erzeugt - nur leider: im Gruppenmanager
ist sie vorerst nicht sichtbar.
Wenn man allerdings die Datei speichert, schließt und wieder öffnet ist
die soeben erstellte Gruppe nun auch im Gruppenmanager sichtbar. Wo kann
da der Grund bzw. Fehler liegen? Gibt es eine Befehl "Gruppen aktualisieren"
oder so was ähnliches?
Ich verwende übrigens AutoCAD 2007 LT mit LT-Extender.
Es wäre auch interressant für mich, ob jemand ausprobieren kann, ob der
Fehler auch in der Vollversion auftritt.
Danke, Roman

Anbei der Code:

(defun c:grp ()
  (setq gruppenbeschr
    (getstring T "Gruppenbeschreibung eingeben: ")
  )
  (setq alle_entities '())
  (setq auswahl (ssget))
  (setq y 0)
  (repeat
    (sslength auswahl)
    (ssname auswahl y)
    (setq
      alle_entities
      (cons
        (ssname auswahl y)
        alle_entities
      )
    )
    (setq y
      (1+ y)
    )
  )
  (setq grp_dict
    (dictsearch (namedobjdict) "ACAD_GROUP")
  )
  (setq grp_name 10001)
  (setq uebereinstimmung 0)
  (foreach d grp_dict
    (if
      (= (car d) 3)
      (if
        (=
          (cdr d)
          (itoa grp_name)
        )
        (setq uebereinstimmung
          (1+ uebereinstimmung)
        )
      )
    )
    (if
      (> uebereinstimmung 0)
      (progn
        (setq grp_name
          (1+ grp_name)
        )
        (setq uebereinstimmung 0)
      )
    )
  )
 
  (setq
    grp_dict_ename
    (cdar grp_dict)
 
    elist
    (append
      (list
        '(0 . "GROUP")
        '(102 . "{ACAD_REACTORS")
        (cons 330 grp_dict_ename)
        '(102 . "}")
        '(100 . "AcDbGroup")
        (cons 300 gruppenbeschr)      ; Description
        '(70 . 0)                    ; Named Group
        '(71 . 1)                    ; Selectable Group
      )
      (mapcar '(lambda (ele) (cons 340 ele)) alle_entities)
    )
  )
  (dictadd grp_dict_ename (itoa grp_name) (entmakex elist))

  (princ) 
)


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

Dorfy
Mitglied
Double-Dipl.-Ing. Bleistiftanspitzer


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

Beiträge: 900
Registriert: 21.07.2006

AutoCad2007, ProE, HiCad

erstellt am: 18. Jul. 2007 11: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 romi1 10 Unities + Antwort hilfreich

Hallo
in AutoCad 2007 wird der Name 100...
angezeigt, kann auf LT leider nicht Testen
mfg Heiko

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

spider_dd
Mitglied



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

Beiträge: 1111
Registriert: 27.11.2003

Win 10Pro
Intel(R) Core(TM) i7-7700
NVIDIA Quadro P1000
ACAD, Civil-3D 2018

erstellt am: 18. Jul. 2007 12: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 romi1 10 Unities + Antwort hilfreich

Hallo Roman,

also unter ACAD2004 wird auch die Gruppe angezeigt, könnte also ein LT Problem zu sein.

LG
Thomas

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

Dorfy
Mitglied
Double-Dipl.-Ing. Bleistiftanspitzer


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

Beiträge: 900
Registriert: 21.07.2006

AutoCad2007, ProE, HiCad

erstellt am: 18. Jul. 2007 13:02    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 romi1 10 Unities + Antwort hilfreich

Hallo
Bei LT 2002 wird der Name auch angezeigt...
mfg

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

romi1
Mitglied
Bautechniker


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

Beiträge: 638
Registriert: 09.02.2006

Xeon E3-1245V2
16GB RAM
Windows 10 Professional 64 bit
AutoCAD 2014

erstellt am: 18. Jul. 2007 17:50    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

Danke Leute!

Klingt zwar leicht überheblich von mir, scheint aber in dem
Fall dann wohl tatsächlich so zu sein, das das Problem am LT
2007 oder am LT-Extender liegt und nicht an meinem Lisp ...
Schade eigentlich - so krieg ich den Wurm nicht raus ...

Tschüß
Roman

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

Dorfy
Mitglied
Double-Dipl.-Ing. Bleistiftanspitzer


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

Beiträge: 900
Registriert: 21.07.2006

AutoCad2007, ProE, HiCad

erstellt am: 19. Jul. 2007 09:04    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 romi1 10 Unities + Antwort hilfreich

Hallo,

(defun C:MG (/ GNAME SGET)
  (TOGGLE-GROUPSELECT t) ;_ Sicherstellen, dass Gruppenwahl möglich ist
  (princ "\nZu gruppierende Objekte wählen:")
  (setq SGET  (ssget)
        GNAME (menucmd
                "M=$(edtime,$(getvar,date),DD-MONTH-YYYY-HH-MM-SS)" ;_ erzeuge Timestamp-Gruppen-Namen
              ) ;_ end menucmd
  ) ;_ end setq
  (if SGET
    (progn
      (command "_.-group"          "_c"
              GNAME              "Automatisch erstellte Gruppe"
              SGET                ""
      ) ;_ end of command
      ;(sssetfirst NIL SGET);hervorheben
      (princ "Gruppe erstellt. AutoCAD-Befehl eingeben...")
    ) ;_ end progn
    (princ "\nKeine Objekte gewählt...")
  ) ;_ end if
  (princ)
) ;_ end defun

vielleicht kanst du dir diese zeilen aus dem forum umbauen...
ab command...
mfg heiko

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

Dorfy
Mitglied
Double-Dipl.-Ing. Bleistiftanspitzer


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

Beiträge: 900
Registriert: 21.07.2006

AutoCad2007, ProE, HiCad

erstellt am: 19. Jul. 2007 10:01    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 romi1 10 Unities + Antwort hilfreich

So ich noch mal

;;;;;;;;;;;
  (if auswahl
    (progn
      (command "-gruppe"          "er"
              grp_name gruppenbeschr
              auswahl ""
      ) ;_ end of command
      (princ "Gruppe erstellt. AutoCAD-Befehl eingeben...")
    ) ;_ end progn
    (princ "\nKeine Objekte gewählt...")
  );_ end if auswahl
;;;;;;;;;;;;;

versuch es doch mal so,
wenn die zeilen so in lt funktionieren sollten...
mfg heiko

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

romi1
Mitglied
Bautechniker


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

Beiträge: 638
Registriert: 09.02.2006

Xeon E3-1245V2
16GB RAM
Windows 10 Professional 64 bit
AutoCAD 2014

erstellt am: 19. Jul. 2007 10: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

Hallo Dorfy!

Danke für die Mühe,

aber ich mag' die command-Befehle leider überhaupt nicht.
Da hat man immer das ganze Textfeld voller Anzeigen
vom Programmablauf, und wenn man dann nachsehen
will, was man vorher eingegeben hat, muß man endlos
nach oben scrollen ... so ist das zumindest, wenn
man ein längers Lisp mit vielen "command"-Befehlen hat.

Zu meinem Problem: Ich hab' das Prog. für einen Kunden,
welcher die AutoCAD-Vollversion 2007 und 2008 hat.
Und da ja bei euren Tests alles geklappt hat, und sich
auch mein Kunde noch nicht bezüglich der Anzeige der
Gruppe im Manager beschwert hat, dürfte ja bei Ihm
alles funktionieren. Ich kann damit leben, daß es nur
bei meiner LT-Version nicht gleich im Manager angezeigt wird.

Gruß
Roman

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

Dorfy
Mitglied
Double-Dipl.-Ing. Bleistiftanspitzer


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

Beiträge: 900
Registriert: 21.07.2006

AutoCad2007, ProE, HiCad

erstellt am: 19. Jul. 2007 11: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 romi1 10 Unities + Antwort hilfreich

Hallo

"...aber ich mag' die command-Befehle leider überhaupt nicht.
Da hat man immer das ganze Textfeld voller Anzeigen..."
(mag ich auch nicht, deine lösung ist so auch schon besser)
aber schau dir mal cmdecho --> 0 an...

mfg heiko

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