Aller au contenu

cours N°2 dispo


rimbo

Messages recommandés

ça y est c'est soumis est en attente de disponibilité en téléchargement.

 

Il est court, y a trois exo conséquents et je vais voir pour préciser les tests logiques mais je vais avoir besoin d'un sérieux coup de main. ;)

Cordialement

 

Lionel PERRIN | Ingénieur/Consultant Formateur expert Infrastructure - Géomédia

 

Civil 3D/Covadis/Autopiste/Infraworks 360 - VRD/Infrastructure routière ferroviaire Bus TRAM

Lien vers le commentaire
Partager sur d’autres sites

Sers toi des variables SNAPANG et ORTHOMODE

 

(setvar "snapang" (/ pi 4))

(setvar "orthomode" 1)

(setq p3 (getpoint p1 "\nSélectionner un point: "))

(setvar "orthomode" 0)

(setvar "snapang" 0)

 

 

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Lien vers le commentaire
Partager sur d’autres sites

toujours de gauche à droite qque soit les côtés ou tu cliques. Aussi bien verticalement qu'horizontalement.

Celui là je vais le donner assez rapidement mais le but est d'utiliser les cond avec notion d'angle.

si de tel angle x à tel angle y tracer si non tracer dans les angles xy.

IL faut forcer la flêche à se tracer dans un sens de gauche à droite.

Cordialement

 

Lionel PERRIN | Ingénieur/Consultant Formateur expert Infrastructure - Géomédia

 

Civil 3D/Covadis/Autopiste/Infraworks 360 - VRD/Infrastructure routière ferroviaire Bus TRAM

Lien vers le commentaire
Partager sur d’autres sites

as tu lut ce qui es écris sur cond et if a ladresse donner dans le cours. Moi aussi j'ai beaucoup de mal avec les cond et if.

Cordialement

 

Lionel PERRIN | Ingénieur/Consultant Formateur expert Infrastructure - Géomédia

 

Civil 3D/Covadis/Autopiste/Infraworks 360 - VRD/Infrastructure routière ferroviaire Bus TRAM

Lien vers le commentaire
Partager sur d’autres sites

oui je suis allez sur le sujet en question.

 

pour cond je pense avoir compris

 

 

tu fixes pour chaque condition une action :

 

 

exemple du bouquin AutoCAD R13:

 

(cond ;lancement de la fonction conditionnelle

((= s "O") 1) ;condition 1 si s=O renvoi 1

((= s "o") 1) ;condition 2 si s=o renvoi 1

((= s "N") 0) ;condition 3 si s=N renvoi 0

((= s "n") 0) ;condition 4 si s=n renvoi 0

(t nil) ;derniere condition si aucune des précédentes ne sont effectuées0

)

CCAD la DAO au service de l'Energie - http://c.cad.free.fr

Lien vers le commentaire
Partager sur d’autres sites

Pour COND, je voudrais rajouter:

 

Que les conditions sont évalué dans l'ordre de la description et que SI une condition est vraie, les autres conditions ne sont pas évaluée.

Donc vous ne pouvez pas évaluer PLUSIEURS conditions VRAIES, ou alors en incluant soit des opérateur logique comme (OR ou (AND etc.. , ou imbriquer vos conditions les unes dans les autres; cela peut être un autre (COND ou (IF.

 

Il est important de comprendre cet ordre d'évaluation pour ne pas attrapper des cheveux blancs

 

En avant! les guerriers lispeurs. ;)

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Lien vers le commentaire
Partager sur d’autres sites

Bref, quand COND rencontre un T ou une codition vrai, il évalue l'expression qui suit,.....

.......et nous ejecte !

(je me suis fait avoir honteusement, récemment !)

 

Alors que IF, on le sait évalue, ou pas, une à deux expressions (je parle de cas sans PROGN).

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Lien vers le commentaire
Partager sur d’autres sites

hello,

je viens amener ma pierre à l'édifice,

il faut être conscient que s'il existe deux fonctions

elles ont deux utilités, ce qui va sans dire, va mieux en le disant.

donc :

IF teste une condition

si cette condition est "non nil" elle exécute la première expression

dans le cas contraire elle exécute la deuxième expression

exemple :

(setq reponse (getstring "\nVoulez vous continuer ?\n"))

(if ( = "oui" reponse")

____(continuer);si c'est vrai

____(quitter);si ce n'est pas vrai

);fin du if

en revanche COND, évalue les expressions dans l'ordre presenté

dès qu'une expression est "non nil" elle exécute la première expression qui suit

exemple :

(cond

((= "oui" reponse")(continuer))

((= "OUI" reponse")(continuer))

((= "Oui" reponse")(continuer))

((= "" reponse")(continuer))

((= "NON" reponse")(quitter))

((= "Non" reponse")(quitter))

);fin du cond

bien sûr mon exemple est neuneu mais c'est une illustration.

en espérant avoir fait avancer le schmilblick

amicalement

 

 

 

 

 

Lien vers le commentaire
Partager sur d’autres sites

C'est parti, je donne mes response aux exercices 2 et 3

 

EXERCICE 2 : Créer un carré en polyligne avec coin bas gauche et longueur côté

 

 

(defun c:carre() ;definition de la commande

 

(defun dtr (a) (* pi (/ a 180.0))) ;commande de conversion degrés en radians

 

(setq p1 (getpoint "\nEntrer point de départ :")) ;comme son nom l'indique

(setq long (getreal "\nEntrer la longueur des côté du carré :")) ;idem

(setq P2 (polar p1 (dtr 0) long)) ;definition point 2

(setq p3 (polar p2 (dtr 90) long)) ;definition point 3

(setq p4 (polar p3 (dtr 180) long)) ;definition point 4

(command "polylign" p1 p2 p3 p4 "c") ;création du carré

(princ)

)

 

EXERCICE 3 : Créer un carré en polyligne avec coin bas gauche et coin haut droit

 

(defun c:carre2() ;definition de la commande

 

(defun dtr (a) (* pi (/ a 180.0))) ;commande de conversion degrés en radians[/i]

 

(setq p1 (getpoint "\nEntrer coin bas gauche du carré :")) ;comme son nom l'indique

 

(setvar "snapang" (dtr 45)) ;mets le reticule a 45°

(setvar "orthomode" 1) ;active le mode ortho

 

(setq p3 (getpoint p1 "\nEntrer coin haut droit du carré :")) ;comme son nom l'indique

 

 

(setvar "orthomode" 0) ;reactive le mode ortho

(setvar "snapang" 0) ;remets le reticule a 0°

 

(setq r (distance p1 p3)) ;defini la longueur de la diagonale du carré

(setq angl (dtr 45))

(setq x (*(cos angl) r)) ;calcul du coté x du carré

(setq y (*(sin angl) r)) ;calcul du coté y du carré (ca ne sert a rien c'est un carré ;)

(setq p2 (polar p1 (dtr 0) x)) ;definition point 2

(setq p4 (polar p3 (dtr 180) x)) ;definition point 4

 

(command "_pline" p1 p2 p3 p4 "c") ;création du carré

(princ)

)

 

 

Voila il y a peut etre mieux et plus rapide, a vous de me dire en tout cas ca marche :P

 

j'attends Lundi pour les exercices 4 et 5

 

CCAD la DAO au service de l'Energie - http://c.cad.free.fr

Lien vers le commentaire
Partager sur d’autres sites

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 compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité