hardyorock Posté(e) le 13 mars 2008 Posté(e) le 13 mars 2008 salut les amisle lisp ci dessous que chopé d'un site ne marche plus en 2008 (defun BoundsGet ()(vl-load-com)(setq EntNam a)(vla-getboundingbox (vlax-ename->vla-object EntNam) 'LowLft 'UppRgt)(setq BoxList (mapcar 'vlax-safearray->list (list LowLft UppRgt))));defun BoundsGet(boundsget) d'aprés vous c'est quoi le probleme?
Patrick_35 Posté(e) le 13 mars 2008 Posté(e) le 13 mars 2008 Salut La variable a n'est pas définit.Elle doit contenir un objet Par exemple(setq a (car (entsel))) @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
hardyorock Posté(e) le 13 mars 2008 Auteur Posté(e) le 13 mars 2008 Merci Patrick_35 pour ta réponse,En effet le variable a est déjà définiCi dessous tout mon lisp :Mon lisp travail comme ça : A partir d'un fichier j'extrait un contour qui est ensuite hachuré est bloqué pour l'inserai dans un autre fichier que je n'ouvre pas. ***********************************************************************(defun c:blocpro () (setq ss (ssget)) ;ajouts des hachures au variable ss(command "hachures" "solid" ss "")(setq a (entlast))(ssadd a ss) ;creation layer(setq AcDoc (vla-get-ActiveDocument (vlax-get-acad-object)))(if (not (tblobjname "LAYER" "profile_bloqué"))(vla-add (vla-get-Layers AcDoc) "profile_bloqué"))(vla-put-Color (vlax-ename->vla-object (tblobjname "LAYER" "profile_bloqué")) 144)(repeat (setq x (sslength ss))(setq vla-ob (vlax-ename->vla-object (ssname ss (setq x (1- x))))) (vla-put-layer vla-ob "profile_bloqué"));fonction pour definir les limites du profile(defun BoundsGet ()(vl-load-com)(setq EntNam a)(vla-getboundingbox (vlax-ename->vla-object EntNam) 'LowLft 'UppRgt)(setq BoxList (mapcar 'vlax-safearray->list (list LowLft UppRgt))));defun BoundsGet(boundsget) (setq poinIns (car boxlist))(setq lung (strlen (getvar "dwgname")))(setq nome (substr (getvar "dwgname") 1 (- lung 4)));name file (command "_-block" nome poinIns ss "") (defun Ouvrir_dessin_dbx(dwg / dbx)(if (< (atoi (substr (getvar "ACADVER") 1 2)) 16)(setq dbx (vlax-create-object "ObjectDBX.AxDbDocument"))(setq dbx (vlax-create-object (strcat "ObjectDBX.AxDbDocument." (substr (getvar "ACADVER") 1 2)))))(vla-open dbx dwg)dbx):transphere au fichier cyble(setq AcDoc (vla-get-ActiveDocument (vlax-get-acad-object))bl (vla-item (vla-get-Blocks AcDoc) nome)Dbx (ouvrir_dessin_dbx "C:/3-PLAN_VERSION_2007/BLOC_PROFILE/PROFILE_3100.dwg")) ;; importation de la définition dans le dessin cible(vlax-invokeacDoc'CopyObjects(list bl)(vla-get-blocks Dbx)) ;; insertion du bloc en 0,0,0(vla-InsertBlock(vla-get-ModelSpace Dbx)(vlax-3d-point '(0 0 0))nome1110) ;; enregitrement(vla-saveas Dbx "C:/3-PLAN_VERSION_2007/BLOC_PROFILE/PROFILE_3100.dwg") ;; suppression du pointeur vers le dessin cible(vlax-release-object Dbx) )***********************************************************************************
Patrick_35 Posté(e) le 13 mars 2008 Posté(e) le 13 mars 2008 Oui, et la question ?Je ne comprends pas ce que tu veux. @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
hardyorock Posté(e) le 17 mars 2008 Auteur Posté(e) le 17 mars 2008 le probleme Patrick_35 c'est que ca marche pas en 2008autocad me retourne le message suivant: "Commande: ; erreur: no function definition: VLAX-GET-ACAD-OBJECT"
Patrick_35 Posté(e) le 17 mars 2008 Posté(e) le 17 mars 2008 Salut Met (vl-load-com) en tête du lisp. @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
lili2006 Posté(e) le 17 mars 2008 Posté(e) le 17 mars 2008 Bonsoir à toutes et tous, J'ai pas bien compris à quoi sert ce lisp ??!! Merci de m'éclairer. Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
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