Aller au contenu

modif lis KHATCH_BLOCK


Messages recommandés

Posté(e)

Salut à tous,

 

j'utilise le programme KHATCH_BLOCK.lsp pour effacer les hachures dans des plans (il fonctionne super bien) mais je voudrais que le programme ne supprime que les hachures de type solide, est ce qu'une bonne âme pourrait me donner la ligne à modifier/rajouter (je suis novice en language) ??

merci d'avance.

cordialement

AHG

 

ci-dessous le programme:

 

;; Supprimer (Kill) les hachuress (HATCH) dans les blocs (BLOCK)

;; Par GC le 11/03/2011 - Passage en DEFUN par Fraid

;; Micro-Modification par LeCrabe DIM -->HATCH

(defun c:KHATCH_BLOCK (/ b o)

 

(vl-load-com)

 

(vlax-for b (vla-get-Blocks

 

(vla-get-ActiveDocument

 

(vlax-get-acad-object)

 

)

 

)

 

(or

 

(= (vla-get-IsLayout B) :vlax-true)

 

(= (vla-get-IsXref B) :vlax-true)

 

(vlax-for o b

 

(if (wcmatch (vla-get-ObjectName o) "AcDb*Hatch")

 

(vla-delete o)

 

)

 

)

 

)

 

)

 

)

(c:KHATCH_BLOCK)

(command "regen")

Posté(e)

(defun c:KHATCH_BLOCK (/ b o)  
 (vl-load-com)
 (vlax-for b (vla-get-Blocks
	(vla-get-ActiveDocument
	  (vlax-get-acad-object)
	  )
	)    ;(setq b(vla-item(vla-get-Blocks(vla-get-ActiveDocument(vlax-get-acad-object)))0))
   (or
     (and (= (vla-get-IsLayout B) :vlax-true)(/= (vla-get-Name B)"*Model_Space"))
     (= (vla-get-IsXref B) :vlax-true)
     (vlax-for o b	;(setq o(vla-item b 3))
(if (and(wcmatch (vla-get-ObjectName o) "AcDb*Hatch")
	(= (vla-get-PatternName o) "SOLID"))
  (vla-delete o)
  )
)
     )
   )
 )
(c:KHATCH_BLOCK)
(command "regen")

J'ai un doute. On dirait que ton code ne traitait que les blocs, j'ai ajouté l'espace objet dans son entier. Et continué à exclure les espaces papiers....

[Modérateur du forum] Pense aussi à desativer les émoticones quand tu publies du lisp. Je l'ai fait... et pour répondre j'ai utilisé les balises de codes B)

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Posté(e)

Salut TRAMBER,

 

un grand merci pour ta réponse !!!

Désolé pour émoticones !!

cordialement

ahg

 

 

(defun c:KHATCH_BLOCK (/ b o)  
 (vl-load-com)
 (vlax-for b (vla-get-Blocks
	(vla-get-ActiveDocument
	  (vlax-get-acad-object)
	  )
	)    ;(setq b(vla-item(vla-get-Blocks(vla-get-ActiveDocument(vlax-get-acad-object)))0))
   (or
     (and (= (vla-get-IsLayout B) :vlax-true)(/= (vla-get-Name B)"*Model_Space"))
     (= (vla-get-IsXref B) :vlax-true)
     (vlax-for o b	;(setq o(vla-item b 3))
(if (and(wcmatch (vla-get-ObjectName o) "AcDb*Hatch")
	(= (vla-get-PatternName o) "SOLID"))
  (vla-delete o)
  )
)
     )
   )
 )
(c:KHATCH_BLOCK)
(command "regen")

J'ai un doute. On dirait que ton code ne traitait que les blocs, j'ai ajouté l'espace objet dans son entier. Et continué à exclure les espaces papiers....

[Modérateur du forum] Pense aussi à desativer les émoticones quand tu publies du lisp. Je l'ai fait... et pour répondre j'ai utilisé les balises de codes B)

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • 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é