Utility to inspect OpenCascade models

Have some feature requests, feedback, cool stuff to share, or want to know where FreeCAD is going? This is the place.
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
Post Reply
User avatar
Quaoar
Posts: 106
Joined: Thu Jul 27, 2017 11:56 am
Location: Nizhny Novgorod
Contact:

Utility to inspect OpenCascade models

Post by Quaoar »

Guys, just let me share my research project for inspecting B-Reps and prototyping geometric algorithms: http://analysissitus.org

Here is a paper we presented at CG conference this year: https://www.researchgate.net/publicatio ... penCascade

I use the software daily to prototype geometric modeling algorithms and to inspect B-Rep models. Hope you will find it interesting. Any feature requests are welcome.
Last edited by Quaoar on Sat Oct 13, 2018 2:07 pm, edited 3 times in total.
FOSS CAD model inspection utility and prototyping framework: http://analysissitus.org
User avatar
tanderson69
Veteran
Posts: 1626
Joined: Thu Feb 18, 2010 1:07 am

Re: Utility to inspect OpenCascade models

Post by tanderson69 »

congratulations. This looks like a great project. I look forward to using it in the future.



I read your paper and one thing in particular caught my eye.
Likewise, [Seo et al. 2005] base their
algorithm on Parasolid kernel which offers an advanced face removal operator
I am a big fan of the face removal functionality. So much so, that I spent some time developing similar functionality. Algorithm is basically a sloppy prototype, but I have had some success with simple parts. Here are some screen dumps from open shell models turned into solids.
combined.png
combined.png (703.42 KiB) Viewed 7054 times
Jee-Bee
Veteran
Posts: 2566
Joined: Tue Jun 16, 2015 10:32 am
Location: Netherlands

Re: Utility to inspect OpenCascade models

Post by Jee-Bee »

tanderson69 wrote: Sat Jul 29, 2017 12:14 pm I am a big fan of the face removal functionality. So much so, that I spent some time developing similar functionality. Algorithm is basically a sloppy prototype, but I have had some success with simple parts.
Looking Good would be a nice future feature!!
User avatar
Quaoar
Posts: 106
Joined: Thu Jul 27, 2017 11:56 am
Location: Nizhny Novgorod
Contact:

Re: Utility to inspect OpenCascade models

Post by Quaoar »

Thanks for checking the tool. I will continue working on it.
tanderson69 wrote: Sat Jul 29, 2017 12:14 pm I am a big fan of the face removal functionality. So much so, that I spent some time developing similar functionality.
Can you share some details? Like, is it available in FreeCAD, which papers you read/published? Your screenshots look promising!
FOSS CAD model inspection utility and prototyping framework: http://analysissitus.org
User avatar
tanderson69
Veteran
Posts: 1626
Joined: Thu Feb 18, 2010 1:07 am

Re: Utility to inspect OpenCascade models

Post by tanderson69 »

Quaoar wrote: Mon Jul 31, 2017 8:46 amLike, is it available in FreeCAD
No. For me, experimenting with occt inside of freecad is just too slow.


Quaoar wrote: Mon Jul 31, 2017 8:46 amwhich papers you read/published?
The link you provided is the first paper I have seen on the subject. I am not sure what the proper nomenclature is, so I don't think I spent much time looking.


Quaoar wrote: Mon Jul 31, 2017 8:46 amYour screenshots look promising!
I didn't show the ones that fail. ;)
User avatar
Quaoar
Posts: 106
Joined: Thu Jul 27, 2017 11:56 am
Location: Nizhny Novgorod
Contact:

Re: Utility to inspect OpenCascade models

Post by Quaoar »

Can you expand why you need this face removal operation? Are you preparing your CAD to CAE or what?
FOSS CAD model inspection utility and prototyping framework: http://analysissitus.org
User avatar
tanderson69
Veteran
Posts: 1626
Joined: Thu Feb 18, 2010 1:07 am

Re: Utility to inspect OpenCascade models

Post by tanderson69 »

Quaoar wrote: Fri Aug 11, 2017 5:35 pmAre you preparing your CAD to CAE or what?
I can see that as a use case, but CAE really wasn't a consideration when I was working on it. I was thinking more of a general modeling feature. I used this functionality inside UG for years. Not all day every day, but enough that I miss it. Here is a scenario where it would be useful.



Consider the following picture, where a model has been imported into a software via step.
01.png
01.png (26.48 KiB) Viewed 6771 times




Now you decide that the radius is too small and you want to enlarge it. This model has no history, so you can't just edit a parameter and update. Here you run the super magic face removal command and get a model that doesn't have a radius.
02.png
02.png (23.03 KiB) Viewed 6771 times




Now you can simply add the radius you want.
03.png
03.png (29.64 KiB) Viewed 6771 times




Sorry to hi-jack your thread. We can move this conversation to another thread or venue if you want.
User avatar
Quaoar
Posts: 106
Joined: Thu Jul 27, 2017 11:56 am
Location: Nizhny Novgorod
Contact:

Re: Utility to inspect OpenCascade models

Post by Quaoar »

Looks awesome! I have little experience with SpaceClaim which offers similar functionality through ACIS. Have you implemented this algorithm based on Euler operators? Do you have a repository for your algorithm?
FOSS CAD model inspection utility and prototyping framework: http://analysissitus.org
User avatar
tanderson69
Veteran
Posts: 1626
Joined: Thu Feb 18, 2010 1:07 am

Re: Utility to inspect OpenCascade models

Post by tanderson69 »

Quaoar wrote: Sun Aug 13, 2017 12:30 pmLooks awesome!
I might have misled you. The scenario I laid out in the preceding post was just a 'use case' example . I did NOT use my algorithm on that model in the pictures.



Quaoar wrote: Sun Aug 13, 2017 12:30 pmHave you implemented this algorithm based on Euler operators?
Don't know anything about euler operators, so no



Quaoar wrote: Sun Aug 13, 2017 12:30 pmDo you have a repository for your algorithm?
No I don't. It is currently intertwined with a couple of other personal projects, so it is not easy to separate. I really haven't done anything elegant. The basic process.

find open boundary.
intersect geometry of all boundary faces to curves.
intersect all curves to vertices.
use Euler characteristic to eliminate invalid curves and vertices until 1 solution for each boundary face.

Here is a reference picture and I have attached the svg it was created from.
openBoundConceptGraph3.png
openBoundConceptGraph3.png (193.03 KiB) Viewed 6726 times
Attachments
openBoundConceptGraph3.svg
(143.81 KiB) Downloaded 191 times
User avatar
tanderson69
Veteran
Posts: 1626
Joined: Thu Feb 18, 2010 1:07 am

Re: Utility to inspect OpenCascade models

Post by tanderson69 »

I finally took a little time to check out your project. I was disappointed it is basically windows only.
Post Reply