Aller au contenu

Messages recommandés

Posté(e)

Bonjour à tous,

 

Je pose le problème :

- j'ai beaucoup de polylignes fermées que je dois hachurer

- chaque polylignes doit avoir sa propre hachure

 

Si je lance la commande hachure et je sélectionne les n polylignes fermées d'un seul coup, je n'ai malheureusement pas n hachures mais une seule. Alors si je veux n hachures, il faut que je lance n fois la commande hachure ?? Et ça me fatigue ...

 

Il n'y aurait pas par hasard une variable pour paramétrer la fonction hachure ? Sinon, va falloir que je me bricole un ptit lisp

 

Merci

 

Zebulon_

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

Posté(e)

Salut,

 

A priori, pas d'autre solution que de les faire une à une. :mad:

 

A partir de la version AutoCAD 2006, il y a une option dans la boîte de dialogue des hachuires qui permet de séparer les hachures. :thumbup:

 

A+

Jean-Philippe - Formateur / Dessinateur sur AutoCAD et MEP

http://www.git-cad.ch

Posté(e)

j'ai fait plusieurs figures en polylignes et j'ai hachuré tout d'un coup

par contre c'est le même motif de hauchure pour tout

michael

Posté(e)

Le vrai raccourci, c'est de selectionner une entité fermée et de taper H (et oui) puis plusieurs fois ENTREE !

Ca va encore bcp + vite si on fait le choix d'objet après.

 

Si un choix de hachures a déjà été au préalable fait ca roule tout seul.

Facile à mettre dans un bouton de script.

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

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

merci,

 

ce qu je vais faire c'est un lisp qui va faire un ssget en filtrant les polylignes fermées (code dxf 70, a priori), puis faire une boucle while qui lance une commande hachure pour chaque polyligne fermée

 

On fera ça demain, je vous tiens au courant.

 

Zebulon_

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

Posté(e)

volià ce que ça pourrait donner :

 

(defun c:PHatch ()

(prompt "\nSélectionner des polylignes fermées")

(setq ss (ssget '((0 . "LWPOLYLINE") (70 . 1))))

(if ss

(progn

(setq ssl (sslength ss))

(setq I 0)

(while (< I ssl)

(command "-fhach" "P" "SOLID" "_a" "_a" "_y" "" "_s" (ssname ss I) "" "")

(setq I (+ I 1))

)

)

)

(princ)

)

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

Posté(e)

Salut Zebulon_,

J'ai un peu remanié ton lisp, c'est juste pour t'indiquer deux ou trois trucs

 

@+

 

(defun c:PHatch (/ cmd i ss)
 (setq cmd (getvar "cmdecho") i 0)
 (setvar "cmdecho" 0)
 (command "_.undo" "_group")
 (prompt "\nSélectionner des polylignes fermées")
 (if (setq ss (ssget '((0 . "LWPOLYLINE") (70 . 1))))
   (while (ssname ss i)
     (command "_.hatch" "SOLIDE" "" "" (ssname ss I) "")
     (setq i (1+ i))
   )
 )
 (command "_.undo" "_end")
 (setvar "cmdecho" cmd)
 (princ)
)

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)

C'est vrai que c'est plus simple pour l'utilisateur de pouvoir faire un seul undo après le lisp, surtout si le lisp crée beaucoup de choses.

El le CMDECHO à 0 fait en sorte que le lisp avance plus vite puisqu'il ne se fatigue pas à afficher sur la ligne de commande ce qu'il est en train de faire.

Deux choses à ne pas oublier en début et fin de chaque lisp.

 

Et ssname renvoie nil si l'indice est négatif ou s'il est supérieur à l'entité numérotée la plus grande du jeu de sélection. On peut donc s'en servir comme condition d'arrêt de la boucle while comme tu l'as fait.

D'autre part, je n'utilise jamais les fonctions arithmétiques 1+ et 1-, parce que je ne vois pas trop ce que ça apporte de plus d'écrire (1+ n) plutôt que (+ 1 n) ?

 

Amicalement

 

Zebulon_

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

Posté(e)

Un bel exemple de ce qu'on peut faire avec les filtres de ssgtet et avec ssadd

 

merci

 

Zebulon_

 

[Edité le 16/8/2005 par zebulon_]

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

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é