Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Proxy-Element im Block

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:  Proxy-Element im Block (1655 mal gelesen)
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: 15. Mai. 2008 10:56    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 möchte ein Proxy-Element, welches sich in einem Block befindet,
im Block auflösen...?
(Block soll aussehen wie zuvor, nur Proxy-Element zerlegt in Elemente)

Das Tool "killproxy" von Cadwiesel löscht leider die Elemente.
Sub-Code aus killproxy.lsp von Cadwiesel

(defun search-Blocktable (/ i EARX_BTAA elem elist elem_vor)
  (setq EARX_BTAA (tblnext "BLOCK" T)
        elist    nil;;???
        i 0
        ) ;_ end of setq
  (while
    (/= EARX_BTAA nil)
    (setq elem (cdr (assoc -2 EARX_BTAA)))
    (while (/= elem NIL)
      (cond
        ((wcmatch (cdr (assoc 0 (entget elem))) "*PROXY*")
 
            ;;(vla-Delete(vlax-ename->vla-object elem))

;;Hier sollte dann das Element aufgelöst werden
           
            (setq elem elem_vor)
          ) ;_ end of if
        ) ;_ end of cond
      (setq elem_vor elem
            elem (entnext elem))
      ) ;_ end of while
    (setq EARX_BTAA (tblnext "BLOCK"))
    ) ;_ end of while
  i
  )

Da das ganze im Block ist, ...???
Mfg Heiko

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

CADmium
Moderator
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: 13508
Registriert: 30.11.2003

.

erstellt am: 15. Mai. 2008 11: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 Dorfy 10 Unities + Antwort hilfreich

nutz vla-copy-objects um das Proxy-objekt in den Layoutblock zu übertragen, dann ein (command "_explode"..) und ein anschließendes Einsammeln der neuen Elemente und zurückkopieren mit dem entsprechenden Block als neuen Owner..

------------------
      - 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

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: 15. Mai. 2008 11:27    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

@CADmium
Danke für den Ansatz, werde mich gleich mal versuchen... .
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: 16. Mai. 2008 09:55    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,
Zitat:
Original erstellt von CADmium:
nutz vla-copy-objects um das Proxy-objekt in den Layoutblock zu übertragen,...


... vla-copy-objects...???
Dachte mir es wie folgt:

  (setq vlaObj (vla-Copy (->VLA-OBJECT elem)))
;; Kopie erzeugen
  (command "._EXPLODE"
  (ssadd (vlax-vla-object->ename vlaobj))
  )
;; sprengen
  (setq awsexplode (ssget "_P"));; -->nil -->fehler oben
;; einsammeln und zusammenbauen zu neuen block
  (if awsexplode
    (progn
      (while (tblobjname "BLOCK" (itoa NAME))
(setq name (1+ name))
      )
      (vl-cmdf "_-block" (itoa NAME) POINT awsexplode "")
      (vl-cmdf "_-insert" (itoa NAME) POINT 1 1 0)      
    )
  )
;; löschen der erzeugten bzw proxy-elemente  
  (vla-Delete vlaobj)
  (vla-Delete (vlax-ename->vla-object elem))
;; in den hauptblock einbauen
  ...
;; (blockupdate)

Wie bekomme ich das Proxy-Element kopiert...?
Mfg Heiko

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

Alles

erstellt am: 16. Mai. 2008 10: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 Dorfy 10 Unities + Antwort hilfreich

Wenn es fremde Proxys sind - bedenke auch das ein explode evtl nicht vorgesehen
ist vom Ersteller (des Proxys)

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

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: 16. Mai. 2008 11: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

@cadffm
von Hand kann ich das Proxy-Element sprengen,
außerhalb der Blöcke geht es auch mittels Lisp ...
... soweit so gut ...

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: 16. Mai. 2008 14:10    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 bekommen das Proxy-Element mit

(setq obj (->VLA-OBJECT (car (nentsel))))
(setq vlaObj (vla-Copy obj
      ))

im Block kopiert. Nur hier kann ich es nicht sprengen!?
Wie bekomme ich den "neuen Owner" hinzu?
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