-
Compteur de contenus
4 029 -
Inscription
-
Dernière visite
-
Jours gagnés
21
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par DenisHen
-
Salut. Pour faire simple, j'ai eu aussi le même problème face à tous ces DXF... J'ai donc fais un petit code en lisp, très simple d'utilisation. 1. tu décompresses tout les BZ2 et TAR, de façon à te retrouver avec tous les DXF dans un même répertoire, 2. tu ouvres un nouveau DWG et tu l'enregistre dans ce répertoire. 3. tu lances ma routine en tapant : "InsCadDxf". Voici le code : ;;; Insert les feuilles du Cadastre en DXF (defun c:InsCadDXF (/ Select ent n a b RepDXF ListFich) (princ "\nDéveloppé par Denis H (2.0)") (princ "\nInitialisation du dessin...'") (if (/= (vlax-ldata-get "Cadastre" "Norme") "Oui") (progn (vlax-ldata-put "Cadastre" "Norme" "Oui") (c:ConfigCad)) ) ;_ Fin de if (setq RepDXF (getvar "dwgprefix")) (setq ListFich (vl-directory-files RepDXF "*.dxf")) (setq a 0) (while (/= (nth a ListFich) nil) (setq a (+ a 1))) (setq b 0) (while (/= (nth b ListFich) nil) (princ (strcat "\nProgression : " (rtos (+ b 1) 2 0) "/" (rtos a 2 0) "\n")) (command "_insert" (strcat RepDXF (nth b ListFich)) '(0 0 0) 1 1 0) (command "_explode" "_last") (command "-purger" "bl" (substr (nth b ListFich) 1 (- (strlen (nth b ListFich)) 4)) "n") (command "zoom" "et") (setq b (+ b 1)) ) ;_ Fin de while (Steal "Cadastre.dwg" (list (list "Layers" (list "*")))) (c:ConfCadastre) (command "-calque" "e" "CAD_BATI_DUR_HACH" "") (setq n 0) (if (setq Select (ssget "_X" (list (cons 0 "LWPOLYLINE") (cons 8 "CAD_BATI_DUR") (cons -4 "&") (cons 70 1)) ;_ Fin de list ) ;_ Fin de ssget ) ;_ Fin de setq (while (setq ent (ssname Select n)) (command "_hatch" "solid" ent "") (setq n (1+ n))) ;_ Fin de while ) ;_ Fin de if (command "_qsave") (command "-calque" "e" "CAD_BATI_LEG_HACH" "") (setq n 0) (if (setq Select (ssget "_X" (list (cons 0 "LWPOLYLINE") (cons 8 "CAD_BATI_LEG") (cons -4 "&") (cons 70 1)) ;_ Fin de list ) ;_ Fin de ssget ) ;_ Fin de setq (while (setq ent (ssname Select n)) (command "_hatch" "solid" ent "") (setq n (1+ n))) ;_ Fin de while ) ;_ Fin de if (command "_qsave") (princ) ) ;_ Fin de defun Je reste à l'écoute, au cas...
-
Salut. Attention, la commande est ETATCALQUE, et non ETATALQUE... Petite faute de frappe de la part d'Alex... ;)
-
Salut. Une autre solution un peu plus précise, mais qui reste approximative... Tu télécharges le cadastre de ta zone, et tu cales ton plan avec les bâtiments (avec la commande "ALIGNER"), plus efficaces que les limites. Si mes souvenir sont bons, tu as le choix entre deux projections, le LAMBERT 93 et les différents CC (conique conforme) selon la zone de la commune. Tu devrais tomber à quelques dizaines de centimètre près. C'est, pour moi, la solution la "moins pire"...
-
Quelle triste nouvelle... Repose en paix Patrick, et encore merci pour tout ce que tu as fais pour nous tous... Toutes mes condoléances à sa famille, ses proches...
-
Salut. C'est un programme de Maître (gile), il est sous forme de DLL est s'appelle "ExcelAttribute_19.dll". Tu devras le trouvé ici...
-
Salut. D'une part, pour recaler un plan, cela signifie qu'il n'est pas calé, donc, non géo-référencé, de ce fait, dans aucun système de coordonnées connu (donc un système dit "local"). Pour ce faire, il te faut plusieurs points communs entre les deux systèmes (source et cible). D'autre part, si ton plan est déjà dans un système connu (ici, un Lambert), il faut donc changer de système de projection, et non faire un calage. Covadis le fait, mais il faut connaitre les deux systèmes (source et cible). Et comme le dit si bien Maître didier, il nous faudrait au moins une paire de coordonnées de ton plan.
-
Salut. Je ne suis pas un très fort avec les vl-*. Mais de quoi parles-tu quand tu dis "deux fichiers" ?
-
Si, j'ai peut-être une solution : -inserer;XXX;\1;1;0;^C-chprop;(entlast);;ca;désordre;; Mais attention, ça ne fonctionnera que si le calque "désordre" existe.
-
Salut. Alors ça, il faudrait un expert en DIESEL pour ça... Je ne peux le faire qu'en LiSP.
-
Salut. De tête, je tenterais ça : ^C^C-calque;e;désordre;;-inserer;XXX;\1;1;0
-
Salut à tous, et merci à vous pour vos observations... ;)
-
Hug, N'y a t'il pas le même style variable avec les hachures ? Ô Décapode ?
-
Bonjour à tous. Voilà, je me trouve devant un petit problème technique. Un client devrait se rapprocher de nous pour effectuer tous les calculs (terrassement, pénétration en terre...) pour des projets de voiries et de digues. En gros, on ferait les plans topo (pas de problèmes) mais on devrait aussi faire les plans exécutifs, par exemple... J'ai déjà fais ce job, mais il y a 20 ans, et presque à la main et sur papier (profils en long, en travers, calculs des déblai/remblai...)... Ma question est : quelle(s) formation(s) suivre chez Géomédia, sachant qu'on a Covadis, pour effectuer ce genre de travail ? En gros, on fait la topo (toujours pas de problèmes), le client nous donne le projet (le tracé fini), et tous le reste, jusqu'à l’exécution, serait pour nous... Si quelqu'un as la réponse, je suis preneur...
-
Creer et modifier ordre attributs dans blocs
DenisHen a répondu à un(e) sujet de lepetitrossi dans LISP et Visual LISP
Salut. Entièrement d'accord Ô (gile), on n'en sait pas beaucoup... Je proposais juste mon "expérience"... -
Creer et modifier ordre attributs dans blocs
DenisHen a répondu à un(e) sujet de lepetitrossi dans LISP et Visual LISP
Salut à tous... Donc, si ton DWG n'a pas de bloc de défini, ORDREATTBLOC ne sert à rien, pareil si ton bloc n'a pas d'attribut... Et comme l'a justement fait remarquer Maître (gile), un bloc n'est qu'un DWG à l’intérieur d'un autre (à peu de choses près). Si tu ouvres un DWG qui contient des blocs, tu peux les "exporter" via la commande "_WBLOCK", tu te créeras ainsi un DWG de ce bloc (il y a "AutoBlock" de DotSoft qui mutualise cet export et qui fonctionne très bien). Personnellement, j'utilise un DWG contenant tous mes bloc (bien plus pratique si tu renommes un calque, un type de ligne...) que j'inserts à la volée depuis le DesignCenter et/ou une palette, si non, j'utilise, mais en lisp, "Steal" de LeeMac... Mais tu peux aussi l'utiliser directement depuis AutoCAD. Je pense ne pas avoir dis trop de co****ies, le forum me corrigera pour ne pas laisser de fausses informations... (Maître didier, si tu me lis... ;) ). Bonne soirée à tous et bon weekend pour certain... Perso, j'ai du boulo pour ce weekend, :( Denis... -
Re, Effectivement, je place des "Denis" un peu partout, mais c'est à cause de tout un tas de commandes qui existes à mon boulo, certaines sont "anonymes" et d'autre porte le nom (mes prédécesseurs) de celui ou celle qui l'a importé, créé, modifié, publié... C'est plus une question de traçabilité que de vanité... ;) Surtout que celles qui portent mon nom ne sont utilisées que par moi... Les autres, plus "officielles" et partagées dans toutes nos agences, portent le nom de la société, mon nom ne figure qu'en commentaire dans le code...
-
Salut à tous, et mille merci pour votre aide... J'ai utilisé le code de Didier, que j'ai soigneusement recopié, du coup, j'ai bien compris où était mon erreur, en fait, mes erreurs... J'ai fais évoluer le code pour qu'il fasse de même avec les blocs... Le voici : (defun c:Z0_Denis (/ jeusel elist ent n pins newpt txstr) (if (setq jeusel (ssget "_x" '((0 . "*TEXT,INSERT")))) (progn (setq n -1) (repeat (sslength jeusel) (setq elist (entget (setq ent (ssname jeusel (setq n (1+ n))))) pins (cdr (assoc 10 elist)) txstr (cdr (assoc 1 elist)) elev 0 newpt (list (car pins) (cadr pins) elev) ) ;_ Fin de setq (entmod (subst (cons 10 newpt) (assoc 10 elist) elist)) (entupd ent) ) ;_ Fin de repeat ) ;_ Fin de progn ) ;_ Fin de if (princ) ) ;_ Fin de defun Encore merci à vous...
-
Bonjour à tous. Suite à une erreur dans un fichier, j'ai des centaines de textes avec un Z. J'ai tenté de faire un petit lisp pour descendre les Z à 0, mais AutoCAD me sort un problème de liste : Voici mon code : (defun c:Z0_Denis (/ i ent elst Select Coord) (if (setq Select (ssget "_X" '((0 . "TEXT")))) (progn (setq i 0) (while (setq ent (ssname Select i)) (setq elst (cdr (assoc 10 (entget ent))) i (+ 1 i) Coord (list (strcat (rtos (car elst) 2 3) "," (rtos (cadr elst) 2 3) ",0")) elst (subst (cons 10 Coord) (assoc 10 elst) elst) ) ;_ Fin de setq (entmod elst) ) ;_ Fin de while ) ;_ Fin de progn ) ;_ Fin de if (princ) ) ;_ Fin de defun Si quelqu'un a une astuce, un conseil... Je suis preneur...
-
Et Javascript alors !!!???
DenisHen a répondu à un(e) sujet de Fraid dans ObjectARX/DBX, C++, .NET, RealDWG
Salut Fraid. Pour AutoCAD MAP 2017, j'ai une version Chromium 2.0.1.0, copyright 2015 Autodesk, Pour AutoCAD MAP 2019, j'ai une version Chromium 2.0.5.2, copyright 2017 Autodesk. -
Creer et modifier ordre attributs dans blocs
DenisHen a répondu à un(e) sujet de lepetitrossi dans LISP et Visual LISP
Salut. Juste une petite question, pourquoi changer cet ordre ? -
Autodesk : surprise au 15 Juin 2019 !?
DenisHen a répondu à un(e) sujet de lecrabe dans CAO, généralités
Salut à tous. Perso, j'avais une 2017 passée sous 2018 passée sous 2019 en perpétuelle. J'ai installé 2020 (AutoCAD MAP 3D) et la licence ne fonctionne pas... Il me le dit gentillement et quitte AutoCAD... Est-ce grave docteur ? Un rapport ? -
Et Javascript alors !!!???
DenisHen a répondu à un(e) sujet de Fraid dans ObjectARX/DBX, C++, .NET, RealDWG
Salut. Très enthousiaste pour apprendre une nouvelle langue de codage, j'hésitais entre le .NET et le C#. Maintenant, je dois aussi pensé au Java... Merci Fraid... ;) Mais comment choisir : - la facilité du langage, (proche d'un autre VB, VBA, Lisp (j'en doute)...) - son intégration dans AutoCAD, - sa pérennité, - avec quel environnement coder, (visual, VBA...) - sa distributivité... (package à installer, fichiers sources...) Et j'en passe... En plus, je vois du "ADODB" dans le code de Maître (gile)... Je ne comprend pas ce qu'il vient faire là... :huh: Mais le sujet reste très intéressant... Merci Fraid... ;) -
je connais cette commande ;) , mais il me semblait, à tord je pense, que certains bloc ne pouvaient être renommés...
-
Je ne savais pas qu'on pouvait renommer ce genre de bloc ("_$xxx"), je dois confondre avec les "*xxx"... D'autre part, il me semble que les blocs "_$xxx" sont uniques, donc, tu devras les renommer un par un... Mais attend confirmation d'un autre CadXpien, je ne suis pas certain de moi...
-
Salut. Merci Maître Jedi. Mais je pense qu'il y a autre chose, il me semble que ce décalage est différent selon la taille du texte... Me trompe-je ? Bien que je doute que ces étiquettes soient de tailles différentes...
