Aller au contenu

ScanDXF Beta


bryce

Messages recommandés

Bonjour,

 

Je vous propose de tester ScanDXF, un outil de mon cru qui permet de compter les blocs d'un dessin et de récupérer les propriétés (calque, longueur, aire) des lignes, polylignes, splines, etc.

 

Avec AutoCAD, ça peut bien sûr être fait sans passer par un programme externe, en Lisp par exemple.

Mais ScanDXF permet de le faire même avec une version LT !

 

Il peut-être utilisé soit directement en "standalone" pour analyser un ficher DXF, soit lancé depuis AutoCAD pour analyser les objets sélectionnés dans le dessin.

 

Le principe est d'utiliser dans AutoCAD une macro qui va exporter les objets en DXF, puis lancer ScanDXF, lequel va analyser les objets décrits dans ce DXF, calculer les longueurs, surfaces, et afficher un rapport.

 

 

Procédure d'installation :

 

- télécharger le Zip

 

- décompresser le Zip dans un répertoire de votre choix.

 

ScanDXF est maintenant directement utilisable pour analyser un fichier DXF.

Pour pouvoir le lancer depuis AutoCAD, quelques étapes supplémentaires sont nécessaires :

 

- lancer ScanDXF.exe et se rendre dans l'onglet Options

 

- copier la commande d'installation pour AutoCAD ou celle pour LT, suivant la version utilisée

post-8101-0-16809000-1335523088_thumb.png

 

- lancer AutoCAD ou LT

 

- coller dans la ligne de commande la macro d'installation (puis appuyer sur Entrée si besoin)

 

- créer un bouton dans la boîte de dialogue CUI, avec comme macro la macro de bouton affichée dans l'onglet Infos de ScanDXF

OU, plus simple,

- charger le menu partiel scandxf.cuix (depuis la boîte de dialogue CUI, ou avec la commande CHARGIUPERSO). Ce menu rajoute à AutoCAD une mini barre d'outils (un seul bouton) pour les vieux :P , et un bouton dans l'onglet Sortie du Ruban pour les djeunz. :P

post-8101-0-74955600-1335523094_thumb.png post-8101-0-53909300-1335523099_thumb.png

 

- C'est prêt ! B)

 

 

Utilisation:

 

- dans AutoCAD, cliquer sur le bouton ScanDXF et sélectionner les objets, valider

OU

- "gripper"/sélectionner les objets par la méthode de votre choix (clic clic, Sélection rapide, Sélectionner similaire, etc.), puis cliquer sur le bouton ScanDXF.

 

- dans ScanDXF, vous pouvez filtrer les résultats par type d'objet et/ou par calque, trier par colonne...

 

- liste des objets supportés pour l'instant : blocs (y compris dynamiques), polylignes "légères", lignes, cercles, points, arcs, splines, ellipses.

NB: la longueur des splines est une valeur approchée, elle diffère légèrement de celle indiquée dans AutoCAD.

 

 

Résultat :

 

post-8101-0-73935900-1335524862_thumb.png post-8101-0-41538100-1335524869_thumb.png

 

 

Si vous trouvez des bugs, ou si vous avez des suggestions d'amélioration, je suis tout ouïe ! :)

 

 

-- Mises à jour --

 

29/04/2012: Beta 2

- support des Faces 3D

- affichage du nom des couleurs 1 à 7 (au lieu du numéro)

 

30/04/2012: Beta 3

- correction d'un bug sur le tri des colonnes numériques

 

30/04/2012: Beta 4

- la liste des types d'objets et celles des calques sont masquées selon l'onglet courant

- prise en compte des insertions multiples de blocs (INSERM ou _MINSERT). Attention, dans ScanDXF les coordonnées d'insertion de ces blocs ne sont justes que si les blocs sont dans un plan parallèle au plan XY du SCG.

 

02/05/2012: Beta 5

amélioration de l'export Excel, les 3 onglets sont exportés en une fois dans le même classeur.

 

02/06/2012: Beta 6

ajout d'un onglet Calques.

 

01/07/2012: Beta 7

- affichage des attributs dans la vue détaillée des blocs

- réécriture complète en POO du parser dxf.

 

12/07/2012: Beta 8

-ajout d'une colonne affichant la largeur globale des polylignes.

 

02/08/2012: Beta 9

- correction d'un bug sur l'affichage du nom des blocs dynamiques

- amélioration du redimensionnement des colonnes (dans l'onglet Entités seulement pour le moment)

- possibilité de choisir les colonnes à afficher (dans l'onglet Entités seulement pour le moment)

- ajout d'un bouton pour répartir la largeur des colonnes (dans l'onglet Entités seulement pour le moment)

 

29/08/2012: Beta 10

- amélioration du redimensionnement des colonnes dans tous les onglets

- possibilité de choisir les colonnes à afficher dans tous les onglets

- bouton pour répartir la largeur des colonnes présent dans tous les onglets

- affichage du texte et du style de texte

- correction d'un bug qui affichait l'aire de certaines polylignes en négatif

- l'aire des polylignes et splines n'est affichée que si elles ne comportent aucune autointersection (dans les versions précédentes, une valeur fausse était affichée)

- amélioration des performances.

 

11/09/2012: Beta 11

- gestion des colonnes dans l'onglet Calques identique aux autres onglets

- export automatique des résultats au format csv dans le dossier "export" en utilisant le commutateur -x

- ajout d'un bouton pour l'export auto dans la barre d'outils et le groupe de fonctions AutoCAD

- les dimensions de la fenêtre sont mémorisées d'une session à l'autre + ajout d'une option dans l'onglet Infos pour réinitialiser les préférences.

 

 

09/10/2012: Beta 12

- correction d'un bug lors de l'export en CSV de textes multilignes contenant des sauts de ligne

- correction d'un bug : dernière rangée de l'onglet Entités manquante lors de l'export en CSV/Excel

- les coordonnées X, Y et Z des textes correspondent au point d'alignement (point de justification) au lieu du point d'insertion

- ajout d'une colonne pour le facteur de largeur des textes.

 

18/10/2012: Beta 13

- prise en charge des états de visibilité des blocs dynamiques (expérimental, à tester)

- ajout d'un bouton pour l'export au format CSV.

 

01/12/2012: Beta 14

- support des multilignes

- utilisation automatique du séparateur décimal défini dans Excel lors de l'export vers Excel

- correction d'un bug sur la gestion des colonnes.

 

09/04/2013: Beta 15

- correction d'un bug lors de la restauration de la taille de la fenêtre.

 

26/04/2013: Beta 16

- correction d'un bug provoquant un crash lors du calcul de l'aire des Faces 3D.

 

27/06/2013: Beta 17

- tri par ordre alphabétique des filtres de calques, blocs, types d'entités

- date d'expiration repoussée au 31/07/2013.

 

14/01/2014: Beta 18

- correction d'un bug sur les sommes lorsque le séparateur décimal système est la virgule

- date d'expiration repoussée au 31/03/2014.

 

29/04/2014: Beta 19

- correction d'un bug (coordonnées des entités point non affichées)

- date d'expiration repoussée au 31/07/2014.

 

02/03/2015: Beta 20

- correction d'un bug (longueurs des arcs non affichées)

- ajout d'une colonne affichant le rayon des arcs et cercles

- date d'expiration repoussée au 30/04/2014.

 

10/03/2015: Beta 21

- onglet Infos renommé en Options

- les boutons d'export ne sont plus affichés dans l'onglet Options

- ajout d'une option pour changer l'extension des fichiers exportés en txt (dans l'onglet Options).

 

03/07/2015: Beta 22

- correction d'un bug lors de l'export Excel (fichier vide s'il n'y a qu'un objet à exporter)

- ajout de la propriété Fermé pour les ellipses

- si un fichier nommé autorun.bat se trouve dans le même répertoire que scandxf.exe, il sera automatiquement executé en fin de traitement (uniquement si ScanDXF est lancé en mode silencieux via autoscandxf.bat)

- date d'expiration repoussée au 31/12/2015.

 

19/12/2015: Beta 23

- prise en charge des polylignes 3D et polylignes 2D "lourdes"

- ajout des coordonnées XYZ des extrémités de lignes dans les propriétés récupérées

- date d'expiration repoussée au 31/03/2016.

 

29/01/2016: Beta 24

- correction d'un bug lors de l'export CSV (fichier vide s'il n'y a qu'un objet à exporter)

- possibilité d'utiliser l'argument "-txt" ou "-csv" dans autoscandxf.bat pour forcer le format d'export auto

- le dossier de destination est ouvert automatiquement lors d'un export CSV depuis l'interface graphique.

 

01/02/2016: Beta 25

- lors d'un export auto, un fichier de configuration (ent_properties.cfg) permet de choisir les propriétés à extraire et leur ordre.

 

08/10/2016: Beta 26

- correction d'un bug provoquant un crash en cas de présence d'un bloc anonyme.

 

07/12/2016: Beta 27

- le nombre de colonnes de propriétés est limité à 64 pour éviter un crash (limite de RealBasic/Xojo).

 

20/01/2017: Beta 28

- ajout d'un message signalant la fin du traitement lors d'un export auto

 - ajout des arguments -skipEntities (ne traite que les calques) et -silent (supprime le message de fin lors d'un export auto).

 

30/05/2017: Beta 29

- ajout d'un onglet listant les présentations

- ajout de l'argument -layersOnly pour traiter uniquement les calques

- ajout de l'argument -layoutsOnly pour traiter uniquement les présentations

- l'argument -skipEntities traite les calques et les présentations.

 

04/07/2017: Beta 30

- toutes les coordonnées sont maintenant exprimées dans le SCG (implémentation de l'algorithme d'axe arbitraire)

- calcul des longueurs et aires des arcs d'ellipse.

 

10/10/2017: Beta 31

- ajout d'une colonne affichant l'ordre des présentations.

 

12/11/2017: Beta 32

- les sommets en doublon dans les polylignes sont ignorés, ce qui permet d'en calculer l'aire

- les polylignes dont les extrémités sont confondues sont considérées comme fermées.

Modifié par bryce
  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

Salut

 

Excellent initiative.

Je me doute de la raison du dxf, mais c'est dommage de ne pas utiliser ObjectDbx.

Je n'ai pas testé, mais je lance quelques idées.

Pour le décompte

1) Faire la différence avec le même bloc par rapport à son/ses attribut(s). J'ai comme exemple des BET qui implante des luminaires avec le même bloc, mais qui les différencies avec le 1er attribut. Cela donne le luminaire type 1, type 2, etc... Et comme on est des perfectionnistes, ne pas limiter le nombre d'attributs qui permet de faire la différence (0 = pas de différence).

2) Faire attention à l'insertion multiple de blocs (command _minsert). On a un seul bloc dans Autocad, mais qui contient en réalité plusieurs.

3) Faire un total par fichier, puis au global.

4) Exporter le résultat sur un fichier Excel 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

Lien vers le commentaire
Partager sur d’autres sites

Un des buts principaux étant de rester compatible avec LT, j'ai peur qu'ObjectDbx ne soit pas une option. Je ne vois pas d'autre issue que de passer par un DXF.

 

La gestion des attributs est prévue, j'hésite encore entre l'intégrer dans ScanDXF, ou créer un autre outil spécialisé sur les blocs.

Idéalement, il faudrait aussi pouvoir récupérer les paramètres des blocs dynamiques, mais quand je vois l'usine à gaz simplement pour réussir à récupérer leur nom... :unsure:

 

Je n'avais pas pensé aux INSERM, je vais regarder ça.

 

Pour l'export vers Excel, c'est déjà fait ! ;)

Lien vers le commentaire
Partager sur d’autres sites

Bonjour BRYCE,

Superbe !

Testé à partir d'un fichier .dxf: impeccable.

Export Excel : Ok

Testé à partir D'AutoCAD 2012 version complète (fichier scandxf.cuix chargé) J'ai le message d'erreur suivant:

[ "C:\Users\jeff\Desktop\temp\29412191730.dxf": Impossible d'ouvrir le fichier

Commande: shell

Commande SE: "scandxf.bat"]

Testé à partir de la macro : même message d'erreur.

Qu'en penses-tu ?

Cordialement

Jeff

Formateur sur AutoCAD et REVIT Architecture: jf-brigaud.com

Lien vers le commentaire
Partager sur d’autres sites

En fait j'avais créé un nouveau dossier nommé scandxf sur le bureau et le programme ne trouvait pas le chemin !

ça fonctionne si les différents dossiers (scandxf.libs, scandxf.bat...) sont sur le bureau directement (pas à l'intérieur d'un nouveau dossier).

(getenv "scandxfpath") donne NIL.

Formateur sur AutoCAD et REVIT Architecture: jf-brigaud.com

Lien vers le commentaire
Partager sur d’autres sites

C'est que tu n'as pas suivi la procédure d'installation décrite dans le 1er message. ;)

 

Regarde dans l'onglet "Infos" de ScanDXF, il y a une commande (setenv "scandxfpath" "...") à copier et à coller dans la ligne de commande d'AutoCAD.

Lien vers le commentaire
Partager sur d’autres sites

Vraiment très bien !

 

On peut suggérer des amélios et tu pendras la langue tellement tu travailleras dessus des années ou on apprécie comme c'est ?

B)

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Lien vers le commentaire
Partager sur d’autres sites

C'est un outil puissant qui a dû de demander un gros travail, tu l'offres à la communauté ?

 

Je ne suis pas encore totalement décidé, mais je vais peut-être le laisser en gratuiciel ou partagiciel.

 

On peut suggérer des amélios et tu pendras la langue tellement tu travailleras dessus des années ou on apprécie comme c'est ?

B)

 

Les suggestions sont toujours bienvenues, ensuite j'aviserai... :P

Lien vers le commentaire
Partager sur d’autres sites

Demande à Eric ce qu'il pense de toutes les remarques et corrections pour SAS :(rires forts):

 

Bon, alors je griserais la zone basse de la partie de droite quand on n'est pas en décompte des entités mais en décompte des blocs. Logique puisque que ces réglages ne sont pas utiles sur ces onglets à l'échalotte (il est 11h30 !)

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines après...

Bonjour,

 

Beau travail, merci de le partager...

 

Je rejoins l'idée des ATTRIBUTS à intégrer dans les colonnes. Mais il est vrai que le problème avec certains dessins, il y a parfois autant d'attributs que de BLOCS !!! Alors qu'il suffirait de garder toujours les mêmes noms détiquettes lorsqu'il s'agit de quantifier ces blocs ! (voir mon sujet DEVOIR DE VACANCES N°1)

 

Sinon, il serait sympa que les SURFACES tiennent compte de l'unité du dessin (MM, CM) et propose une valeur en M².

 

Si l'objet possède une hauteur le VOLUME serait un plus ! Prévoir la colonne HAUTEUR de l'objet.

 

La fenêtre à chaque redémarrage se réinitialise à sa taille d'origine, serait-ce possible qu'elle garde sa dernière taille ?

 

Tu vois Bryce, ça commence... Tu proposes un bout d'ongle et TOUT LE MONDE t'arrache le bras !!!

:rolleyes:

 

 

Merci

 

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 @)

Lien vers le commentaire
Partager sur d’autres sites

Hello

 

Je n'ai pas telecharge les dernieres versions donc je suis peut etre OUT !

Car ton ScanDXF a bien evolue depuis le depart !

 

Surtout pour les Polylignes, il faut prendre en compte TOUTES les proprietes possibles

(ou du moins en avoir la possibilite) en terme de colonnes/champs dans les tableaux d'extraction (et donc Excel)

- Couleur, Type de ligne, Epaisseur, Style de Trace, Epaisseur globale, Elevation, etc

 

Car par exemple pour les polylignes, il y a des gens qui jouent avec l'Epaisseur de ligne ou l'Epaisseur globale pour differentier certains reseaux ...

 

De meme pour les Blocs, j'aimerais bien avoir "a disposition" (si possible) toutes les proprietes possibles ...

 

Est ce que tu offres la possibilite de sortir les Attributs CONSTANTs, car des gens les utilisent parfois pour differentier leurs blocs ?

 

Merci pour ce ScanDXF, lecrabe

Autodesk Expert Elite Team

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

Bryce, j'espère que ma petite allusion à scan dxf ne vas pas occasionner la perte de ton bras.

 

Si, si ! Le bras, le bras.... Parce que je vais en rajouter DEUX !

 

Bryce, ce qui serait sympa c'est un onglet avec la liste des CALQUES (avec ou sans leurs propriétés).

 

Et pour les MACROTEURS "FOUS" appeler ton appli sans passer par la fenêtre (avec une option par exemple, /NOWINDOWS) et créer tout de suite le fichier CSV pour l'exploiter directement avec EXCEL...

 

Désolé pour ton Bras Brice,

mais je veux bien te payer un Bonne Bière sur une terrasse Alsacienne de ton choix ! :rolleyes: ;) :D B)

 

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 @)

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

Je n'ai pas trop le temps en ce moment, mais j'étudierai toutes vos suggestions.

L'onglet Calques ne devrait pas poser de problème.

Pour les attributs par contre, il faut que je trouve un moyen de les afficher, et que ça reste lisible/exploitable...

Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines après...
  • 4 semaines après...
  • 2 semaines après...

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é