GEGEMATIC
Membres-
Compteur de contenus
1 416 -
Inscription
-
Dernière visite
-
Jours gagnés
19
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par GEGEMATIC
-
salut, 1h a chercher comment on désactive accrtop, car constatant des ralentissements inhabituels, (car on s’habitue à tous mais là quand même !) je vois que accrtop est activé. j'ai cherché en vain un endroit ou le désactiver, et j'ai pas trouvé autre chose que: ce vieux sujet donc c'est toujours F12 ? pendant que j'y suis, comment on vire le survol "intelligent" qui met en surbrillance, puis qui affiche une mini info, que j'ai jamais rien demandé ! car si vous voyez ce qui m'arrive, je travaille avec un fond de plan d'architecte paysagiste, qui s'est lâché question végétation. donc ça veut dire en clair que le fichier est lourd, que personne ne peux imprimer un pdf issu de ce fond de plan, et que tous ces gadgets provoquent des lenteurs affligeantes. La dernière fois que j'ai eu ce genre de fond de plan, en pire, j'ai fait un tif N&B avec, transparent, et j'ai plus eu de problèmes ... a+ gégé
-
créer un nouveau système de coordonnées
GEGEMATIC a répondu à un(e) sujet de hman dans AutoCAD Civil
salut, mon article de blog ne traitait pas spécifiquement de ce point mais renvoyait vers 2 autres tuto pour leur création http://g-eaux.over-blog.com/2013/10/cr%C3%A9er-un-syst%C3%A8me-de-projection-personnalis%C3%A9-%C3%A0-coordonn%C3%A9es-r%C3%A9duites-pour-optimiser-les-performances-des-cartes-graphiques.html le lien cadxp ne marche plus, mais on devrait retrouver l'article, en tout cas, le crabe doit pouvoir le faire ! a+ Gégé -
Comptage de Symboles sur des DWGs converti en PDF
GEGEMATIC a répondu à un(e) sujet de Ayting dans CAO, généralités
Salut, On fait de la reconstruction de données SIG à partir de données "explosées" chez nous, on ne parle pas d'IA, mais d’apprentissage. En fait, quand on intègre des recolements sur un territoire, on va retomber souvent sur le même géomètre, ou la même entreprise de TP. On lance une analyse du dessin, qui génère des paramètres, qui seront réutilisables dans le dessin suivant. Quand les plans son en PDF, et qu'il couvrent une grande surface, on transforme le pdf en dwg, et on les traite de la même manière, même si les critères sont souvent plus compliqués. donc dans ton cas, nul doute que ce soit faisable, tes formes ont l'air d'être assez simples. Je pense même qu'avec qq manipulations (jonction de polylignes), et de simples filtres, ça doit être faisables pour les symboles présentés, pour le orange, il faudra peut être diviser le résultat d'une sélection. Il y a un editeur qui en a fait un produit abouti: scodify a+ gégé -
[WIP]La transformation de systeme de projection Sans Plug-in autocad
GEGEMATIC a répondu à un(e) sujet de Curlygoth dans Programmer en s'amusant
Salut, et j'ai même le regret d'avoir commencé trop tard,impossible pour moi, de me mettre à l'assembleur ! blague à part, tout ce que l'on peu faire avec une fenêtre noire, c'est un univers dont il est bien dommage de se priver. c'est exactement comme la ligne de commande Autocad: Comme je ne retrouve pas les commandes d'une version à l'autre, ou même d'un espace de travail à l'autre, dans le capharnaüm de l'interface, les commandes utiles, je les tapes, et ça va plus vite que les chercher ! bon je retourne bouffer 5 tonnes de fougères géantes avant l'arrivée de Titanosaures ... a+, gégé -
Salut Olivier, Oui, mais il est peut être moins présent dans l'écosystème Français que ZWCad ? a+, Gégé
-
Qu'est-ce tu veux, avec l'âge, on n'aime pas du tout être contrarié !
-
jamais su pourquoi Geocarte ne marchait pas. en fait, il ne marche pas quand on vient de changer le système de coordonnées. il suffit de refermer le dessin, le rouvrir, et géocarte fonctionne. a+
-
après avoir bu un petit verre d'alcool à bruler, vu que t'as plus de gout, faut pas gâcher .... bon a l'usage j'ai amélioré un peu la version, pour que les calques dont les couleurs sont proches soient regroupés par leur index, ;;**************************************************************************************************************************************************** ;;§/calques/bascule toutes les entités d'une couleur forcée vers un calque avec un suffixe correspondant à cette couleur, en tenant compte du RGB/none ;;les entités n'ayant pas une couleur forcée sont ignorées ;; Pour les couleur forcées non RGB: ;; le calque "PDF _Remplissages de solides" -> "PDF _Remplissages de solides_150" pour la couleur 150 authentique ;; le calque "PDF _Remplissages de solides" -> "PDF _Remplissages de solides_150_RGB40-138-250" pour la couleur 150 légerement eclaircie ;; Attention: ne doit pas encore traiter tous les cas ... car je n'ai pas fait beaucoup de recherches sur les valeurs de BookName et ColorMethod ... (DEFUN c:color2layerRGBAll (/ acadObj doc 1er suiv otc o r pl_source pl_arriv color r g b onca suffix ) (setq acadObj (vlax-get-acad-object)) (setq doc (vla-get-ActiveDocument acadObj)) (setq suiv (entnext)) (while suiv (setq otc (vla-get-truecolor (setq o (vlax-ename->vla-object suiv))) ) (cond ((= (vla-get-ColorMethod otc) 195) (setq suffix (strcat "_" (itoa (vla-get-ColorIndex otc)))) (setq r (vla-get-Red otc)) (setq g (vla-get-Green otc)) (setq b (vla-get-Blue otc)) ) ((= (vla-get-ColorMethod otc) 194) (setq suffix (strcat "_" (itoa (vla-get-ColorIndex otc)) "_RGB" (itoa (setq r (vla-get-Red otc))) "-" (itoa (setq g (vla-get-Green otc))) "-" (itoa (setq b (vla-get-Blue otc))) ) ) ) (t (setq suffix nil) ) ) (if suffix (progn (setq pl_source (vla-get-layer o)) (setq layers (vla-get-layers doc)) (setq pl_arriv (strcat pl_source suffix)) (if (not (vl-catch-all-error-p (vl-catch-all-apply 'vlax-invoke-method (list layers 'item pl_arriv) ) ) ) nil (progn (setq oNca (vla-add layers pl_arriv)) (setq color (vlax-create-object (strcat "AutoCAD.AcCmColor." (substr (getvar "ACADVER") 1 2) ) ) ) (vla-SetRGB color r g B) (vla-put-TrueColor oNca color) ) ) (vla-put-layer o pl_arriv) (vla-put-color o 256) ) ) (setq 1er suiv) (setq suiv (entnext 1er)) ) )
-
Aie ! j'avais pas vu ta réponse, je me suis dit que tu faisais la sieste ! Oui, la tienne, c'est du Mozart ! merci quand même ! Gégé
-
Bon, c'est pas du Mozart, mais ça le fait ! ;;***************************************************************** ;;§/calques/bascule toutes les entités d'une couleur forcée vers un calque correspondant à cette couleur, en tenant compte du RGB/none (DEFUN c:color2layerRGBAll (/ acadObj doc 1er suiv otc o r pl_source pl_arriv color r g b onca suffix ) (setq acadObj (vlax-get-acad-object)) (setq doc (vla-get-ActiveDocument acadObj)) (setq 1er (entnext)) (while (setq suiv (entnext 1er)) (setq otc (vla-get-truecolor (setq o (vlax-ename->vla-object suiv))) ) (cond ((= (vla-get-ColorMethod otc) 195) (setq suffix (itoa (vla-get-ColorIndex otc))) (setq r (vla-get-Red otc)) (setq g (vla-get-Green otc)) (setq b (vla-get-Blue otc)) ) ((= (vla-get-ColorMethod otc) 194) (setq suffix (strcat (itoa (setq r (vla-get-Red otc))) "-" (itoa (setq g (vla-get-Green otc))) "-" (itoa (setq b (vla-get-Blue otc))) ) ) ) (t (setq suffix nil) ) ) (if suffix (progn (setq pl_source (vla-get-layer o)) (setq layers (vla-get-layers doc)) (setq pl_arriv (strcat pl_source suffix)) (if (not (vl-catch-all-error-p (vl-catch-all-apply 'vlax-invoke-method (list layers 'item pl_arriv) ) ) ) nil (progn (setq oNca (vla-add layers pl_arriv)) (setq color (vlax-create-object (strcat "AutoCAD.AcCmColor." (substr (getvar "ACADVER") 1 2) ) ) ) (vla-SetRGB color r g B) (vla-put-TrueColor oNca color) ) ) (vla-put-layer o pl_arriv) (vla-put-color o 256) ) ) (setq 1er suiv) ) )
-
Salut, j'ai depuis longtemps une routine color2layer, mais elle date un peu, car elle ne prends pas en compte les valeurs RGB il me semble avoir vu passer ça sur le forum (le but est de trier plus finement un conversion pdf->dwg) Notre Crabe fatigué à bien ça sur son DD ? a+ Gégé
-
Salut, Covadis ne lit pas des fichiers ".job", ce sont des fichiers internes a Survey controller Sur ton carnet trimble, il faut que tu exporte en .raw : Fichiers > Importer/Exporter > Exporter des fichiers de format personnalisé GDM job (.raw) Et sous Covadis, tu lis le fichier Raw: Menu Cov. Calculs > Lectures Carnet > Lecture Trimble GDM (Paramétrage: C:\Program Files\Geomedia SA\Covadis\Config\Geodim.ini) enfin, je pense que c'est ça. a+ gégé
-
Là c'est sur que je peux que te donner raison !
-
@Christian, salut Christian je trouve pas que les 2 problèmes que tu soulève permettent de dire "a oublier", quand on compare un logiciel payant, et quand même cher, à un logiciel gratuit ou très peu cher. - des shx a la place d'Arial ? ça empêche pas de bosser - un zoom étendu incorrect ? moi je ne peux carrément pas l'utiliser, puisqu'autocad ne comprend pas la différence entre un point d'insertion et un objet dessiné. alors la moindre xref quand on est en lambert ... donc je pense que ça dépend du besoin. a+ gégé
-
Salut, j'ai un très vieux carnet de terrain Trimble Survey Controler 11.33 je crois (au passage, jamais vu meilleur carnet de terrain !) pour Covadis, il faut exporter au format .RAW depuis Survey Controler Ci dessous notre procédure: Report du levé, de l'implantation Polygo a base de GDM, .raw (ne permet pas d'avoir les attributs dans la polygo) Fichiers > Importer/Exporter > Exporter des fichiers de format personnalisé GDM job (.raw) Menu Cov. Calculs > Édition Géobase Fichier > Nouveau Enregistrer sous Menu Cov. Calculs > Lectures Carnet > Lecture Trimble GDM Carnet brut: le fichier «nomaffaire»_leve_«date».raw Paramétrage: C:\Program Files\Geomedia SA\Covadis\Config\Geodim.ini Géobase: «nomaffaire»_leve_«date».geo Table: E:\ACLSP\INI\covadis\Géocodification\g-eaux-ineris.cod Import Job XML avec polygo Permet d'avoir les attributs pendant le calcul polygonal. Cependant leur récupération dans Autocad n'est pas simple car Covadis n'utilise pas correctement le séparateur d'attributs défini dans la table de géocodification. Fichiers > Importer/Exporter > Exporter des fichiers de format fixe Trimble JobXML (.jxl) a+, gégé
-
Salut, Oups, j'avais peut être pas assez testé ... donc il faut répondre a 3 questions: ;;*************************** ;;§/ADE/Renome un champ/none ;; (defun c:AdeChangeNomChamp (/ tablNom tabledef tablename tabledesc columns monChamp nouvnom monNouvChamp) (setq tablNom (getstring "\nNom de la table ?")) (setq tabledef (ade_odtabledefn tablNom)) (setq tablename (car tabledef)) (setq tabledesc (cadr tabledef)) (setq columns (cdr (assoc "Columns" tabledef))) (setq ancNom (getstring "\nAncien nom de champ ?")) (setq nouvNom (getstring "\nNouveau nom de champ ?")) (setq monChamp (assoc (cons "ColName" ancNom) columns)) (setq nouvNom (cons "ColName" nouvNom)) (setq monNouvChamp (subst nouvNom (cons "ColName" ancNom) monChamp)) (setq columns (subst monNouvChamp monChamp columns)) (setq columns (cons "Columns" columns)) (setq tabledef (list tablename tabledesc columns)) (ade_odmodifytab tabledef) ) Effectivement, je ne l'avais pas remarqué, car je n'utilise pas la modification de table pour renommer les champs, mais pour en ajouter, les remettre dans l'ordre, changer leur casse, leur description. car tous les autres SIG peuvent réorganiser leur tables a leur guise, donc à chaque nouvel échange avec d'autres BE, j'avais des conflits de tables, rendant les données invisibles. Changer la casse ne perd pas les données. On a encore ce problème avec notre GPS, qui change sa table de données à chaque mise à jour du logiciel (et il y en a beaucoups). Sur une même affaire le levé d'il y a un mois est incompatible avec celui d'avant hier ! a+ gégé
-
Salut, le voilà clef en main : ;;§/ADE/Renome un champ/none ;; (defun c:AdeChangeNomChamp (/ tabledef tablename tabledesc columns monChamp nouvnom monNouvChamp) (setq tabledef (ade_odtabledefn "A-PROB")) (setq tablename (car a-prob)) (setq tabledesc (cadr a-prob)) (setq columns (cdr (assoc "Columns" a-prob))) (setq ancNom (getstring "\nAncien nom de champ ?")) (setq nouvNom (getstring "\nNouveau nom de champ ?")) (setq monChamp (assoc (cons "ColName" ancNom) columns)) (setq nouvNom (cons "ColName" nouvNom)) (setq monNouvChamp (subst nouvNom (cons "ColName" ancNom) monChamp)) (setq columns (subst monNouvChamp monChamp columns)) (setq columns (cons "Columns" columns)) (setq tabledef (list tablename tabledesc columns)) (ade_odmodifytab tabledef) ) copie colle le code dans la ligne de commande autocad, lance AdeChangeNomChamp répond aux 2 questions a+ Gégé
-
salut, Qu'est-ce que tu veux dire par "récupérer" ces données ? car ces données, tu les as déjà, elle sont dans ton dessin sous forme de données d'objet. je crois que le Crabe va devoir sortir de sa retraite pour te faire une formation ! a+ gégé
-
Salut, on ne peut pas par l'interface Autocad map, mais on peut par le lisp: ;******************************************************************* ;;§/ade/modifie une table à partir de :/tblname tbldesc l-fields ;; tablename tabledesc '(liste des champs) ;; compatible avec les fichier ini de definition de table de nadiaa ;; liste des champs compatible avec la liste retournée par AM_GetTableFormat (defun NA_modifytab (tblname tbldesc l-fields ) (setq buff (list tblname tbldesc l-fields)) (setq l-fields (mapcar '(lambda (x) (list (cons "colname" (car x)) (cons "coldesc" (cadr x)) (cons "coltype" (caddr x)) (cons "defaultval" (cadddr x)) ) ) l-fields ) ) (ade_odmodifytab (list (cons "tablename" tblname) (cons "tabledesc" tbldesc) (list "columns" l-fields ) ) ) ) le kit "xml" ici: lire-et-ecrire-des-variables-dans-des-fichiers-msexcel-xml d'autres solutions pour les tables ici: http://g-eaux.over-blog.com/article-incompatibilite-des-tables-de-donnees-da-113227413.html Les fonctions map de Rakesh: rakeshrao designsense les fonctions de table (nécessitent powerclic ) ;;******************************************************************************* ;;§/ade/ecrit, dans un fichier Ms Excel XML toutes les tables d'un dessin/none ;;peut être utilisé par : miseajour_tables_depuis_xml (defun c:Ecrit_table_dans_xml (/ nchem fich elast sel lsel curproj) ;;; (setq dwgprefix (car (pw_scie_fich (getvar "dwgname")))) (setq dwgname (cadr (pw_scie_fich (getvar "dwgname")))) (setq dwgprefix (getvar "dwgprefix")) ;;creation de la liste tables (setq ltable (ade_odtablelist)) (setq ltabledesc (mapcar '(lambda (x) (setq tmp (ade_odtabledefn x)) (setq desc (cdr (assoc "TableDesc" tmp))) (list x desc) ) ltable ) ) (setq ltabledesc (cons '(";;nom de la table" "description") ltabledesc)) (setq ltabledesc (cons "[TABLES]" ltabledesc)) (setq ltabledef (mapcar '(lambda (x) (append (list (strcat "[" x "]" )) '(( ";;nom de champ" "description" "type" "valeur par defaut")) (AM_GetTableFormat x) '("") ) ) ltable ) ) (setq TABLES-DEFINITION (append (list (list ";;" "Export XML de définition de tables (C)G-EAUX 2013")) (list (list ";; Fichier" dwgprefix dwgname )) (list (list ";; date" (PW_CDATE))) (list (list ";; Par" (getenv "username"))) '("") ltabledesc '("") ;; ltabledef (pw_flatten_list ltabledef) ) ) ;;ecriture fichier XML (setq sheet-nms "urn:schemas-microsoft-com:office:spreadsheet") ;;préparation GPX et trk (carnet de randonnées) (setq pw-xmldoc (vlax-create-object "MSXML2.DOMDocument")) (vlax-put-property pw-xmldoc 'async :vlax-False) ;;dom1.async = :vlax-False ;; dom1.resolveExternals = False (vlax-put-property pw-xmldoc 'resolveExternals :vlax-False) ;;ValidateOnParse (vlax-put-property pw-xmldoc 'ValidateOnParse :vlax-False) ;;UseInlineSchema ;;(vlax-put-property pw-xmldoc 'UseInlineSchema :vlax-False) (setq fich (getfiled "Fichier MsXml à écrire : " (strcat dwgprefix dwgname "_tables") "xml" 1 ) ) (pw_ecritNewXml "TABLES-DEFINITION" ) (vlax-invoke-method pw-xmldoc 'save fich) (vlax-release-object pw-xmldoc) (setq pw-xmldoc nil) (startapp "explorer" fich) (princ) ) ;;*************************************************************************** ;§/ade/Creer des tables contenues dans un fichier tables.xml/none ;;le fichier xml peut être écrit par ECRIT_TABLE_DANS_XML (defun c:Creer_tables_depuis_xml (/ tblname tbldesc l-fields) ;;chargement des description de table (prompt "\nChargez la définition de tables:") (c:chargexml) (foreach l TABLES ;;l = '("E-ACCESS" "Table des accessoires eau potable") (setq tblname (car l)) (setq tbldesc (cadr l)) (setq l-fields (eval (read tblname))) ;;création des tables : (NA_addtable_if_not tblname tbldesc l-fields) ) ) ;;*************************************************************************** ;§/ade/Redéfinir et uniformiser les tables contenues dans un fichier tables.xml/none ;;le fichier xml peut être écrit par ECRIT_TABLE_DANS_XML (defun c:miseajour_tables_depuis_xml (/ tblname tbldesc l-fields) (alert "La mise à jour de la table à partir des fichier xml de définition de table\nPeuvent détruire les champs spéciaux issus d'un import APIC FEA\nLyonaise des Eaux" ) (pw_bydefault "mise-a-jour" "Non") (pw_getkwordmem "\nRéaliser la mise à jour de la table ?/Oui Non" "mise-a-jour" ) (if (= "Oui" mise-a-jour) (progn ;;chargement des description de table (prompt "\nChargez la définition de tables:") (c:chargexml) (foreach l TABLES ;;l = '("E-ACCESS" "Table des accessoires eau potable") (setq tblname (car l)) (setq tbldesc (cadr l)) (setq l-fields (eval (read tblname))) (setq l-fields (na_corrige_lfields l-fields)) ;;création des tables : (if (NA_modifytab tblname tbldesc l-fields) (prompt (strcat "\nTable " tblname " mise à jour avec succès")) (prompt (strcat "\nTable " tblname " non mise à jour")) ) ) ) ) (princ) ) ;;*************************************************************************** ;§/ade/corrige une liste l-fields venant d'un fichier xml /l-fields ;; (defun na_corrige_lfields ( l-fields ) (setq l-fields (mapcar '(lambda (x) (car (PW_CUTLISTAFTERRG x 3))) l-fields));_coupe si par erreur il y a plus de 4 éléments ;;complète si la valeur par defaut manque ;;chaine (setq l-fields (mapcar '(lambda (x) (if (and (< (length x) 4) (= "Character" (nth 2 x)) ) (append x '("")) x ) ) l-fields ) ) ;;nombre (setq l-fields (mapcar '(lambda (x) (if (and (< (length x) 4) (or (= "Integer" (nth 2 x)) (= "Real" (nth 2 x)) ) ) (append x '("")) x ) ) l-fields ) ) ;;point (setq l-fields (mapcar '(lambda (x) (if (and (< (length x) 4) (= "Point" (nth 2 x)) ) (append x '("0.0,0.0,0.0")) x ) ) l-fields ) ) (pw_supp_all '("" "" "" "") l-fields) ) ;;*************************************************************************** ;§/ade/Compléter et mettre à jour les tables contenues dans un fichier tables.xml/none ;;les champs existants sont redefinis, les autres sont ajoutés. les champs du dessin non contenus dans le XML sont conservés ;;le fichier xml peut être écrit par ECRIT_TABLE_DANS_XML (defun c:Completer_tables_depuis_xml (/ tblname tbldesc l-fields) ;;chargement des description de table (prompt "\nChargez la définition de tables:") (c:chargexml) (Na_Completer_tables TABLES) (princ) ) ;******************************************************************* ;§/ade/retourne la liste des (champs valeur) d'une entité en mode rapide/ename TableName ;;(NA_GetfieldData (enam) "EP_TRONC_COND")->(("FeatId" 708) ("PDF" "") ("UNI_DIST" "LES CARROZ") ("NOM" "") ("ELEVATION" "") ("AN_POSE" "") ("AEPANMES" 1975) ("NATURE" "2") ("DIAMETRE" 100) ("NAT_MAT" "2") ("COMMENT" "")) ;; les autres fonctions: ;;;(LIST_ELEM_DONNEES (enam)) rapides, que les tables nadiaa :-> (("ADRESSE" "PROMENADE DE L' ARVE")... ) ;;;(GET_DONNEES_ENTITE (enam)) rapide, toutes les tables :-> (("E-TRONCO" (("ADRESSE" "PROMENADE DE L' ARVE")...)) ;;;(AM_GETTABLEDATA (enam) "E-TRONCO"): lent, ne retourne que les valeurs: '(("PROMENADE DE L' ARVE" "1085" 0)) (defun NA_GetfieldData (ename TableName / TabDef Rec_Id lfields lchpval ) (if (not (setq Rec_Id (ade_odgetrecord ename TableName 0))) (prompt "\ntable non présente") (progn (setq TabDef (ade_odtabledefn TableName)) (setq lfields (mapcar '(lambda (x) (cdr (assoc "ColName" x)) ) (cdr (assoc "Columns" TabDef)) ) ) (setq lchpval (mapcar '(lambda (x) (list x (ade_odgetrecfield Rec_Id x))) lfields ) ) (ade_odfreerec Rec_Id) lchpVal ) ) ) ;******************************************************************* ;§/ade/retourne la liste des (champs description valeur) d'une netité/ename TableName ;;(NA_GetfieldDescData (enam) "INSEE")->(("CDC" "Découpage de la commune en cantons" 0)("CHEFLIEU" "Chef-lieu de canton" 0)) (defun NA_GetfieldDescData ( ename TableName / TabDef ColLst ColDef Col cnt ColLst NumRecs Tables _ColLst) (setq Tables (ade_odgettables ename) ColLst '() ) (if Tables (progn (if (member TableName Tables) (progn (setq ColDef (AM_GetTableFormat TableName)) (if ColDef (progn (setq ;ColDef (mapcar 'car ColDef) NumRecs (ade_odrecordqty ename TableName) cnt 0 ) (repeat NumRecs (setq _ColLst '()) (foreach Col ColDef (setq _ColLst (cons (list (car Col)(cadr Col) (ade_odgetfield ename TableName (car Col) cnt)) _ColLst)) ) (setq _ColLst (reverse _ColLst) ColLst (cons _ColLst ColLst) cnt (1+ cnt) ) ) (setq ColLst (reverse ColLst)) )) )) )) (car ColLst) )
-
Elle est très stylée, ta routine, compacte au maximum !
-
Fraid, merci pour le partage, mais, elle est pas vilaine, cette fenêtre, elle est "vintage" ! a+ gégé
-
[Résolu] Ajouter une liste de formats d'imprimantes
GEGEMATIC a répondu à un(e) sujet de Curlygoth dans Suggestions de développements
Salut Curlygoth, pour comprendre, en gros, tu génère un fichier pmp par sendkey, parce que ça ne peux se faire que par l'interface Autocad, c'est ça ? Je me rappelle avoir eu ce problème pour automatiser un tracé raster avec le minimum de marge. J'avais du créer une liste de formats (en pixel) à créer manuellement ! horrible ! Mais ensuite, j'avais trouvé un combine, dont je ne me rappele plus bien, pour créer mes format utiles au niveau du serveur d'impression windows XP, et ensuite de pouvoir les utiliser facilement avec n'importe quelle imprimante (surtout les nombreux convertisseur pdf que j'utilisais alors ... en 2006 ...) ci dessous un utilitaire pour créer les formats existants sous forme de rectangles: ;;************************************************************************** ;§/traces/trace les formats de papier disponibles de l' onglet courant/none ;;le nom des formats soit contenir leur taille en pixels largeur x hauteur ; (defun c:trace_format_actuels ( / lform ph l ) (if (not ti-dpi) (setq ti-dpi 300) ) (setq lform (pw_GetCanonicalMediaNames)) (setq lform (mapcar 'pw_sep_ch_nomb lform)) ;;ci dessous pour ne laisser que les nombres (setq lform (mapcar '(lambda (x) (vl-remove-if-not 'numberp (mapcar 'pw_to_type x) ) ) lform ) ) (foreach l lform ;;pour mettre en mm un format à ti-dpi dpi (if (<= 2 (length l)) (progn (setq ph (list (* (/ 25.4 ti-dpi) (car l))(* (/ 25.4 ti-dpi) (cadr l)))) (command "_rectang" '(0 0) ph) ) ) ) ) ;;************************************************************************** ;§/traces/retourne la liste des formats de papier disponibles de l' onglet courant/none ; (defun pw_GetCanonicalMediaNames ( / acadObject acadDocument caname Ac-layout ) (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 Ac-layout (vlax-Get-property acadDocument 'ActiveLayout)) ;;rafraichir les infos (vlax-invoke-method Ac-layout 'RefreshPlotDeviceInfo) (setq caname (vlax-invoke-method Ac-layout 'GetCanonicalMediaNames)); (setq caname (vlax-variant-value caname)) (vlax-safearray->list caname) ) ;;************************************************************************** ;§/traces/trace le format de papier peronalisé/form pb ;;le nom des formats soit contenir leur taille en pixels largeur x hauteur ;; style "UserDefinedRaster (2166.00 x 1660.00Pixels)" ;;pb est le point bas du rectangle (defun trace_format (form pb / ph) (setq form (pw_sep_ch_nomb form)) ;;ci dessous pour ne laisser que les nombres (setq form (vl-remove-if-not 'numberp (mapcar 'pw_to_type form))) ;;pour mettre en mm un format à 300 dpi (if (<= 2 (length form)) (progn (setq xh (* (/ 25.4 ti-dpi) (car form)) yh (* (/ 25.4 ti-dpi) (cadr form)) ) (command "_rectang" pb (pw_prp pb xh yh)) ) ) ) -
Calcul diamètre tuyau à la sortie d'un bassin de tamponnement
GEGEMATIC a répondu à un(e) sujet de Perline dans Infrastructures
salut, Tien je ne connaissais pas, et ça a l'air plutôt bien foutu. ce qui m'amuse, c'est que jusqu'ici ma référence était : La Ville et son assainissement qui avait été présenté à l'époque avec le même slogan: "l'IT77 est morte, vive la ville et son assainissement !" le lien ci dessus est une version résumée, je ne retrouve pas de lien vers l'original, qui fait 700 pages ... a+, gégé -
Toi aussi tu as trouvé ça bizarre ! Pour info, voilà comment c'est arrivé: réponse GRDF au DICT, alignement des pdf par 2 points, mais l'accrochage z était activé ... légère inclinaison du PDF (je suis surpris, je croyais qu'il fallait lancer align3d pour que le z soit pris en compte) Conversion PDF > entité dessin on ne voit rien de choquant. export dxf pour implantation au GPS: là on s'aperçoit sur le contrôleur du GPS de l'écart, car le gps supprime l'élévation, donc la polyligne se déplace. heureusement l'écart était gros, sinon on ne s'en serait pas rendus compte ... a+ gégé
-
Qu utilisez vous pour vos métrés ?
GEGEMATIC a répondu à un(e) sujet de Marc Blancher dans Devis, métré, estimation, quantitatif
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é
