Aller au contenu

Améliorer routine cotation


Messages recommandés

Posté(e)

Bonjour,

J'utilise régulièrement une routine qui fonctionne très bien permettant de mettre 2 cotations (horizontal et vertical) selon 2 points 

 

Voilà la routine :

(defun c:T2 ()
  (setq pt1 (getpoint "\nSelectionnez le premier point de cote : "))  
  (setq pt2 (getpoint "\nSelectionnez le second point de cote : "))  

  (if pt1
    (progn
      ; Demander à l'utilisateur où placer la cote horizontale
      (setq pt3 (getpoint "\nSelectionnez le point de position de la cote horizontale : "))
      ; Placer la cote horizontale
      (command "COTLIN" pt1 pt2 "h" pt3)

      ; Demander à l'utilisateur où placer la cote verticale
      (setq pt4 (getpoint "\nSelectionnez le point de position de la cote verticale: "))
      ; Placer la cote verticale
      (command "COTLIN" pt1 pt2 "v" pt4)
    )
    (princ "\nOpération annulée.")
  )
  (princ)
)

Je souhaite y apporter une amélioration permettant de visualiser sur l'écran la position de la cotation 

L'idée est contourner le problème en évitant de présélectionner les pts 3 et 4 

(defun c:T2 ()
  (setq pt1 (getpoint "\nSelectionnez le premier point de cote : "))  ; Demande le premier point
  (setq pt2 (getpoint "\nSelectionnez le second point de cote : "))   ; Demande le second point

(command "COTLIN" pt1 pt2 "H") 
; Cliquer sur l'écran pour positionner le cote horizontal

; Relancer la commande pour la cotation veticale
;(command "COTLIN" pt1 pt2 "V" )
; Cliquer sur l'écran pour positionner le cote veticale

)

je joins un fichier dwg pour faire les test

 

test.dwg

Posté(e)

Bonjour @yusukens82

Il est tout à fait possible de ne pas sélectionner les points d'insertion des cotations.
Mais il faut "expliquer" à la machine où les déposer, elle n'est pas intelligente, elle n'a pas de cerveau.
Le cerveau, c'est l'humain qui en dispose et qui sait où déposer les dimensions.

À moins que vous nous disiez où vous les attendez par défaut.

Par exemple pour le X à deux fois la hauteur du texte en dessous du point 1 et pour le Y à deux fois la hauteur du texte sur la gauche du point 2. C'est un exemple.

C'est à VOUS de nous dire où déposer les textes et lignes de cotes, il n'y a que vous qui sachiez.

Amicalement

Posté(e)

Avec quelque chose comme cela

(defun c:T2 ( / pt1 pt2)
  (setq pt1 (getpoint "\nSelectionnez le premier point de cote : "))  
  (setq pt2 (getpoint "\nSelectionnez le second point de cote : "))  

  (if (and pt1 pt2)
    (progn
      ; Placer la cote horizontale
      (command "COTLIN" pt1 pt2 "h" pause ) 

      ; Placer la cote verticale
      (command "COTLIN" pt1 pt2 "v" pause ) 
    )
    (princ "\nOpération annulée.")
  )
  (princ)
)

 

Posté(e)

Bonjour @yusukens82

Ah ok !  Je n'irais pas jusqu'à dire que c'était mal expliqué, mais je n'avais pas du tout compris ça.
Je m'étais arrêté à L'idée est de contourner le problème en évitant de présélectionner les pts 3 et 4 
et pour moi ça voulait donc dire ne pas donner de point 3 et de point 4.

Comme quoi, il faut expliquer pour des gens qui ne sont pas dans votre tête.
Par exemple, présélectionner les points 3 et 4 pour avoir un affichage dynamique de la cotation et choisir où les poser in fine.

L'important étant que vous soyez satisfait, Olivier avait compris, lui.

Amicalement

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é