Aller au contenu

Problème de récup de l\'echelle d\'un bloc


Messages recommandés

Posté(e)

Bonjour,

 

Je rencontre un problème, lorsque je récupère la valeure d'échelle d'un bloc, je n'arrive pas à l'exploiter.

Voici mon code pour récupérer la valeure :

 

(setq EchI (cdr (assoc 41 Lstac1))) ; On récupère l'échelle du bloc

 

Lorsque je veut effectuer une opération dessus, ça ne marche pas !

 

(Setq CY (* EchI 0.75)) ; On multiplie l'échelle du bloc par 0.75

 

Et lorsque je veut l'afficher ça ne marche pas !

J'ai essayé avec :

 

(setq EchI (itoa EchI))

(princ EchI)

 

A l'aide !

Et merci pour vos réponses.

 

Ps : c'est quoi le code pour faire afficher la page "lignes de commandes" en 1er plan (comme F2)

 

 

Il n'y a pas d'homme cultivé, il n'y a que des hommes qui se cultivent.

 

Maréchal Foch

Posté(e)

Salut

Il faut pour cela utiliser entmod et subst

exemple avec Lstac1 comme entité de bloc

(setq  Lstac1 (subst (cons 41 (* (cdr (assoc 41  Lstac1)) 0.75)) (assoc 41  Lstac1)  Lstac1))
(entmod  Lstac1)
(entupd (cdr asssoc -1  Lstac1)) ; mettre à jour à l'écran le bloc

 

@+

 

nb : exemple non testé

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

Posté(e)

Bonjour,

 

Non, c'est ça le pire LSTAC1 & EchI ne sont pas nil !

 

(setq EchI (cdr (assoc 41 Lstac1)))

 

Fonctionne, et j'obtient bien une valeure, mais après je n'arrive pas à l'exploiter.

 

Merci.

 

Il n'y a pas d'homme cultivé, il n'y a que des hommes qui se cultivent.

 

Maréchal Foch

Posté(e)

Salut, essaye avec ces quelques lignes :

 

(setq bloc (car (entsel)))

(setq Lstac1 (entget bloc))

(if (= "INSERT" (cdr (assoc 0 Lstac1)))

(setq Ech (cdr (assoc 41 Lstac1))

CY (* Ech 0.75)

)

(princ "\n L'objet n'est pas un bloc.")

)

(princ (strcat "\nEch : " (rtos Ech) "\tCY : " (rtos CY)))

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Posté(e)

Merci (gile) & Patrick_35,

 

Désormais cela fonctionne !

C'est cool!

 

Est-ce que je peux abusé en vous demandant si vous vous rappelez comment je bascule la fenêtre de texte AutoCAD en premier plan en commande lisp, moi je le savais, mais j'ai oublier.

 

Il n'y a pas d'homme cultivé, il n'y a que des hommes qui se cultivent.

 

Maréchal Foch

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é