hardyorock Posté(e) le 20 juillet 2006 Posté(e) le 20 juillet 2006 J'ai besoin d'un lisp qui copie un objet un nombre précis de copie de façon a ce que ces copie seront positionné en ligne horizontale et ce touche ( comme si ces objets étaient posé dans une table et ce touche entre eux )Sans utilise la commande réseau d'Auto CAD je veux une commande plus intelligente que la commande réseau) je veux que la commande lisp détecte toute les information que la commande réseaux demandes pour avoir finalement des objet qui ce touche (la hauteur max et la largeur max de l'objet) et en plus il faut que les objets soient copier dans une zone que l'utilisateurs précise (précisé la hauteur et la largeur de la zone de copie sans précisé le nombre des objet copier)Merci [Edité le 24/7/2006 par hardyorock]
(gile) Posté(e) le 20 juillet 2006 Posté(e) le 20 juillet 2006 Salut, Tu veux beaucoup de choses ... Il y a un sujet récent qui traite de copies multples, tu y trouveras des liens et un LISP (sous deux formes ici et là) Ces LISP ne sont pas aussi "intelligents" que tu le désirerais, mais si tu ne veux pas faire deux clics pour spécifier le décalage, tu peux les adapter à tes besoins. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
nazemrap Posté(e) le 20 juillet 2006 Posté(e) le 20 juillet 2006 Bonjour. Est-ce que la commande super hatch du menu express (bonus) ne fait pas toutes ces choses ? nazemrap
bonuscad Posté(e) le 23 juillet 2006 Posté(e) le 23 juillet 2006 Avec ce POST Il suffit de l'adapter un peu pour faire un truc de ce genre. Vite fait, pour débrouissailler, en reprenant ce code, (ce que tu aurais pu essayer de faire, il y a déjà beaucoup de solution sur CadXP, il suffit d'adapter ou d'approfondir) (defun des_vec (lst col / lst_sg) (setq lst_sg (list (cadr lst) (car lst))) (setq lst (cdr lst)) (while lst (if (cadr lst) (setq lst_sg (cons (cadr lst) (cons (car lst) lst_sg))) (setq lst_sg (cons (last lst_sg) (cons (car lst) lst_sg))) ) (setq lst (cdr lst)) ) (setq lst_sg (cons col lst_sg)) (grvecs lst_sg) ) (defun c:auto_array ( / ent obj ll ur pt_ins dx dy pt_tmp n key pt_key e_last) (while (null (setq ent (entsel "\nChoix de l'objet à copier: ")))) (setq Obj (vlax-ename->vla-object (car ent))) (vla-GetBoundingBox Obj 'll 'ur) (setq ll (safearray-value ll)) (setq ur (safearray-value ur)) (setq dx (- (car ur) (car ll)) dy (- (cadr ur) (cadr ll)) pt_ins ll pt_tmp pt_ins ) (initget 7) (setq n (getint "\nNombre de copies à mettre en place?: ")) (command "_.zoom" "_window" "_none" pt_ins "_none" (list (+ (car pt_ins) (* dx n)) (+ (cadr pt_ins) (* dy n)))) (while (and (setq key (grread T 4 0)) (/= (car key) 3)) (cond ((eq (car key) 5) (setq pt_key (cadr key)) (redraw) (repeat n (des_vec (list (list (car pt_ins) (cadr pt_ins)) (list (+ (car pt_ins) dx) (cadr pt_ins)) (list (+ (car pt_ins) dx) (+ (cadr pt_ins) dy)) (list (car pt_ins) (+ (cadr pt_ins) dy)) ) 3 ) (if (> (car pt_key) (car pt_ins)) (setq pt_ins (list (+ (car pt_ins) dx) (cadr pt_ins))) (setq pt_ins (list (car pt_tmp) (+ (cadr pt_ins) dy))) ) ) (setq pt_ins pt_tmp) ) ) ) (redraw) (setvar "cmdecho" 0) (setq pt_ins ll) (command "_.copy" (car ent) "" "_none" pt_ins "_none" pt_ins) (setq e_last (entlast)) (repeat n (command "_.copy" (entlast) "" "_none" pt_ins) (if (> (car pt_key) (car pt_ins)) (setq pt_ins (list (+ (car pt_ins) dx) (cadr pt_ins))) (setq pt_ins (list (car pt_tmp) (+ (cadr pt_ins) dy))) ) (command "_none" pt_ins) ) (entdel (entlast)) (entdel e_last) (setvar "cmdecho" 1) (prin1) ) [Edité le 25/7/2006 par bonuscad] Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
hardyorock Posté(e) le 24 juillet 2006 Auteur Posté(e) le 24 juillet 2006 merçi a vous tous pour bonuscad c sure ce que tu a fais et trés coul mais je suis un debutant et je connais absolument rien en visuel lisp ou autolispe . comment on peux ce former en lisp. et est ce que quelqu'un a des documentation pour les debutant si c possible de me l'envoyer a mon adress e-mail: o.debbagh@gmail.comje serais trés reconnaissant
Fraid Posté(e) le 24 juillet 2006 Posté(e) le 24 juillet 2006 bonjour, Il y a le develloper guide dans l'aide d'autocadmalheureusement il est en anglaisIl est toujours pas traduit??!!!Vu le prix du logiciel, autodesk pourrait faire un effort :mad: de que j'ai l'occasion de le dire je le faispour ma part j'avais commencer a m'y mettremais si en plus il faut apprendre l'anglais...alors j'attend une traduction bon courage https://github.com/Fraiddd
bonuscad Posté(e) le 24 juillet 2006 Posté(e) le 24 juillet 2006 J'ai débuté au temps ou l'aide était sur support papier.Celle-ci était fournie en Français en grande partie pour la partie développement. Pour la version R14, elle n'était plus fournie en support papier, je l'ai eu avec un supplément financier en Français de la part d'AutoDesk: Mon employeur avait pris le financement à sa charge :cool: . (C'est la dernière version que je possède sur papier) Peut être que cette démarche est toujours possible pour les version actuelle et qu'il est alors possible de l'avoir en Français en version papier. Mais ceci n'est pas très commercial de la part d'AutoDesk et nous mets pas sur un pied d'égalité avec les anglo-saxons. :mad: Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
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