cialebret Posté(e) le 30 mai 2006 Posté(e) le 30 mai 2006 Bonjour à tous,Je débute en lisp, bien que je pratique Autocad depuis pas mal de temps, mais je me refusais jusque maintenant d'en crér, pensant que ça n'était pas à ma portée, et bien j'ai envie dans fabriquer un peu.je souhaite un lisp qui me permettrais de mettre dans le presse papier le nom d'un calque que j'interrogerais pour l'inséser ensuite dans un programme car les lisp amateur ne sont pas toujours convivial. mais ceci pourrais me faire gagne du temps.merci pour les réponses.j'en aurais certainement d'autres.CIAN
Bred Posté(e) le 30 mai 2006 Posté(e) le 30 mai 2006 Salut mettre dans le presse papier le nom d'un calque que j'interrogerais pour l'inséser ensuite dans un programme j'avoue que je ne comprend pas ce que tu veux... Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
bonuscad Posté(e) le 30 mai 2006 Posté(e) le 30 mai 2006 Pour récupérer un ou plusieurs nom de calque par pointage, tu pourrais utiliser un truc de ce genre:Faire un copier coller de ce qui suit en ligne de commande pour essayer. ((lambda ( / ent name_layer list_name_layer) (while (setq ent (entsel "\nChoisir une entité: ")) (princ (setq name_layer (cdr (assoc 8 (entget (car ent)))))) (if (not (member name_layer list_name_layer)) (setq list_name_layer (cons name_layer list_name_layer)) ) ))) Tu auras ainsi les nom des calques dans une liste. Après tu peux faire ce que tu veux de cette liste.Pour l'envoyer dans le presse-papier, je ne sais pas faire! Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
Patrick_35 Posté(e) le 30 mai 2006 Posté(e) le 30 mai 2006 SalutSi c'est ce que tu souhaites.Le lisp prends comme calque à copier le calque courant (defun c:cpp() (vl-bb-set "Patrick_35" (vla-get-activelayer (vla-get-activedocument (vlax-get-acad-object)))) (princ "\nCopier prêt.") (princ) ) @+ (defun c:clp(/ newlay lay tblay) (if (setq lay (vl-bb-ref "Patrick_35")) (progn (setq tblay (vla-get-layers (vla-get-activedocument (vlax-get-acad-object)))) (setq newlay (vla-add tblay (vla-get-name lay))) (vla-put-color newlay (vla-get-color lay)) (vla-put-freeze newlay (vla-get-freeze lay)) (vla-put-layeron newlay (vla-get-layeron lay)) ; (vla-put-linetype newlay (vla-get-linetype lay)) (vla-put-lineweight newlay (vla-get-lineweight lay)) (vla-put-lock newlay (vla-get-lock lay)) ; (vla-put-plotstylename newlay (vla-get-plotstylename lay)) (vla-put-plottable newlay (vla-get-plottable lay)) (vla-put-viewportdefault newlay (vla-get-viewportdefault lay)) (vla-put-activelayer (vla-get-activedocument (vlax-get-acad-object)) newlay) ) (princ "\nPas de copier d'effectué auparavant.") ) (princ) ) (vl-load-com) (princ "\nLisp chargé. Faites CPP pour un copier et CLP pour un coller dans un autre dessin") (princ) Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
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