CadFrank Posté(e) le 10 janvier 2012 Posté(e) le 10 janvier 2012 Bonjour, j'ai suivi les étapes d'un livre pour me donner une routine qui permet de créer un profilé en acier (W) par contre il se produit une erreur en cour et je ne comprend pas pourquoi. Voici le code : (defun c:test (/ O L H EA ES R) (setq O (getpoint "\nPoint un point : ")) (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' : ")) (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))) (command "pline" O "w" 0 0 pt1 pt2 pt3 pt4 pt5 pt6 pt7 pt8 pt9 pt10 pt11 pt12 O "") (command "fillet" "r" R) (command "fillet" pt3 pt4 pt4 pt5 pt9 pt10 pt10 pt11 "") );defun Merci de votre aide.
VDH-Bruno Posté(e) le 10 janvier 2012 Posté(e) le 10 janvier 2012 Bonjour, Cas classique d’exemples prévu pour tourner sur une version anglaise d’AutoCAD, pour les exemples de ton livre fait précéder les appels aux commandes AutoCAD par _. et les options de commande par _ ,ce qui internationalisera ces dernières. Illustration sur ton code précédent :(command "_.pline" O "_w" 0 0 pt1 pt2 pt3 pt4 pt5 pt6 pt7 pt8 pt9 pt10 pt11 pt12 O "") (command "_.fillet" "_r" R) (command "_.fillet" pt3 pt4 pt4 pt5 pt9 pt10 pt10 pt11 "") Cordialement, Apprendre => Prendre => Rendre
CadFrank Posté(e) le 10 janvier 2012 Auteur Posté(e) le 10 janvier 2012 j'ai fais la modification par contre le résultat est le même il me donne un profilé déformé et je ne comprend pas pourquoi.
VDH-Bruno Posté(e) le 10 janvier 2012 Posté(e) le 10 janvier 2012 Personnellement je ne connais pas les caractéristiques du profil que tu cherches à obtenir, soit tu as fait une erreur de frappe, ou il y a une coquille dans ton livre. Le mieux à faire dans ce cas c’est de « dérouler le programme à la main » pour trouver ou ça cloche. A+ Apprendre => Prendre => Rendre
CadFrank Posté(e) le 10 janvier 2012 Auteur Posté(e) le 10 janvier 2012 Parfait alors merci pour ton temps. Alp
CadFrank Posté(e) le 10 janvier 2012 Auteur Posté(e) le 10 janvier 2012 Meh !!! si je fait le routine étape par étape elle marche!!!! comprend pas!!!!
Tramber Posté(e) le 10 janvier 2012 Posté(e) le 10 janvier 2012 Ce sont tes accrobjs mon ami ;) Cherche la syntaxe SETVAR et GETVAR dans nos routines publiées ici, tu comprendras qu'on renregistre la valeur, on mets à zéro (aucun accrochage) et on restitue la valeur. OSMODE est la variable à contrôler. Ensuite tu apprendras à gérer les erreurs, c'est très utile. (j'ai modifié ce sujet en le déplacant dans le forum ad-hoc) Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
CadFrank Posté(e) le 10 janvier 2012 Auteur Posté(e) le 10 janvier 2012 Mouais j'ai finalement trouvée l'erreur hehe!! mais merci quand même pour ton aide. Par contre ou est le forum ad-hoc ??? Maintenant J'aimerai transformer certain coin en rayon comment dois-je procéder.. ou plus tôt es-ce qui faudrais que je change la command pline pour ligne que je place chaque ligne en entlast et ensuite que je fasse un fillet pour chaque coin ou j'en ai besoin. Voici une photo :
bryce Posté(e) le 12 janvier 2012 Posté(e) le 12 janvier 2012 Bonjour, La semelle a une épaisseur 15.6, et tu essaies de faire un raccord de rayon 17.5... :huh: Brice, formateur AutoCAD - Inventor - SolidWorks - ZWCad - DraftSight - SketchUp indépendant
CadFrank Posté(e) le 12 janvier 2012 Auteur Posté(e) le 12 janvier 2012 j'ai vue mon erreur et sait pour sa jai effacer le msg (rires forts)
CadFrank Posté(e) le 12 janvier 2012 Auteur Posté(e) le 12 janvier 2012 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
bonuscad Posté(e) le 12 janvier 2012 Posté(e) le 12 janvier 2012 Bonjour, Je ne retrouve pas le post original que j'ai pu faire sur CadXp (la recherche me limite à une date),néambois un sujet où il est reprisLe lien Si tu veux être sur de l'original Ca peut te donner des idées ... Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
Tramber Posté(e) le 12 janvier 2012 Posté(e) le 12 janvier 2012 (command "layer" "m" "-LU POUTRE" "c" "50" "" ""); pas capable de faire fonctionné Quand un "layer" a été "made", on ne peut le remake !Moi je lance en Français : "calque" "Etablir" (je ne connais pas le raccourci en Anglais), beaucoup plus puissant. (command "change" ent1 "" "P" "LA" "-LU POUTRE" ""); idem Utilise la commande CHPROP, mieux, comme çi tu passais par CHANGE puis P, comme tu le fais.Nécessite plusieurs ENTREE pour sortir. A toi de jouer. Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
CadFrank Posté(e) le 13 janvier 2012 Auteur Posté(e) le 13 janvier 2012 Quand un "layer" a été "made", on ne peut le remake !Moi je lance en Français : "calque" "Etablir" (je ne connais pas le raccourci en Anglais), beaucoup plus puissant. Pour ton information "établier" c'est "set" Utilise la commande CHPROP, mieux, comme çi tu passais par CHANGE puis P, comme tu le fais.Nécessite plusieurs ENTREE pour sortir. A toi de jouer. 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.
Tramber Posté(e) le 13 janvier 2012 Posté(e) le 13 janvier 2012 Mais bon en meme temps je me dit chaque chose en son temps. Mais oui. On préférera largement celui qui progresse doucement et prend le temps de comprendre. Je te déconseille la doc sur VLA. D'abord, prends des routines simples,... en fouillant ici par exemple.Tu passeras à VLA un jour... Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
CadFrank Posté(e) le 13 janvier 2012 Auteur Posté(e) le 13 janvier 2012 Tu passeras à VLA un jour... 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.
Tramber Posté(e) le 13 janvier 2012 Posté(e) le 13 janvier 2012 Si tu es motivé, tu vas t'éclater et apporter de la sureté à ton travail.Mais prends ton temps car : (/ 5 2) renvoie 2 ! L'expérience est importante. Autolisp d'abord, je trouve que c'est bien. Fouille dans les vieilles conversations de CADxp B) Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
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