Aller au contenu

Lisp_Bloc reconnaissance point topo


lolb75

Messages recommandés

Boujour à tous;

 

Je cherche à créer un LISP qui serait sous forme de bloc et dont un attribut sur les deux reconnaitrais l'altitude d'un bloc contenant un point topographique et du texte (ex: TCPOINT) et l'autre attribut pouvant être modifié selon les besoins de chacun.

j'ai pu créer un bloc mais je voudrais pouvoir l'inserer automatiquement en "cliquant" sur le TCPOINT et que donc l'attribut "prenne" l'altitude du tcpoint.

C'est un peu compliqué a expliquer... :(

 

Pouvez-vous m'aider s'il vous plaît.

 

Cordialement.

 

Ps: se serait sous le model suivant:

 

Plaque: Attribut (automatique)

Radier: Attribut (Manuel)

Lien vers le commentaire
Partager sur d’autres sites

ben quoi?

 

il marche bien son bloc, tu le déplace en Z, ou tu changes la position en Z dans les propriétés, tu fait un regen

et ho, magie, le Z apparait...

 

après, si tu veux voir le détail du champ, un double clic sut l'alti, ça ouvre la fenêtre pour remplir / modifier un attribut

tu ne change surtout pas la valeur à la main, mais tu fait un clic droite

 

post-10080-0-42751300-1459977142_thumb.jpg

Lien vers le commentaire
Partager sur d’autres sites

Merci c'est très gentil mais ce que je souhaite faire c'est plutôt un bloc qui "prendrait" l'altitude automatique en "cliquant" sur un "tcpoint" pour une mise en forme de plans d'assainissement donc j'ai certaine contrainte à respecter.

 

Je ne souhaite pas créer un point topo mais plutôt ce qui en permettrait la lecture, d’où un attribut qui lirait le Z et un autre qui serait pour les fils d'eau par exemple (a remplir manuellement).

 

Plaque: Attribut (automatique)

Radier: Attribut (Manuellement)

 

j'avais trouver un lisp qui pouvait me modifier l'attribut "plaque" en le remplaçant par le Z d'un point nodal (autocad) malheureusement les points que nous utilisons sont des "TCPOINT" c'est à dire un bloc attribut contenant un point nodal et 3 attributs.

 

Donc votre bloc ne correspond pas a ma demande, désolé... ;)

merci quand même...

 

Cordialement

Lien vers le commentaire
Partager sur d’autres sites

essai ca

(defun c:toto3 ()
(vl-load-com)
(setq z (caddr(cdr(assoc 10 (entget(car(entsel "\nChoix du point :")))))))
(setpropertyvalue (car(entsel)) "ALT" (rtos z 2 2))
 )

"ALT" etant le nom de l'attribut

a toi de le changer

Vous fîtes ce que vous pûtes

et vous m'épatâtes !!!!

Lien vers le commentaire
Partager sur d’autres sites

BEN 2 cas

-si le tcpoint est inserer en Z le prog toto3 marche.

-si il faut lire la valeur Z dans l'attribut . il faut midifier la premiere ligne

remplacer entsel par nentsel. et la il faudra cliquer sur l'attribut

 

 
(defun c:toto4 ()
(vl-load-com)
(setq z (cdr(assoc 1 (entget(car(nentsel "\nChoix de l'attribut a copier :"))))))
(setpropertyvalue (car(entsel)) "ALT" z)
 )

 

j'ai corrigé une ptit boulette

  • Upvote 1

Vous fîtes ce que vous pûtes

et vous m'épatâtes !!!!

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é