Aller au contenu

Routine Lisp sur Polyligne 3D


Messages recommandés

Posté(e)

Bonjour à tous et merci pour toutes les informations présentes ici.

Débutant complet sur Autocad, je cherche sur une polyligne 3D

  • à insérer un bloc tous les mètres par exemple avec un attribut dynamique (en donnant le numéro du 1er point et une valeur d'incrément)
  • l'idéal ensuite serait de récupérer la position en X Y Z des blocs dans un fichier Excel.

Merci beaucoup

Posté(e)

Salut Vitvit,

Tu travaille avec uniquement Autocad?

Tu as Covadis? (ce serais tellement plus simple)

D'une manière simple, tu a la commande Mesurer qui peut bien t'aider.

Il y a un intérêt à passer par du LISP?

  • Like 1

Lispeur éternel débutant!
Autocad Map3D 2023
Covadis-Autopist 18.2

Posté(e)

Oui uniquement sur Autocad et non je n'ai pas Covadis.

Non pas obligatoire de passer par du LISP

Avec la commande mesurer, j'arrive à déplacer le bloc sur la polyligne 3D mais je ne choisis pas le nom du 1er point et n'ai pas d'incrémentation

Posté(e)

Pour la procédure et ne pas faire de bourdes, on vas valider ensemble que je fait bien ce que tu demande. Je te joint un fichier, avec un bloc et une polyligne 3D.

  • ouvre le fichier
  • commande MESURER
  • sélection de la polyligne 3D
  • option BLOC
  • entrer le nom du bloc (il se nome "point")
  • Non (ne pas orienter le bloc)
  • entrer la valeur 1 (espacement des "points" )

 

  • commande ATTSYNC
  • option NOM
  • "point"

 

  • commande ATTOUT
  • choisir là où enregistrer la liste
  • sélectionner les blocs 

 

C'est 3 commandes qui te fournissent une liste des blocs que tu peut importer sous Excel, avec les position en X,Y,Z.

 

Dit moi si c'est bien le résultat que tu attend!

tst bloc point.dwg

Lispeur éternel débutant!
Autocad Map3D 2023
Covadis-Autopist 18.2

Posté(e)

Merci beaucoup pour ta réactivité.

Cela correspond assez à ce que je recherche.

Il faudrait que je puisse nommer mon 1er point et que je puisse avoir une incrémentation pour les noms des points suivants.

A la fin de ton exemple, je suis obligé de sélectionner les blocs un à un, est il possible de sélectionner tous les blocs "points" avant de faire l'export ?

Comment as tu fait pour créer le bloc avec les coordonnées ?

Posté(e)
Il y a 1 heure, vitvit2000 a dit :

A la fin de ton exemple, je suis obligé de sélectionner les blocs un à un, est il possible de sélectionner tous les blocs "points" avant de faire l'export ?

Tu en sélectionne un, puis clic droit, "Sélectionner Similaire", puis tu lance ATTOUT, qui vas passer l'étape de sélection puisque tu as déjà une sélection active.

 

Il y a 1 heure, vitvit2000 a dit :

Comment as tu fait pour créer le bloc avec les coordonnées ?

c'est un champ spécifique, disponible à la création du bloc (ou dans l'éditeur).

Tu applique à la définition d'attribut en valeur par défaut.

image.png.9e0e320480f0367cfcd46488d8aaff90.png

image.png.f4269abc8522f48c623fe6d69b5e0420.png

les champs "EspaceRéservéBloc" renverront des propriété un bloc insérés, ici en l'occurrence, la position

 

Il y a 1 heure, vitvit2000 a dit :

Il faudrait que je puisse nommer mon 1er point et que je puisse avoir une incrémentation pour les noms des points suivants

Ca c'est plus compliqué. Avec Covadis, on a la possibilité de numéroter les points facilement, et la commande MESURER me les créé dans le désordre. donc il me les numérote 1, 350, 2, 349, 3, 348, 4, ect....

là j'ai pas trop de solution

 

D'autres pourront certainement t'apporter plus de solution, ou d'autres manières de procéder/automatiser !!!

Lispeur éternel débutant!
Autocad Map3D 2023
Covadis-Autopist 18.2

Posté(e)
il y a 21 minutes, Vincent P. a dit :

Ca c'est plus compliqué. Avec Covadis, on a la possibilité de numéroter les points facilement, et la commande MESURER me les créé dans le désordre. donc il me les numérote 1, 350, 2, 349, 3, 348, 4, ect....

Je touche quasiment au but 🙂

J'ai l'impression que les points sont créés dans le sens de la polyligne. Est ce bien le cas ? Et si oui est ce que ce le sera toujours ?

image.thumb.png.e17f489df23e50608fedb0f4bf8a9a59.png

Posté(e)

Tu peut tenter la chose suivante (ca semble fonctionner)

Tu ajoute un attribut MAT (matricule) à la définition de bloc (ATTSYNC pour mettre a jours les blocs insérés)

lors du ATTOUT il exporte les blocs avec un matricule vide. Dans excel, ils semble bien rangés dans l'ordre de la polyligne, donc tu incrémente la colonne MAT 1, 2, 3, 4 ect...

Puis de retour dans Autocad, ATTIN vas réimporter le fichier .txt dans lequel tu a mis à jour les MAT, et l'applique à tes blocs dans le dessins.

 

  • Like 1

Lispeur éternel débutant!
Autocad Map3D 2023
Covadis-Autopist 18.2

  • 2 semaines après...
Posté(e)

Bonjour et merci pour toutes vos réponses.

Si c'est possible, j'aimerai trouver un lisp qui pour toutes les polylignes 3D de mon fichier me récupère tout les points 3D avec leurs propriétés (nom, matricule,etc..) ainsi que le nom de la polyligne sur laquelle chaque point se trouve.

En espérant avoir été clair. Merci d'avance

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é