Aller au contenu

GEGEMATIC

Membres
  • Compteur de contenus

    1 416
  • Inscription

  • Dernière visite

  • Jours gagnés

    19

Tout ce qui a été posté par GEGEMATIC

  1. GEGEMATIC

    ou est l'objet??

    Salut Vieux Crabe, avec la retraite Macron, tu sera encore là en ... 2024 ! En tout cas, ce lisp ne rend pas TOUT Visible ! J'ai tellement eu de problème avec ça que je vous donnes la liste des pièges: - les 3dface ont une visibilité par arrête : c'est le problème qui m'a rendu le plus dingue, a l'époque où je n'avais pas la palette propriété qui dit ce qui est grippé avec un ctrl + a ! (avant la 2000 ...) - les attributs ont un code 70, et 2 définitions de blocs avec attributs peuvent cohabiter - Aujourd'hui autocad empèche de créer des textes vide, mais tjrs possible par lisp, surtout espace = non vide pour Autocad ! je crois que même ma routine n'est pas complète, car elle ne traite pas les délimitation de bloc ... a+ gégé Le code ci dessous est tellement vieux qu'il n'est pas "diffusable", il faut PowerClic ; **************************************************************************** ;;§/dxf/rends toutes les entitész visibles/none ;;avec le code 60 et le code 70 pour les attributs ;;traite les blocs, les attributs, les blocs vides, et fait un zoom étendu ;;attentio : peut être long ... (defun c:ent_visible ( / lbloc lface sel zextent) (setvar "QTEXTMODE" 1) (big_clean '(60 . 1)'(60 . 0)) (bclean '(60 . 1)'(60 . 0)) (setq lbloc (pw_listsel (ssget "x" '((0 . "INSERT"))))) (pw_at_visible lbloc) (setq lface (pw_listsel (ssget "x" '((0 . "3DFACE"))))) (pw_3dface_visible lface) ;;partie zoom (pw_list_empty_blocks) (if (not (member "" pw-att-only-blocks)) (progn (prompt "\nLes blocs suivants n'ont que des attributs :\n") (print pw-att-only-blocks) ) ) (if (not (member "" pw-empty-blocks)) (progn (prompt "\nLes blocs suivants sont vides :\n") (print pw-empty-blocks) ) ) (setq sel (ssget "x")) (setq zextent (pw_englobe_sel sel)) (command "_zoom" "_w" (car zextent) (cadr zextent)) (sssetfirst sel sel) (prompt "\nPour retouver l'aspect des textes, QTEXTMODE à 0") )
  2. @Stepane: _Options Onglet : Tracer etPublier Paramètres par défaut du tracé des nouveaux dessins X Utiliser comme périphérique de sortie par défaut [Ëî DWFx ePiot (XPS Compatible).pc3 ou X Utiliser les demiers paramètres de tracé corrects [ Ajouter ou configurer traceurs... ]
  3. Salut, toujours très étrange de "répondre" à Patrick. C'est l'éternité numérique. Dommage pour Fiesta, car j'avais ce qu'il fallait depuis les années 2000. en fait changer de pc3 bouscule la mise en page. il faut la sauvegarder avant et la rstaurer après. mais il faut que les pc3 aient ne commun les format de tracé (exactement le même nom) genre: ISO_A1_(594.00_x_841.00_MM) en sepérant que ça aide, gégé ;;************************************************************************** ;§/traces/Propage à toutes les présentations la config (pc3) de tracé de l'onglet courant/none ;;en sauvegardant les parametres de la presentation destination ;; (defun C:plot_propagate ( / acadObject acadDocument groups nb i id nb Ac-layout lstate lid ) (vl-Load-Com) (setq acadObject (vlax-get-acad-object)) ;;accède au début de objets? (setq acadDocument (vla-get-ActiveDocument acadObject)) ;;accède au document actif (setq layout_col (vla-Get-Layouts acadDocument)) ;;accède à la collection des layouts (setq nb (vlax-get-property layout_col 'Count));;compte les layout ;;parcours les layouts pour retrouver leur id (setq i 0) (while (< i nb) (setq id (vlax-invoke-method layout_col 'Item i )) (setq lid (cons id lid)) (setq i (+ 1 i)) ) ;(prompt "\nIdentificateur : ") ;(print id) (setq Ac-layout (vlax-Get-property acadDocument 'ActiveLayout)) ;;(setq lid (pw_supp_elem Ac-layout lid)) (setq lid (vl-remove Ac-layout lid)) (setq new_plotter (vlax-get-property Ac-layout 'ConfigName)) (foreach l lid (prompt (vlax-get-property l 'Name)) ;;sauve les parametre (setq lstate (pw_get_property_state l '(;|Application Block|; CanonicalMediaName CenterPlot PaperUnits PlotHidden PlotOrigin PlotRotation PlotType PlotViewportBorders PlotViewportsFirst PlotWithLineweights PlotWithPlotStyles ScaleLineweights ShowPlotStyles StandardScale StyleSheet UseStandardScale ))) ;;change le nom du traceur (vlax-put-property l 'ConfigName new_plotter) ;;remet les autres parametre (pw_put_property_state l lstate) ) ; ) ;;************************************************************************** ;§/vlax/retourne une liste d'association propriété état d'un objet autocad/Object lproperty ;;lproperty est une liste de symboles, pas de chaine !! ;;aménagée pour fonctionner avec les hyperliens ;;(pw_get_property_state (eobj) '(HYPERLINKS HANDLE))->(("HANDLE" "1E16") ("HYPERLINKS" "E:\\stockage\\dwg\\3-00039.dwg")) (defun pw_get_property_state (Object lproperty / lres res symName oHyp) (foreach l lproperty (setq symName (vl-symbol-name l)) (if (vlax-property-available-p Object l) (if (vl-catch-all-error-p (setq res (vl-catch-all-apply 'vlax-Get-property (list Object l) ) ) ) (setq lres (cons (list symName "") lres)) (progn (cond ((and (= (strcase symName) "HYPERLINKS") (> (vla-get-count (setq oHyp (vla-get-hyperlinks Object))) 0) ) (setq res (vla-get-url (vla-item oHyp 0))) (setq lres (cons (list symName res) lres)) ) ((and (= (strcase symName) "HYPERLINKS") (= (vla-get-count (setq oHyp (vla-get-hyperlinks Object))) 0) ) (setq lres (cons (list symName "") lres)) ) (t (setq lres (cons (list symName res) lres)) ) ) ) ) (setq lres (cons (list symName "") lres)) ) ) lres ) ;;************************************************************************** ;§/vlax/reinitialise un objet selon une liste d'association propriété état d'un objet autocad/Object lproperty ;;lproperty est compatible avec la liste retournée par pw_get_property_state ;;(pw_put_property_state (eobj) '(("HANDLE" "1E16") ("HYPERLINKS" "E:\\stockage\\dwg\\3-00039.dwg"))) ;;->Ne peut pas mettre HANDLE à la valeur 1E16 (defun pw_put_property_state (Object lproperty / res lres pr prval x l) (foreach l lproperty (setq res (vl-catch-all-apply 'vlax-put-property (cons Object l ) ) ) ;;(setq lres (cons (vlax-put-property Object (setq pr (car l)) (setq prval (cadr l))) lres)) (if (vl-catch-all-error-p res) (prompt (strcat "\nNe peut pas mettre " (pw_to_string (car l)) " à la valeur " (pw_to_string (cadr l)) ) ) ) ) lres )
  4. Génial en effet ! Car si y a bien une interface de merde sur AutoCAD, c'est celle là !
  5. GEGEMATIC

    import IFC

    salut Phil, ce qui est grave, c'est que c'est bien possible: Commande: IFCIMPORT Commande: IFCEXPORT mais te dire où sont ces commandes dans l'interface, je saurais pas ! je les ai déjà vues, il y a un logo IFC, mais ou? donc ligne de commande (j'en note beaucoup ...) a+ gégé
  6. Salut, ma vieille fonction pw_lst_de_ch ne gérait pas le \\P ! pas remarqué ça depuis 1993 ! ;;************************************************************************** ;§/str/Garde la seule dernière ligne d'un mtext/none (defun c:gardeDerligne ( / otxm txt pos newtext) (vl-Load-Com) (setq otxm (vlax-ename->vla-object (car (entsel "\nMtext ?")))) (setq txt (vla-get-textstring otxm)) (setq pos (vl-string-search "\\P" txt)) ;;(setq newtxt (substr txt 1 pos)) (setq newtxt (car (reverse (pw_lst_de_ch txt "\\P")))) (vla-put-textstring otxm newtxt) ) ;****************************************************************************** ;§/str/delivre une liste de chaines a partir d'une chaine contenant un separateur/ch separ ;;(pw_lst_de_ch "bien plus simple" " ")->("bien" "plus" "simple") ;;(pw_lst_de_ch "PUISARD\\Pprévu pour\\PLIGNE 3\\PHS" "\\P")-("PUISARD" "prévu pour" "LIGNE 3" "HS") (defun pw_lst_de_ch (ch separ / long pos 1er ch res) (setq long (strlen separ)) (while (setq pos (vl-string-search separ ch) ) (setq 1er (substr ch 1 pos)) (setq ch (substr ch (+ 1 pos long))) (setq res (append res (list 1er))) ) (append res (list ch)) )
  7. Salut, Nous c'est avec une 2015, civil ou Map, ça se produit en série, lorsque l'on passe d'un onglet à l'autre: changer d'onglet courant le fait se déplacer dans la liste. Bien entendu, c'est pas tout le temps ... a+
  8. Tout est dans le titre ;;************************************************************************** ;§/traces/sauve l'ordre des onglets/none (defun c:sauve_ordre_onglet ( / acadObject acadDocument layout_col nb i name id taborder lorder) (vl-Load-Com) (setq acadObject (vlax-get-acad-object)) (setq acadDocument (vla-get-ActiveDocument acadObject)) (setq layout_col (vla-Get-Layouts acadDocument)) (setq nb (vlax-get-property layout_col 'Count)) (setq i 0) (while (< i nb) (setq id (vlax-invoke-method layout_col 'Item i )) (setq name (vla-get-Name id )) (setq taborder (vla-get-TabOrder id )) (setq lorder (cons (list name taborder) lorder)) (setq i (+ 1 i)) ) (vlax-ldata-put "GX-ONGLET" "SAUVORDRE" lorder) ) ;;************************************************************************** ;§/traces/Restaure l'ordre des onglets/none (defun c:Restaure_ordre_onglet ( / acadObject acadDocument layout_col name order lorder) (setq lorder (vlax-ldata-get "GX-ONGLET" "SAUVORDRE" )) (vl-Load-Com) (setq acadObject (vlax-get-acad-object)) (setq acadDocument (vla-get-ActiveDocument acadObject)) (setq layout_col (vla-Get-Layouts acadDocument)) (setq lorder (vl-sort lorder (function (lambda (e1 e2) (< (cadr e1) (cadr e2)))))) (foreach l lorder (setq name (car l) order (cadr l)) (setq id (vlax-invoke-method layout_col 'Item name )) (if (/= order 0) (vla-put-TabOrder id order ) ) ) )
  9. GEGEMATIC

    Carte de France.

    Salut, a l'époque je n'avais pas vu ce post. commence par Géofla: Geofla IGN Je ne retrouve pas le lien vers l'hydrographie (BD CARTHAGE) a l'époque, j'avais créé cette carte France_LE.dwg a partir de Geofla et des données issues d'une Université Américaine (IGN n'était pas généreux en 2006 ...) a+ gégé
  10. Salut, par pointage en les sélectionnant un par un: ;;************************************************************************** ;§/str/Garde la seule 1ère ligne d'un mtext/none (defun c:gardeuneligne ( / otxm txt pos newtext) (vl-Load-Com) (setq otxm (vlax-ename->vla-object (car (entsel "\nMtext ?")))) (setq txt (vla-get-textstring otxm)) (setq pos (vl-string-search "\\P" txt)) (setq newtxt (substr txt 1 pos)) (vla-put-textstring otxm newtxt) ) après il peut y avoir etllement de formatage dans un metxt, que je te garantis rien ... a+ gégé
  11. GEGEMATIC

    Plus de Revit chez Cadenas ?

    Salut Merci du tuyau, on va regarder ça ! a+ gégé
  12. GEGEMATIC

    Plus de Revit chez Cadenas ?

    J'ai fait ma première formation Revit en 2010. je l'avais jugé inutilisable, mais très prometteur. Aujourd'hui, avec la version 2019 que j'ai utilisé, je pense que ce ne sera jamais le logiciel qui permettra la réalisation du rêve BIM. En 10 ans, Revit est devenu lourd et lent. Et apparemment les bugs d'affichage qu'il avait il y a 10 ans n'ont pas complètement disparu. Mais en attendant son challenger,(qui arrivera forcément) c'est le logiciel à utiliser, donc je m'adapterai ... a+ Gégé
  13. GEGEMATIC

    Plus de Revit chez Cadenas ?

    Salut, je n'ai malheureusement pas cadmep dans ma suite perpétuelle (je ne veux pas passer en abonnement) mais de toute façon, dans nos opérations, conception et exe sont souvent très proche. je bosse souvent en réhabilitation, et on a rarement de la place. donc c'est soit ça passe, soit ça passe pas. La partie exe, c'est simplement la nomenclature, les débits de tuyau etc ... Donc je risque de devoir encore utiliser Autocad Mep ... avec tous les défauts qu'il a ! a+ gégé
  14. GEGEMATIC

    Plus de Revit chez Cadenas ?

    Salut Phil, on arrive à mettre des brides automatiquement lorsque l'on insère un composant à brides, mais dans ce cas les brides se mettent partout: aux té, au coudes etc ... car les brides suivent les préférences d’acheminement de la canalisation. Donc c'est bon pour de la fonte à bride, mais pas pour des appareils posés sur une canalisation inox . a moins que tu ai une martingale ? alors là on prend ! a+ gégé
  15. GEGEMATIC

    Plus de Revit chez Cadenas ?

    @Grandss par contre je suis bien déçu par Revit mep pour le dessin de plomberie. C'est quand même incroyable que le problème des brides ne soit pas corrigé alors qu'il a été signalé depuis 2010 ! Autocad mep reste pour moi meilleur en ce qui concerne le dessin de tuyauterie et la gestion des composants. mais il est beaucoup moins bon pour la vitesse, la gestion des vue, des impressions. et toi, tu en pense quoi ? a+ gégé
  16. GEGEMATIC

    Plus de Revit chez Cadenas ?

    Salut, réponses de Cadenas France: Si vous aviez pu télécharger les produits Socla en format Revit en 2016, ce fut alors une erreur dans la configuration du portail. Les produits Socla ne sont pas conçus dans le catalogue 3D pour être générés en format Revit. Nous nous excusons de cet inconvénient venu d’une erreur de notre part en 2016. Merci pour votre compréhension. Ma question en retour: Donc Cadenas offre du revit selon le constructeur, et socla n'a pas pris l'option revit ? Comment puis-je savoir quel contenu cadenas est disponible en revit ? non, c’est le constructeur qui choisi les format qu’il souhaite mettre à disposition sur son portail 3D. Nos catalogues 3D disponibles en format Revit sont sur notre portail gratuit BIM : https://bimcatalogs.partcommunity.com/Mon lien Voilà tout ...
  17. GEGEMATIC

    Plus de Revit chez Cadenas ?

    Salut Grandss, après mep, on se retrouve sous revit ! j'ai bien accès à la liste des formats, mais il n'y a plus revit. En 2016, il y étaient. J'ai envoyé une question au support Cadenas, je vous tiens au courant. a+ gégé
  18. Salut à toutes et à tous, En 2016 j'arrivais à télécharger des composants au format Revit sur PARTcommunity/PARTserver CADENAS. Il y a maintenant énormément de format, mais je ne vois plus Revit. Je loupe quelque chose ? a+ Gégé
  19. Salut, il me semble que mon Designjet500 avait déjà le maximum, ça ne l'empechait pas de planter. mais si le tient en maque, sur que ça ne peut qu'aider. a+ gégé
  20. Salut, il y a des paramètre genre "envoyer sous forme d'image". mais ce que je faisais avec mon designJet 500, c'était d'imprimer le pdf depuis Autocad (tu amène le pdf comme une xref, et tu l'imprime depuis Autocad) en général, ça marchait très bien. mais il doit y avoir un sujet complet là dessus, avec les astuces de tout le monde. a+ Gégé
  21. Salut, Je connais pas ce nouveau module, mais je me rappelle les débuts du module ass de la V9. Il n'y avait aucune doc, on découvrait, on utilisait, et le programmeur déboguait au fur et à mesure. il faut voir qu'il y avait un tel saut qualitatif par rapport au module aquasoft, qu'on était indulgent ... a+ Gégé
  22. Salut a toutes et à tous, J'ai suivi cet conversation avec intérêt, et j'ai souvent hésité à répondre à Arnaud. en 29 ans de carrière, j'ai souvent du superposer des plans issus de différents géomètres, experts ou non. et j'en ai tiré cette boutade: si vous superposez 5 plans topo, avec le même regard assainissement, vous obtenez les anneaux olympiques. je viens de vérifier encore une fois cette assertion aujourd'hui: 2 levés géomètre expert, un de 2002, l'autre de 2019, même quartier: l'un est local, l'autre CC45, on veut les comparer, on fait un helmert avec covadis, une 10zaine de points, du genre qui n'ont pas changé. (bouche à clef ...) écart moyens 16 cm, avec des pointes à 40cm. 3 rues en étoile avec un max de 3 stations consécutives sur le plus long cheminement. pour info, 2002, c'est pas la préhistoire, les station totales étaient très précises. a cette époque, j'ai bouclé la polygo "brute" du tour d'un village entier, avec des passages bien pourris dans les bois, avec 15cm d'écart total sur la station de départ. tout ça avec un appareil 7", pas ce qui se faisait de mieux. sauf que j'avais simplement soigné mes mise en station, et mes visées arrières (pourtant bullées à la main, en relâchant sa respiration pour ne pas trembler ...) Alors un scan ou une photogramétrie à +/- 3cm, c'est pas si mal finalement, par rapport à un mauvais levé topographique... Mais justement ce n'est pas mon propos. mon propos c'est de dire que la technique n'est rien sans celui qui l'exploite, qui fait attention ou non à ce qu'il fait. C'est pourquoi Olivier a réussit de la très bonne photogrammétrie, Titi s'éclate avec un scanner 3d. Ils l'utilisent bien, et ça marche. je rejoins Arnaud sur le fait qu'un pilote de drone n'est pas forcément utilisateur des plans qu'il fournit, et ça peux être la cata ... Le danger c'est que ces technologies peuvent être utilisées avec une formation minimale par n'importe quel fumiste, et là attention ! C'est d'ailleurs le but de ces technologies, se substituer au savoir faire, envoyer des opérateurs très peu qualifiés faire du terrain et cracher du plan. Le plus terrible, c'est que toutes ces technologies super innovantes, on arrive pas bien à savoir comment elles marchent. Par exemple, les nouveau GPS permettent de prendre des points pendant 1mn lorsque l'on a perdu les corrections RTK, grâce à un accéléromètre. Nous on s'est dit: le gps savait ou il était, dans quelle direction il allait: il complète a partir de la dernière position connue grâce a l'accéléromètre (technologie utilisée pour cartographier des tuyaux par l'intérieur) on se dit: ça doit permettre de faire des incursions dans une zone boisée, par exemple: on nous dit: Non, il faut recevoir les satellites. alors des satellites sans correction, pour du centimétrique, ça sert à quoi ? Je n'ai pas la réponse. donc si j'utilise cette technologie, je le ferai sans connaitre sa validité réelle, donc je trouve ça un peu dangereux. En conclusion, pour moi un plan quel qu'il soit n'a de valeur à mes yeux (a priori) que si je connais le gars qui l'a fait. Car il y a de très très bon géomètres, et de très mauvais. A+ gégé Florilège: - Plan d'implantation d'une salle des fêtes, réalisé à partir d'une photocopie A4 d'un extrait A3 (facteur 1.41 constaté sur le terrain !) - Ecart de 30° sur la direction d'une rue une fois passé le 1er carrefour. Ce plan a servit a un chantier VRD, de 2.5 km de long, j'ai vu le problème quand j'ai fait le recollement, personne n'avait rien remarqué ! - Décalage de 30 m sur un levé. L'auteur de la bourde a mis en cause un géomètre "maison" d'une boite de TP, en envoyant un mail vénère en mettant en copie tout le monde !(grand moment de solitude pour lui ensuite ...)
  23. Salut Denis, je pense que ce sujet pourra t'embrouiller, enfin t'éclairer ... Les changements d'échelle ne sont pas forcément liéés à des variables, donc pas forcément exportable via l'outil des express tools. a+ Gégé
  24. Salut, ci dessous un code qui extrait la définition (dxf) d'un bloc. le pb c'est que tu ne peux pas directement comparer, car certains codes changent, alors que la représentation est la même (pare exemple les entity name, les handle, etc ... donc il te faudrait décortiquer les codes dxf de chaque entité pour savoir quels codes prendre en compte ou pas. ; **************************************************************************** ;;§/dxf/extrait la definition d'un block sous forme de liste/nombl ;;retourne une liste de listes : ;;;(((0 . "BLOCK");_entete par tblsearch ;;; (2 . "NUM") ;;; (70 . 2) ;;; (10 0.0 0.0 0.0) ;;; (-2 . <Nom d 'entité: 7fffa2f06f0>);_ename de la 1ère entité du bloc ;;; );_fin retourné par tblsearch ;;; ;;première entité (retournée par entnext) ;;; ((-1 . <Nom d 'entité: 7fffa2f06f0>) ;;; (0 . "LWPOLYLINE") ;;; (330 . <Nom d 'entité: 7fffa2f06e0>) ;;; (5 . "25717") ;;; (100 . "AcDbEntity") ;;; (67 . 0) ;;; (8 . ;;; "0" ;;; ) ;;; (62 . 255) ;;; (100 . "AcDbPolyline") ;;; ... ;;; (210 0.0 0.0 1.0) ;;; ) ;;; ;;deuxième entité (retournée par entnext) ;;; ((-1 ;;; . <Nom d 'entité: 7fffa2f0700>) ;;; (0 . "ATTDEF") ;;; (330 . <Nom d 'entité: 7fffa2f06e0>) ;;; (5 . "25718") ;;; (100 . "AcDbEntity") ;;; ... ;;; (280 . 0) ;;; ) ;;;);;fin de définition de bloc, la prochaine entité retournée par entnext sera un endblock (defun pw_block_def ( nombl / debut res extrait ent lent ) (setq nombl (strcase nombl)) (setq debut 't) (defun extrait ( / ) (while (setq ent (entnext ent)) (setq res (cons (entget ent) res)) ) ) (while (setq lent (tblnext "block" debut)) (setq debut nil) (if (= nombl (strcase (cdr (assoc 2 lent))));;si c'est la definition qu'on cherche (progn (setq res (cons lent res));; le debut de la def (setq res (cons (entget (setq ent (cdr (assoc -2 lent)))) res));;l'entget du 1er -2 (extrait) ) ) ) (reverse res) )
  25. Tu aurais pas un \\C dans texstring, quand ça marche pas ? ex: textString = "{\\C4;Texte forcé en cyan}"
×
×
  • 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é