Aller au contenu

Modifier le facteur de convertion des champs automatiquement


Messages recommandés

Posté(e)

Salut à tous,

 

J'ai reçu un dessin dessiné en millimètre. Les surfaces ont été calculées avec des champs, dans lesquels, un facteur de conversion a été fait 0.0001.

J'ai modifier l'échelle du dessin pour le mettre en mètre. Toutefois, le facteur de conversion des champs pour les surfaces est toujours à 0.0001. Je souhaiterais les passer tous à 1. Néanmoins, je suis mal barré pour le moment car il faut que je les modifie tous un par un :(

 

Y a-t-il un moyen pour modifier le facteur de conversion de tous les champs, à 1, d'un seul coup, ou existe-t-il un moyen où lorsqu'on modifie l'échelle d'un dessin dans lequel il y a des champs avec un facteur de conversion, ceux-ci se changent automatiquement par rapport à l'échelle dans laquelle on met le dessin?

Par exemple,

 

Si je reçois un dessin dessiné en millimètre; facteur de conversion des champs = 0.0001, je modifie l'échelle du dessin en mètre; le facteur de conversion = 1

 

Je reçois un dessin en centimètre; facteur de conversion = 0.001, je modifie l'échelle du dessin en mètre; le facteur de conversion = 1?

Steven________________________________________

Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD.

Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD.

En rêve; AutoCAD sous Linux.

Posté(e)

Hello

 

En resume, il te faudrait sur une selection AutoCAD classique , une routine Lisp/VLisp qui va :

- Ne retenir que les champs dynamiques dans la selection

- Poser une question du genre "Facteur de conversion (Defaut 0.001): ?"

- Appliquer le facteur choisi

- Fin de routine

 

Si DWG en MM, alors le perimetre est divise par 1000.0 et la surface par 1000000.0

pour avoir un perimetre en M et une surface en M2 ...

 

Par contre: as tu des attributs dynamiques dans des blocs avec le meme probleme ?

Si OUI, la routine doit pouvoir traiter aussi les attributs dynamiques dans les blocs selectionnes ...

 

Waiting for a Lisp/VLisp PRO ?

 

Merci d'avance, Bon WE, lecrabe

Autodesk Expert Elite Team

Posté(e)

Par contre: as tu des attributs dynamiques dans des blocs avec le meme probleme ?

 

Salut,

 

En effet, ça peut arriver.

Steven________________________________________

Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD.

Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD.

En rêve; AutoCAD sous Linux.

Posté(e)

Salut Didier,

 

Ça ne change rien au facteur de conversion des champs.

Steven________________________________________

Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD.

Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD.

En rêve; AutoCAD sous Linux.

Posté(e)

Bonjour,

 

enregistre en DXF, puis ouvre le avec Notepad++

Normalement le facteur de conversion devrait apparaître sous forme

[0.001]

 

fait un rechercher/remplacer de

[0.001]

par

[1.0]

 

sauvegarde et réouvre sous AutoCAD, ça devrait fonctionner.

 

Olivier

Posté(e)

Bonjour Olivier,

 

La méthode est intéressante mais elle pose un problème. En effet, il n'y a pas que les conversions des champs qui sont a 0.0001. Il y a aussi des blocs dont l'échelle a été modifiée à 0.0001. Donc, lorsque je modifie le dxf, sous forme de texte et que je remplace tous les 0.0001 par 1, c'est parfais pour les champs mais les blocs sont aussi impactés. Je te laisse imaginer le résultat lorsque j'ouvre mon dessin sur AutoCAD.

Quoiqu'il en soit, pour un dessin, la solution DXF <---> Fichier texte peut être bonne, mais lorsqu'on a plusieurs fichiers avec lesquels on a le même soucis, ça risque de vite être lassant.

Steven________________________________________

Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD.

Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD.

En rêve; AutoCAD sous Linux.

Posté(e)

Bonjour,

 

justement, le facteur de conversion est écrit entre crochet

 

[0.001]

 

et non pas comme un simple facteur d'échelle sur un bloc : code DXF 41 42 ou 43 qui sont les échelle en X, Y et Z.

 

Je n'ai pas vérifié, mais je ne suis pas sûr qu'un chiffre écrit entre crochet puisse être autre chose qu'un facteur de conversion d'une formule.

 

 

Olivier

Posté(e)

En effet, ça fonctionne nettement mieux lorsqu'on met les crochets, avant et après 0.0001 :)

Steven________________________________________

Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD.

Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD.

En rêve; AutoCAD sous Linux.

Posté(e)

Hello

 

SVP un petit reveil pour les Pros du Lisp/VLisp afin d'obtenir si possible une routine

realisant ce que j'ai demande dans mon message du 28/02/2016 12h26 !?

 

Merci d'avance, Bye, lecrabe

Autodesk Expert Elite Team

Posté(e)

J'avais récupérer (je ne sais plus où!) ce petit bout de code.

A partir de ça, je pense que la mise en oeuvre ne serait pas compliqué (si on ne doit pas aller chercher dans des blocs!), mais je n'ai pas envie de m'y coller... <_<

 

(defun c:getfielentities ( / ent obj)
 (cond
   ((setq ent (entsel))
     (setq obj (vlax-ename->vla-object (car ent)))
     (if (vlax-method-applicable-p obj "FIELDCODE")
       (alert (vlax-invoke-method obj "FIELDCODE"))
     )
   )
 )
 (prin1)
)

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

Posté(e)

Salut Bonuscad,

 

Désolé pour la réponse tardive, je voulais d'abord tester avant de répondre ;)

 

J'ai essayé mais ça n'a pas l'air de fonctionner.

Mais bon, ça n'est pas très grave, c'est un cas de figure qui se présenta rarement la modification du dxf en format texte devrait suffire ;)

Steven________________________________________

Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD.

Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD.

En rêve; AutoCAD sous Linux.

Posté(e)
J'ai essayé mais ça n'a pas l'air de fonctionner.

 

Ha bon! cela ne t'affiche pas la syntaxe du champ dans une boite de dialogue?

 

En fait j'avais rapidement essayé d'aller plus loin, mais j'ai l'impression qu'il faudrait effacer le champ pour en recréer un identique à nouveau avec le terme modifié à sa convenance car l'essai de mise à jour du champ n'a pas fonctionné (ou je ne sais pas faire).

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

Posté(e)

Ha bon! cela ne t'affiche pas la syntaxe du champ dans une boite de dialogue?

 

Si, en fait il y a ce message:

 

http://img11.hostingpics.net/thumbs/mini_821806acaderreurgetfieldentities.png

Steven________________________________________

Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD.

Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD.

En rêve; AutoCAD sous Linux.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • 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é