Circus Posté(e) le 29 novembre 2006 Posté(e) le 29 novembre 2006 Bonjour, Je n'y connais rien du tout en lisp, la seul chose que j'arrive a faire c'est créer un bouton pour en lancer une... Je voudrais créer une lisp qui fais un zoom étendu de chaque présentation du dessin (pour contourner ce foutu bug sur les ole lors de l'impression) J'ai deja un début, dans un bouton j'aurai mi ^^ZOOM;ET;^c^c , mais ca ne marche que pour la présentation en cours de visualisation, c'est pourquoi il me faut du lisp. Merci d'avanceA+KC [Edité le 30/11/2006 par Circus] Autocad Architecture Inventor 3d Viz Paint
Patrick_35 Posté(e) le 29 novembre 2006 Posté(e) le 29 novembre 2006 Salut (defun c:zet(/ def doc lay) (setq doc (vla-get-activedocument (vlax-get-acad-object)) def (vla-get-activelayout doc)) (vlax-for lay (vla-get-layouts doc) (if (not (eq (vla-get-name lay) "Model")) (progn (vla-put-activelayout doc lay) (vla-zoomextents (vlax-get-acad-object)) ) ) ) (vla-put-activelayout doc def) (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
Circus Posté(e) le 30 novembre 2006 Auteur Posté(e) le 30 novembre 2006 Merci beaucoup, je vais tester cela. A première vue, je comprend rien du tout !Je vais me pencher sur le sujet histoire de me dévelloper le cerveau. encore merci Patrick !A+KC Autocad Architecture Inventor 3d Viz Paint
Bred Posté(e) le 30 novembre 2006 Posté(e) le 30 novembre 2006 Salut,Patrick_35 t'as fait une proposition en "Visual-Lisp", ce qui est une logique un peu différente du "lisp" : les fonction sont réalisés d'après les fonctions VBA (les noms sont sensiblement pareil, et la logique y ressemble)Si tu veux te mettre au lisp, je te conseil d'abord l'auto-lisp.Tu as dans ce forum beaucoup d'exemple servant à débuter (et un cours pour débutant dans la section téléchargement). Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
Circus Posté(e) le 30 novembre 2006 Auteur Posté(e) le 30 novembre 2006 J'aimerai bien me mettre a la programmmation, car sur autocad j'en aurai fortement besoin.Apres, quel language, je pense que le VBA vu ce que je voudrais faire serait l'ideal...bref, j'ai beaucoup de chose a voir et apprendre, je sais pas par ou commencer ! Autocad Architecture Inventor 3d Viz Paint
Bred Posté(e) le 30 novembre 2006 Posté(e) le 30 novembre 2006 je pense que le VBA vu ce que je voudrais faire serait l'idealTu as beaucoup de post dans ce site qui parle du choix entre vba et lisp... fait une recherche et jettes-y un coup d'oueil ! Perso, je trouve le lisp beaucoup plus souple à utiliser... Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
Circus Posté(e) le 30 novembre 2006 Auteur Posté(e) le 30 novembre 2006 Ok, et merci En tout cas ca fonctionne nikel, seul hic, faut une sacrée machine <acronym class=dict title=, mais c'est SUPER !!! plus de problème d'impression des objets OLE !! Autocad Architecture Inventor 3d Viz Paint
Patrick_35 Posté(e) le 30 novembre 2006 Posté(e) le 30 novembre 2006 SalutC'est le problème de changer d'onglet. Il faut regénérer à chaque fois et je n'ai pas trouvé le moyen de le bloquer Pour BredTu peux refaire le lisp en pur autolisp @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
Bred Posté(e) le 30 novembre 2006 Posté(e) le 30 novembre 2006 Pour BredTu peux refaire le lisp en pur autolisp Une manière(avec commentaires pour comprendre) (defun c:zpr (/ list_Presentation x) (setq list_Presentation (layoutlist) ; lister noms présentations dans variable list_Presentation x 0) ; variable x = 0 (repeat (length list_Presentation) ; répéter nombre d'élément dans list_Presentation (command "presentation" "E" (nth x list_Presentation)) ; rend courant la "x'ième" présentation dans list_Presentation (command "zoom" "et") ; zoom étendu (setq x (+ 1 x)) ; incrémente vriable x de +1 ) (princ) ) Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
Patrick_35 Posté(e) le 1 décembre 2006 Posté(e) le 1 décembre 2006 Super Bred :D Juste une remarque s'il tu le permetTu n'utilises pas le langage international pour les command @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
Bred Posté(e) le 1 décembre 2006 Posté(e) le 1 décembre 2006 Juste une remarque s'il tu le permet ... ça va... je permet ... ;) Tu n'utilises pas le langage international pour les command C'est (un peu) fait exprès pour faire comprendre... mais il est vrais que je ne le fait pas automatiquement (et encore moins pour les options !...) ... je vais me soigner.... Pour Circus : (getcname "nomcommande") retourne le nom local de la commande (français - Anglais ou l'inverse)... mais pas les options ... :( Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
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