Marc Blancher Posté(e) le 18 avril 2005 Posté(e) le 18 avril 2005 Salut tlm, la question est lancée. Faites vous vos métrés à la main, sur des applicatifs maison ou sur excel ? Pour ma part, j'utilise une feuille excel que je me suis bidouillé. J'utilise pas mal les attributs sur autocad. Mais par contre je n'ai rien pour les linéaires, les surfaces. Et pour les volumes, je suis encore à Piste du Setra ( dur dur) mais on aura bientôt MXRoad et Mensura (ha). J'ai vu sur le site du certu, qu'ils vendaient un logiciel de métré mais sans plus de renseignements dessus. A vous la parole. A+
Invité Patrick Posté(e) le 18 avril 2005 Posté(e) le 18 avril 2005 Je connais Estimating Desktop (www.3tr.fr). Un logiciel de métré pour AutoCAD et Autodesk Architectural Desktop.
Oli35 Posté(e) le 18 avril 2005 Posté(e) le 18 avril 2005 J'utilise Covadis, qui est parfait pour les métrés linéaires + surfaces. Il travaille par calque, (et par largeur pour les polylignes). Si ton dessin est bien paramétré, c'est vraiment nickel et ça te fait gagner beaucoup de temps. Bon courage A+ 1 Olivier
Marc Blancher Posté(e) le 19 avril 2005 Auteur Posté(e) le 19 avril 2005 Salut Esbe, tu peux te renseigner sur le site de l'éditeur : http://www.geo-media.com/index.php Merci patrick pour le lien, je vais essayé la version de démo. J'avais vu aussi le soft du CERTU à : http://www.certu.fr/doc/technologies/its/ A+
autospeed Posté(e) le 16 juin 2005 Posté(e) le 16 juin 2005 De mon coté , j'utilise AutospeedVoir le site www.autospeed.biz et particulierement la section bonus qui renseigne sur certaines erreurs a éviter.Avec cet outil , le métré des lignes , polyligne et blocs par calque est quasiment instantané Auteur du logiciel AutospeedAuteur de la théorie du site www.kheops.bizAuteur de nombreux livres
moignon Posté(e) le 11 juillet 2006 Posté(e) le 11 juillet 2006 salut. pour le bâtiment, y'a les logiciels d' attic-plus
Ladinde Posté(e) le 2 octobre 2006 Posté(e) le 2 octobre 2006 Bonjour, Pour les métrés j'utilise quelques LISP récupérés ce qui me permettent d'avoir mes linéaires de canalisations, bordures, etc.. mais il faut que ton fichier soit bien organisé par calques , cela me donne également mes surfaces. Pour les cubes j'utilise mensura ce qui me permet également de me vérifier pour mes linéaires de canalisations et mes tranchées. Bonne journée
laurent_a8 Posté(e) le 30 septembre 2011 Posté(e) le 30 septembre 2011 Bonsoir, Je pense que l’idéal serais de pouvoir récupérais sur un fichier Excel, les renseignements des surfaces et longueurs en fonction de la provenance des fichiers sources d’où proviennent ces informations et bien avec détail et traçabilité pour chacune des quantités qui doivent provenir d’un calque bien définit (indiqué sur le fichier Excel). Les référence externe posent aussi parfois des problèmes (lorsqu’elles sont attachés au dessin mais (décharger ou introuvable) les lister est renvoyer les infos via Excel pour ne traiter que ces fichiers sur une grande liste. Une fois identifié charger les Xref décharger (si besoin) et aussi récupérer les fichiers introuvables (et corriger leur chemins) pour les rendirent visibles sur le fichier source. Possibilité aussi de couper la référence externe en les ajoutant au fichier source. Pour les métrés je pense que des logiciels font cela mais je ne sais pas sous qu’elle mesure et souplesse. Pour les Xref je ne sais pas s’il y a un programme qui fait cela. J’ai fais ces deux programme en VBA qui tournent bien mais c’est très complexe. S’il y a des métreurs faisant les mêmes choses ou connaissant des logiciels faisant cela. Au plaisir de partager avec vous des idées Laurent
Aucun_Intérêt Posté(e) le 29 octobre 2011 Posté(e) le 29 octobre 2011 Bonjour ici, La question que je me pose est "A quel phase du projet souhaitez vous réaliser votre métré?" En fait, tout dépend de l'avancement de l'opération.Dans le cadre d'une avant vente, cela devient royalement compliqué de métrer sans fond de plan. Dans ce cas précis, j'utilise une feuille excel mais je voudrai voir ce que cela donne avec l'utilisation de Mensura.Ma boite a aussi développé un applicatif pour réaliser des profils en long sur Mensura à partir de Google Earth.Je pense qu'il y a quelque chose à exploiter avec ce soft à ce niveau d'étude. Ensuite une fois que l'opération est gagnée, j'utilise ni plus ni moins Mensura pour réaliser les métrés. De plus, chaque projet étant spécifique, la feuille de calcul doit être extrêmement détaillée pour faire un premier chiffrage.Si l'on réalise voirie, ouvrages maçonnés, réseaux secs, réseaux humides, traitement paysager, mobilier et tout le toutim, ca devient carrément complexe en urbain.Sans compter les ouvrages de Génie Civil... Pas simple c'te truc. Plieur de trombones et remplisseur de tubes de dentifrice professionnel.
Curlygoth Posté(e) le 21 août 2020 Posté(e) le 21 août 2020 Si je peux me permettre : renseigne toi aupres de la programmation tu auras ce que tu veux, tes rendus personnalisés (Covadis et autres) sont payants et "bridés" (non modifiable). alors qu'apprendre est gratuit et rapide ! suivant les clients (ou domaine comme le dit mon VDD) :je dois rendre des documents sous support différents et la programmation est heureusement la pour ça ! laurent_a8 à écrit J’ai fais ces deux programme en VBA qui tournent bien mais c’est très complexe. Au début : on commence petit : extraire les longueurs et surface par rapport au calque dans une fenetre puis les entrées dans un txt => puis dans un excel => puis un pdf => puis envoie direct par mail ...etc etc Ensuite, tu vas y faire des stats puis la génération de fichier dwg et gestionnaire calque qui reflechira à ta place.a la fin tu ne ferais plus de dessin mais c'est ton programme qui fera 90% de ton boulots ^^ et ça n'aura pas couté 1€ ^^ Mon site Web (en cours de construction) : Site DA-CODE de @didier
CTZen Posté(e) le 21 août 2020 Posté(e) le 21 août 2020 et ça n'aura pas couté 1€ ^^ Pas 1€ mais il faut tout de même le temps d'apprendre, chose que tout le monde n'a (malheureusement) pas Sinon pour ma part, les métrés c'est Covadis à 100% AutoCAD Map 3D 2025 Covadis 18.3c + AutoPiste Windows 11 Famille v.24H2 - 64 bits Toujours à l'affût des bonnes astuces
arnaudalp Posté(e) le 21 août 2020 Posté(e) le 21 août 2020 BonjourPensez à regarder du côté de la base d'article de Covadis, il y a de quoi sortir de bons DQE et BPU. Bien utilisé, c'est relativement puissant.
Perline Posté(e) le 25 janvier 2021 Posté(e) le 25 janvier 2021 J'aimerai bien utiliser Covadis, mais d'abord c'est payant et mon responsable ne me le payera pas, ensuite il faut certainement une formation dessus que je n'ai pas. et je viens juste d'avoir un PC qui me permette d'utiliser correctement AutoCAD (avant noël 2020 je faisais des plans sur AutoCAD sur un pc win32 avec 3 Go de Ram, oui oui c'est faisable... mais que c'est long et que ça plante) Pour mes métrés, je les fais donc "à la main" donc un excel d'un côté, mon plan en pdf de l'autre avec pdf xchange viewer qui dans sa version gratuite permet de faire les métrés (outil commentaire on a longueurs, périmètres et surfaces, et on choisis l'échelle voulue).Si j'ai la chance d'avoir un dwg correct, j'utilise le lisp "tlen" qui cumule les longueurs des polylignes cliquées et le cumul d'aires. J'ai essayé une ou de fois de faire de l'export vers excel des données de plan. Mais franchement, soit le plan est nickel, fait visiblement sur Covadis par des gens qui s'y connaissent, et l'ensemble est fourni métré, soit c'est un plan archi avec un bazar monstrueux dans les calques et la moitié des lignes qui manque car l'export a mal été fait, soit c'est un plan archi avec un "débrouille toi avec tes réseaux" du coup le métré sur PDF est plus précis. Mais encore et toujours, quel temps ça prend! (PS : j'ai une formation metreur et j'ai appris au kutch! puis j'ai touché le digito avec le passage direct vers excel des distances cliquées, puis j'ai changé de boite et trouvé pdf xchange viewer dont je ne peux plus me séparer, même si ce serais mieux si je pouvais exporter les résultats.)
lecrabe Posté(e) le 25 janvier 2021 Posté(e) le 25 janvier 2021 Hello Ci apres 2 superbes routines VLisp de notre grand Maitre Gilles (gile) que j'utilise souvent pour les metres de longueurs et surfaces ... Ainsi avec des dessins "bien organises" par calque: c Tip-Top ! TLEN_PL_LAY qui affiche sur l'ecran texte (F2) les longueurs / perimetres de Polylignes par calqueetTSUR_PL_LAY qui affiche sur l'ecran texte (F2) les aires / surfaces des Polylignes et Cercles par calque En esperant que cela puisse t'aider !? LA SANTE, Bonne Annee, Bye, lecrabe - MERCI Gilles ! ;; ;; Routine: TLEN_PL_LAY par GC pour les *POLYLINE pour Patrice B. ;; ;; v1.01 : Impossible pour les Cercles car vla-get-length NON Disponible ;; ;; Total des longueurs par CALQUE ;; ;; 2 lignes avec (vla-get-length ent ... ;; ;; ATTENTION: la routine PLANTE si on selectionne des Polylignes de type: 3D Maillage / 3D Mesh ;; Car la propriete vla-get-length ou vla-get-area n'existe pas pour ces Entites ... ;; ;; --- Interrogation Entite/Objet en Lisp --- ;; (entget (car (entsel)) '("*")) ;; (vl-load-com) (defun c:TLEN_PL_LAY (/ ent ele lst sel res tot filtre) (setq filtre 'layer) ; Layer pour les calques, Color pour les couleurs, Linetype pour les types de lignes ;; ConstantWidth : Non Fonctionnel (and (ssget (list (cons 0 "*POLYLINE"))) (progn (vlax-for ent (setq sel (vla-get-activeselectionset (vla-get-activedocument (vlax-get-acad-object)))) (if (setq ele (assoc (vlax-get ent filtre) lst)) (setq lst (subst (list (car ele) (cons (vla-get-length ent) (cadr ele))) ele lst)) (setq lst (cons (list (vlax-get ent filtre) (list (vla-get-length ent))) lst)) ) ) (vla-delete sel) (setq tot 0) (mapcar '(lambda(x) (setq tot (+ tot (setq res (apply '+ (cadr x))))) (princ "\nTotal Longueur des Polyligne(s) du calque ") (princ filtre) (princ " --> ") (princ (car x)) (princ (strcat " : " (rtos res))) ) (vl-sort lst '(lambda(a B)(< (car a) (car B)))) ) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; (padLeft (rtos (car item) 2 2) 6) (princ (strcat "\nTotal : " (rtos tot))) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ) ) (princ) ) ;; ;; Routine: TSUR_PL_LAY par GC pour les *POLYLINE pour Patrice B. ;; ;; v1.01 : + CIRCLE (Micro-Micro-Modif par Patrice) -- ;; ;; Total des surfaces par CALQUE ;; ;; 2 lignes avec (vla-get-area ent ... ;; ;; ATTENTION: la routine PLANTE si on selectionne des Polylignes de type: 3D Maillage / 3D Mesh ;; Car la propriete vla-get-length ou vla-get-area n'existe pas pour ces Entites ... ;; ;; RAPPEL: vla-get-length NON Disponible pour les Cercles ! ;; ;; --- Interrogation Entite/Objet en Lisp --- ;; (entget (car (entsel)) '("*")) ;; (vl-load-com) (defun c:TSUR_PL_LAY (/ ent ele lst sel res tot filtre) (setq filtre 'layer) ; Layer pour les calques, Color pour les couleurs, Linetype pour les types de lignes ;; ConstantWidth : Non Fonctionnel (and (ssget (list (cons 0 "*POLYLINE,CIRCLE"))) (progn (vlax-for ent (setq sel (vla-get-activeselectionset (vla-get-activedocument (vlax-get-acad-object)))) (if (setq ele (assoc (vlax-get ent filtre) lst)) (setq lst (subst (list (car ele) (cons (vla-get-area ent) (cadr ele))) ele lst)) (setq lst (cons (list (vlax-get ent filtre) (list (vla-get-area ent))) lst)) ) ) (vla-delete sel) (setq tot 0) (mapcar '(lambda(x) (setq tot (+ tot (setq res (apply '+ (cadr x))))) (princ "\nTotal Surface des Polyligne(s) & Cercle(s) du calque ") (princ filtre) (princ " --> ") (princ (car x)) (princ (strcat " : " (rtos res))) ) (vl-sort lst '(lambda(a B)(< (car a) (car B)))) ) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; (padLeft (rtos (car item) 2 2) 6) (princ (strcat "\nTotal : " (rtos tot))) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ) ) (princ) ) Autodesk Expert Elite Team
GEGEMATIC Posté(e) le 25 janvier 2021 Posté(e) le 25 janvier 2021 Salut,Gile devait être surmené quand il t'as fait ces routines, car cet avertissement:;; ATTENTION: la routine PLANTE si on selectionne des Polylignes de type: 3D Maillage / 3D Mesh ;; Car la propriete vla-get-length ou vla-get-area n'existe pas pour ces Entites ... ce n'est pas son genre !Il ne laisse pas souvent trainer un cas non traité ...a+, gégé ----------------------------------------------------------------------Site: https://www.g-eaux.frBlog: http://g-eaux.over-blog.com
Perline Posté(e) le 25 janvier 2021 Posté(e) le 25 janvier 2021 Ahhh ça c'est chouette ! Avec les deux Lisp que je viens de trouver sur le forum permettant de basculer les objets par couleurs chacun dans un calque, ça devrait apporter un peu de vitesse à mes tâches. Merci !!!
lecrabe Posté(e) le 25 janvier 2021 Posté(e) le 25 janvier 2021 Hello Gege Au fait, c moi qui a ajouté qq commentaires sur ces excellentes routines de Gilles... En effet le filtrage de Gilles n est pas parfait !Mais avoir des 3D Maillage / 3D Mesh dans la sélection, c rarissime !! La Santé, Bye, lecrabe Autodesk Expert Elite Team
lecrabe Posté(e) le 25 janvier 2021 Posté(e) le 25 janvier 2021 Hello Perline Toujours pour t'aider dans tes problemes de quantitatifs / nomenclature ... Je te rajoute une autre excellente routine "ListBlock" de Gilles ! "ListBlock" : Generation d'un superbe tableau quantitatif des blocs selectionnes ... Avec Nom du Bloc, Nombre, Representation graphique ... ATTENTION: cette routine de Gilles ne traite pas malheureusement les Blocs inclus dans les Reseaux Associatifs (Rectangulaire, Polaire/Circulaire, Trajectoire) Pour que ces Blocs soient traites par la routine ListBlock, il faudra decomposer CES Reseaux associatifs ! OU ALORS SVP si qq'un pouvait ameliorer / modifier cette routine de Gilles !? Sinon on peut aussi utiliser l'excellente routine "COUNT" v1.5 de Lee-Mac !? http://www.lee-mac.com/blockcounter.html LA SANTE, Bye, lecrabe ;; ;; Routine: ListBlock par GC pour Patrice B. ;; ;; Table des Blocs : Nom , Nombre , Graphisme du Bloc ;; ;; ATTENTION: Blocks included into associative arrays are not processed ! ;; ;; To be clearer, you can set the text height bay row type: ;; Only data rows (bit 1) ;; (vla-SetTextHeight table 1 height) ;; Only title row (bit 2) ;; (vla-SetTextHeight table 2 height) ;; Only header row (bit 4) ;; (vla-SetTextHeight table 1 height) ;; You can also combinate this, e.g. for the entire table (+ 1 2 4): ;; (vla-SetTextHeight table 7 height) ;; ;;;;; ;;;;; Hauteur des Textes dans la Table = 5.0 ;;;;; ;;;;; (vla-SetTextHeight table 7 5.0) ;;;;; (defun c:ListBlock (/ ss name block blocks insPt table row) (vl-load-com) (or *acdoc* (setq *acdoc* (vla-get-ActiveDocument (vlax-get-acad-object))) ) (or *blocks* (setq *blocks* (vla-get-Blocks *acdoc*)) ) ;; Select blocks (prompt "\nSelect blocks to list or <All>") (or (setq ss (ssget '((0 . "INSERT")))) (setq ss (ssget "_X" '((0 . "INSERT"))) ) ) (if ss (progn ;; Build a list of dotted pairs (blockName . numberOfReferences) from the selection set (vlax-for x (setq ss (vla-get-ActiveSelectionSet *acdoc*)) (if (not (vlax-property-available-p x 'Path)) (setq name (vla-get-EffectiveName x) blocks (if (setq block (assoc name blocks)) (subst (cons name (1+ (cdr block))) block blocks) (cons (cons name 1) blocks) ) ) ) ) (vla-delete ss) ;; Prompt for insertion point (initget 1) (setq insPt (trans (getpoint "\nInsertion point: ") 1 0)) ;; Create the table (setq table (vla-addtable (vla-get-modelspace *acdoc*) (vlax-3d-point insPt) (+ 2 (length blocks)) ; number of rows (including title and header) 3 ; number of colums 20 ; cell height 80 ; row width ) ) (vla-put-VertCellMargin table 4.0) (vla-put-TitleSuppressed table :vlax-false) (vla-put-HeaderSuppressed table :vlax-false) ;; Fill the titel and the header ; (vla-setText table 0 0 "Blocks") ; (vla-setText table 1 0 "Name") ; (vla-setText table 1 1 "Count") ; (vla-setText table 1 2 "Symbol") ;; Textes version Francaise (vla-setText table 0 0 "Quantitatif des Blocs") (vla-setText table 1 0 "Nom") (vla-setText table 1 1 "Nombre") (vla-setText table 1 2 "Symbole") ;;;;; Hauteur des Textes dans la Table = 5.0 ;;;;; (vla-SetTextHeight table 7 5.0) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; fill the following rows from the list contents (setq row 2) (foreach item blocks (vla-settext table row 0 (car item)) ; block name (vla-settext table row 1 (cdr item)) ; references count (vla-SetBlockTableRecordId ; block symbol table row 2 (vla-get-ObjectId (vla-Item *blocks* (car item))) :vlax-true ) (setq row (1+ row)) ) ) ) (princ) ) Autodesk Expert Elite Team
lecrabe Posté(e) le 25 janvier 2021 Posté(e) le 25 janvier 2021 Hello Perline Dans ton message, tu signales que tu as trouve un Lisp qui separe les entites par couleur ! Je ne sais pas de quelle routine, tu parles !! Donc je te propose la MEME routine E2LBC "de competition" que j'utilise ... MERCI Mr dlanorh !E2LBC traite TOUTES les couleurs: ACI AutoCAD Color Index (0-256) , RGB/RVB (16 millions de couleurs) , Pantome , RAL , etc ! LA SANTE, Bye, lecrabe ;; ;; Routine: E2LBC__Entities_to_Layer_By_Color__dlanorh by dlanorh for Patrice B. ;; ;; Move selected Entities on separate layers depending on Color ;; ;; --- Interrogation Entite/Objet en Lisp --- ;; (entget (car (entsel)) '("*")) ;; (vl-load-com) (defun LM:True->RGB ( c ) (mapcar '(lambda ( x ) (lsh (lsh (fix c) x) -24)) '(8 16 24))) (defun rh:lst2str ( lst del / str ) (setq str "") (mapcar '(lambda (x) (setq str (strcat str x del))) lst) (vl-string-right-trim del str)) (defun rh:layer_props ( lyr lst / v ) (setq v (mapcar '(lambda (x) (vlax-get-property lyr x)) lst))) (defun rh:strlen3 ( str ) (if (< (strlen str) 3) (while (< (strlen str) 3) (setq str (strcat "0" str))) str) str) ;; Entities to layer by color (defun c:E2LBC ( / c_doc c_lyrs l_props ss cnt ent elst lyr l_vals cstr clst clr nlyr lobj) (setq c_doc (vla-get-activedocument (vlax-get-acad-object)) c_lyrs (vla-get-layers c_doc) l_props (list 'truecolor 'linetype 'lineweight);Layer properties list );end_setq (prompt "\nSelect Entities : ") (setq ss (ssget)) (cond (ss (repeat (setq cnt (sslength ss)) (setq ent (ssname ss (setq cnt (1- cnt))) elst (entget ent) lyr (cdr (assoc 8 elst));Layer l_vals (rh:layer_props (vla-item c_lyrs lyr) l_props);Layer properties cstr "" clst nil );end_setq (foreach x '(62 420 430) (setq clst (cons (cdr (assoc x elst)) clst))) (setq clr (vl-some '(lambda (x) x) clst)) (cond ( (not clr) (setq cstr "256")) ;No Color set (bylayer) ( (and (= (type clr) 'INT) (<= clr 256)) ;ACI (0-256) (setq cstr (rh:strlen3 (itoa clr))) ) ( (= (type clr) 'STR) (setq cstr clr)) ;Color Book (t (setq clr (mapcar 'itoa (LM:True->RGB clr));RGB cstr (rh:lst2str (mapcar 'rh:strlen3 clr) "_") );end_setq ) );end_cond (setq nlyr (strcat lyr "__" cstr)) (cond ( (not (tblsearch "layer" nlyr)) (setq lobj (vla-add c_lyrs nlyr)) (mapcar '(lambda (x y) (vlax-put-property lobj x y)) l_props l_vals))) (vlax-put-property (vlax-ename->vla-object ent) 'layer nlyr) );end_repeat ) (t (alert "NO Entities Selected ! ")) );end_cond (princ) );end_defun Autodesk Expert Elite Team
obzo Posté(e) le 28 janvier 2021 Posté(e) le 28 janvier 2021 Hello Perline Dans ton message, tu signales que tu as trouve un Lisp qui separe les entites par couleur ! Je ne sais pas de quelle routine, tu parles !! Donc je te propose la MEME routine E2LBC "de competition" que j'utilise ... MERCI Mr dlanorh !E2LBC traite TOUTES les couleurs: ACI AutoCAD Color Index (0-256) , RGB/RVB (16 millions de couleurs) , Pantome , RAL , etc ! LA SANTE, Bye, lecrabe ;; ;; Routine: E2LBC__Entities_to_Layer_By_Color__dlanorh by dlanorh for Patrice B. ;; ;; Move selected Entities on separate layers depending on Color ;; ;; --- Interrogation Entite/Objet en Lisp --- ;; (entget (car (entsel)) '("*")) ;; (vl-load-com) (defun LM:True->RGB ( c ) (mapcar '(lambda ( x ) (lsh (lsh (fix c) x) -24)) '(8 16 24))) (defun rh:lst2str ( lst del / str ) (setq str "") (mapcar '(lambda (x) (setq str (strcat str x del))) lst) (vl-string-right-trim del str)) (defun rh:layer_props ( lyr lst / v ) (setq v (mapcar '(lambda (x) (vlax-get-property lyr x)) lst))) (defun rh:strlen3 ( str ) (if (< (strlen str) 3) (while (< (strlen str) 3) (setq str (strcat "0" str))) str) str) ;; Entities to layer by color (defun c:E2LBC ( / c_doc c_lyrs l_props ss cnt ent elst lyr l_vals cstr clst clr nlyr lobj) (setq c_doc (vla-get-activedocument (vlax-get-acad-object)) c_lyrs (vla-get-layers c_doc) l_props (list 'truecolor 'linetype 'lineweight);Layer properties list );end_setq (prompt "\nSelect Entities : ") (setq ss (ssget)) (cond (ss (repeat (setq cnt (sslength ss)) (setq ent (ssname ss (setq cnt (1- cnt))) elst (entget ent) lyr (cdr (assoc 8 elst));Layer l_vals (rh:layer_props (vla-item c_lyrs lyr) l_props);Layer properties cstr "" clst nil );end_setq (foreach x '(62 420 430) (setq clst (cons (cdr (assoc x elst)) clst))) (setq clr (vl-some '(lambda (x) x) clst)) (cond ( (not clr) (setq cstr "256")) ;No Color set (bylayer) ( (and (= (type clr) 'INT) (<= clr 256)) ;ACI (0-256) (setq cstr (rh:strlen3 (itoa clr))) ) ( (= (type clr) 'STR) (setq cstr clr)) ;Color Book (t (setq clr (mapcar 'itoa (LM:True->RGB clr));RGB cstr (rh:lst2str (mapcar 'rh:strlen3 clr) "_") );end_setq ) );end_cond (setq nlyr (strcat lyr "__" cstr)) (cond ( (not (tblsearch "layer" nlyr)) (setq lobj (vla-add c_lyrs nlyr)) (mapcar '(lambda (x y) (vlax-put-property lobj x y)) l_props l_vals))) (vlax-put-property (vlax-ename->vla-object ent) 'layer nlyr) );end_repeat ) (t (alert "NO Entities Selected ! ")) );end_cond (princ) );end_defun Merci pour le Lisp, il y aurait un paramètre pour récupérer les longueurs par exemple on fait un bloc de HEA 100 un autre de 140 avec la possibilité des les étirer et on pourrait avoir les lgs cumulées des hea 100 et hea 140 dans les tableaux ? J'avais trouvé un bloc Pline_block mais j'ai pas trop compris comment ça marche :(
Perline Posté(e) le 28 janvier 2021 Posté(e) le 28 janvier 2021 Oh là là le crabe :wub: , merci pour toutes ces routines! voilà où j'avais trouvé la routine mdfc https://cadxp.com/topic/48631-lisp-creation-de-calques-en-fonctionde-la-couleur-forcees-des-objetss/page__p__291050__hl__mdfc__fromsearch__1#entry291050 Du coup, avec tout ça un petit copié collé vers word, transcription en tableau et il y a de quoi traviller (quand il n'y a pas de "surprise" d'élévation HAHA) :D
lecrabe Posté(e) le 4 février 2021 Posté(e) le 4 février 2021 Hello Au fait j ai oublie une excellente routine "LayerCount" de Lee-Mac pour compter les objets selectionnes par Calque !C tres pratique quand tu as UN SEUL type d objet sur certains calques ... LA SANTE, Bye, lecrabe ;; ;; https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/object-count-per-layer/td-p/7619771 ;; ;; Layer Count - Lee Mac ;; ;; Prints a report of the number of objects on each layer in a drawing (defun c:LayerCount ( / lst ss ) (if (ssget) (progn (vlax-for obj (setq ss (vla-get-ActiveSelectionSet (vla-get-activedocument (vlax-get-acad-object)))) (setq lst (layercount:assoc++ (vla-get-layer obj) lst)) (if (and (= "AcDbBlockReference" (vla-get-objectname obj)) (= :vlax-true (vla-get-hasattributes obj)) ) (foreach att (vlax-invoke obj 'getattributes) (setq lst (layercount:assoc++ (vla-get-layer att) lst)) ) ) ) (vla-delete ss) (princ (layercount:padbetween "\n\n" "" "-" 62)) (princ (layercount:padbetween "\nLayer" "Objects" " " 61)) (princ (layercount:padbetween "\n" "" "-" 61)) (foreach itm (vl-sort lst '(lambda ( a b ) (> (cdr a) (cdr B)))) (princ (layercount:padbetween (strcat "\n" (car itm)) (itoa (cdr itm)) "." 61)) ) (princ (layercount:padbetween "\n" "" "-" 61)) (princ (layercount:padbetween "\nTotal" (itoa (apply '+ (mapcar 'cdr lst))) "." 61)) (princ (layercount:padbetween "\n" "" "-" 61)) (textpage) (princ) ) ) ) (defun layercount:assoc++ ( key lst / itm ) (if (setq itm (assoc key lst)) (subst (cons key (1+ (cdr itm))) itm lst) (cons (cons key 1) lst) ) ) (defun layercount:padbetween ( s1 s2 ch ln ) ( (lambda ( a b c ) (repeat (- ln (length B) (length c)) (setq c (cons a c))) (vl-list->string (append b c)) ) (ascii ch) (vl-string->list s1) (vl-string->list s2) ) ) (vl-load-com) (princ) Autodesk Expert Elite Team
rebcao Posté(e) le 4 février 2021 Posté(e) le 4 février 2021 Bonjour, J'ai développé depuis pas mal de temps, une palettes d'outils qui reprend plusieurs fonctions : 1. Calcul de surfaces à partir d'objets fermés, via SCANDXF et un blocs avec ATTRIBUTS 2. Métrés linéaires via SCANDXF et EXCEL, de manière optimisé 3. Quantitatifs basés sur des blocs avec et sans ATTRIBUTS Le tout agrémenté Et bien sur, 100% COMPATIBLE avec les versions LT ! 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 @)
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