Catia to snappyHexMesh
Hello,
I am teaching myself Foam, and want to import geometry from Catia. Catia can export stl files but in doing so loses the naming of surfaces. Names are maintained in stp files but I can't find a way to get stp to stl in a way that preserves surface names-of obvious benefit for defining boundary conditions etc Can anyone suggest a workaround? I am aware of Salome, netgen, discretised but am trying to avoid over complicating things unless I have to. sHM has advantages of being easily script able etc. Many thanks in advance. Barney |
Greetings Barney and welcome to the forum!
If you still have access to Catia, try exporting to OBJ Wavefront instead of STL. In OpenFOAM 2.1.0 you should be able to see that this is the new preferred geometry format, simply because it doesn't need that the geometry to be decomposed in triangles, making it a lot easier to properly process the geometry! Let us know how it goes! Best regards, Bruno |
Great, thanks for such a quick reply!
I'll have a look at that. Can sHM use obj files instead of stl then? Many thanks again. Barney |
Hi Barney,
It slices, it dices and it even cuts! - No, wait, wrong ad... This is what I meant to say: Quote:
Best regards, Bruno |
Hi Bruno,
So Catia can only export igs and stp files other than stl which loses the surface names (plus 3dxml, cgr, hcg and wrl but I havent heard of these before). Neither of these is supported by surfaceTransform. Do you have any recommendation for a way forward? I cant imagine that I am the only person trying to get data from Catia to snappyHexMesh (as directly as possible, ideally scriptable). Best regards, and thanks again for your help! Barney |
Hi Barney,
Sorry about that. I did a fast search on Google about "catia export wavefront obj" and it looked like on the surface that it was able to handle that format. AFAIK, there are at least a few other options:
Bruno |
Problem solved!
Hi Bruno,
I have solved the problem so thought I should post it. Catia provides a vba based scripting capability, so I used this to export each surface separately and combine them into a single stl file exactly as you suggest. Works like a charm. If anyone else has the same problem I am happy to post the script - surely it must be something that a lot of people have to do! Thanks again for all your help. Best regards, Barney |
Hi Barney,
I'm also trying to set up a more complex case that needs a lot more boundary patches for inlet and also refinement levels. I tried to export different parts from CATIA to STL and put those surfaces together in a single STL File. Works quite well but i guess it is no really the best way to do it. I'm not familiar with vba based scripting in CATIA, so it would be a big help if you could post your script. I'd like to test it with my case. Thanks in advance and best regards, Chris |
STL export script
1 Attachment(s)
Hi Chris,
Attached is the script. It works like this: -Put all surfaces you want to export into a geometric set called "EXPORT". -Hide everything, including everything in your EXPORT set. -Run the macro. It unhides each surface, exports it to a file, then hides it again. it then takes all of the stl files and combines them into a single file with the same name as your CATPart. Let me know if you have any trouble. One quick note: stl export is at same resolution as screen display, so make sure your display is at max resolution in CATIA - tools-options-display-performance, and turn the 3D accuracy sliders all the way to the right. I dont think the other options here do anything, but may be just as well to turn them up to the max. Regards, Barney |
Hi Barney,
thanks a lot. I finally found some time to try it. First I had some trouble getting the CATIA file to work, but now its all good. The display-accuracy really does have a huge impact on the STL-quality!! Thanks again and best regards, Chris |
Just to complete the answer, CATIA can export geometrie to OpenFOAM.
The exporte format is ".stl". To do this, you can follow this method : - For a "CATPart" => Save as ".stl" - For a "CATProduct" => Save as ".igs", then open the ".igs" and save as this in ".stl". I don't now if it's a good solution but it correctly works. |
Problems with nodes
Quote:
The only problem I have is that the nodes between the different surfaces do not necessesarily have to add up, i.e. they do not match. Did you have any trouble with this or way on how to fix it? |
CATIA STL quality
Hi Everyone,
Just in case you were interested, I will share here what I have done in the past in this case. It requires that you have "STL Rapid Prototyping" workbench in CATIA.... 1) From here you can select your surface, click "Tesselation" Icon then by entering different values into the "sag" box you can directly define any resolution at all you may wish for your STL. I usually use a figure of 0.05, or 0.02 if I`m being really fussy (0.02 gives incredibly fine resolution and also big files !). 2) Then "Apply", "Ok". 3) Then select the tesselelations and click on "STL Export" Icon. This exports as BINARY, you wont get the patch names inside the files. What I do then is import each surface into Meshlab in Linux - scale it to meters, and do save-as - then in the dialog box you can un-tick "binary" format....this is its silly way of saying "I want ASCII" - haha. Then I open up each file in gedit and rename the text manually to each name I want to have. Then I use "cat" command to join together all my ASCII files. I believe that cleverer people can work out how to do pretty much all of that with 2 scripts...its a real pain, but for me well worth it, as I can have literally ANY stl resolution I want (its 100% independant of screen resolution or any other graphics card settings if you export in this workbench). Regards |
Does snappyhexmesh work with stp files?
I have a doubt regarding the usability of .STP files with the snappyHexMesh utility. Is it possible? Because, simflow, a GUI based on openfoam accepts .STP formats as geometries. Or does OpenFoam work only with .STL and nastran files?
|
Quote:
|
All times are GMT -4. The time now is 12:53. |