Aller au contenu

Création de type de ligne sans command ni fichier *.lin


Messages recommandés

Posté(e)

La création d'un type de ligne se déroule comme suit :

-typeligne

Type de ligne courant:"DuCalque"

Entrez une option [?/CRéer/CHarger/Actuel]: cr

Entrez le nom du type de ligne à créer: NomTypeLigne

[surligneur] Vérification des types de lignes déjà définis...

veuillez patienter SVP...[/surligneur]

Texte de description: ---- . ----- . ----

Entrez le motif du type de ligne (sur la ligne suivante):

---A,1.5,-0.5,0,-0.5,0.5,-0.5,0,-0.5

Nouvelle description du type de ligne enregistrée dans le fichier.

Entrez une option [?/CRéer/CHarger/Actuel]: ?

Types de lignes définis dans le fichier C:\Documents.....\acad.lin:

 

Mais il demande un fichier lin... Et je ne veux pas lui en donner un... Car je créé mon type à chaque dessin, et s'il le trouve déjà dans un lin... AutoCAD va me chercher des noises ;)

 

Alors comment faire... Je ne voix pas comment je pourrais m'en sortir...

 

J'ai vu un truc avec (vl-add c "clayer"... Mais peut-on faire de même avec un type de ligne ?

 

Car je ne trouve absolument rien dans l'aide sur (vl-add...

 

Je suis en train de réécrire tout mon code (25xx lignes ! !:yltype: ) et j'ai besoin de savoir celà pour le faire correctement.

 

Merci d'avance pour tous conseils ou astuces,

 

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)

Bonjour,

 

 
(if (not (tblsearch "LTYPE" STY))
  (command "_linetype" "_l" STY "acadiso" "")
)

 

La variable STY contiendra "cache", "axes" ou "bordure" etc...

Donc, d'abord tu regardes si le type de ligne est déjà chargé avec tblsearch. S'il ne l'est pas tu le charges (et là il faut bien donner un fichier .lin), sinon tu ne fais rien.

Pour ce qui est des type de lignes perso, créer un fichier .lin perso que tu pourras utiliser à la place de acadiso.lin

 

Il y a sans doute un moyen de se passer d'un fichier .lin et créer le style de ligne directement dans la table "LTYPE".

 

Amicalement

 

Zebulon_

 

 

 

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

Posté(e)

Re,

 

J'ai trouvé une combine pour créer un style de ligne en se passant, a terme, d'un fichier .lin.

 

Cela consiste à créer classiquement un style de ligne (que j'appelle "toto") dans un fichier lambda.lin (on pourra effacer lambda.lin après), puis d'utiliser la commande

 
(entget (tblobjname "ltype" "toto"))

qui renvoie

 
((-1 . < Nom d'entité: 7efcd230 >) (0 . "LTYPE") (330 . < Nom d'entité: 7efc8c28 >) 
(5 . "1B1E") (100 . "AcDbSymbolTableRecord") (100 . "AcDbLinetypeTableRecord") 
(2 . "toto") (70 . 0) (3 . "Description") (72 . 65) (73 . 4) (40 . 25.0) (49 . 10.0) 
(74 . 0) (49 . 5.0) (74 . 0) (49 . 5.0) (74 . 0) (49 . 5.0) (74 . 0))

 

Puis je copie tout ça dans mon lisp en enlevant les codes -1, 330, et 5 qui sont créés par le entmake et ça donne

 

(entmake '(
(0 . "LTYPE")
(100 . "AcDbSymbolTableRecord")
(100 . "AcDbLinetypeTableRecord") 
(2 . "toto")
(70 . 0)
(3 . "Description")
(72 . 65)
(73 . 4)
(40 . 25.0)
(49 . 10.0) 
(74 . 0)
(49 . 5.0)
(74 . 0)
(49 . 5.0)
(74 . 0)
(49 . 5.0)
(74 . 0)
)
) 

 

Le entmake se fera bien entendu après avoir vérifié que "toto" n'existe pas avec tblsearch. A partir de maintenant, on n'a plus besoin du fichier lambda.lin

 

A voir si ça marche aussi avec des types de lignes plus complexes contenant des textes ??

 

Amicalement

 

Zebulon_

 

[Edité le 24/10/2006 par zebulon_]

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

Posté(e)

Merci mille fois...

 

Zebulon_, je ne trouve pas les caractéristique de la ligne ? Comme :

A,1.5,-0.5,0,-0.5,0.5,-0.5,0,-0.5

Mais je vais encore chercher... C'est encore (entmake que je ne connais pas.... Je fonce dans l'aide

 

 

Patrick_35 et dbl37 :

 

Parceque mes collègues s'amusent à purger ou à changer de profils quand il ont le temps.... Bref, ils fouillent pour mieux comprendre et mieux utiliser AutoCAD. En plus, c'est moi qui les ai incité à le faire... C'est comme çà que j'ai apris...

 

 

Merci à tous....

 

Mon but est de tout regrouper dans un seul fichier de type "config" comme je l'ai expliqué dans un autre forum.

 

Merci encore à tous,

 

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)

TYPELIGNE (code de groupe)

 

Codes de groupe

Description

 

100

Marqueur de sous-classe (AcDbLinetypeTableRecord)

 

2

Nom de type de ligne

 

70

Valeurs de drapeau standard (valeurs codées en binaire) :

16 = Si elle est définie, l'entrée de table dépend de manière externe d'une xréf

32 = Si ce bit et le bit 16 sont définis, la xréf dépendante de manière externe a été correctement résolue

64 = Si elle est définie, l'entrée de table a été référencée par au moins une entité du dessin lors de la dernière modification du dessin. (Ce drapeau sert aux commandes AutoCAD. Il peut être ignoré par la plupart des programmes lisant des fichiers DXF et n'a pas besoin d'être défini par ceux écrivant ces fichiers)

 

3

Texte descriptif du type de ligne

 

72

Code d'alignement ; la valeur est toujours 65, le code ASCII pour A

 

73

Nombre d'éléments du type de ligne

 

40

Longueur totale du motif

 

49

Longueur du tiret, du point ou de l'espace (une entrée par élément)

 

74

Type d'élément d'un type de ligne complexe (un par élément) : La valeur par défaut est 0 (pas de forme/texte imbriqué)

Les codes suivants sont des valeurs binaires :

1 = S'il est défini, le code 50 indique une rotation absolue ; s'il n'est pas défini, le code 50 indique une rotation relative

2 = L'élément incorporé est une chaîne de caractères

4 = L'élément incorporé est une forme

 

75

Numéro de forme (un par élément) si le code 74 indique une forme imbriquée

Si le code 74 indique une chaîne de caractères imbriquée, cette valeur est définie sur 0

Si le code 74 est défini sur 0, le code 75 est omis

 

340

Pointeur de l'objet STYLE (un par élément si le code 74 > 0)

 

46

S = Valeur d'échelle (facultatif) ; les entrées multiples sont admises.

 

50

Valeur de rotation R = (relative) ou A = (absolue) en radians de la forme ou du texte incorporé ; une par élément si le code 74 spécifie une forme ou une chaîne de texte incorporée

 

44

X = Valeur de décalage de X (facultatif) ; les entrées multiples sont admises

 

45

Y = Valeur de décalage de Y (facultatif) ; les entrées multiples sont admises

 

9

Chaîne de texte (une par élément si code 74 = 2)

 

 

 

Les codes de groupe 74, 75, 340, 46, 50, 44, 45 et 9 ne peuvent être pas obtenus à l'aide des fonctions tblsearch ou tblnext. Utilisez tblobjname pour récupérer ces valeurs dans une application.

 

 

Regarde aussi les codes dxf dans l'aide, ça peut t'aider.

 

Amicalement

 

Zebulon_

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

Posté(e)

Bon, si je comprend bien... Je vais devoir me mettre au Codes DXF.....

 

Ben allons-y gaiement ! ! !

 

Faites du LiSP qui disait... ;)

 

Merci encore,

 

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)
Et pourquoi ne pas créer un gabarit avec toutes tes spécifications (type de lignes, textes, calques, etc...)

 

Je ne sais pas comment faire pour importer un style de quelquechose en Lisp, sans utiliser DesignCad (que je suis seul à savoir utiliser "correctement"... ;)

 

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)

En principe, tu n'as pas forcément besoin de te colletiner les codes dxf.

 

tu crée un style de ligne avec la commande typeligne avec les paramètres A,1.5,-0.5,0,-0.5,0.5,-0.5,0,-0.5 dans un fichier .dwg quelconque et sauvegardé dans fichier .lin quelconque.

 

une fois ce type de ligne créé, tu récupères les codes dxf créés par la commande typeligne en tapant :

(entget (tblobjname "ltype" "toto"))

où toto est le nom du type de ligne créée.

Autocad t'affiche dans une liste les codes dxf créés par la commande typeligne et il suffit de repomper la liste tellle quelle dans ton lisp (en enlevant les codes -1 330 et 5, comme dit ci-dessus) en faisant un copier coller à partir de la fenêtre de texte autocad (appuyer sur F2)

 

Voilà, c'est tout. Tu n'as pas besoin de savoir comment c'est codé en dxf puisque tu ne fais que repomper... sauf si tu es curieux;)

 

Amicalement

 

Zebulon_

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

Posté(e)
Tu n'as pas besoin de savoir comment c'est codé en dxf puisque tu ne fais que repomper

Mais pour changer ou évoluer le code, il faut le connaitre...

 

sauf si tu es curieux

Bien vu...

 

Je voulaix mettre toutes mes lignes ainsi que mes style de texte...... dans un seul fichier, de ce type (pour l'instant) http://www.cadxp.com/modules.php?op=modload&name=XForum&file=viewthread&tid=12321

 

Que je pourrais modifier à volonté. Si on retourne dans un "ancien" dessin, on pourra mettre à jour les divers styles de ligne, de textes ou calques.....

 

Mais une dernière petite question :

 

Si, lors de ma création de mon type de ligne, AutoCAD me demande le fichier lin, que fera-t'il si le type de ligne existe déjà :

 

- il le remplace l'ancien dans le lin par le nouveau, (ce qui serait le mieux)

- il en créer un autre,

- il me le demande ?

 

En tous cas, je te remerci zebulon... Tu m'as bien aidé, je commence grace à toi à savoir par quel bout attaquer mon petit problème,

 

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)

Denis,

 

Un exemple (un peu ancien, simple lisp) que j'utilise encore pour faire les peintures au sol lors d'aménagement routier.

Ce lisp permet de tracer à la bonne échelle pour l' "echeltp" en cours (donc un appliquant les normes: nationale, départementale).

 

Dans le lisp le fichiers lin est contruit en conséquence de l'échelle.

 

Voilà, si ça peut te donner des idées....

(defun sgnerr (ch / )
(cond
	((eq ch "Function cancelled") nil)
	((eq ch "quit / exit abort") nil)
	((eq ch "console break") nil)
	(T (princ ch))
)
(setq *error* olderr)
(setvar "cmdecho" oldcmd)
(princ)
)
(defun c:hzoff ( / oldcmd)
(setq oldcmd (getvar "cmdecho"))
(setvar "cmdecho" 0)
(setvar "plinewid" 0.0)
(setvar "celtype" "BYLAYER")
(command "_.redefine" "polylign")
(command "_.redefine" "_pline")
(prompt "\nCommande POLYLIGN redéfinie en standard")
(setvar "cmdecho" oldcmd)
(prin1)
)
(defun c:hzon ( / oldcmd)
(setq oldcmd (getvar "cmdecho"))
(setvar "cmdecho" 0)
(command "_.undefine" "polylign")
(command "_.undefine" "_pline")
(prompt "\nCommande POLYLIGN redéfinie en mode signalisation horizontale")
(setvar "cmdecho" oldcmd)
(prin1)
)
(defun c:polylign ()
(c:_pline)
)

(defun c:_pline ( / oldcmd entry wid_pl mod_tl)
(setq oldcmd (getvar "cmdecho"))
(setq olderr *error* *error* sgnerr)	
(setvar "cmdecho" 0)
(while (not wid_pl)
	(setq entry
		(getstring
			(strcat
				"\nDonner le type de U à tracer ou largeur de en cm [2U/3U/5U/50/25/15/10] <"
				(getvar "users1")
				"> : "
			)
		)
	)
	(if (= entry "")
		(setq entry (getvar "users1"))
	) 
	(cond
		((or (= entry "2U")(= entry "2u"))
			(setq wid_pl (* 2.0 (getvar "userr1")))
			(setvar "users1" "2U")
		)
		((or (= entry "3U")(= entry "3u"))
			(setq wid_pl (* 3.0 (getvar "userr1")))
			(setvar "users1" "3U")
		)
		((or (= entry "5U")(= entry "5u"))
			(setq wid_pl (* 5.0 (getvar "userr1")))
			(setvar "users1" "5U")
		)
		((or
			(eq (atof entry) 50)
			(eq (atof entry) 25)
			(eq (atof entry) 15)
			(eq (atof entry) 10)
		 )
			(setq wid_pl (* 0.01 (atof entry)))
			(setvar "users1" (rtos (atof entry) 2 0))
		)
		(T
			(prompt "\nLa valeur doit être 2U, 3U, 5U, 50cm, 25cm, 15cm ou 10cm")
			(setq wid_pl nil)
		)
	)
)
(setvar "plinewid" wid_pl)
(if (= (getvar "users2") "") (setvar "users2" "CONTINU"))
(initget "T1 TP1 T2 TP2 T3 TP3 Continu")
(setq mod_tl
	(getkword
		(strcat
			"\nType de modulation [T1/TP1/T2/TP2/T3/TP3/Continu] <"
			(getvar "users2")
			">: "
		)
	)
)
(if (not mod_tl)
	(setq mod_tl (getvar "users2"))
)
(cond
	((eq mod_tl "T1")
		(setvar "celtype" "T1")
	)
	((eq mod_tl "TP1")
		(setvar "celtype" "T-PRIM1")
	)
	((eq mod_tl "T2")
		(setvar "celtype" "T2")
	)
	((eq mod_tl "TP2")
		(setvar "celtype" "T-PRIM2")
	)
	((eq mod_tl "T3")
		(setvar "celtype" "T3")
	)
	((eq mod_tl "TP3")
		(setvar "celtype" "T-PRIM3")
	)
	((eq mod_tl "Continu")
		(setvar "celtype" "CONTINUOUS")
	)
)
(setvar "users2" mod_tl)
(alert
	(strcat
		"\n    - Utilisez la commande HZOFF"
		"\npour activer la commande POLYLIGN standard."
		"\n    - Utilisez la commande HZON"
		"\npour activer la commande POLYLIGN modifiée."
	)
)
(setq *error* olderr)	
(setvar "cmdecho" 1)
(command "_.PLINE")
(prin1)
)
(defun c:signhz ( / oldcmd oldexp maj fac_tl val_tl nam_tl nam_fic fil_out val_u entry)
(setq val_u nil)
(setq oldcmd (getvar "cmdecho") oldexp (getvar "expert"))
(setq olderr *error* *error* sgnerr)	
(setvar "cmdecho" 0)
(setvar "expert" 3)
(if (tblsearch "LTYPE" "T1") (setq maj T) (setq maj nil))
(setq fac_tl (getvar "ltscale"))
(setq val_tl
	'(
		(3.0 -10.0)
		(1.5 -5.0)
		(3.0 -3.5)
		(0.5 -0.5)
		(3.0 -1.33)
		(20.0 -6.0)
	)
)
(setq nam_tl
	'(
		"*T1,longitudinale axial"
		"*T-PRIM1,longitudinale axial"
		"*T2,longitudinale de rive"
		"*T-PRIM2,transversale"
		"*T3,longitudinale axial"
		"*T-PRIM3,longitudinale de rive"
	)
)
(if (zerop (getvar "dwgtitled"))
	(setq nam_fic (strcat (getvar "dwgprefix") (getvar "dwgname") ".LIN"))
	(setq nam_fic (strcat (getvar "dwgname") ".LIN"))
)
(setq fil_out (open nam_fic "w"))
(while val_tl
	(write-line (car nam_tl) fil_out)
	(write-line
		(strcat
			"A,"
			(rtos (/ (caar val_tl) fac_tl) 2 4)
			","
			(rtos (/ (cadar val_tl) fac_tl) 2 4)
		)
		fil_out
	)
	(setq nam_tl (cdr nam_tl) val_tl (cdr val_tl))
)
(close fil_out)
(command "'_.LINETYPE" "_LOAD" "*" nam_fic "")
(prompt
	(strcat
		"\nLes types de lignes T1 T'1 T2 T'2 T3 et T'3 sont définies et chargées"
		"\npour un facteur d'échelle de : "
		(rtos fac_tl 2 2)
	)
)
(while (not val_u)
	(initget 6)
	(setq entry (getreal "\nDonner la valeur de U en centimètres [7.5/6/5/3] <6>: "))
	(cond
		((or
			(eq entry 7.5)
			(eq entry 6)
			(eq entry 5)
			(eq entry 3)
		 )
			(setq val_u entry)
		)
		((not entry)
			(setq val_u 6.0)
		)
		(T
			(prompt "\nLa valeur de U doit être de 7.5cm, 6cm, 5cm ou 3cm")
			(setq val_u nil)
		)
	)
)
(setq val_u (* 0.01 val_u))
(setvar "userr1" val_u)
(setvar "fillmode" 1)
(setvar "plinegen" 1)
(command "_.undefine" "polylign")
(command "_.undefine" "_pline")
(if maj
	(progn
		(prompt "\nMise à jour des entitées avec la nouvelle définition par un REGEN")
		(command "_.regenall")
	)
	(prompt 
		(strcat
			"\nSi vous voulez changez l'échelle du type de ligne, ou la valeur de U"
			"\nrelancez la commande SIGNHZ"
			"\nNB: Les polylignes tracées auparavant garderont l'ancienne valeur de U."
		)
	)
)
(setvar "expert" oldexp)
(setvar "cmdecho" oldcmd)
(setq *error* olderr)	
(prin1)
)

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

Posté(e)

Si, lors de ma création de mon type de ligne, AutoCAD me demande le fichier lin, que fera-t'il si le type de ligne existe déjà :

 

Quand tu fais la création de type de ligne avec entmake, autocad ne te demande PAS de fichier lin. C'était le but non ?

 

Tu fais un truc du style :

 

(defun c:makeltype (/ LT TYPLIG)

 (setq LT 
   '(
   (0 . "LTYPE")
   (100 . "AcDbSymbolTableRecord")
   (100 . "AcDbLinetypeTableRecord") 
   (2 . "toto")
   (70 . 0)
   (3 . "Description")
   (72 . 65)
   (73 . 4)
   (40 . 25.0)
   (49 . 10.0) 
   (74 . 0)
   (49 . 5.0)
   (74 . 0)
   (49 . 5.0)
   (74 . 0)
   (49 . 5.0)
   (74 . 0)
   )
 )


 (if (setq TYPLIG (tblobjname "ltype" "toto")) ;; pour voir si le type de ligne "toto" existe
   (entmod (cons (car (entget TYPLIG)) LT)) ;; tu modifies le type de ligne existant avec un entmod
   (entmake LT) ;; tu le crées avec entmake
 ) ;; fin si
) 

 

Amicalement

 

Zebulon_

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

Posté(e)

Encore merci zebulon_, c'est exactement ce qu'il me fallait... Je vais fouiller l'aide, car dans les type de ligne, j'ai du texte comme ----EU----EU----

 

Merci encore

 

Quand à bonuscad, j'utilise tous les jours tes menus (notamment topo.lsp et talus.lsp). Je vais méditer sur ton code...

 

Merci à toi

 

Nota pour bonuscad : talus.lsp plante AutoCAD à la première utilisation, soit dans le dessin, soit dans la journée :casstet: J'ai lontemps cherché une cause ou un point commun... :o Mais rien ! !

 

Merci à tous,

 

Je vais éplucher tout çà,

 

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)

J'ai un petit problème avec ton code bonuscad,

 

Quand je demande à VisualLisp de me le "formater", il me répond effrontément :

Formatage

Une erreur s'est produite

Echec de l'assertion : PPF internal: non-plain

 

C'est grave docteur ?

 

C'est cette partie là :

 

(defun c:signhz ( / oldcmd oldexp maj fac_tl val_tl nam_tl nam_fic fil_out val_u entry)
(setq val_u nil)
(setq oldcmd (getvar "cmdecho") oldexp (getvar "expert"))
(setq olderr *error* *error* sgnerr)
(setvar "cmdecho" 0)
(setvar "expert" 3)
(if (tblsearch "LTYPE" "T1") (setq maj T) (setq maj nil))
(setq fac_tl (getvar "ltscale"))
(setq val_tl
'(
(3.0 -10.0)
(1.5 -5.0)
(3.0 -3.5)
(0.5 -0.5)
(3.0 -1.33)
(20.0 -6.0)
)
)
(setq nam_tl
'(
"*T1,longitudinale axial"
"*T-PRIM1,longitudinale axial"
"*T2,longitudinale de rive"
"*T-PRIM2,transversale"
"*T3,longitudinale axial"
"*T-PRIM3,longitudinale de rive"
)
)
(if (zerop (getvar "dwgtitled"))
(setq nam_fic (strcat (getvar "dwgprefix") (getvar "dwgname") ".LIN"))
(setq nam_fic (strcat (getvar "dwgname") ".LIN"))
)
(setq fil_out (open nam_fic "w"))
(while val_tl
(write-line (car nam_tl) fil_out)
(write-line
(strcat
"A,"
(rtos (/ (caar val_tl) fac_tl) 2 4)
","
(rtos (/ (cadar val_tl) fac_tl) 2 4)
)
fil_out
)
(setq nam_tl (cdr nam_tl) val_tl (cdr val_tl))
)
(close fil_out)
(command "'_.LINETYPE" "_LOAD" "*" nam_fic "")
(prompt
(strcat
"\nLes types de lignes T1 T'1 T2 T'2 T3 et T'3 sont définies et chargées"
"\npour un facteur d'échelle de : "
(rtos fac_tl 2 2)
)
)
(while (not val_u)
(initget 6)
(setq entry (getreal "\nDonner la valeur de U en centimètres [7.5/6/5/3] <6>: "))
(cond
((or
(eq entry 7.5)
(eq entry 6)
(eq entry 5)
(eq entry 3)
)
(setq val_u entry)
)
((not entry)
(setq val_u 6.0)
)
(T
(prompt "\nLa valeur de U doit être de 7.5cm, 6cm, 5cm ou 3cm")
(setq val_u nil)
)
)
)
(setq val_u (* 0.01 val_u))
(setvar "userr1" val_u)
(setvar "fillmode" 1)
(setvar "plinegen" 1)
(command "_.undefine" "polylign")
(command "_.undefine" "_pline")
(if maj
(progn
(prompt "\nMise à jour des entitées avec la nouvelle définition par un REGEN")
(command "_.regenall")
)
(prompt
(strcat
"\nSi vous voulez changez l'échelle du type de ligne, ou la valeur de U"
"\nrelancez la commande SIGNHZ"
"\nNB: Les polylignes tracées auparavant garderont l'ancienne valeur de U."
)
)
)
(setvar "expert" oldexp)
(setvar "cmdecho" oldcmd)
(setq *error* olderr)
(prin1)
)

 

Pourtant, quand je double-clique devant (defun... Il me sélectionne bien toute la routine...

 

Merci,

 

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)

J'ai trouvé, c'est la dedans : :D

(setq nam_tl
'(
"*T1,longitudinale axial"
"*T-PRIM1,longitudinale axial"
"*T2,longitudinale de rive"
"*T-PRIM2,transversale"
"*T3,longitudinale axial"
"*T-PRIM3,longitudinale de rive"
)
)

 

Mais je ne sais pas quoi faire :(

 

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)

J'ai essayer avec le bloc-note, pas de problème.

 

Passe d'abords par lui, quitte à le réouvrir avec l'éditeur Vlisp par la suite.... pour l'indenter.

C'est peut une histoire de formatage de texte qui pose ce problème dans ce dernier?!

 

PS: Pour talus, j'ai l'intention de le réecrire en vlax quand j'aurais du temps, en ce moment je suis trop occupé. Merci du retour en tout cas.

 

[Edité le 24/10/2006 par bonuscad]

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

Posté(e)

Je l'ai fait, mais rien...

 

Parcontre, j'ai copier les paramètres de formatage à la fin et Hop, c'est bon...

 

Les paramètres suivent :

;|«Visual LISP© Format Options»
(200 2 10 2 T "Fin de " 100 200 0 0 nil nil T T T)
;*** NE PAS AJOUTER de texte au-dessous du commentaire! ***|;

 

Merci encore,

 

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é