Aller au contenu

Messages recommandés

Posté(e)

Bonjour,

 

Je ne trouve pas comment détacher un pdf, en Autolisp ni en Visual.

 

j'ai essayer comme cela

 


(setq *AcDoc* (vla-get-ActiveDocument (vlax-get-acad-object)))
(vlax-for obj (vla-get-blocks *acdoc*)
(if (member (vla-get-objectname obj)'("AcDbPdfReference" "AcDbDwfReference" "AcDbDgnReference")
    )
        (vla-detach obj)
 )
)

 

en prenant en meme tant les eventuels dwf et dgn en calques sousjacents.

 

Quénéni

 

il y a bien un jeu de selection qui ce fait, mais rien ne ce passe :(

 

j'ai bien vu en faisant un dump sur un pdf, que la méthode detache n'est pas pris en charge, mais alors pourquoi me repondre nil et pas erreur?

 

et il n'y a pas grand chose dans l'aide, meme la nouvelle, au sujet des pdf,

 

peut etre que c'est comme les images avec la commande _-image d * ?????????

Posté(e)

Salut

 

Par exemple

'lambda(/ ent sel)
 (and (ssget "x" (list (cons 0 "PDFUNDERLAY")))
   (progn
     (vlax-for ent (setq sel (vla-get-activeselectionset (vla-get-activedocument (vlax-get-acad-object))))
(vla-delete ent)
     )
     (vla-delete sel)
   )
 )

 

@+

Les Lisps de Patrick

Le but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.

Joseph Joubert, 1754-1824

Posté(e)

en fait j'ai réussi a trouver une piste sur forums.augi.com

 

Voila ce qui détache tout

 

(defun c:DetachTout ( / msp dict)
(vl-load-com)
(setq *AcDoc* (vla-get-ActiveDocument (vlax-get-acad-object)))
(vl-cmdf "_.-xref" "D" "*")
(vl-cmdf "_.-image" "D" "*")
(setq msp (vla-get-modelspace *acdoc*))
(vlax-for ent msp
(if 
	(or 
		(eq (vl-catch-all-apply 'vla-get-objectname (list ent)) "AcDbDwfReference")
		(eq (vl-catch-all-apply 'vla-get-objectname (list ent)) "AcDbPdfReference")
		(eq (vl-catch-all-apply 'vla-get-objectname (list ent)) "AcDbDgnReference")
		(eq (vl-catch-all-apply 'vla-get-objectname (list ent)) "AcDbOle2Frame")
	)
	(vla-delete ent)
)
)
(setq dict (vla-get-dictionaries *acdoc*))
(vlax-for di dict
(if 
	(or 
		(eq (vl-catch-all-apply 'vla-get-name (list di)) "ACAD_IMAGE_DICT")
		(eq (vl-catch-all-apply 'vla-get-name (list di)) "ACAD_PDFDEFINITIONS")
		(eq (vl-catch-all-apply 'vla-get-name (list di)) "ACAD_DGNDEFINITIONS")
		(eq (vl-catch-all-apply 'vla-get-name (list di)) "ACAD_DWFDEFINITIONS")
	)
	(progn
		(vlax-for d di
		(vla-delete d)
	)
	(vla-delete di)
	)
)
)
(princ)
)


Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité