Aller au contenu

point de base par coordonnées


Invité samuelM

Messages recommandés

Invité samuelM

Bonjour,

 

Voici un programme simple qui permet de définir un rectangle. je voudrai modifier la ligne getpoint .

 

Voici mon souhait :

Que le programme demande à l'utilisateur de place le point de base en x et y à l'emplacement défini par une série de question. (Ce rectangle représente l'emplacement d'une porte ou fenêtre sur les murs d'une maison.

 

Voici les questions :

Définition du point de base

en y :

-sélectionner le point de référence.( ce point est défini en y sur une ligne mais pas en x

-Indiquer la hauteur de réservation (par un nombre)

-Indiquer l'altitude de la sous-face du linteau (par un nombre)

(le résultat est obtenu par addition des deux réponses)

 

en x :

-sélectionner le point de référence (ce point est défini en x sur une ligne mais pas en y)

- indiquer la distance (par un nombre)

 

(defun c:tableau (/ p1 longueur largeur p3 )
 (setq p1     (getpoint (getstring "\nPoint de Base\n") 			
     longueur (getdist p1 "\nLargeur tableau: ")
     largeur  (getdist p1 "\nLongeur tableau: ")
     p3       (mapcar '+ p1 (list longueur largeur))
)
(command "_rectangle" "_non" p1 "_non" p3)
(command "_rotate" "d" "" p1 pause "")
 )
))

 

Merci pour ce qui voudront bien m'aider

Lien vers le commentaire
Partager sur d’autres sites

!Hola ! ?Que tal ?

 

Voici 2 façons de faire :

 

(setq lepoint(getpoint '(0 0) "\nPoint de Base :"))
(setq lepoint(getpoint "\nPoint de Base: ")) 

 

Outre une erreur de paranthèse on voit un getstring dans un getpoint, ca n'est pas valable.

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

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

Invité samuelM

Re,

 

Merci tramber pour ces deux solutions mais le problème, sauf erreur de ma part ce qui est probable, est que le point de base est une selection. mais ce que je souhaite c'est de pouvoir renseigner les coordonnées comme je l'ai décris. peut être que je n'ai pas été assez clair.

 

Patrick_35 : je m'aide aussi d'un livre "programmer autocad par J-P Couwenbergh" et j'essaye de comprendre comment écrire avec cette fonction mais je vais re-regarder si tu m'en parle!

 

Merci déjà

 

Voici le programme sans erreur

(setq p1       (getpoint "\nPoint de Base\n")

     longueur (getdist p1 "\nLargeur tableau: ")

     largeur  (getdist p1 "\nLongeur tableau: ")

     p3       (mapcar '+ p1 (list longueur largeur))

)

(command "_rectangle" "_non" p1 "_non" p3)

(command "_rotate" "d" "" p1 pause "")

Lien vers le commentaire
Partager sur d’autres sites

Invité samuelM

Re

 

Voici ce que j'ai pu faire aujourd'hui avec la fonction polar. je ne sais pas si ça tien debout mais ça ne présente pas d'erreur pour le moment.

petit modif que je voudrai apporter à :

Indiquer la distance ( renseigner par une addition au lieu d'un nombre entier)

 

je serai ravis que des petits ou grand génies me viennent en aide.

 

(defun c:tableau (/ p1 p2 orient dist longueur largeur pause p3 )

 (setq p1     (getpoint "\nPoint de Base\n"))
 (setq orient (getorient"\nIndiquer la direction:"))
 (setq dist   (getdist  "\nIndiquer la distance :"))
 (setq p2     (polar p1 orient dist)

     longueur (getdist p2 "\nLargeur tableau: ")

     largeur  (getdist p2 "\nLongeur tableau: ")

     p3       (mapcar '+ p2 (list longueur largeur))
)
(command "_rectangle" "_non" p2 "_non" p3)

(command "_rotate" "d" "" p2 pause "")
 ) 

Lien vers le commentaire
Partager sur d’autres sites

Salut

 

C'est bien, mais avec polar, tu peux additionner les angles.

Avec le point de base, la longueur et la largeur, les calculs pour un triangle rectangles sont faciles.

Tout cela pour éviter la rotation et donc dessiner directement le rectangle correctement.

 

@+

Les Lisps de Patrick

Le but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.

Joseph Joubert, 1754-1824

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é