CadFrank
Membres-
Compteur de contenus
141 -
Inscription
-
Dernière visite
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par CadFrank
-
Mais, c'est possible de le faire aik l'éditeur vlisp non?
-
Bonjour, Je cherche à inserer un block dynamic qui a une list Voir image : je voudrais simplement savoir les fonctions a utilisé pour le faire si possible. Merci
-
Bon avec plus de visualisation j'ai remarqué que si je change tracer pour trace il me donne plus d'erreur ; error: too many arguments Par contre la routine fait rien. Je suis un peu embêté
-
Toujour moi, autre petite question. Quand j'ai pris ma formation sur Autolisp mon professeur me disais de mettre les sub-routine avant le defun c: Et dans le livre il me mettre la sous routine apres. y a-t-il une différence ? Maintenant quand je charge la routine on me retourne ; 2 forms loaded from #<editor "L:/ECHAFAUDAGES/RÉFÉRENCES/BIBLIOTHÈQUE TECHNIQUE/AUTOCAD/ROUTINE LISP/spirale.lsp"> ce qui veux dire qu'il y a 2 formes chargé a partir de par contre si je lance le program apres avoir entré le nombre de cycle. On me retourne ; error: too many arguments donc , erreur trop d'argument.
-
Re bonjour, Tu veux dire qu'il y a encore une autre erreur. Bon je vais essayer de la trouver et si je suis pas capable je te fais signe haha !! Merci beaucoup pour l'aide.
-
Bonjour, Je suis entrein de lire une livre sur AutoLisp. Et il arrive des fois qu'il donne des example de petite routine pour qu'on se pratique un peu. Par contre je fait cette routine de A à Z : (defun c: spirale(/ PT R NC N Centre) (setq PT (getpoint "\nPoint de départ: ")) (setq R (getdist PT "\nRayon de départ: ")) (setq NC (getint "\nNombre de cycle? : ")) (if(> NC 2) (progn (setq N 1) (Setq Centre (polar PT pi R)) (Tracer PT CE N) );progn );if );defun c: (defun Tracer(/ P1 CE N) (if (/= N NC) (progn (if (= (rem N 2) 0) (setq AN 0) (setq AN pi)) (command "_arc" P1 "_c" CE "_a" 180) (setq CE P1) (setq N(1+ N)) (setq P1 (polar P1 AN (* 2 R))) (setq R (* 2 R)) (Tracer P1 CE N) );progn );if (princ) );defun J'ai tout essayer et vu je connais pas encore l'interface Vlisp je sais pas comment le debuger. il me retourne l'erreur qui suit. ; error: bad DEFUN syntax: (C: SPIRALE (/ PT R NC N CENTRE) (SETQ PT (GETPOINT "\nPoint de départ: ")) (SETQ R (GETDIST PT "\nRayon de départ: ")) (SETQ NC (GETINT "\nNombre de cycle? : ")) (IF (> NC 2) (PROGN (SETQ N 1) (SETQ CENTRE (POLAR PT PI R)) (TRACER PT CE N)))) Aucune idee c'est quoi qui veux dire.. il peut pas etre plus claire se logiciel :blink: Merci pour votre aide.
-
Bonjour à tous, Petite question bien vite, es-ce que l'aide au dévellopement est en francais par chez vous? Merci!
-
Merci pour ta réponse bien appréciée Bonne journée
-
Bonjour, Je vois souvent une réponse retourné dans autocad et c'est T Je voudrais savoir ce que cela signifie. Merci!
-
Bonjour, Non, Mais ou est la suite.... Je suis affamé d'information... non je rigole mais comme il est précisé plus au très intéressant le sujet. Très hate a la suite. Salutations !
-
c'est ce que j'ai cru déduire apres ma grande réflexion et ma lecture dans un livre de lisp la [ ' ] apparaisait seulement quand il y avait une list.. mais nul part je trouvais la definition. maintenant tout est claire net et precis B)
-
Eh bien tu vien de faire ma semaine!! c'est incroyable les possibilé avec les lisp sa va me sauver minimum 15min de travail par projet !! Merci beaucoup! un jour je vais comprend la routine écrite hehe pour le moment jsuis pas rendu la. Mais tu as fourni de l'aide énormément. ptite derniere question : le [ ' ] devant la parenthèse signifie quoi? merci encore.
-
Ah bien d'accord je ferais cette effort maintenant j'y avais pas penser. pour ce qui est de la zone, il y aurais une discution dans se forum tu parle? J'ai aussi modifier le code la haut avec le "_" pour les commandes.
-
Bonjour à tous visiteur, Voici ce que je chercher à faire. j'ai un début de code que j'ai créer. Cette routine consiste à créer des échafaudage en plan. Je réussi a faire ce que je veux avec jusqu'au point du array. Ce que je voudrais faire maintenant ce serait de lui demander de faire un array mais dans une zone détermine par une d'une entité fermé. Ce que je me pose comme question est la suivant es-ce possible? peut-on lui donner des contrainte? Et aussi si l'espacement entre les étaiements "cadre" peut varier celon des caractéristique spécifiques de certain calcule. voici mon code : ;****************************************************** ; ce sous program permet de créer un ; cadre d'echafaudage ;****************************************************** (defun cadre() (setq pt1(getpoint"\nPointez premier point : ")) (setq pt2(polar pt1 0 1220)) (setq pt3(list(car pt2)(+(cadr pt1) 2135))) (command"_layer" "_n" "-lu test6" "_c" "2" "-lu test6" "") (command"_donut" "0" "150" pt1 "") (setq cir1(entlast)) (command"_donut" "0" "150" pt2 "") (setq cir2(entlast)) (command"_pline" pt1 pt2 "") (setq lin1(entlast)) (Command"_chprop" cir1 cir2 lin1 "_la" "-lu test6") (command"_block" "lu blockt" pt1 cir1 cir2 lin1 "") (command"_insert" "lu blockt" pt1 "" "" "") (setq blockt(entlast)) )defun cadre ;****************************************************** ; début du program : échafaudage ; ce program permet d'échafauder un projet ;****************************************************** (defun c:ecf() ;(constantes) ;(spécification) ;(calcul) (cadre) (command"_line" pt1 pt3 "") (setq lin2(entlast)) (Command"_array" blockt lin2 "" "r" "6" "2" "2135" portée-sol) (princ) );defun c: Pour plus d'information n'hésité pas a me poser de question. Merci d'avance.
-
Bien qu'un jour j'y parviendrai, le plus vite le mieu. Dans le domaine ou je travail je pense que j'ai besoin de plus grosse connaissance au lisp pour faire mes routine. Je suis dessinateur en coffrage principalement pour l'étaiement de dalle de béton avec des étaiement en aluminium. si tu veux connaitre l'équipement voici le site. www.echafaudage.ca Le plus souvent je recoit les plans d'un batiment et je dois les nettoyer pour y installer mon équipement. je fais aussi la conception de plan pour des grues a tour. Donc je dois trouver comment faire pour construire un lisp qui va m'aider a aller plus vite. J'ai réussi a trouver une routine qui change mes pages automatiquement selon le nombre de layout se qui m'aide beaucoup. Mais bon tout sa pour dire que jsuis impatient d'en découvrir de plus en plus sur le lisp.
-
Bonjour j'ai une derniere petite question concernant cette routine. Est-il possible d'utiliser plus d'un block pour cette routine. J'ai essayé de faire (if(= nombloc nil)(setq nombloc "LU CARTOUCHE")) mais aucun succès.
-
ah c'est moche vue j'ai autocad en anglais il remet me sort tout en anglais. c'est triste hehe. je vais devoir faire avec je crois. p.s : vous parler d'une heure pour me repondre 3H du matin. :P
-
Pour ton information "établier" c'est "set" En ce qui concerne CHPROP je le testerais avec le code puis je te redonnerai mon avis. Il semble être une bonne solution. Merci! En tant que nouveau sur la programmation lisp et le nombre d'idee qui me passe par la tête que souvent je ne sais pas trop par ou commencer. Donc je posse pas mal de question. je cherche un répertoire de tout les fonctions lisp en francais mais je ne trouve rien. Surtout les VLA qui sont avec le ActiveX & VBA. Mais bon en meme temps je me dit chaque chose en son temps. Sur ce bonne soirée ou matiné ou journée.
-
Euh ... Je sais pas trop... mais je comprend pas le ici et la ne m'apporte pas au fonction et je trouve pas plus ou les trouver Je sais pas si j'ai bien d'écrit se que je veux. Je veux trouver les information pour les fonction vla-get-acaddocuments / vla-for etc ...
-
Autre petite question!! pourquoi des fois le program terminer pas les fillets. il en fait que la moitier y aurait-il une modification a faire dans ma routine, quelque chose a rajouter. Voici le code encore hehe : "jcommence a me trouver fatiguant !!" (defun c:pt (/ O L H EA ES R) (if (= H nil)(setq H 533)) (if (= L nil)(setq L 209)) (if (= EA nil)(setq EA 10.2)) (if (= ES nil)(setq ES 15.6)) (if (= R nil)(setq R 7.8)) (initget 1 "O N") (setq rep(getkword"\n voulez vous changer les paramètres [O/N] : ")) (if(= rep "O") (progn (setq H (getreal "\nDonnez la hauteur du profilé [d] : ")) (setq L (getreal "\nDonnez la largeur du profilé [b] : ")) (setq EA (getreal "\nDonnez l'épaisseur de l'âme [w] : ")) (setq ES (getreal "\nDonnez l'épaisseur de la semelle [t] : ")) (setq R (getreal "\nDonnez le rayon du raccord [k,k1] : ")) );progn );if end (setq O (getpoint "\nPointez le point d'origine : ")) (setq pt1 (polar O pi (/ L 2))) (setq pt2 (polar pt1 (/ pi 2)ES)) (setq pt3 (polar pt2 0 (/(- L EA) 2))) (setq pt4 (list (car pt3)(+ (cadr O) (- H ES)))) (setq pt5 (list (car pt1)(cadr pt4))) (setq pt6 (list (car pt1) (+ (cadr pt5) ES))) (setq pt7 (polar pt6 0 L)) (setq pt8 (list(car pt7) (cadr pt5))) (setq pt9 (list(+ (car pt4) EA) (cadr pt8))) (setq pt10 (list (car pt9) (cadr pt3))) (setq pt11 (list (car pt8) (cadr pt10))) (setq pt12 (list (car pt11) (cadr pt1))) (setq os(setvar "OSMODE" 0)) (command "_.pline" O pt1 pt2 pt3 pt4 pt5 pt6 pt7 pt8 pt9 pt10 pt11 pt12 O "") (command "_.fillet" "_r" R) (command "_.fillet" pt2 pt3 "") (command "_.fillet" pt3 pt4 "") (command "_.fillet" pt4 pt5 "") (command "_.fillet" pt5 pt6 "") (command "_.fillet" pt8 pt9 "") (command "_.fillet" pt9 pt10 "") (command "_.fillet" pt10 pt11 "") (command "_.fillet" pt11 pt12 "") (setq ent1(entlast)) (command "layer" "m" "-LU POUTRE" "c" "50" "" ""); pas capable de faire fonctionné (command "change" ent1 "" "P" "LA" "-LU POUTRE" ""); idem (setvar "OSMODE" os) (princ) );defun c: J'essaie aussi de créer un nouveau layer et donner un couleur et sa marche pas.. Quoi faire.... Crier ne changera rien.. en plus jsuis au bureau
-
j'ai vue mon erreur et sait pour sa jai effacer le msg (rires forts)
-
1
-
Je te remerci de ton aide c'est exactement ce que je cherchai a faire.. Aurai tu une idée ou je pourrais trouver tout les descriptions avec démonstration des fonctions Lisp/Vlisp en francais car je ne les trouve qu'en anglais je les trouves pas trop facile a comprend meme si je suis bilingue Salutation et encore merci !
-
bonjours à tous, j'aimerais savoir si il y aurait une place ou je peux me procurer la liste complète en francais de tous les fonctions de Visual Lisp mais en Francais. Merci !
-
Bon J'ai un nouveau code et il fonction en parti comme je le veux. Il manque qu'une chose. je peux changer les pages selon le nombre de layout. Ceci fonctionne parfaitement. il ne reste qu'une chose que je ne suis pas capable de faire afficher et c'est le total de layout. J'ai marque se que je pensais qui pourrais le faire fonctionner apres les points virgule de la fonction qui va suivre sous peu. (defun C:paging(/ adoc atts id lay_field) (setq adoc (vla-get-activedocument (vlax-get-acad-object))) (vlax-for lt (vla-get-layouts adoc) (vla-put-activelayout adoc lt);optional (vlax-for obj (vla-get-block lt) (if (eq "AcDbBlockReference" (vla-get-objectname obj)) (if (eq "Cartouche Aliance" (vla-get-effectivename obj)) (if (eq :vlax-true (vla-get-hasattributes obj) ) (progn (setq atts (vlax-invoke obj 'getattributes)) (foreach x atts (if (eq "PAGE" (vla-get-tagstring x)) (progn (setq id (vla-get-objectid (vla-get-layout (vla-objectidtoobject adoc (vla-get-ownerid obj))))) (setq lay_field (strcat "%<\\AcObjProp Object(%<\\_ObjId " (itoa id)">%).Taborder \\f \"%tc1\">%")) (vla-put-textstring x lay_field) ) ) ; (if (eq "#PAGE" (vla-get-tagstring x)) ; (progn ; (setq id (itoa (length (layoutlist)))) ; (vla-put-textstring x lay_field) ; ) ; ) ) ) ) ) ) ) ) (vla-put-activelayout adoc (vla-item (vla-get-layouts adoc) 0));activate Layout1, optional (princ) ) (prompt "\Try command: Paging...") (prin1) (vl-load-com) (prin1) Par contre, le texte de ma réponse ne s'affiche pas.. aurait-il quelqu'un qui aurait la solution. Se serait grandement apprécié. Merci d'avance.
