# Applications > Dveloppement 2D, 3D et Jeux > Moteurs 3D >  Conception logiciel de modlisation 3D avec openCascade

## ludovic.z

Bonjour tout le monde, 

Je travail actuellement  la conception d'un logiciel de modlisation 3D  but scientifique et industriel (enfin, disons plutt qui pourrait avoir une utilit industrielle...) pour tre utilis dans mon dpartement. Seulement voil : c'est la premire fois qu'on touche  la 3D...J'ai donc fait quelques recherches et je suis tomb sur la librairie openCascade qui me semble complte et assez bien adapte pour ce projet.

Mais bon, vous vous en doutez bien, il y a un petit hic  ::?:  : a a pas l'air d'tre des plus simple  utiliser et pour ce qui est de trouver de la documentation qui explique comment l'intgrer dans un logiciel, on peut dire que a pourrait tre le thme d'un nouveau film de mission impossible  ::aie::  ...

Quelqu'un aurait-il des liens, de la doc ou que quoi que ce soit d'autre qui pourrait ressembler de prt ou de loin  un truc qui pourrait m'aider pour comprendre comment rsoudre mon problme ?

----------


## Ange_blond

Bonjour,

la conception d'un logiciel de modlisation est plus complexe que a j'en ai peur.

Je ne connais que peu OpenCascade, mais de ce que je sais c'est une lib qui permet de lire/crire pas mal de formats de fichiers 3D.

Pour un logiciel, il te faudra des vues 3D d'dition (donc une lib de rendu 3D), une lib pour la lecture/criture (openCascade intervient ici), une interface utilisateur, etc...

Tout dpend bien entendu de ce que tu attend de ton logiciel, mais je t'encourage  prendre une vue d'ensemble sur ton projet de logiciel pour mesurer tes besoins rels et par consquent prciser tes besoins et orienter tes choix en matiere de lib.

----------


## plegat

> Je ne connais que peu OpenCascade, mais de ce que je sais c'est une lib qui permet de lire/crire pas mal de formats de fichiers 3D.


Houuula, pas que a...

Gomtrie, modlisation, maillage, visualisation, gui... et comme tu le dis, change sous divers formats 3D.
C'est l'usine  gaz... pardon, la boite  outil open source par excellence pour les application de 3D "technique" (par opposition  la 3D "artistique"). Mais forcment, a touche moins de monde (ou plutt essentiellement dans le monde pro), donc peu de support...

Par contre, avant de rinventer la roue, jte un oeil sur Salome... je ne sais pas de quoi tu as besoin comme fonctions, mais a peut tre une bonne base.

----------


## ludovic.z

Merci pour ta rponse  ::ccool::  .

Je me doute assez bien que la conception de ce programme ne sera pas une partie de plaisir... Pour l'instant, on travail sur la vue d'insemble (cdc, architecture "grossire", ...). Je dis "grossire" car on ne sait pas encore trop quelles lments nous seraient le plus utiles pour le rendu 3d, etc. Mais bon, c'est pour a que je demande un peu d'aide (le seul "vrai" problme tant ce que l'utilisateur (= nous) verra (donc pas besoin que ce soit trs prcis, juste que a donne un aperut gnral en 3d))
Pour ce qui est du reste, donc des concepts de physique derrire le prog, a n'est pas un problme  :;):  les algos tant dj cod en matlab faut juste les traduire en C/C++ (he oui, chez nous, c'est principalement de la modlisation Matlab  ::mrgreen::  ).

Et puis, mme si au final, le prog ne fonctionne pas  la perfection, la mise en oeuvre d'un tel projet est toujours une bonne chose pour apprendre et combler ses lacunes...

----------


## kami58

Ah ! Un autre qui s'intresse  des dveloppements industriels  ::ccool:: 

OpenCascade est logiciel trs complet (visualisation/modlisation/lments finis/simulation/...) et donc assez complexe  prendre en main.
Salome je crois est un outil prepro et postpro uniquement pour la partie calculs/simulation.

Il existe d'autres outils galement pour le monde professionnel : vtk, hoops, open inventor, eyeshot, ... Mais attention aux cots de licence !!
OCC est de base gratuit, mais le support/maintenances reprsente +20.000/an  ::mrgreen::  ::mrgreen::  Idem HOOPS qui est trs cher ...
D'autres sont plus raisonnables. Je te conseille  la limite VTK compatible je crois avec C/C++, Python et Matlab ...

Tous ces moteurs ne sont sont que des API ... Il faudra donc l'englober dans ton appli qui devra grer les appels aux diffrentes fonctions dfinies dans l'API. A toi donc de concevoir ton appli et de grer par la suite les interactions, ca tu n'y coupera pas ... :;):

----------


## ludovic.z

Merci pour ta rponse,
Je vais regard du ct de VTK pour l'instant (qui me semble plus simple  utiliser que openCascade et me permet de raliser quand mme ce que je veux...  ::mouarf::  ).
En tout cas, on peut dire que c'est bien compliqu de trouver des informations valables sur internet pour dvelopper un prog de modlisation 3D. Faut croire qu'il est plus utile de faire des jeux qui mettent en scne des monstres diformes que de dvelopper des logiciels techniques (... quoi ?  :8O:  c'est pas parce qu'il y a plus de doc sur les jeux 3d que c'est plus utile ? mince alors...  ::mrgreen::  )

----------


## oxyde356

Il y a plus de gens qui se lvent le matin et qui se disent : "et si je faisais un jeux en 3D" plutt que "et si je concevais un logiciel de modlisation 3D  usage scientifique et industriel" CQFD  ::P:

----------


## kami58

> Il y a plus de gens qui se lvent le matin et qui se disent : "et si je faisais un jeux en 3D" plutt que "et si je concevais un logiciel de modlisation 3D  usage scientifique et industriel" CQFD


... sauf quand c'est ton patron qui te dit a tous les matins ...  ::mouarf::  ::mouarf::

----------


## oxyde356

Certes, et si tu n'as pas la formation tu la dans le ... ^^

----------


## wwiki

Bonjour ,

Avez - vous avancer sur le concept ?

----------


## jacqueline

Peut-tre pourriez vous regarder ce qu 'a fait FreeCAD , autour d'OpenCascade.

 ils ont dvelopp pas mal de trucs, mais pas encore la modlisation surfacique NURBS .

http://sourceforge.net/apps/mediawik...itle=Main_Page

 Je pense que s'il y a peu de choses en kit  dans la 3D industrielle, c'est parce que  les industriels  prfrent acheter un logiciel de CAD tout fait  genre  Solidwoks, qu 'ils peuvent amortir, et dont le cot est connu, plutt que de le dvelopper eux mme.




> En tout cas, on peut dire que c'est bien compliqu de trouver des informations valables sur internet pour dvelopper un prog de modlisation 3D. )


 *En effet la doc est un peu difficile  dnicher, mais elle est abondante.
*

 il y a un autre problme, c'est les import/export, malgr un format de fichier unique STEP, il faut acheter les modules d'export /import pour chaque  logiciel de CAO si dans la chaine de fabrication   les  sous traitants  utilisent un autre logiciel de CAO..  :

exemple Solidworks pour Catia    ou Catia pour OpenCascade.



http://www.datakit.com/fr/solutions_specialisees.php

Ainsi non seulement il faut dvelopper son logiciel maison , mais le rendre compatible avec les  logiciels utiliss par les autres industriels.  En particulier  avec la CFAO pour l'usinage ( CNC ), la dcoupe laser, la soudure  ou le moulage des pices.


http://5axes.free.fr/logiciel.htm

 Bien qu 'ils prennent les formats natifs ( de travail ) des grands logiciels pros.  

http://5axes.free.fr/Format_Echange.htm

Et Catia comprend une partie usinage ( comment on va usiner  cette pice ? ) 

L'autre problme en CAO est les *tolrances*.. il y a des thses et des tests l dessus, sur les logiciels existants, ainsi je suppose que ce n'est pas une mince affaire dans le dveloppement du logiciel.  Un problme qui n'existe pas dans les jeux, o c'est le rendu qui prime. Les tats de surface aussi.

Encore un autre problme les vues caches ou non...les vues clates, en transparence, pour voir les assemblages. 

Ce sont quelques  explications du prix de ces logiciels..

Le format  d'change normalis de l'indutrie  : *STEP* est presque un mtier , *une spcialit    part entire.*.  C'est la norme  *ISO 10103* avec des parties gnrales et des parties spcifiques par domaine  ( mcanique, ameublement, structures mtallique, cablage lectrique ) )  . On peut y bourrer des tas d'infos, de l'tude  la  maintenance , SAV., caractristique des matriaux, etc.. .

http://www.tc184-sc4.org/titles/STEP_Titles.htm

 http://www.uspro.org/documents/STEP_application_hdbk_63006_BF.pdf

 STEP a normalis les commandes de la CNC ( machines outil a commande numrique ( encore un autre mtier ) 


http://www.steptools.com/library/stepnc/

http://www.steptools.com/products/st...olerance-4.htm

Il me semble qu 'il faut commencer par l...l'tude du format STEP puisque c'est le fichier qui sera dlivr au fabricant. En principe c'est le but de la CAO.

 Dans le format STEP il y a plus ou moins de choses, selon les logiciels de CAO, c'est pour cel que les import/export peuvent foirer, principalement au niveau de l'assemblage.

 Je ne suis pas sre que  FreeCAD ait intgr tout le volet  des directives pour la fabrication. 

 Aprs il y a les  conversions de formats entre mesh et Brep et vive versa,  pour le reverse engineering ( scan de pices existantes ) et pour sortir un format *STL*  ( pour le  prototypage rapide ou la simulation de phnomnes physiques sur les pices.



http://www.cadexchanger.com/

http://5axes.free.fr/Format_Echange.htm

 Pour l'animation mcanique en gratuit, il y a  *Open Dynamics Engine*  mais je n'ai pas trouv de lien avec  le format STEP. 

 J'ai vu une fonction qui m'intressait sur  un screenshot d'Opencascade : la mise  plat de matriaux souples, pour la dcoupe (  un dessus de chaussures Addidas ). Ils l'ont dvelopp avec OpenCascade, mais  l'ont gard pour eux..   Adidas peut se permettre d'avoir une quipe de dveloppeurs spcfiques, et de payer l'assistance de l'quipe d'OpenCascade,  vu ce qu 'ils donnent  Zidane, lorsqu'une fonction n'existe pas encore en CAO...

 Je regardais la modlisation du tissu dans Blender, c'est assez raliste au niveau du rendu,  y compris dans les mouvements ( modlisation dynamique du tissu ) 

Mais il manque trop de choses, pour en faire un logiciel de stylisme et de confection, comme celui de Lexmark qui doit coter plus de 7 000 euros. il a t ralis en collaboration avec des chercheurs de l' INSA  Lyon. On trouve les publications, avec tous les modles mathmatiques, une personne sympa m'a pass des docs,  mais quand  en faire une application pour sortir le patron des vtements dessins sur un mannequin 3D, pour chaque taille, c'est une autre histoire ???


Ca illustre bien la diffrence qu 'il y a entre logiciels de "jeux" avec le rendu et l'anination o on se contente de l'apparence  l'cran,   et  logiciels de l' "industrie" avec tout l'aspect dimensionnel/fabrication. 

 Idem les monstres (  croire qu 'on ne sait pas faire autre chose ) , on ne voit que leur surface,( tourmente certes, bin oui c'est un monstre    ::mouarf::  )   mais en fabrication un capot n'a pas une paisseur nulle..( c'est un volume ) elle est variable, il y a des bossages, des nervures,  pour  faire des renforts et doit tre dfinie de manire prcise....

Les designers automobile  ne s'occupent que du look, sur des logiciels comme 3D Station, mais c'est importable , corrig,  adapt  la ralisation et dimensionn  par les logiciels de CAO. 


Sur FreeCAD ils sont  toute une quipe  dvelopper, sur une base OpenCascade  et a n'avance pas trs vite.  . 

* Je crois que si tu montres  tous ces aspects de la CAO  ton patron , il ralisera la complexit de la tche et il achtera un logiciel tout fait. ou se mettra aux jeux video * 

Dj une formation  ces logiciels est indispensable pour pouvoir les utiliser.   Catia  c'est plus que compliqu ( voir les tutos ) .  

Solidworks est un peu plus simple, moins cher, je connais une petite boite qui l'utilise.. 

Le prix du logiciel est ridicule devant le prix des machines pour faire les moules et  celle du thermoformage des plaques.

* Et 10 000 euros, ce n'est deux mois de dveloppeur pour un patron. Je doute qu 'on puisse faire ce boulot en deux mois, seul. C'est le temps qu 'il faut pour lire et capter les docs.*

----------


## jacqueline

> Houuula, pas que a...
> 
> Gomtrie, modlisation, maillage, visualisation, gui... et comme tu le dis, change sous divers formats 3D.
> *C'est l'usine  gaz.*.. pardon, la boite  outil open source par excellence pour les application de 3D "technique" (par opposition  la 3D "artistique"). Mais forcment, a touche moins de monde (ou plutt essentiellement dans le monde pro), donc peu de support...
> 
> Par contre, avant de rinventer la roue, jte un oeil sur Salome... je ne sais pas de quoi tu as besoin comme fonctions, mais a peut tre une bonne base.


Bien d'accord pour l'usine  gaz.

Il y a une plus grande convivialit dans le pro que dans l' open source , la gratuite se paye cher... 

Salom c'est surtout pour faire de la simulation de phnomnes physiques sur une pice.. contraintes,   coulement de fluides , etc... pas trs orient fabrication, et loin derrire les logiciels propritaires  utiliss dans  l'industrie...

Ce qui a t dvelopp c'est pour des applis bien spciques d' EDF entre autres.

----------


## plegat

> J'ai vu une fonction qui m'intressait sur  un screenshot d'Opencascade : la mise  plat de matriaux souples, pour la dcoupe (  un dessus de chaussures Addidas ). Ils l'ont dvelopp avec OpenCascade, mais  l'ont gard pour eux..   Adidas peut se permettre d'avoir une quipe de dveloppeurs spcfiques, et de payer l'assistance de l'quipe d'OpenCascade,  vu ce qu 'ils donnent  Zidane, lorsqu'une fonction n'existe pas encore en CAO...


Ca me rapelle des choses a... 
Dvelopper un besoin particulier  son industrie n'est pas forcment l'apanage d'une quipe de dveloppeur. Il suffit de se renseigner sur les moyens et mthodes, et de faire le boulot. Une quipe de dveloppeurs ne peut pas faire a, elle n'a gnralement pas la connaissance technique du client, et en gnral a se traite plutt en R&D ou R&T avec une quipe multi-mtiers. Au niveau d'une petite boite, a se convertit en LA personne qui connait et qui sait se servir d'Excel...  ::mouarf::  






> Je regardais la modlisation du tissu dans Blender, c'est assez raliste au niveau du rendu,  y compris dans les mouvements ( modlisation dynamique du tissu ) 
> 
> Mais il manque trop de choses, pour en faire un logiciel de stylisme et de confection, comme celui de Lexmark qui doit coter plus de 7 000 euros.


Attention de ne pas mlanger les torchons... Blender est un logiciel d'animation 3D, pas de simulation 3D. Tous les outils de simulation de Blender sont bass sur des thories physiques, mais ne servent qu' crer l'illusion. Vouloir lui faire faire de la technique c'est une utilisation dvie pour laquelle il n'a pas t prvu (on le rpte assez souvent sur les forums  tous ceux qui dbarquent en voulant rsoudre leur problme de baignoire).




> Il y a une plus grande convivialit dans le pro que dans l' open source , la gratuite se paye cher...


Au prix des diffrentes licences, la "convivialit" aussi...  :;):

----------


## jacqueline

> Attention de ne pas mlanger les torchons... Blender est un logiciel d'animation 3D, pas de simulation 3D. Tous les outils de simulation de Blender sont bass sur des thories physiques, *mais ne servent qu' crer l'illusion*. Vouloir lui faire faire de la technique c'est une utilisation dvie pour laquelle il n'a pas t prvu (on le rpte assez souvent sur les forums  tous ceux qui dbarquent en voulant rsoudre leur problme de baignoire).


 Mais je ne confond pas..  :;): 

 Crer l'illusion est le mot juste.

 Mais la CAO n'est pas un driv des jeux, c'est plutt l'inverse.. 

Cocorico,  le pionnier  c'est Pierre Bzier avec Unisurf 

 ( Avec une hirachie lamentable, chez Renault,  qui a acceuilli son projet  ainsi : "si a servait  qq chose, les ricains l'auraient dj invent "  Les amricains s'taient limits  la CNC , et   la modlisation solide simple.)








> Ca me rapelle des choses a...


 On y est presque....  je l'avais aperu.

 Je vous rpond sur ce topic avec mon exprience de couturire fan de CAO   :;):

----------


## oxyde356

> ( Avec une hirachie lamentable, chez Renault,  qui a acceuilli son projet  ainsi : "si a servait  qq chose, les ricains l'auraient dj invent "  Les amricains s'taient limits  la CNC , et   la modlisation solide simple.)


 Voir la delorean  ::D:

----------


## jacqueline

Voil le blog o je dfinis le projet.

Encore pas mal de boulot pour les illustrations 

http://stylistdream.wordpress.com/

----------


## BEN55

> Il y a plus de gens qui se lvent le matin et qui se disent : "et si je faisais un jeux en 3D" plutt que "et si je concevais un logiciel de modlisation 3D  usage scientifique et industriel" CQFD


MDDDRRRRRR.....C'est marrant !

" Tiens beinh ce matin jvais me crer une intelligence artificielle , tiens ! " ou peut etre un site comme Ebay ....MDRRRRRRRRRRRRRRRR !!!!!

NON mais serieux !!!!

----------


## Kannagi

"MDDDRRRRRR" 7ans aprs tu le clash...

Plus srieusement ,si c'est pour remonter un topic vieux de 7 ans pour ce genre de commentaire , merci de te retenir la prochaine fois !  ::roll::

----------


## BEN55

> "MDDDRRRRRR" 7ans aprs tu le clash...
> 
> Plus srieusement ,si c'est pour remonter un topic vieux de 7 ans pour ce genre de commentaire , merci de te retenir la prochaine fois !


1000 excuses , c'etait plus fort que moi ...

----------

