Aller au contenu

Classement

Contenu populaire

Affichage du contenu avec la meilleure réputation le 14/11/2023 dans toutes les zones

  1. Bonjour, Vu les réponses, j'estime que l'on ne se trouve plus dans une simple réponse à une question, mais là on est dans une Formation de BASE ! Ne serait-il pas utile de penser à faire une formation ? AutoCAD est une simple planche à dessin PAS DU TOUT INTUITIVE et il faut maitriser quelques bases... Je répond par rapport au RECTANGLE par son centre avec une LT... Depuis très longtemps, je me suis passé du LISP avec les versions LT et j'utilises des MACROS DIESEL bien pratique. Je donne le CODE pour le FUN : ^C^C"longueur du rectangle : "^Cuserr3;\"Largeur du rectangle :"^Cuserr4;\_rectang;\auc;@$m=$(getvar,userr3),$m=$(getvar,userr4);_move;_L;;_NONE;@;_NONE;@-$m=$(/,$(getvar,userr3),2.0),-$m=$(/,$(getvar,userr4),2.0);select;_L;;id;_NONE;@-$m=$(/,$(getvar,userr3),2.0),-$m=$(/,$(getvar,userr4),2.0);rotation;p;;@;\ La MACRO vous demande la LONGUEUR et la LARGEUR du RECTANGLE qui sera placé par son CENTRE avec une ROTATION libre. Je ne vais pas me lancer dans les explications sur l'utilisation de MACROS ! Christian
    2 points
  2. Et de cette façon? (vl-load-com) (defun c:Label_Cana ( / AcDoc Space nw_style js htx ent_sel ent pt_sel param deriv rtx dir nw_obj) (setq AcDoc (vla-get-ActiveDocument (vlax-get-acad-object)) Space (if (= 1 (getvar "CVPORT")) (vla-get-PaperSpace AcDoc) (vla-get-ModelSpace AcDoc) ) ) (cond ((null (tblsearch "LAYER" "Label-Canalisation")) (vlax-put (vla-add (vla-get-layers AcDoc) "Label-Canalisation") 'color 96) ) ) (cond ((null (tblsearch "STYLE" "Texte-Canalisation")) (setq nw_style (vla-add (vla-get-textstyles AcDoc) "Texte-Canalisation")) (mapcar '(lambda (pr val) (vlax-put nw_style pr val) ) (list 'FontFile 'Height 'ObliqueAngle 'Width 'TextGenerationFlag) (list (strcat (getenv "windir") "\\fonts\\arial.ttf") 0.0 (/ (* 15.0 pi) 180) 1.0 0.0) ) ) ) (princ "\nSélectionnez une polyligne.") (while (setq js (ssget "_+.:E:S" '( (0 . "*POLYLINE") (-4 . "<NOT") (-4 . "&") (70 . 112) (-4 . "NOT>") ) ) ) (if (not htx) (progn (initget 6) (setq htx (getdist (getvar "VIEWCTR") (strcat "\nSpécifiez la hauteur du champ <" (rtos (getvar "TEXTSIZE")) ">: "))) (if htx (setvar "TEXTSIZE" htx) (setq htx (getvar "TEXTSIZE"))) ) ) (setq ent_sel (ssnamex js 0)) (if (not (eq ent (cadar ent_sel))) (progn (setq dir nil) (while (not (member dir '(">" "<" ""))) (setq dir (getstring "\nDirection d'écoulement \"< >\"?\(>\): "))) (if (eq dir "") (setq dir ">")) ) ) (setq ent (cadar ent_sel) pt_sel (cadar (cdddar ent_sel)) obj (vlax-ename->vla-object ent) pt_sel (vlax-curve-getClosestPointTo obj pt_sel) param (vlax-curve-getparamatpoint obj pt_sel) deriv (vlax-curve-getFirstDeriv obj param) rtx (- (atan (cadr deriv) (car deriv)) (angle '(0 0 0) (getvar "UCSXDIR"))) ) (if (or (> rtx (* pi 0.5)) (< rtx (- (* pi 0.5)))) (setq rtx (+ rtx pi))) (setq nw_obj (vla-addMtext Space (vlax-3d-point (polar pt_sel (- rtx (* 0.5 pi)) (vlax-get obj 'ConstantWidth))) (getvar "TEXTSIZE") (strcat (if (eq dir ">") "Ø=" "<-- Ø=") "%<\\AcObjProp.16.2 Object(%<\\_ObjId " (itoa (vla-get-ObjectID obj)) ">%)." "ConstantWidth" " \\f \"%lu2%pr0%ct8[1000]\">%" " L=" "%<\\AcObjProp.16.2 Object(%<\\_ObjId " (itoa (vla-get-ObjectID obj)) ">%)." "Length" " \\f \"%lu2%pr2\">%" "ml" (if (eq dir ">") " -->" "") ) ) ) (mapcar '(lambda (pr val) (vlax-put nw_obj pr val) ) (list 'AttachmentPoint 'DrawingDirection 'StyleName 'Layer 'Rotation 'Width 'BackgroundFill) (list 2 5 "Texte-Canalisation" "Label-Canalisation" rtx 0.0 -1) ) ) (prin1) )
    1 point
×
×
  • 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é