Aller au contenu

LISP DE PARAMETRES


Messages recommandés

Posté(e)

Bonjours, je voudrais faire un fichier lisp avec des parametres tel que les styles de texte, les style de cote...

Est-ce qu'il y aurais un ame charitable pour m'aider?

Merci d'avance.

Posté(e)

Est-ce qu'il y aurais un ame charitable pour m'aider?

 

Très certainement, même s'il n'est pas forcément question de "charité" ;)

 

Ta demande manque cruellement de précision quant à ce que tu veux faire, mais pour commencer voilà déjà quelques indications.

 

En LISP, on atteint les styles de cote et styles de texte par leurs "Tables" : respectivement "DIMSTYLE" et "STYLE".

Pour accéder aux tables on utilise la fonction (tblnext ...) : (tblnext "STYLE" T) retourne les données de la première entrée de la table des styles de texte :

((0 . "STYLE") (2 . "Standard") (70 . 0) (40 . 0.0) (41 . 1.0) (50 . 0.0) (71 . 0) (42 . 2.5) (3 . "txt.shx") (4 . ""))

 

Pour parcourrir toute une table, on fait une boucle avec (while ...) jusqu'à ce qu'il n'y ait plus d'entrées. Par exemple, pour faire une liste de tous les noms de style de texte :

 

(setq st (tblnext "STYLE" T))
(while st
 (setq st_lst (cons (cdr (assoc 2 st)) st_lst)
st (tblnext "STYLE")
)
 ) 

 

Pour modifier un style, on peut utiliser (entmod ...) sur la liste de données de l'objet "style". on obtient cette liste par l'expression suivante (pour le style de texte "Standard" par exemple) :

 

(entget (tblobjname "STYLE" "Standard")) 

 

Même chose pour les styles de cote en remplaçant "STYLE" par "DIMSTYLE".

 

Pour savoir à quoi correspondent les codes de groupe DXF dans ces listes : Aide aux développeurs > Référence DXF > Section TABLE

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

Posté(e)

Merci.

Ce que je veus, c'est pouvoir fare un lisp de parametres qui me charge dans mon dessin des styles de texte et des styles de cotes bien définit, du genre texte "standard" police "ariale" etc..

pour les cotes, je supose qu'il faut entrer plus de parametres du genre de la taille du texte, de la taille des fleches ......

Posté(e)

Pourquoi ne pas faire plutôt des gabarits (fichiers DWT) qui contiendraient les styles que tu veux ?

 

Il n'est pas toujours nécessaire d'utiliser la programmation pour faire ce qu'AutoCAD fait déjà.

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

Posté(e)

car j'ai déjà des plan existant avec les styles que je veus mai avec de petite différence hors quan je dois faire une mise à jours de ces plans, je dois modifier manuellement les correction que j'ai apporter a mes différent style.

Voyez-vous comme c'est pénible de tous faire manuellement.

Posté(e)

Re,

 

Un petit exemple : pour mettre la police "Arial" dans le style "Standard".

 

(if (tblsearch "STYLE" "Standard")	; Si le style "Standard" existe bien dans le dessin :

 (progn
   
   ;; Récupérer La liste des données du style "Standard".
   (setq elst (entget (tblobjname "STYLE" "Standard")))

   ;; Modifier La liste des données du style "Standard".
   (setq elst (subst			; Substituer...
	 (cons 3 "ARIAL.TTF")	; ...la police arial...
	 (assoc 3 elst)		; ...à la police courante...
	 elst			; ...dans la liste de données.
       )
   )

   ;; Mettre à jour le style "Standard".
   (entmod elst)

 ) ;_ fin de progn
) ;_ fin de if

 

Pour chaque paramètre à modifier, il faut faire :

 

(setq elst (subst (cons code_du_paramètre nouvelle_valeur ) (assoc code_du_paramètre elst) elst))

 

Et quand tous les paramètres sont modifiés, faire le (entmod elst)

 

Faire ensuite une régénération (REGNTOUT) pour mettre à jour les entités contenues dans le dessin.

 

[Edité le 11/2/2007 par (gile)]

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

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é