mehdimacro Posté(e) le 21 avril 2023 Posté(e) le 21 avril 2023 Bonjour à tous Est-il possible de transformer des objets cartographique( tout en gardant les données du Shape d' ou proviennent les objets cartographique) en polylignes ou en blocs ? Et si oui comment faire ? Par avance mecri de votre aide Bonne journée à tous !
Vincent P. Posté(e) le 21 avril 2023 Posté(e) le 21 avril 2023 Salut @mehdimacro, Tu a deux manières d'importer un fichier Shape avec Autocad MAP 3D : - soit en connecteur FDO (Connexion aux données) ce qui lie le Shape et te génère des "objets cartographique", et qui reste lié au fichier .shp, .shx ect... - ou alors avec MAPIMPORT qui insert en "dure" dans ton dessin les éléments (plus lié au fichier .shp .shx ect...) en temps que points/blocs/polyligne selon la nature des objets. Espace de travail PLANIFICATION, ruban Insertion Lispeur éternel débutant! Autocad Map3D 2023 Covadis-Autopist 18.2
mehdimacro Posté(e) le 21 avril 2023 Auteur Posté(e) le 21 avril 2023 Salut Vincent P. Merci beaucoup pour ta réponse tu confirme mes doutes par rapport objet cartographique Et toi en générale tu utilise quel méthode sur les 2
Vincent P. Posté(e) le 21 avril 2023 Posté(e) le 21 avril 2023 Ca dépend de ce que tu veut en faire, si c'est pour de la visualisation, en FDO c'est plus simple. Si tu veut travailler avec, il faut passer par du MAPIMPORT Après, j'exploite pas trop la géomatique, le plus souvent je me contente de MAPIMPORT des plans de réseaux pour me faire des fichiers de compil de réseaux existants 1 Lispeur éternel débutant! Autocad Map3D 2023 Covadis-Autopist 18.2
albator44 Posté(e) le 26 décembre 2023 Posté(e) le 26 décembre 2023 Bonjour, Est il possible de récupérer une donnée d'objet pour la convertir en propriété? je récupère des courbes de niveau en 2D (polylignes) mais avec une donnée Z (OD dans la boite de propriétés) et je voudrais transformer tout ça en polyligne 3D, avec l'élévation correspondant à ma donnée Z, forcément. Merci de vos retours, ou pour n'importe quelle méthode me permettant de faire des MNT à partir des données RGE Alti 1m.
lecrabe Posté(e) le 27 décembre 2023 Posté(e) le 27 décembre 2023 Hello @albator44 Si tu as des Polylignes 2D (de type CN) au niveau ZERO avec en OD (Object Data) un champ numerique qui est en fait l altitude Z, alors la routine Lisp "OD2DXF38" ci-apres est indispensable ! Merci @bonuscad / Bruno ! La Sante, Bye, lecrabe ;; ;; Routine: OD2DXF38 par BV pour Patrice B. ;; ;; "Monter" en Z Altitude les Polylignes 2D (Les LWPOLYLINEs 2D ONLY !) ;; en fonction du Contenu d un champ OD de MAP ;; indiquant le Z / Altitude de la Polyligne ;; ;; Exemple CLASSIQUE : Polylignes (avec OD de MAP) = ;; Courbes de Niveau provenant de l IGN ... ;; ;; ;; C le Code DXF 38 qui indique l ELEVATION de la Polyligne 2D ;; ;; --- Interrogation Entite/Objet en Lisp --- ;; Commande: (entget (car (entsel)) '("*")) ;; (vl-load-com) (defun str2lst (str sep / pos) (if (setq pos (vl-string-search sep str)) (cons (substr str 1 pos) (str2lst (substr str (+ (strlen sep) pos 1)) sep) ) (list str) ) ) (defun ListBox (title msg keylab flag / tmp file dcl_id choice) (setq tmp (vl-filename-mktemp "tmp.dcl") file (open tmp "w") ) (write-line (strcat "ListBox:dialog{label=\"" title "\";") file ) (if (and msg (/= msg "")) (write-line (strcat ":text{label=\"" msg "\";}") file) ) (write-line (cond ((= 0 flag) "spacer;:popup_list{key=\"lst\";") ((= 1 flag) "spacer;:list_box{key=\"lst\";") (T "spacer;:list_box{key=\"lst\";multiple_select=true;") ) file ) (write-line "}spacer;ok_cancel;}" file) (close file) (setq dcl_id (load_dialog tmp)) (if (not (new_dialog "ListBox" dcl_id)) (exit) ) (start_list "lst") (mapcar 'add_list (mapcar 'cdr keylab)) (end_list) (action_tile "accept" "(or (= (get_tile \"lst\") \"\") (if (= 2 flag) (progn (foreach n (str2lst (get_tile \"lst\") \" \") (setq choice (cons (nth (atoi n) (mapcar 'car keylab)) choice)) ) (setq choice (reverse choice)) ) (setq choice (nth (atoi (get_tile \"lst\")) (mapcar 'car keylab))) ) ) (done_dialog)" ) (start_dialog) (unload_dialog dcl_id) (vl-file-delete tmp) choice ) (defun c:OD2DXF38 ( / js obj dxf_ent ename lst_tabl_def inc_key lst_def desc_od desc_tbl str) (princ "\nSelectionnez les Polylignes 2D (avec OD de MAP) ... ") (while (null (setq js (ssget (list '(0 . "*POLYLINE") (cons 67 (if (eq (getvar "CVPORT") 1) 1 0)) (cons 410 (if (eq (getvar "CVPORT") 1) (getvar "CTAB") "Model")) ;;;;;;;;;; Filtre pour les "Bonnes" Polylignes ;;;;;;;;;; '(-4 . "<NOT") '(-4 . "&") '(70 . 112) '(-4 . "NOT>") ;;;;;;;;;; Filtre pour les "Bonnes" Polylignes ;;;;;;;;;; ) ) ) ) (princ "\nCe n est pas un objet valable pour cette fonction ! ") ) (repeat (setq n (sslength js)) (setq obj (ssname js (setq n (1- n))) dxf_ent (entget obj) ename (vlax-ename->vla-object obj) ) (cond ((ade_odgettables obj) (setq lst_tabl_def (mapcar 'ade_odtabledefn (ade_odgettables obj)) inc_key 0) (foreach n lst_tabl_def (foreach el n (if (listp (cdr el)) (foreach sel (cdr el) (foreach msel sel (if (eq (car msel) "ColName") (setq lst_def (cons (cons (strcat "key" (itoa (setq inc_key (1+ inc_key)))) (cdr msel)) lst_def)) ) ) ) ) ) ) (if (not desc_od) (setq desc_od (cdr (assoc (listbox "Donnee d Objet" "Choisir une Donnee d Objet " lst_def 1) lst_def)) desc_tbl nil) ) (foreach n lst_tabl_def (if (assoc (cons "ColName" desc_od) (cdaddr n)) (setq desc_tbl (cdar n)) ) ) (cond (desc_tbl (setq str (ade_odgetfield obj desc_tbl desc_od 0)) (cond ((eq (type str) 'STR) (setq str (atof str))) ((eq (type str) 'INT) (setq str (float str))) ) (if (eq (cdr (assoc 0 dxf_ent)) "LWPOLYLINE") (entmod (subst (cons 38 str) (assoc 38 dxf_ent) dxf_ent)) (entmod (subst (cons 10 (list (car (cdr (assoc 10 dxf_ent))) (cadr (cdr (assoc 10 dxf_ent))) str)) (assoc 10 dxf_ent) dxf_ent)) ) ) ) ) (T (princ "\nPas de Donnees d Objet (OD de MAP) attachees ! ")) ) ) (prin1) ) Autodesk Expert Elite Team
albator44 Posté(e) le 28 décembre 2023 Posté(e) le 28 décembre 2023 merci Lecrabe! je teste ça aujourd'hui.
Olivier Eckmann Posté(e) le 28 décembre 2023 Posté(e) le 28 décembre 2023 Bonjour, Tu as la méthode proposé par @lecrabe. Si tu lis un peu l'anglais, tu as cette méthode native avec AutoCAD Map : https://forums.autodesk.com/t5/autocad-map-3d-forum/contour-with-elevation-properties-cad-map-3d-to-autocad-dwg/m-p/8822441/highlight/true#M54596 Si tu veux installer mon plug-in, tu auras une autre méthode : https://apps.autodesk.com/MAP3D/fr/Detail/Index?id=7146835859656784994&appLang=fr&os=Win64 , soit avec le fonction dédiée, soit avec la fonction de copie propriétés Olivier 1
lecrabe Posté(e) le 28 décembre 2023 Posté(e) le 28 décembre 2023 Hello Super réponse de Olivier ! Belle fin 2023, Bye, lecrabe Autodesk Expert Elite Team
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