Aller au contenu

Extrusion suivant une polyligne 3d


GOLUM69

Messages recommandés

Bonjour à tous,

Je travaille dans une entreprise de travaux publics et nous utilisons principalement Autocad et Covadis.

On m'a demandé de modéliser en 3D des bordures suivant une polyligne 3d.

Pour se faire; j'ai créer mes blocs formant le profil de ma bordure sur un plan xy.

Je souhaiterai ainsi pouvoir insérer en fonction de la bordure, le profil adapté sur une point de la polyligne 3d.

Puis faire une rotation 3d pour que mon profil soit à la perpendiculaire de ma polyligne 3d.

Je souhaiterai avoir le choix de faire un miroir afin de la tourner de l'autre coté suivant le coté de la voirie.

Et pouvoir l'extruder avec la fonction balayage entre les profils précédemment insérés.

Rendu final (image1).

J'aimerai créer un lisp, me permettant d'exécuter la fonction décrite précédemment.

J'ai commencé mon lisp, cependant je suis resté bloquer sur la rotation 3d.

En espérant que quelqu’un pourra m'aider. Merci par avance.

 

(defun c:bordure3d ()

 

(initget "T1 T2 T3 T4")

 

(setq REP (getkword "\nType de bordure [T1/T2/T3/T4] <T2> : "))

(setq p(getpoint "\nPoint d'insertion de la bordure :"))

(cond

((= Rep "T1")

(command "-inserer" "bordureT1" p 1 1 0))

((= Rep "T2")

(command "-inserer" "bordureT2" p 1 1 0))

((= Rep "T3")

(command "-inserer" "bordureT3" p 1 1 0))

((= Rep "T4")

(command "-inserer" "bordureT4" p 1 1 0))

)

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

Si tu utilise la commande BLAYAGE et pas EXTRUSION, ton profil de bordure n'a pas besoin d'être dessiné sur un plan perpendiculaire à ta polyligne 3D.

Il suffit de le dessiner en vue en plan, de prendre la commande balayage, de sélectionner le profil, puis avec l'option Point de base le point d'insertion de ton profil, et enfin la polyligne 3D à suivre.

Le côté de dessin dépend du sens de dessin de la polyligne.

 

Tu peux aussi faire cette manipulation avec la commande de COVADIS : Covadis 3D -> Volet paysager -> Extrusion le long d'un chemin.

Lien vers le commentaire
Partager sur d’autres sites

y aurai t il gourance de forum?

 

Oui je me suis surement trompé..j'ai bien une version complète d'autocad.

 

Si tu utilise la commande BLAYAGE et pas EXTRUSION, ton profil de bordure n'a pas besoin d'être dessiné sur un plan perpendiculaire à ta polyligne 3D.

 

J'ai essayé le balayage, j'ai mis mon point de base sur le point d'extrémité de ma polyligne 3d, cependant mon solide 3d se dessine à l'envers.

J'ai essayé avec la commande rotation mais il faut que je modifie mon scu pour pouvoir le faire.

J'ai vu qu'en modifiant dans les propriétés de l'objet, je peux mettre un angle de rotation mais je ne sais pas accéder à la boite de propriété en lisp.

Lien vers le commentaire
Partager sur d’autres sites

Merci pbrion pour tes réponses. ;)

 

Du coup je viens de m'apercevoir, que la fonction balayage permet de suivre un chemin mais ne me permet pas de sélectionner deux profils différents pour la modélisation 3d.

Donc je pense que la seul fonction 3d qui me permette ça c'est lissage.

Mais du coup pour la fonction lissage on en revient au même problème car il faut que je place mes profils à la perpendiculaire de la pol 3d.

Lien vers le commentaire
Partager sur d’autres sites

Je suppose qu'on parle de projet de voirie par profils type (?)

Si oui la modélisation se fait toute seule à condition que tes profils types de Covadis soit suffisamment détaillés.

Si non, tu crée un point type sur le profil qui va faire générer une poly3d à covadis mais pour l'habiller ça va être coton

Peut etre une piste

Aux vue de ton code, T1, T2, ... sont des blocs contenant la poly 2d de ton profil que tu explose avant le lissage ?

Tu peux toujours sauver ton bloc avec la poly dans le plan YZ Il te faut ensuite l'orienter en fonction de la bissectrice de l'angle que fait ta poly 3d, et ça... il te faut un matheux car trouver une bissectrice sur un angle quelconque en 3d, c'est une histoire de matrice que je maitrise pas.

ps

lissage ou balayage tiennent compte du point 0 de la poly et de sa direction attention à la construction des poly

 

Lien vers le commentaire
Partager sur d’autres sites

Aux vue de ton code, T1, T2, ... sont des blocs contenant la poly 2d de ton profil que tu explose avant le lissage ?

 

C'est ça exactement, je l'explose avant le lissage

 

Il te faut ensuite l'orienter en fonction de la bissectrice de l'angle que fait ta poly 3d, et ça... il te faut un matheux car trouver une bissectrice sur un angle quelconque en 3d, c'est une histoire de matrice que je maitrise pas.

 

Oui c'est le coeur de mon problème, l'angle est variable et je ne sais comment m'y prendre ..

Maisla fonction lissage, permet de choisir plusieurs profil mais pas de suivre un chemin ?

Lien vers le commentaire
Partager sur d’autres sites

je n'ai pas dis que c'était infaisable, juste j'étais hors compétence et pas efficace . Car si tu as covadis, pour quoi réinventer la roue?

 

le travail que tu veux faire, les profils qui suivent des polylignes 3d avec les découpes nickel aux bissectrices, covadis est fait pour ça.

De toute façon, la difficulté du taff, c'est pas de poser des bordures, c'est de gérer le pente,générer les profils type suivant les tabulations etc.. bref si le taff est déja fait sur covadis, bosse tes profils plutôt que de te lancer dans la matrice. Si le projet n'est pas créé sur covadis (ou assimilé) , bon courage tout monter avec des poly 3d à la main même avec des lisp, c'est coton.

 

 

 

 

Lien vers le commentaire
Partager sur d’autres sites

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é