DECKER & CAD SOLUTIONS

 

Programmes Lisp -
Source du programme Ch_Hauteur

 

 

(defun c:ch_hauteur(/ resol selection hauteur ptr entite propriete nbrmod)

 (write-line "\nTéléchargé depuis le site Internet http://www.decker-cs.com")

 (write-line "Auteur : Christian Decker")

 ;

 (write-line "Changer la hauteur de texte.")

 ;

 (setq resol(getvar "snapmode"))           ;Sauvegarde l'état de la résol.

 (setvar "snapmode" 0)                     ;Désactive la résol.

 (setq selection(ssget))                   ;Attend la sélection d'objets.

 (setvar "snapmode" resol)                 ;Restitue l'état initial de la résol.

 (setq hauteur 0)

 (while (<= hauteur 0)                     ;Attend une hauteur de texte valide.

  (setq hauteur(getreal "Nouvelle hauteur : "))

  (if (<= hauteur 0)                          ;La hauteur de texte est inférieure ou égale à 0.

   (write-line "La hauteur de texte doit être supérieure à 0.") 

  )

 )

 (setq ptr 0)

 (setq nbrmod 0)

 (repeat (sslength selection)              ;Pour chaque élément de la sélection...

  (setq entite(ssname selection ptr))         ;Obtient le nom de l'entite de la base de données.

  (setq propriete(entget entite))             ;Obtient la liste des propriétés de l'entité.

  (if (= (cdr(assoc '0 propriete)) "TEXT")    ;L'entité est un texte.

   (progn

    (setq propriete(subst (cons '40 hauteur) (assoc '40 propriete) propriete))  ;Affecte la nouvelle hauteur de texte à la liste des propriétés.

    (entmod propriete)                           ;Mise à jour de la liste des propriétés.

    (entupd entite)                              ;Regénération de l'entité.

    (setq nbrmod(+ nbrmod 1))

   )

  )

  (setq ptr(+ ptr 1))

 )

 (write-line (strcat "Nombre de textes modifiés : " (itoa nbrmod)))

 (princ)

)

Fermer la fenêtre 


© Copyright 2004 [DECKER CAD SOLUTIONS] Tous droits réservés.