Y
by yorik on 26 May 2020
#
+1 votes
I also don't think one geometry type is "better" than another. For some uses you need meshes, for others you need solids or nurbs. What is interesting is the ability to convert between them...
You are looking for an algorithm that reverses that. Takes a faceted shape, finds the curve that best fits it, and converts it to a curve?
Exactly! There is something interesting about this here: https://blenderartists.org/t/freecad-sverchok-subd-to-nurbs-require-coding/1218702/26 I have yet to dig a bit further there...
M
by magicalcloud_75 on 26 May 2020, edited 26 May 2020
#
Hello again, Not only is this a Sketchup import related problem. Using IFC i also see come across watertight meshes after importing them. We (or ..I) have to deal with them! And i want to be able to turn meshes into solids. Blender has more power than my CAD tools to check this and fix it. I think i can make that conclusion
Attached you will find an example of a civil structure that contains them. The red object, (including the pilar) is surface based. And I believe it is a conversion from Revit where particular modelleling techniques we're used that caused it to convert it this way. To convert it to 3D from Revit the Export>DWG>solids is a good option to prevent this. BUT many of us down the line you need to use the geometetry are not in the position or timeframe to have certian demands to export from native files.The contract says IFC so here is IFC. I myself would very much like to know what caused it and what can be done to prevent it. Also how to repair it after IFC was supplied. Making a button " IFC> convert all to solids ..." would be ideal :P
This narrows down the discussion down to a practical one about checking and fixing / repairing curved geometry. The 'pi syndrom'. Hope we will nog end a a swamp and neverending discussion about pro and cons of different modelling engines in genera

M
by magicalcloud_75 on 26 May 2020
#
@yorik I'm not so much into algorithm but the features and posibilities of the c3d kernel have my attention for some time. Not open source however. Maybe people are willing to pay for a fit solution. Payed kernels for payed software ..
https://c3dlabs.com/en/blog/tech-tips/what-s-new-in-c3d-modeler-conic-section-surfaces/
R
by ReD_CoDE on 26 May 2020
#
I also don't think one geometry type is "better" than another. For some uses you need meshes, for others you need solids or burns.
What is interesting is the ability to convert between them...
For years developing a paradigm that can support all type of geometry was/is a wish in the geometric modeling field and I think there are some pieces of evidence that shows that some somewhat were successful too
The main issue I think is each industry sees things with its own view, for instance VFX industry always believes that Meshes are everything. The engineering industry believes that Solids and B-Reps are everything. Some others belives NURBS (B-Splines) is everything
But in reality, all advanced kernels are hybrid, and at least everything is possible, but needs extensive knowledge and experience (especially in mathematics and algebra) and also a lot of passion to spend a lot of time and money to develop something efficient
It was shocking to me when a friend who is a Ph.D. in computer graphics said that even a well-known package like VTK has incorrect outputs sometimes:
Just an example; if you go and check VTK's 2D and 3D delunay triangulation algorithms (I guess they are based on CGAL code), just a simple curved surface might get incorrectly tessellated. This is VTK and everybody is using it :)
Y
by yorik on 27 May 2020, edited 27 May 2020
#
+1 votes
@magicalcloud_75 that's what most apps do (FreeCAD included :/ ), when you have an object that either is a straight extrusion, or made only of flat faces without curved borders, they usually go as such to IFC. All other cases get triangulated.
IFC4 has a very cool object type called IfcAdvancedBrep which really approximates the power of STEP where there is virtually no surface type it can't do (objects are made of a collection of faces that can have any kind of curve). Unfortunately I think very few apps support that entity already. But in theory, with that, you could say there is no solid that IFC cannot support.
BTW here is an example if anyone is interested in testing: https://standards.buildingsmart.org/IFC/RELEASE/IFC4_1/FINAL/HTML/annex/annex-e/basin-advanced-brep.htm Ifc++ doesn't want to open it, IfcOpenShell neither, unless one edits the file and replace "IFC4x1" with "IFC4". Then Ifc++ opens it but doesn't display anything, while FreeCAD/IfcOpenShell renders it beautifully ;)

Unfortunately IfcOpenShell is apparently unable to re-serialize the shape afterwards...
R
by ReD_CoDE on 27 May 2020, edited 27 May 2020
#
IFC is good at geometry, but when we compare it with STEP AP242, you see that STEP AP242 in geometry is much more advanced

Also, as STEP mentions, the output/export shape model is batter be B-Rep or most recently tessellated mesh, because of protecting intellectual properties (some companies don't want to share exact shape models)
M
by magicalcloud_75 on 28 May 2020, edited 28 May 2020
#
Hi, i'm facing another struggle with a none closed shape. This time from Rhino i believe. Tried some thing but that did not work well. IFC import have me this. I need someone to show me around to close it and export it to IFC4.
M
by magicalcloud_75 on 28 May 2020, edited 28 May 2020
#
That is just amazing ! Thank you so much for sharing that!!
The tool is in the sidebar and can be shown in Blender with keyboard [N]
B
by baswein on 28 May 2020
#
I am new to this but I think you might want to try the 3D print plugin (included in blender just activate it). The cleanup tools seem to get your object to be a solid.



B
by baswein on 28 May 2020
#
It will also give you the volume of your mesh. That is how I discovered it when trying to figure out how to do cut/fill calcs.
M
by Moult on 28 May 2020
#
Just a hint to ensure that your meshes should be manifold before trusting the volume value :) I've been bitten by that one accidentally!
M
by magicalcloud_75 on 29 May 2020
#
We will also check the dimensions of the solid after export import. But it looks ok. Checking is good practice ;-)