Aller au contenu

Messages recommandés

Posté(e)

Bonjours a touse,

voila mon appication est comme suite en Vlisp:

(Defun C:Corner()

(setq Pline(entsel "\n Sélectionner un polyligne: "))

(setq Pline(entget (car Pline)))

(princ (assoc Pline 10))

)

; mon problem c'est que l'heur de selection des cordonnes x y des sommits je trouve que ces derniers un complet et y a monque de precision

Ex:

pour X-> 125.2081 il donne le nombre exacte

pour x-> 308050,6031 il donne juste 308050,0

y a t'il un moyenne^pour resodre se type de probleme merci

 

Xtravagon@hotmail.com

http://Bembarka.abdel.ifrance.com

(212)73 32 00 69

Posté(e)

L'affichage (différent des valeurs de calcul) dépend de la variable LUPREC, à toi de la préciser.

 

Note : ton code présente une erreur :

 

(assoc 10 Pline) et non (assoc Pline 10)

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Posté(e)
L'affichage (différent des valeurs de calcul) dépend de la variable LUPREC, à toi de la préciser.

:casstet:

Ben non... il parle de lisp : la valeur que l'on récupert dans une entité par un assoc n'a rien à voir avec LUPREC .... non ???

Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...

Posté(e)

Ah si, l'affichage par PRINC est soumis aux règles d'arrondi de l'interface utilisateur (AutoCAD, console de Vlisp,...etc).

Ce qui n'affecte en rien les calculs profonds à 16 chiffres après la virgule.

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Posté(e)

:casstet:

Ben non 2 :

Commande: luprec

Entrez une nouvelle valeur pour LUPREC <2>:

Commande: corner

Sélectionner un polyligne: (10 -16.4856 138.843)(10 -16.4856 138.843)

 

(10 -16.4856 138.843) est une valeur récupérer par assoc, donc rien à voir avec luprec ...

 

 

Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...

Posté(e)

et même comme ça :

 

(Defun C:Corner()
(setq Pline(entsel "\n Sélectionner un polyligne: "))
(setq Pline(entget (car Pline)))
(princ (cadr (assoc 10 Pline)))
 (princ)
)

 

Commande: luprec

Entrez une nouvelle valeur pour LUPREC <2>:

Commande: corner

Sélectionner un polyligne: -16.4856

Commande:

Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...

Posté(e)

Pas tout à fait ce que je voulais dire

 

Nombres : étendue, exactitude, précision numérique

Les nombres entiers sont stockés en mémoire interne en 32-bit signés, mais la communication d'AutoLISP à AutoCAD n'accepte que les 16-bit seulement, dans l'intervalle -32768. +32767, parce qu'AutoCAD n'a besoin que des adresses courtes en 16 bits.

Les nombres en virgule flottante sont des doubles (64-bit IEEE). Tous les calculs numériques internes d'AutoLISP et AutoCAD travaillent avec ce format double qui devrait être suffisant. Au moins, les 14 premières décimales sont exactes.

Un problème habituel est la confusion entre le nombre actuel (exact) et la représentation en chaîne de l'arrondi. Le nombre qui est montré sur la ligne de commande est souvent la chaîne de l'arrondi qui tient compte de LUPREC et DIMZIN.

 

Voir la FAQ de Reini Urban

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)

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é