Aller au contenu

TEXTE => POINT + Z, POSSIBLE ?


lili2006

Messages recommandés

Bonjour à toutes et tous,

 

Dans le style des demandes que l'on voit actuellement sur le forum, je pense avoir plus fort encore comme demande,... :D

 

Bon, trêve de plaisanterie, un gros soucis sur un plan qui à été un peu trop nettoyé et sans sauvegarde,...(Je sais, l'erreur de base !!!).

 

Bilan, il ne reste plus que les textes.

 

Est-il alors possible de créer un point au droit du point d'insertion du texte, de créer un bloc avec un attribut "Altitude" composé alors de ces entités ? Et bien entendu que ce nouveau "bloc point" soit à l'altitude de l'attribut,....

 

(La personne ayant ce besoin n'a pas covadis,...)

 

Dans un premier tps, pouvez-vous me dire sui la demande est réaliste car je n'en ai aucune idée,...

 

Merci d'avance,

 

Le fichier

Civil 3D 2024 - COVADIS_18.2

https://www.linkedin...3%ABt-95313341/

Lien vers le commentaire
Partager sur d’autres sites

Salut,

 

La demande a souvent été posée et il me semble me souvenir qu'il y a eu des réponses, mais comme j'ai la flemme de chercher...

 

Le bloc "bloc_point" avec un attribut "ALT" est créé s'il n'existe pas déjà dans le dessin.

 

(defun c:txt2blk (/ *error* makeblock ss spc)
 (vl-load-com)
 (or *acdoc*
     (setq *acdoc* (vla-get-ActiveDocument (vlax-get-acad-object)))
 )
 (or *blocks* (setq *blocks* (vla-get-Blocks *acdoc*)))

 ;;---------------------------------------------------;;

 (defun *error* (msg)
   (or (= msg "Fonction annulée")
       (princ (strcat "Erreur: " msg))
   )
   (vla-EndUndoMark *acdoc*)
   (princ)
 )

 ;;---------------------------------------------------;;

 ;; MakeBlock
 ;; Crée le bloc PointBloc
 (defun makeblock (/ block)
   (vl-load-com)
   (setq block (vla-add *blocks*
                        (vlax-3d-point '(0. 0. 0.))
                        "bloc_point"
               )
   )
   (vla-put-Layer
     (vla-addPoint block (vlax-3d-point '(0. 0. 0.)))
     "0"
   )
   (vla-put-Layer
     (vla-addAttribute
       block
       0.65
       acAttributeModePreset
       ""
       (vlax-3d-point '(0. 0. 0.))
       "ALT"
       ""
     )
     "0"
   )
   block
 )

 ;;---------------------------------------------------;;

 (princ "\nSélectionnez les textes ou valider pour tous.")
 (if (or (ssget '((0 . "TEXT")))
         (ssget "_X" (list '(0 . "TEXT") (cons 410 (getvar 'ctab))))
     )
   (progn
     (vla-StartUndoMark *acdoc*)
     (or (tblsearch "BLOCK" "bloc_point") (makeblock))
     (setq spc (if (= 1 (getvar 'cvport))
                 (vla-get-PaperSpace *acdoc*)
                 (vla-get-ModelSpace *acdoc*)
               )
     )
     (vlax-for txt (setq ss (vla-get-ActiveSelectionSet *acdoc*))
       (setq ins (vlax-get txt 'InsertionPoint)
             str (vla-get-TextString txt)
             blk
                 (vla-InsertBlock
                   spc
                   (vlax-3d-point (car ins) (cadr ins) (atof str))
                   "bloc_point"
                   1.
                   1.
                   1.
                   (vla-get-Rotation txt)
                 )
       )
       (vla-put-Layer blk (vla-get-Layer txt))
       (vla-put-TextString (car (vlax-invoke blk 'GetAttributes)) str)
       (vla-delete txt)
     )
     (vla-delete ss)
     (vla-EndUndoMark *acdoc*)
   )
 )
 (princ)
)

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

Lien vers le commentaire
Partager sur d’autres sites

Re,

 

Salut Gilles et merci ! :D

 

La demande a souvent été posée et il me semble me souvenir qu'il y a eu des réponses

 

Ah bon ?

 

Ben j'ai pas souvenir et j'avouerai ne pas avoir cherché pensant que cela n'avait jamais fait l'objet d'une demande que sur AutoCAD,....

 

Quoi qu'il en soit, un grand merci !

 

@ bientôt,

Civil 3D 2024 - COVADIS_18.2

https://www.linkedin...3%ABt-95313341/

Lien vers le commentaire
Partager sur d’autres sites

Oui et dernièrement c'eatit moi qui avait embété gile.

Pour inséré un point sur texte en prenant le z comme la valeur du texte.

On l'a fait pas à gile (ou)

DAO: AutoCAD(2D & 3D), Covadis

CAO: 3D's MAX, Rhinoceros 3D, REVIT

GeoModeliSation: AutoCAD MEP, RhinoTerrain

Rendu: Vray for Rhino, Keyshot, Lumion

Programmation: Grasshopper, Dynamo, VisualStudio

 

C.V.

Profil LinkedIn

Book

Site web

 

http://nsa37.casimages.com/img/2016/09/26/160926023334168603.jpg

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é