Patrick_35 Posté(e) le 26 mai 2010 Posté(e) le 26 mai 2010 Bonjour Je mets au point une routine pour nettoyer efficacement des dessins.Effacer les textes vides, les lignes de longueur 0, les groupes vides, nettoyer les dictionnaires, etc...J'aimerai que vous m'indiquiez si la routine ne "nettoie" pas trop fort et si je n'ai pas oublié d'autres options possibles. edit : Mise à jour du lien (v2.03) @+ [Edité le 23/6/2010 par Patrick_35] Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
RhymOne Posté(e) le 26 mai 2010 Posté(e) le 26 mai 2010 Salut patrick,Petite comparaisonPurge maison sur un fichier de travail:Nombre total d'erreurs trouvées 0, corrigées 0Trouvé 0 blocs sans référence. Trouvé 0 calques sans référence. Trouvé 0 types de lignes sans référence. Trouvé 0 styles de texte sans référence. Trouvé 0 fichiers formes sans référence. Trouvé 0 styles de cote sans référence. Trouvé 0 style de Multilignes sans référence. Trouvé 0 stylestraceur sans référence. Trouvé 0 styles de tableau sans référence. Trouvé 0 matériaux sans référence. Trouvé 0 styles visuels sans référence. Trouvé 0 styles de ligne de repère multiple sans référence. Suppression de application enregistrée "ACAD_EXEMPT_FROM_CAD_STANDARDS".Suppression de application enregistrée "ACAD_MLEADERVER".Suppression de application enregistrée "AcadAnnoAV".Suppression de application enregistrée "AcadAnnoPO".Suppression de application enregistrée "AcadStringInfo".Suppression de application enregistrée "ACAUTHENVIRON".Suppression de application enregistrée "AcDbBlockRepBTag".Suppression de application enregistrée "AcDbDynamicBlockTrueName".Suppression de application enregistrée "AcMapDMDisplayStyleRegapp".Suppression de application enregistrée "ADE".Suppression de application enregistrée "AeccLand60".Suppression de application enregistrée "AME_SOL".Suppression de application enregistrée "COVADIS_PROFILS".Suppression de application enregistrée "COVADIS_SYMBOLE".Suppression de application enregistrée "COVAMETRE_LIN".Suppression de application enregistrée "COVAMETRE_SFC".Suppression de application enregistrée "COVAPFM_ATTRIB".Suppression de application enregistrée "COVAPFM_COT_PPROJ".Suppression de application enregistrée "COVAPFM_COUPES".Suppression de application enregistrée "DCO15".Suppression de application enregistrée "MapGWS".Suppression de application enregistrée "PCV_PLATEFORME".Suppression de application enregistrée "RAK".23 applications enregistrées supprimé. -Gain 30ko Avec ton lisp: Nombre total d'erreurs trouvées 0, corrigées 0 0 objets effacés -Gain 3k0 Je pense qu'il manque des choses... Pourtant ma purge maison est pas tres compliquée. DAO: AutoCAD(2D & 3D), CovadisCAO: 3D's MAX, Rhinoceros 3D, REVITGeoModeliSation: AutoCAD MEP, RhinoTerrainRendu: Vray for Rhino, Keyshot, LumionProgrammation: Grasshopper, Dynamo, VisualStudio C.V.Profil LinkedInBookSite web http://nsa37.casimages.com/img/2016/09/26/160926023334168603.jpg
Patrick_35 Posté(e) le 26 mai 2010 Auteur Posté(e) le 26 mai 2010 Je pense qu'il manque des choses... Pourtant ma purge maison est pas tres compliquée. Oui, mais comme je suis loin de penser à tout, c'est aussi le sujet du post :cool: Merci pour la purge des applis, je l'avais oubliéePar contre, je n'ai pas un gain de 30ko :( @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
RhymOne Posté(e) le 26 mai 2010 Posté(e) le 26 mai 2010 Non avec le tiens je gagne rien que 3ko. Ma purge un script (a mes souvenirs inspiré de toi):TILEMODE1_-layerch0 _audito_-purgeto*n_-purgeto*n_-purgeto*n_-purge _r _n_zoom _e Pas tres complexe comparée à ton lisp. DAO: AutoCAD(2D & 3D), CovadisCAO: 3D's MAX, Rhinoceros 3D, REVITGeoModeliSation: AutoCAD MEP, RhinoTerrainRendu: Vray for Rhino, Keyshot, LumionProgrammation: Grasshopper, Dynamo, VisualStudio C.V.Profil LinkedInBookSite web http://nsa37.casimages.com/img/2016/09/26/160926023334168603.jpg
Patrick_35 Posté(e) le 26 mai 2010 Auteur Posté(e) le 26 mai 2010 Je veux bien te croire D'autant plus que je purge aussi avec un(repeat 3 (vla-purgeall doc))Cela n'aurait pas la même incidence qu'avec 3(command "_.purge" "_all" "*" "_no") Surprenant Merci de ton aide ps: je ne fais pas que purger, j'efface aussi les textes vides, les lignes de longueur 0, les dictionnaires vide, etc.. @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
bseb67 Posté(e) le 26 mai 2010 Posté(e) le 26 mai 2010 Patrick_35 : si le fichier rhymone est quasi clean, c'est un peu normal que ton purgeurne donne pas grand chose... Le wbloc est assez radicale, mais vire pas mal de cochonneries, mais il y a des soucis :les filtres des calques et les groupes existants sautent. Pour info, j'ai fait une moulinette (pas très propre), mais qui scanles définitions des blocs et affiches les blocs vides.Puis la fonction qui nettoie ces blocs en les retirant du dessin (directement)ou dans les définitions des blocs. Bien-sur, pour purger à fond, la fonctionest récursive dans le sens ou tant qu'il existe un bloc vide, on scanne et on supprime. Tous pour lisp, Lisp pour tous!Avec Revit, cela ne vas trop vite...
PHILPHIL Posté(e) le 26 mai 2010 Posté(e) le 26 mai 2010 hello patrick je purge avec ca (defun c:urto () (setvar "cmdecho" 0) (command "regnauto" "ac") (setvar "cmdecho" 0) (command "snapang" "0") (command "-DIMSTYLE" "R" "STANDARD") (command "DIMSCALE" "1") (command "-AECDWGSETUP" "U" "4" "2" "8" "7" "2" "m²" "6" "2" "m³" "NON" "EC" "7" "1000" "10" "") (command "zoom" "et") (command "-purger" "APPSENREG" "*" "n") (command "-purger" "to" "*" "n") (princ) ) 11 958 ==> 9037 avec "URTO" 11 958 ==> 9017 avec "JAV" gain : 20ko de moins avec JAV Dans la version 2011 et aussi 2010 de memoire ca purge aussi les texte vide et ligne de longueur zero a partir de la fenetre de purge mais je n'ai pas si a partir de la commande ca purge aussi les textes vide et tout le TRALALA a+phil FREELANCE Autodesk Architecture 2025 sous windows 11 64 REVIT 24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal
lili2006 Posté(e) le 26 mai 2010 Posté(e) le 26 mai 2010 Bonsoir à toutes et tous, Salut Patrick_35, Voici les résultas de "jav.lsp" sur le fichier de ce post qui pose pb => http://free0.hiboox.com/images/2110/1d86dab9a0f7157af2afe23f0f33ab26.jpg (gile) annonce 9 zombies,... Pour le reste, je ne sais pas,... Si, après une récupération, on trouve également 207 erreurs,... Avec jav.lsp aussi ! Le rapport Un bon fichier de tests il me semble, et ça rendrait service à la communauté,... Merci, :P Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
lecrabe Posté(e) le 26 mai 2010 Posté(e) le 26 mai 2010 Hello Je suis en deplacement donc je ne peux pas tester ta routine avant la fin de la semaine prochaine, neanmoins je suis un "tritureur / nettoyeur" de dessins AutoCAD depuis au moins 12 ans et ce avec les outils de nettoyage de MAP, des routines Lisp variees et diverses et aussi avec la topologie de Map. Je suis bien sur preneur de toute routine supplementaire et efficace ! :) Je pense que toute routine de nettoyage doit proposer : - soit l'effacement, - soit le forcage dans une couleur (dlgcolor) des objets susceptibles d'etre effaces Trouver les Points, Blocs, Textes, MTextes dont le point d'insertion XY est "tres proche" (Choix d'un rayon de recherche) me semble tres interessant ! C l'eternel probleme des doublons !! :exclam: Sans parler des lignes, arcs, cercles, polylignes, etc ... ;) Le Decapode Autodesk Expert Elite Team
(gile) Posté(e) le 26 mai 2010 Posté(e) le 26 mai 2010 Salut, Lilian, il me semble effectivement avoir trouvé 9 zombies dans ton fichier lors du premier test, mais dans les suivants, je ne les plus vus ?! Patrick_35 il est difficile d'évaluer jusqu'où doit aller un nettoyage automatique sans savoir à quoi est destiné le fichier notamment pour les objets créés par des applications verticales (Architecture, MEP, Civil 3d, MAP 3d) ou autres (Covadis etc.). Si le fichier doit être réutilisé sur une ou plusieurs de ces applications il faudrait bien sur épargner les objets utiles à celles-ci.Si le fichier ne doit plus jamais être utilisé que sur AutoCAD, on peut y aller franchement, supprimer tous les dictionnaires autres que ACAD_*,ASE_*,AcDb* mais aussi toutes les xdatas créées par ces applications sur les objets mais aussi sur les calques.Regarde le fichier donné en lien par lili2006, il en est truffé avec en plus un reacteur que je n'ai pas trouvé qui attache une xdata à tout nouveau calque créé. Si le fichier est destiné à ne servir que de fond de plan en xref, on doit pouvoir aller encore plus loin. Une solution serait de permettre à l'utilisateur de choisir les options de nettoyage via une boite dialogue. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
thierry.garré Posté(e) le 26 mai 2010 Posté(e) le 26 mai 2010 il est difficile d'évaluer jusqu'où doit aller un nettoyage automatique sans savoir à quoi est destiné le fichier notamment pour les objets créés par des applications verticales (Architecture, MEP, Civil 3d, MAP 3d) ou autres (Covadis etc.). Si le fichier doit être réutilisé sur une ou plusieurs de ces applications il faudrait bien sur épargner les objets utiles à celles-ci.Si le fichier ne doit pl Je ne peu qu'abonder dans ce sens Une solution serait de permettre à l'utilisateur de choisir les options de nettoyage via une boite dialogue entièrement d'accord Thierry Garré Géorail-Covadis-Autopiste-Autocad-Autocad Map-Infraworks 360- Navisworks -Recap
Patrick_35 Posté(e) le 27 mai 2010 Auteur Posté(e) le 27 mai 2010 Bonjour bseb67 :Exact pour le wbloc et merci de l'idée des blocs vide. J'en ai trouvé plusieurs dans des dessins.Je n'aurai pas cru cela possible. Lili : Dans ton fichier, tu n'as plus les zombies Lecrabe :Trouver les Points, Blocs, Textes, MTextes dont le point d'insertion XY est "tres proche" (Choix d'un rayon de recherche) me semble tres interessant ! Tu as _overkill gile:il est difficile d'évaluer jusqu'où doit aller un nettoyage automatique sans savoir à quoi est destiné le fichier notamment pour les objets créés par des applications verticales (Architecture, MEP, Civil 3d, MAP 3d) ou autres (Covadis etc.).Oui, mais je fais déjà un nettoyage pour autocad sans m'attaquer aux verticaux pour l'instant. Si le fichier doit être réutilisé sur une ou plusieurs de ces applications il faudrait bien sur épargner les objets utiles à celles-ci.Oui, et la difficulté est de trouver quel dictionnaire appartient à quelle application Si le fichier est destiné à ne servir que de fond de plan en xref, on doit pouvoir aller encore plus loin.Je ne peux qu'être d'accord. Une solution serait de permettre à l'utilisateur de choisir les options de nettoyage via une boite dialogue.Ce sera l'objet d'une future version. Pour l'instant, je m'attelle à bien nettoyer sans rien oublier si possible Et merci aux autres que je n'ai pas cité pour leur aide.Si d'autres idées viennent, elles seront les bienvenues. ps : Mise à jour du lien @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
lili2006 Posté(e) le 27 mai 2010 Posté(e) le 27 mai 2010 Bonjour à toutes et tous, Salut Patrick_35, Sur le même fichier, la nouvelle version => http://free0.hiboox.com/images/2110/c5f95fedfef523d707892c4235540cae.jpg On constate que les dictionnaires sont passés de 20 à 17. C'est quoi les 58 applications en début de nettoyage ? Je profite également de ce post pour demander comment les textes, lignes,blocs,..."vides" sont créér ? Suite à quelle(s) manipulation(s) ? Merci d'avance, Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
Patrick_35 Posté(e) le 27 mai 2010 Auteur Posté(e) le 27 mai 2010 Merci de tes tests lili C'est quoi les 58 applications en début de nettoyage ? Ce sont les applications enregistrées dans le dessins. Je profite également de ce post pour demander comment les textes, lignes,blocs,..."vides" sont créér ? Suite à quelle(s) manipulation(s) ? Certaines personnes pour effacer un texte édite le texte comme pour le modier, le supprime et font entrée ou espace. On ne le voit plus, mais en réalité, il est toujours présent.Pour des lignes de longueur 0, on peut imaginer un double-clic avec des accroch obj, etc... ps : Mise à jour du lien avec une bd pour les options @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
lili2006 Posté(e) le 27 mai 2010 Posté(e) le 27 mai 2010 Re, Et béh, tu ne traines pas,.. :D Merci pour les réponses,.. Ce sont les applications enregistrées dans le dessins. Excuses mon ignorance, mais aurais-tu un exemple à me donner ? Merci encore, Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
(gile) Posté(e) le 27 mai 2010 Posté(e) le 27 mai 2010 Salut, Les applications enregistrées sont, en quelque sorte les clés pour les données étendues (xdata).C'est ce que tu purges quand tu fais : -PURGER option R Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
lili2006 Posté(e) le 27 mai 2010 Posté(e) le 27 mai 2010 Re, Ok ! Merci Gilles, Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
bonuscad Posté(e) le 27 mai 2010 Posté(e) le 27 mai 2010 Bonjour, Une suggestion: Certainement un peu ardu, car je n'ai rien trouvé d'efficace sur le net.Mais un nettoyage d'objet proxy m'intéresserais bien. Pour moi c'est là seule chose qui résiste à une purge radicale que j'obtiens en passant par un DXF d'objet en R12. (Ces objets sont ignorés par DxfOut, donc je les perds purement et simplement, ce qui ne fait pas mon affaire) Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
Patrick_35 Posté(e) le 27 mai 2010 Auteur Posté(e) le 27 mai 2010 Salut Avec plaisir Bonus. Seulement, si tu avais un exemple pour que je puisse regarder. @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
(gile) Posté(e) le 27 mai 2010 Posté(e) le 27 mai 2010 Je ne suis pas sûr que ce soit possible sans l'application qui les a créé. Exemple pour un objet aecbDbPanel (AecbEclecBase60) créé avec MEP. _$ (entget ent '("*"))((-1 . ) (0 . "ACAD_PROXY_ENTITY") (330 . ) (5 . "1D995") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "EVI012--E-(tableaux-secondaires)")) _$ (vlax-dump-object obj T); IAcadEntity: Interface AutoCAD Entity; Valeurs de propriétés:; Application (RO) = #; Document (RO) = #; Handle (RO) = "1D995"; HasExtensionDictionary (RO) = 0; Hyperlinks (RO) = #; Layer = "EVI012--E-(tableaux-secondaires)"; Linetype = "ByLayer"; LinetypeScale = 1.0; Lineweight = -1; Material = "ByLayer"; ObjectID (RO) = 2124721896; ObjectName (RO) = "AcDbZombieEntity"; OwnerID (RO) = 2124897528; PlotStyleName = "ByLayer"; TrueColor = #; Visible = -1; Méthodes prises en charge:; ArrayPolar (3); ArrayRectangular (6); Copy (); Delete (); GetBoundingBox (2); GetExtensionDictionary (); GetXData (3); Highlight (1); IntersectWith (2); Mirror (2); Mirror3D (3); Move (2); Rotate (2); Rotate3D (3); ScaleEntity (2); SetXData (2); TransformBy (1); Update ()T Et je n'ai pas beaucoup plus d'informations avec .NET :http://img217.imageshack.us/img217/4733/proxym.png Pas de xdata, pas de dictionnaire d'extension, si d'autres informations concernant cet objet sont stockées quelque part je ne sais pas où (peut être dans un des 51 dictionnaires AECB*, à moins qu'il ne faille fouiller la totalité des 100 dictionnaires AEC* !)Le fichier Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
thierry.garré Posté(e) le 27 mai 2010 Posté(e) le 27 mai 2010 Une autre idée/supprimer les sommets double des polylignes Thierry Garré Géorail-Covadis-Autopiste-Autocad-Autocad Map-Infraworks 360- Navisworks -Recap
(gile) Posté(e) le 27 mai 2010 Posté(e) le 27 mai 2010 Une autre idée/supprimer les sommets double des polylignes CleanPoly ici Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
bonuscad Posté(e) le 27 mai 2010 Posté(e) le 27 mai 2010 Merci de vos réponses les gars, Concernant les proxy voici ce que j'ai essayé: delproxy.vlx Donc, vu l'extension, pas modifiable... et consultable. :( Pour moi il n'a pas fonctionné, je pence qui traite plutôt les proxy en provenance d'une application verticale comme architectural (objet AEC). Pour mon cas ce serait plutôt du Map, en fait j'expérimente chez moi la bascule de fichier DXF vers du SHP pour QantumGIS. Je suis content j'ai réussi à faire la bascule pour beaucoup de fichiers, mais des entités proxy n'ont pus être récupérés. Je sais qu'il est recommandé de charger les ObjectEnabler sur le site d'AutoDesk pour la version utilisée d'Autocad, mais ne chercher pas à comprendre, je n'ai pas envie de passer par cette voie.(je trouve que les échanges DXF issus d'autocad sont de plus en plus incompatible avec les logiciels tiers) @Patrick_35, si tu veux un fichier, pas de problème, juste une adresse... Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
lili2006 Posté(e) le 28 mai 2010 Posté(e) le 28 mai 2010 Bonjour à toutes et tous, Pourquoi lorsque je relance le nettoyeur x fois sur le même fichier (celui donné en exemple toujours,..) j'ai toujours 1 élément de dictionnaire effacé ? A priori, c'est vrai sur d'autres fichiers que j'ai testé,... De plus, un fichier (d'erreur ?) ".Autodesk Architectural Desktop" est systématiquement créé,... http://free0.hiboox.com/images/2110/5050a83430a8724d1a2532196a1c33de.jpg Lors du second passage sur certains fichiers travaillés aussi avec covadis j'ai ce message d'erreur : (Pour info puisque le nettoyeur ne travaille que sur les entités AutoCAD, si j'ai bien compris,...) http://free0.hiboox.com/images/2110/7b981be4ebd0b76af1f4cb104805d575.jpg Aprés plusieurs clics sur "ok", le nettoyeur se lance,... Exemple de rapport sur un fichier covadis De plus AutoCAD par la suite était comme "figé", c'est à dire que je ne voyais plus la souris dans la zone de dessin, uniquement sur les menus et barres d'outils mais aucune fonction ne répondait, même pas la fermeture du logiciel... (Fermeture via le gestionnaire des tâches) Je ne sais pas si c'est systématique, je n'ai fait qu'un test sur un fichier travaillé en 3D avec covadis,... Autre question, c'est quoi "les proxy" ? Merci d'avance, Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
lili2006 Posté(e) le 28 mai 2010 Posté(e) le 28 mai 2010 Re, Suite à ces tests, il à même fallut que je reboot mon PC, plus moyen de reprendre la main sur mon AutoCAD,... Pour les dictionnaires, même message sur un fichier vierge,... Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
Messages recommandé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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant