alybaba Posté(e) le 7 octobre 2005 Posté(e) le 7 octobre 2005 Bonjour à tous. J'ai un problème urgent à résoudre.aidez moi s'il vous plait. J'ai déjà exposé ce problème dans le forum d'AutoCAD 2004, c'est à dire que les hachures ont toutes le même point d'origine (c'est à dire qu'elle parte toute virtuellement du même endroit (par défaut le point 0,0. Je veux changer cette base, je sais qu'on sais le faire car je l'ai déjà utilisé dans autoCAD 2002 et 2004 seulement je me souvient pas de la commande. :mad: PLEASE, HELP MEMERCI Je vois parfois dans le regard d'un cheval la beauté inhumaine d'un monde d'avant le passage des hommes.
bonuscad Posté(e) le 7 octobre 2005 Posté(e) le 7 octobre 2005 Définis la variable 'SNAPBASE avant de mettre en place tes hachures. Un lisp trouvé sur le net pour changer après coup la base des hachures. (defun C:HPSTART ( / ent pt1 pt2) (setvar "CMDECHO" 0) (while (not (setq ent (entsel " \nSélectionner le modèle de Hachure à éditer: ")))) (cond ((eq (cdr (assoc 0 (entget (car ent)))) "HATCH") (setq pt1 (getpoint "\nPoint d'origine à établir aux hachures: ")) (setq pt2 (list (car PT1) (cadr PT1))) (setvar "SNAPBASE" pt2) (if (zerop (cdr (assoc 76 (entget (car ent))))) (command "_.-HATCHEDIT" ent "" "" "" "" "") (command "_.-HATCHEDIT" ent "" "" "" "") ) (command "_.SNAPBASE" "0,0") ) (T (princ "\nL'objet n'est pas une hachure.")) ) (setvar "CMDECHO" 1) (princ) ) Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
(gile) Posté(e) le 8 octobre 2005 Posté(e) le 8 octobre 2005 Salut, Le même, mais avec la possibilité de lancer la commande après avoir sélectionné le motif de hachures: (defun C:HPSTART (/ ent set1 base echo pt1 pt2) (if (and (= 1 (getvar "pickfirst")) (setq set1 (ssget "_i")) (= 1 (sslength set1)) ) (progn (setq ent (ssname set1 0)) (sssetfirst nil nil) ) (progn (sssetfirst nil nil) (while (not ent) (setq ent (car (entsel "\nSélectionnez le motif de hachures à modifier. " ) ) ) ) ) ) (setq base (getvar "snapbase") echo (getvar "cmdecho") ) (command "_undo" "_begin") (setvar "cmdecho" 0) (cond ((eq (cdr (assoc 0 (entget ent))) "HATCH") (setq pt1 (getpoint "\nPoint d'origine à établir aux hachures: ")) (setq pt2 (list (car pt1) (cadr pt1))) (setvar "SNAPBASE" pt2) (if (zerop (cdr (assoc 76 (entget ent)))) (command "_.-HATCHEDIT" ent "" "" "" "" "") (command "_.-HATCHEDIT" ent "" "" "" "") ) (setvar "snapbase" base) ) (T (princ "\nL'objet n'est pas une hachure.")) ) (command "_undo" "_end") (setvar "cmdecho" echo) (princ) ) Il est donc possible de mettre cette commande dans le menu contextuel des hachures (sélection +clic droit) en modifiant le fichier *.mns courant : ***POP509 **OBJECT_HATCH [Menu contextuel de l'objet HACHURES] ID_Hatchedit [Edition des h&achures...]^C^C_hatchedit ID_Hpstart [&Modifier l'origine]^C^Chpstart Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
alybaba Posté(e) le 10 octobre 2005 Auteur Posté(e) le 10 octobre 2005 merci beaucoup, ça marche :) :) Je vois parfois dans le regard d'un cheval la beauté inhumaine d'un monde d'avant le passage des hommes.
lecrabe Posté(e) le 10 octobre 2005 Posté(e) le 10 octobre 2005 Bonjour Si vous avez un simple AutoCAD LT vous pouvez aussi venir "placer" l'origine de votre SCU au coin de l'objet (et avec la rotation voulue) que vous voulez hachurer ... Mais c'est sur, un Programme AutoLisp qui fait le boulot "tout seul", c'est le pied !!! :) Le Decapode Autodesk Expert Elite Team
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant