Aller au contenu

Messages recommandés

Posté(e)

Bonjour,

 

Juste pour savoir s'il est possible de créer un calque sans passer par

 command "._layer" "n"...

en utilisant "entmake par exemple. J'ai essayé :

 (entmake (list (cons 0 "layer")(cons 2 "toto")(cons 70 0)(cons 62 7)(cons 6 "Continuous")))

mais ça ne marche pas

Autocad 2021 - Revit 2022 - Windows 10

Posté(e)

Une méthode plus sure.

(make_layer "toto") crer un calque toto avec la couleur 7 et type de ligne "Continuous" en s'assurant qu'il n'existe déjà!

 

(defun make_layer (name / )
    (if (not (tblsearch "LAYER" name))
      (entmake	(append
	  '((0 . "LAYER")
	  (100 . "AcDbSymbolTableRecord")
	  (100 . "AcDbLayerTableRecord"))
	  (list (cons 2 name))
	  '((70 . 0)
	  (62 . 7)
	  (370 . -3)
	  (6 . "Continuous")
	 ))
      )
    )
)

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

essaye avec tblobjname à la place de tblsearch ca marche pas mal aussi

 

[Edité le 22/4/2005 par Maximilien]

Dessinateur AutoCAD, Modeleur BIM, consultant informatique logiciels métier

Lenovo ThinkStation P330 i9 9900K 32Gb RAM 512 SSD + 1To

GstarCAD, Fisa-CAD, Revit, FisaBIM CVC, Microsoft Office

 

PlaquetteDeplianteMars2024.pdf

Posté(e)

Salut

En vlisp et je te décompose la démarche

 

(setq a (vlax-get-acad-object)) ; je pointe sur l'application Autocad
(setq b (vla-get-activedocument a)) ; Je pointe sur le dessin actif de l’application
(setq c (vla-get-layers b)) ; je pointe dans la table des calques du dessin actif
(setq d (vla-add c "MON_CALQUE")) ; je crée mon calque dans la table des calques

 

Et si tu veux modifier des paramètres du calque "MON_CALQUE", c'est dans la variable d (geler avec (vla-put-freeze d :vlax-true) par exemple)

 

@+

Les Lisps de Patrick

Le but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.

Joseph Joubert, 1754-1824

  • 1 an après...
Posté(e)
(setq d (vla-add c "MON_CALQUE")) ; je crée mon calque dans la table des calques

 

Mais je ne trouve aucune aide sur (vla-add... Comment faire pour l'utiliser pour créer un typede ligne ?

 

Denis...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Posté(e)

Salut

Je vais te donner la marche à suivre

(setq a (vlax-get-acad-object)) ; Je pointe sur Autocad

un (vlax-dump-object a t) me renseigne sur ce qu'il est possible de faire (un f2 dans l'interface vba donne plus de renseignements)

Les Méthodes prises en charge permettent un vla-eval sion, c'est un vla-get ou vla-put

Un (setq b (vla-get-activedocument a)) me donne le dessin courant

un (setq c (vla-get-linetypes b)) me donne kla table des type de ligne

Je sent que ton interêt commence à se faire pressant ;)

un (setq d (vla-item c 3)) me donne un type de ligne

Logiquement, après un (vlax-dump-object d) cela me dit comment créer mes types de lignes mais je pense qu'un (vla-load c "Maligne" "Mon_Fichier.lin") est plus approprié

 

@+

Les Lisps de Patrick

Le but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.

Joseph Joubert, 1754-1824

Posté(e)
mais je pense qu'un (vla-load c "Maligne" "Mon_Fichier.lin") est plus approprié

 

Pourquoi ? Je ne veux justement pas de fichier lin, je ne voulais pas gérer un type d'erreur "si ce type de ligne existe déjà"...

 

Moins on donne la possibilité de faire d'erreurs, moins on a à les gérer...

 

Merci pour ta réponse... Mais c'est normale qu'il n'y a rien dans l'aide ?

 

Denis...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

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é