Aller au contenu

Comment exporter Mensura en DWG un fichier de points topo ?


Messages recommandés

Posté(e)

Bonjour à tous,

Je récupère en dwg un fichier de Mensura et les points topo sont explosés, 1 point, 1 texte pour l'alti, 1 texte pour le matricule ...
Je crois bien que c'est une histoire de paramétrage sous Mensura lors de l'export pour bien récupérer les points en blocs + attribut mais impossible de me rappeler exactement.

Est-ce-que vous pourriez m'éclairer ?

Bien cordialement,

Sylvain

 

Posté(e)

Salut,

Je viens de tester avant de répondre et un export DWG n'explose pas les blocs, normalement !

Tu es quelle version de Mensura ? Tu récupères le DWG ou c'est toi qui l'a créé ? Peux-tu partager le fichier source DWG et/ou Mensura ?

Erased

 

"Le risque de prendre une mauvaise décision n'est rien comparé à la terreur de l'indécision"

Maimonide.

Posté(e)

Salut et merci Erased,

J'ai récupéré le dwg et non crée cf. plus haut, ainsi je ne connais pas la version de Mensura utilisée, ce genre de chose a pu changer depuis 4 ou 5 ans ?

Pour la petite histoire, la normalité comme le bon sens fait partie finalement ce qui est le plus mal partagé.
Cf. Descartes et Benjamin Franklin qui ironisent sur le sujet.
 
J'ai déjà eu plusieurs fois des blocs de pts topo explosés (1 pt + 1 etxte pour l'alti + 1 texte pour le matricule).
Je suppose que ça vient de mauvaises pratiques et tout simplement de méconnaissance du produit (comme tant de fois). Lorsqu'on le sait, il n'y a plus de sujet.
D'autant que quant on exporte, on n'a pas tjrs le logiciel pour vérifier que l'export est vraiment propre, et puis par définition, c'est pour quelqu'un de l'extérieur ...
Et ainsi si c'est juste une case à cocher ou autres, on n'a pas tjrs le feedback de celui qui a reçu le fichier. La personne se débrouille avec ce qu'il a.
Par contre peut-être que les oreilles de l'expéditeur sifflent un peu 😆 .

Donc récupérer les blocs explosés, c'est possible, non explosés, c'est possible aussi. Je suppose que ça se joue à l'export mais où, c'est là que je sèche.
De mémoire, c'était très simple. Si vous savez, je veux bien avoir vos lumières.

Dans l'immédiat, je ne peux pas partager le dwg, mais il est comme je l'ai décrit.

Merci encore, slts.

 

 

 

 

Posté(e)

Hello Erased, hello à tous,

Ci-joint le fichier dwg avec les points topo avec du texte au lieu d'attributs.
Je me demande s'il n'y a pas  un problème de dénomination : point topo Mensura, point seul, attribut, bloc point Autocad, bloc point Covadis, point Autocad ... ?

Moi, je souhaiterais juste récupérer un point (dans un calque) avec une alti et un matricule associés (chacun dans un calque propre, calque alti et calque matricule).
Et ce, sans que le dessinateur sous Mensura n'ait à faire de manip contraignante ou fastidieuse.
Encore une fois, il me semble que ça se gérait dans les options de l'export.

Bien à tous, salutations.

test avec block-2.dwg

Posté(e)

Ce que tu peux faire aussi si tu n'as pas Covadis et que tu veux rendre compatible ton fichier avec celui-ci en créant le bloc TCPOINT.

Voici le code approprié à ton dessin pour faire cette conversion. (Faire un copier-coller directement en ligne de commande)

(if (not (tblsearch "BLOCK" "TCPOINT"))
  (progn
    (entmake
      '((0 . "BLOCK") (100 . "AcDbEntity") (100 . "AcDbBlockBegin") (2 . "TCPOINT") (70 . 2) (8 . "0") (62 . 256) (6 . "ByLayer") (370 . -2) (10 0.0 0.0 0.0))
    )
    (entmake
      '(
      (0 . "POINT")
      (100 . "AcDbEntity")
      (67 . 0)
      (410 . "Model")
      (8 . "0")
      (62 . 0)
      (100 . "AcDbPoint")
      (10 0.0 0.0 0.0)
      (210 0.0 0.0 1.0)
      (50 . 0.0)
      )
    )
    (entmake
      '(
        (0 . "ATTDEF")
        (100 . "AcDbEntity")
        (67 . 0)
        (410 . "Model")
        (8 . "T_PT_MAT")
        (100 . "AcDbText")
        (10 0.25 0.25 0.0)
        (40 . 0.75)
        (1 . "")
        (50 . 0.0)
        (41 . 1.0)
        (51 . 0.0)
        (7 . "STANDARD")
        (71 . 0)
        (72 . 0)
        (11 0.0 0.0 0.0)
        (210 0.0 0.0 1.0)
        (100 . "AcDbAttributeDefinition")
        (280 . 0)
        (3 . "Matricule")
        (2 . "MAT")
        (70 . 0)
        (73 . 0)
        (74 . 0)
        (280 . 0)
      )
    )
    (entmake
      '(
        (0 . "ATTDEF")
        (100 . "AcDbEntity")
        (67 . 0)
        (410 . "Model")
        (8 . "T_PT_COD")
        (100 . "AcDbText")
        (10 -0.25 -0.75 0.0)
        (40 . 0.75)
        (1 . "")
        (50 . 0.0)
        (41 . 1.0)
        (51 . 0.0)
        (7 . "STANDARD")
        (71 . 0)
        (72 . 0)
        (11 -0.25 0.0 0.0)
        (210 0.0 0.0 1.0)
        (100 . "AcDbAttributeDefinition")
        (280 . 0)
        (3 . "CodeSymbole")
        (2 . "COD")
        (70 . 0)
        (73 . 0)
        (74 . 3)
        (280 . 0)
      )
    )
    (entmake
      '(
        (0 . "ATTDEF")
        (100 . "AcDbEntity")
        (67 . 0)
        (410 . "Model")
        (8 . "T_PT_ALT")
        (100 . "AcDbText")
        (10 0.25 -1.0 0.0)
        (40 . 0.75)
        (1 . "")
        (50 . 0.0)
        (41 . 1.0)
        (51 . 0.0)
        (7 . "STANDARD")
        (71 . 0)
        (72 . 0)
        (11 0.25 -0.25 0.0)
        (210 0.0 0.0 1.0)
        (100 . "AcDbAttributeDefinition")
        (280 . 0)
        (3 . "Altitude")
        (2 . "ALT")
        (70 . 0)
        (73 . 0)
        (74 . 3)
        (280 . 0)
      )
    )
    (entmake '((0 . "ENDBLK") (100 . "AcDbBlockEnd") (8 . "0") (62 . 256) (6 . "ByLayer") (370 . -2)))
  )
)
(defun TCPoint4 (pt num cod / )
  (entmake
    (append
      '(
        (0 . "INSERT")
        (100 . "AcDbEntity")
        (67 . 0)
        (410 . "Model")
        (8 . "T_PT_SEMIS")
        (100 . "AcDbBlockReference")
        (66 . 1)
        (2 . "TCPOINT")
        (41 . 1.0)
        (42 . 1.0)
        (43 . 1.0)
        (50 . 0.0)
        (70 . 0)
        (71 . 0)
        (44 . 0.0)
        (45 . 0.0)
        (210 0.0 0.0 1.0)
      )
      (list (cons 10 pt) '(210 0.0 0.0 1.0))
    )
  )
  (entmake
    (append
      '(
        (0 . "ATTRIB")
        (100 . "AcDbEntity")
        (67 . 0)
        (410 . "Model")
        (8 . "T_PT_MAT")
        (100 . "AcDbText")
      )
      (list (cons 10 pt))
      '(
        (40 . 1.0)
      )
      (list (cons 1 num))
      '(
        (50 . 0.0)
        (41 . 1.0)
        (51 . 0.0)
        (7 . "STANDARD")
        (71 . 0)
        (72 . 0)
      )
      (list (cons 11 pt))
      '(
        (210 0.0 0.0 1.0)
        (100 . "AcDbAttribute")
        (280 . 0)
        (2 . "MAT")
        (70 . 0)
        (73 . 0)
        (74 . 0)
        (280 . 0)
      )
    )
  )
  (entmake
    (append
      '(
        (0 . "ATTRIB")
        (100 . "AcDbEntity")
        (67 . 0)
        (410 . "Model")
        (8 . "T_PT_COD")
        (100 . "AcDbText")
      )
      (list (cons 10 pt))
      '(
        (40 . 1.0)
      )
      (list (cons 1 cod))
      '(
        (50 . 0.0)
        (41 . 1.0)
        (51 . 0.0)
        (7 . "STANDARD")
        (71 . 0)
        (72 . 0)
      )
      (list (cons 11 pt))
      '(
        (210 0.0 0.0 1.0)
        (100 . "AcDbAttribute")
        (280 . 0)
        (2 . "COD")
        (70 . 0)
        (73 . 0)
        (74 . 3)
        (280 . 0)
      )
    )
  )
  (entmake
    (append
      '(
        (0 . "ATTRIB")
        (100 . "AcDbEntity")
        (67 . 0)
        (410 . "Model")
        (8 . "T_PT_ALT")
        (100 . "AcDbText")
      )
      (list (cons 10 pt))
      '(
        (40 . 1.0)
      )
      (list (cons 1 (rtos (caddr pt) 2 2)))
      '(
        (50 . 0.0)
        (41 . 1.0)
        (51 . 0.0)
        (7 . "STANDARD")
        (71 . 0)
        (72 . 0)
      )
      (list (cons 11 pt))
      '(
        (210 0.0 0.0 1.0)
        (100 . "AcDbAttribute")
        (280 . 0)
        (2 . "ALT")
        (70 . 0)
        (73 . 0)
        (74 . 3)
        (280 . 0)
      )
    )
  )
  (entmake '((0 . "SEQEND") (62 . 256) (6 . "ByLayer") (370 . -2)))
)
((lambda ( / dist_num ang_num ss n pt ss_num num)
  (setq dist_num 0.25)
  (setq ang_num (* pi 0.75))
  (setq ss (ssget '((0 . "POINT"))))
  (cond
    (ss
      (repeat (setq n (sslength ss))
        (setq pt (cdr (assoc 10 (entget (ssname ss (setq n (1- n)))))))
        (setq ss_num (ssget "_C" pt (polar pt ang_num dist_num) '((0 . "TEXT") (8 . "Textes - Numéros"))))
        (setq num (cdr (assoc 1 (entget (ssname ss_num 0)))))
        (TCPoint4 pt num "")
      )
    )
  )
))

 

  • Like 1

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

Bonjour si j'ai bien compris c'est depuis Mensura que vous souhaitez générez des blocs points/Altitude/Matricule et les avoir dans un DWG.

 

Pour se faire, vous devez utiliser créer bloc attributs à partir de point, sélectionner le bloc qui va bien (un bloc dans Mensura avec les attributs dans un calque le point dans l'autre et le matricule dans un autre), sélectionnez tous les points.

 

Les blocs seront dépendants des points et exportés en DWG.

 

Bonne journée

Posté(e)

Bonjour,

Ok, merci Leo_Mensura.

Si je paraphrase, il faut donc doubler les points Mensura avec des blocs points avec attributs.
Et à part pour l'export, ces blocs point avec attributs ne servent pas ? Ils font doublons avec les points Mensura ? Il serait donc préférable de les effacer une fois l'export dwg fait ?

Il n'y avait pas une manip avant où cela se passait dans le paramétrage de l'export en dwg ?

Très bonne fin de journée.
Slts,

Sylvain

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 compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • 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é