Connexion
Menu Principal
Recherche
Menu secondaire
Image Aléatoire
Capricious-Soul_clan.png
Publicité
Formation Blender ElephormBlender 3d Elephorm


     






Problème d'opération boolean avec géométrie complexe
Touriste
Inscrit:
12/01 21:47:10
Post(s): 1
Bonjour,

Je débute sur blender et après quelques jours d'échecs je me suis décidée à demander un peu d'aide. J'espère que vous pourrez me donner de bons conseils.

Le but de mon projet est de modéliser une éprouvette à géométrie gyroide pour des essais de mécanique. Une gyroide a cette géométrie: https://img2.cgtrader.com/items/703712/0704772603/large/gyroid-cube-3d-model-stl.jpg

(1) La première étape : Python

J'ai généré cette géométrie gyroide sous python. Les surfaces type gyroide suivent la fonction cos(x)sin(y)+con(y)sin(z)+cos(z)sin(x)=0.
Ne pouvant pas épaissir une surface sous python, j'ai créé deux surfaces gyroides en ajoutant une constante pour les décaler et créer un intervalle (e) entre les deux surfaces. Equation utilisée : cos(x)sin(y)+con(y)sin(z)+cos(z)sin(x) (+/-) e/2=0.
Pour des raisons mécanique, j'ai ajouté un gradient d'épaisseur pour que l'épaisseur des parois augmente lorsque l'on se rapproche des extrémités basses et haute de l'éprouvette. Equation utilisée : cos(x)sin(y)+con(y)sin(z)+cos(z)sin(x) (+/-) e/2 (+/-) gradient*z=0. L'ajout d'un seul gradient sur une géométrie du même type donne ce résultat : https://www.researchgate.net/figure/PDLLA-scaffold-built-by-stereolithography-with-gyroid-architecture-showing-a-gradient-in_fig7_235609239

J'ai vu que créer ces gyroides sous blender est possible mais mon code python me permet de générer bien d'autres géométries (6) et je n'ai pas le temps de toutes les créer en y ajouter un gradient.

Sous python, je n'ai pas réussi à "fermer" ces surfaces sous python en créant une face bouchant cet intervalle e (construire un solide) alors je me suis redirigée vers l'outil blender.
J'exporte ces 6 surfaces sous format .obj : [img]http://pasteall.org/pic/show.php?id=06eccaca15f4d355ead34af1ce1b7b89[/img]

(2) Sous blender j'ai essayé une multitude de possibilités:

La première étape a été de vérifier que cela fonctionne sur un petit volume.
Je redéfinis les normales pour qu'elles pointes à l'extérieur de l'épaisseur (e) que je souhaite fermer : shading flip direction
puis : modifier -> Boolean -> gyroid intersect cube
Je conserve donc le volume "plein" de la gyroide

[img]http://pasteall.org/pic/show.php?id=9729496515a48afd854e57bcc2d5980a[/img]

(2.2)
J'ai donc fait le même essai sur l'ensemble de la géométrie
Je redéfinis les normales à l'inverse de l'exemple précédent (explication en dessous)
Je joins ces 6 surfaces
Je créer un volume représentant l'éprouvette.
J'utilise l'opération booléenne, différente cette fois ci:
boolean -> cube différence gyroid.
Je retire au cube le volume de la gyroide que je considère comme "vide".

Voici mon problème : avec une vue "solide" on voit bien que l'opération ne fonctionne pas

[img]http://pasteall.org/pic/show.php?id=2668510b77459e2f286e57b9476ba78c[/img]

Avec la vue "wireframe" on se rend compte que le volume est bien évidé mais certaines faces du cube persistent et donc cachent les partie vides. Je n'arrive pas à les supprimer pour avoir ma géométrie finale : est ce qu'il vaut mieux les corriger (suppression) ou changer de méthode ?

[img]http://pasteall.org/pic/show.php?id=abc40fe00f1d274c5144f43ea8ccc984[/img]

(2.3)
J'ai donc essayé de trouver une solution:
- en supprimant les les surfaces parasites (mesh->delete->faces, sans résultats parce que le maillage est mal réalisé
- j'ai sélectionné les edge loops puis essayé un clean up -> fill holes ou un Grid Fill, sans résultats...

Je n'ai donc pas de question très précise mais plutôt une question générale : est-ce que vous pensez que ce problème a une solution ? Si oui est ce qu'une opération booléenne est possible ?
Je me demande si j'oriente correctement les normales, ou si l'opération booléenne n'est possible qu'avec un volume fermé. Dans ce cas j'aimerais fermer les faces l'épaisseur de mes gyroides...

Merci à tous ceux qui consacreront un peu de leur temps à mon problème!

Contribution le : 13/01 00:04:03
Créer un fichier PDF de la contribution Imprimer


Re: Problème d'opération boolean avec géométrie complexe
Fou Furieux du Clan
Inscrit:
05/04/2015 06:54
De troyes(Aube)
Post(s): 177
salut,
je réédite,pas adapté au vu du sujet



bienvenue sur le

Contribution le : 13/01 09:01:24
Créer un fichier PDF de la contribution Imprimer


Re: Problème d'opération boolean avec géométrie complexe
OverdOzed
Inscrit:
19/03/2016 15:30
De Belgique
Post(s): 1146
Salut mPirs & tykrane,

Débuter sur Blender ne signifie pas forcément ne pas connaître les bases. Ici, on voit bien qu'il sait utiliser les modifier et sa question n'est pas pour les débutants, loin de là.

Sa question sur le sujet est complexe. Le modifier Booléen n'est pas adapté.

mPirs, si je comprends bien, ta géométrie, tu l'a généré avec python via blender ou via un autre logiciel ?

Sur Blender, pour épaissir, tu peux utiliser le modifier "solidify".

Tu dis que tu as 6 surfaces séparées. Je vois apparemment que celles-ci sont identiques. As-tu pensé au modifier "array" ? ça te permet non seulement de dupliquer ton mesh pour créer un maillage plus long, mais également de fusionner les chevauchements entre les copies automatiquement.

Contribution le : 13/01 09:53:15
_________________
Mon projet jeu vidéo
Mes tutos
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
Compte*
Nom   Mot de passe   Authentification
Message:*



[Recherche avancée]



Sujets récemment répondus
Forums Sujets Réponses Lus Dernières contributions
Python & Plugins [non résolu] Addon pour fonction mirroir spécifique. 1 9 Aujourd'hui 00:59:41
Gilead_Maerlyn 
Mes premières images sous Blender (débutants) mon premier bonzai low poly (un peu déplumé)    [1][2][3]...[10] 93 3694 Hier 22:49:35
blend74 
Concours Défi du clan 2019 n°1 / Thème: La ferme 4 250 Hier 21:28:08
titi38360 
Questions & Réponses roue à rochets 5 52 Hier 21:08:45
tykrane 
Questions & Réponses objet joint avant l'armature 2 35 Hier 13:17:47
Zarathoustra 
The Blender Clan 'tchat [RECHERCHE] Modélisateur (Dev Python) pour Stage/CDD/CDI 2 847 Hier 10:35:52
tricotou 
Questions & Réponses [non résolu] Animer une queue    [1][2][3] 22 277 17/01 19:05:24
Horemheb 
Moteur de jeu GameBlender et alternatives Jeu d'action/aventure (WIP) 6 107 17/01 18:07:26
Redstar 
Questions & Réponses [résolu] Bone avec longueur fixe (non redimensionnable) 3 65 17/01 01:53:22
Rimpotche 
Mes premières images sous Blender (débutants) Première réalisation 6 87 16/01 20:42:16
Zarathoustra 
Mes premières images sous Blender (débutants) Création d'un personnage robotique 9 171 16/01 18:14:36
docouatzat 
The Blender Clan 'tchat Blender 2.80    [1][2] 14 1474 15/01 19:30:45
Fadge 
Questions & Réponses effet encre révélant un objet    [1][2][3] 22 876 15/01 19:05:33
thomas56 
Questions & Réponses [résolu] Dupliquer un groupe d'objets animé 4 78 15/01 13:38:43
moonboots 
Mes premières images sous Blender (débutants) reprise    [1][2][3]...[7] 67 2551 14/01 20:38:02
tykrane 
Questions & Réponses [résolu] Bridge edge loop tordu 1 88 14/01 15:23:45
sapajou 
Questions & Réponses Problème d'opération boolean avec géométrie complexe 2 156 13/01 09:53:15
Redstar 
Questions & Réponses UV Mapping Curve 3 182 12/01 19:16:34
tykrane 
Questions & Réponses blender nouveau lover depuis l'anné dernière "je suis embrouillé" 6 405 12/01 11:45:24
ebrain 
Questions & Réponses [résolu] génération de vidéo qui foire la bande son quand je change les fps 3 708 12/01 10:44:54
naeco 

Qui est en ligne
41 utilisateur(s) en ligne (dont 38 sur Forums)

Membre(s): 0
Invité(s): 41


plus...
Nouveaux membres
MaggieFull 19/1/2019
DeidreDfo 19/1/2019
PenelopeHu 19/1/2019
LonStaton0 18/1/2019
Hattie10L4 18/1/2019
ValerieWal 18/1/2019
docouatzat 14/1/2019
mpapicture 14/1/2019
mPirs 12/1/2019
CBY 12/1/2019
Dernier Ajout
super8_2.jpg

Evènements à venir
Fev 15
Anniversaire de Dany
Fev 19
Anniversaire de APPGirault123
Fev 23
anniversaire de windspirit
plus 294 plus d'élément(s)
 Par Mickaël Guédon [ebrain] © 2003-2018 The Blender Clan - hébergé par TuxFamily - Site déclaré à la CNIL sous le numéro 1155445