Aller au contenu

ECHLTP et TILEMODE


Messages recommandés

Posté(e)

Bonjour à tous,

 

Je vous expose mon soucis :

 

je travaille en mètres dans l'espace objet et je mets en page en mm dans l'espace papier. Je souhaite que les styles de lignes soient homogènes quelles que soient les echelles des fmults. J'ai donc fixé la variable PSLTSCALE à 1.

Je souhaite visualiser les différents types de lignes en espace papier comme en espace objet, mais cela n'a pas l'air d'être possible sans changer à chaque fois l'ECHLTP.

Ce qui arrive trop souvent, c'est de travailler en espace objet avec un ECHLTP qui va bien pour visualiser les types de ligne en espace objet, de passer en espace papier pour imprimer, d'imprimer en oubliant de règler l'ECHLTP qui va bien pour l'espace papier, de jeter le plan à la poubelle et de recommencer, parce que les traits d'axe ou les traits cachés sortent comme des traits continus.

 

ça me fatigue. :mad:

 

Je me suis donc fait un bouton TILEMODE à moi qui change l'ECHLTP en fonction de la valeur du TILEMODE, qui contient :

 

(defun c:tmmo()

(if (= 0 (getvar "TILEMODE"))

(progn

(command "PSLTSCALE" "1")

(command "REGNAUTO" "IN")

(command "ECHLTP" "0.02")

(setvar "TILEMODE" 1)

(command "REGNAUTO" "AC")

)

(progn

(command "PSLTSCALE" "1")

(command "REGNAUTO" "IN")

(command "ECHLTP" "0.20")

(setvar "TILEMODE" 0)

(command "REGNAUTO" "AC")

)

)

)

(princ)

 

 

 

Y-a-t'il un autre moyen ?

 

Merci

 

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)

Bonjour,

 

Voilà ce que je fais automatiquement ...

 

Format ==> Type de ligne.. ==> (je décoche) Utiliser les unités de l'espace papier pour une mise à l'échelle.

 

...et là je n'ai jamais de problème, les lignes de l'espace papier sont à l'identique de l'espace objet.

 

...une réponse qui en vaut une autre car si il y a une autre solution je suis également preneur. ;)

 

SYLVAIN

Posté(e)

Ok yalta,

 

ce que tu fais revient à modifier la valeur de PSLTSCALE et de la fixer à 0. Là, plus de problème de différence d'échelle de types de lignes entre l'espace papier et l'espace objet.

 

Mais, si je fais une FMULT au 1:100 et une autre au 1:20 par exemple, la représentation des types de lignes dans ces fenêtres seront différentes (avec un rapport de 5 dans mon exemple)

 

Et ça c'est pas joli, joli...

 

Si tu fais des plans qui ne nécessitent qu'une seule fenêtre fmult (genre un plan d'un projet routier ou un plan topo), ta solution est la bonne. Souvent, dans ce cas, l'espace papier n'est même pas utilisé et la mise en page est faite directement dans l'espace objet (à tort, je pense, mais c'est ce que je constate quand je reçois des plans d'ailleurs)

 

Quand il s'agit de faire cohabiter sur la même présentation des fenêtres avec des echelles différentes, c'est pas la même histoire...

 

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)

Salut,

 

Zebulon ta solution semble bonne, surtout si elle te convient ;)

 

Il ya sûrement moyen de faire la même chose avec une macro et du diesel pour la conditionnelle, mais je suis plutôt nul en diesel.

 

Juste une petite remarque quant à la syntaxe de ton lisp (question de style) :

Tu pourrais remplacer (command "PSLTSCALE" "1") et (command "ECHLTP" "0.02") par (setvar "PSTLTSCALE" 1) et (setvar "ECHLTP" 0.02) pour éviter les echos sur la ligne de commande.

D'autre part, il est toujours préférable d'utiliser les noms de commande en version internationale pour des raisons de compatibilité : (command "_REGENAUTO" "_OFF") et (command "_REGENAUTO" "_ON")

 

En toute amitié

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

Posté(e)

(gile) ma solution me convient dans la mesure où elle me règle mon problème.

 

Ce qui ne me convient pas c'est d'avoir à règler ce genre de problème.

 

Et puis, si d'autres ont ce problème, ils seront peut être contents de voir comment le résoudre...

 

Et puis, il y a peut être une manière plus élégante de le résoudre, qui sait ?

 

Ou peut être ce n'est pas un problème et c'est tout simplement moi qui ne sait pas me servir d'Autocad ? Là le problème ce serait moi... :)

 

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)

Ah j'oubliais un petit point de détail.

 

(setvar "ECHLTP" 0.02)

 

ECHLTP n'est pas une variable, mais une commande qui agit sur une variable. Et pour faire simple, la variable n'a pas le même nom que la commande correspondante, mais s'appelle LTSCALE.

 

Donc il faudrait écrire

 

(setvar "LTSCALE" 0.02)

 

pour que ça marche.

 

Sinon ton conseil d'utiliser les noms de commande en international est effectivement à suivre absolument.

 

 

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)

Ah j'oubliais un autre point de détail ...

 

Si déjà je dois utiliser les variables système, alors pourquoi pas aller jusqu'au bout de l'idée et écrire

 

(setvar "regenmode" 0)

 

à la place de

 

(command "_regenauto" "_off")

 

ça donnerait donc :

 

(defun c:tmmo()

(setvar "PSLTSCALE" 1)

(setvar "REGENMODE" 0)

(if (= 0 (getvar "TILEMODE"))

(progn

(setvar "LTSCALE" 0.02)

(setvar "TILEMODE" 1)

)

(progn

(setvar "LTSCALE" 0.20)

(setvar "TILEMODE" 0)

)

)

(setvar "REGENMODE" 1)

(princ)

)

 

 

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)

ECHLTP n'est pas une variable, mais une commande qui agit sur une variable. Et pour faire simple, la variable n'a pas le même nom que la commande correspondante, mais s'appelle LTSCALE.

 

Bien vu, çà m'apprendra à faire des copier/coller.

 

En plus, ironie du sort "ltscale" c'est la version anglaise de la commande "echltp" :cool:

 

Y'a des fois je ferais mieux de réfléchir avant de jouer au donneur de leçons :mad2:

 

[Edité le 12/9/2005 par (gile)]

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

Posté(e)

y a pas de honte, à part cette petite erreur de traduction, tous tes conseils ont été mis en pratique et ont contribué a réécrire ces quelques lignes de façon plus sobre.

 

Par contre, et là je m'adresse à toute la communauté, suis-je le seul à rencontrer ce problème et à me batailler avec des ECHLTP ?

 

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)

Non, tu n'est pas le seul :cool:

 

Je m'étais même fait une petite boite de dialogue pour éviter d'ouvrir à chaque fois celle de gestion des types de ligne.

 

Mais ton code est plus performant à condition de toujours travailler avec des objets de même ordre de grandeur dans l'espace objet.

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

Posté(e)

j'applique une méthode simple :

 

La référence papier étant toujours le millimètre, je peux entrer un 50e. Quelque soit l'unité ! je veux pas me prendre le choux avec les calculs :

 

Voici les réponses au ZOOM XP en fonction des unités !

 

mm 1/50X

 

cm 10/50XP

 

m 1000/50XP

 

pas de besoin de réfléchir ni de bidouille, c'est valable avec n'importe quelles versions depuis la 2000 (complète et LT).

 

et pour l'échelle type de ligne j'utilise 0,35 avec l'option cochée "utiliser les unités de l'espace papier pour une mise à l'échelle "

 

Aujourd'hui je conseille de toujours imprimer à partir d'une présentation... et de démarrer avec un bon gabarit !

 

Christian

Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...

cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)

Posté(e)

Je suis d'accord avec toi christian, d'autant plus que ça fait quelques années que je fais pareil, pour ce qui est des ZOOM XP.

 

Mais ça ne change rien au problème de différence de visualisation des types de lignes entre l'espace objet et l'espace papier.

 

Quant à la valeur de l'échelle de type de ligne, tout dépend du fichier .lin que tu utilises.

 

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)

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é