Instability in intersection calculation
Opened this issue · 3 comments
afalsafi commented
Hello, I would really appreciate if anyone could help me with the problem that I have encountered using cork. While using cork in order to calculate the intersection of two polyhedrons, The return polyhedron of cork intersection function becomes unstable when the external facets of the two input polyhedra coincide with each other in space. Has anyone else had such a problem with cork?? and is there anyone who can help me with this?
stephanfr commented
Cork is very sensitive to self-intersections or non-manifold models. I
would check that first.
The test dataset I use has some very complex models and Cork runs fine on
those but I am always interested in models that are correct but on which
Cork fails.
If the models do not self intersect and are manifold, then if you send them
to me I will take a look.
I am travelling right now through next week so it may take a day or two for
me to respond.
Thanks !
Stephan
…On Thu, May 9, 2019 at 6:31 AM afalsafi ***@***.***> wrote:
Hello, I would really appreciate if anyone could help me with the problem
that I have encountered using cork. While using cork in order to calculate
the intersection of two polyhedrons, The return polyhedron of cork
intersection function becomes unstable when the external facets of the two
input polyhedra coincide with each other in space. Has anyone else had such
a problem with cork?? and is there anyone who can help me with this?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#3>, or mute the thread
<https://github.com/notifications/unsubscribe-auth/AALH6M25ZOQY6QS4HJ5HNT3PUQRUBANCNFSM4HL2Q4HA>
.
stephanfr commented
Sorry, I just re-read your email.
"The return polyhedron of cork intersection function becomes unstable when
the external facets of the two input polyhedra coincide with each other in
space".
Yes - that is a problem and results in having non two manifold points or
edges or self-intersecting surfaces. There is not a whole lot that can be
done about it without changing the geometries themselves. Non two manifold
surfaces are a problem for CSG libraries in general. Given the algorithm
Cork uses, it is sensitive to self intersections and non two manifold
meshes.
If you send me some examples, I can take a look. I added some code to
better detect these error conditions, at a minimum even if I cannot fix the
problem I would like to be sure that the right error message is returned
instead of a broken polyhedron.
Beyond that, your best bet is simply to try to avoid self intersections or
non two manifold points or edges in general.
Thanks !
Stephan
…On Thu, May 9, 2019 at 5:49 PM Stephan Friedl ***@***.***> wrote:
Cork is very sensitive to self-intersections or non-manifold models. I
would check that first.
The test dataset I use has some very complex models and Cork runs fine on
those but I am always interested in models that are correct but on which
Cork fails.
If the models do not self intersect and are manifold, then if you send
them to me I will take a look.
I am travelling right now through next week so it may take a day or two
for me to respond.
Thanks !
Stephan
On Thu, May 9, 2019 at 6:31 AM afalsafi ***@***.***> wrote:
> Hello, I would really appreciate if anyone could help me with the problem
> that I have encountered using cork. While using cork in order to calculate
> the intersection of two polyhedrons, The return polyhedron of cork
> intersection function becomes unstable when the external facets of the two
> input polyhedra coincide with each other in space. Has anyone else had such
> a problem with cork?? and is there anyone who can help me with this?
>
> —
> You are receiving this because you are subscribed to this thread.
> Reply to this email directly, view it on GitHub
> <#3>, or mute the thread
> <https://github.com/notifications/unsubscribe-auth/AALH6M25ZOQY6QS4HJ5HNT3PUQRUBANCNFSM4HL2Q4HA>
> .
>
stephanfr commented
For clarity - the input to the algorithm is a pair of 3D, closed body, two
manifold triangular meshes. The output is a 3D, closed body, two manifold
triangular mesh.
Having the two bodies intersect at a point, line or surface results in an
intersection output of a 1D point or 2D line or polygon. Those cannot be
represented as a 3D body.
That is why this is not a failure of the code but an attempt to perform an
operation that does not result in a solid geometry.
…On Thu, May 9, 2019, 6:10 PM Stephan Friedl ***@***.***> wrote:
Sorry, I just re-read your email.
"The return polyhedron of cork intersection function becomes unstable when
the external facets of the two input polyhedra coincide with each other in
space".
Yes - that is a problem and results in having non two manifold points or
edges or self-intersecting surfaces. There is not a whole lot that can be
done about it without changing the geometries themselves. Non two manifold
surfaces are a problem for CSG libraries in general. Given the algorithm
Cork uses, it is sensitive to self intersections and non two manifold
meshes.
If you send me some examples, I can take a look. I added some code to
better detect these error conditions, at a minimum even if I cannot fix the
problem I would like to be sure that the right error message is returned
instead of a broken polyhedron.
Beyond that, your best bet is simply to try to avoid self intersections or
non two manifold points or edges in general.
Thanks !
Stephan
On Thu, May 9, 2019 at 5:49 PM Stephan Friedl ***@***.***>
wrote:
> Cork is very sensitive to self-intersections or non-manifold models. I
> would check that first.
>
> The test dataset I use has some very complex models and Cork runs fine on
> those but I am always interested in models that are correct but on which
> Cork fails.
>
> If the models do not self intersect and are manifold, then if you send
> them to me I will take a look.
>
> I am travelling right now through next week so it may take a day or two
> for me to respond.
>
> Thanks !
>
> Stephan
>
> On Thu, May 9, 2019 at 6:31 AM afalsafi ***@***.***> wrote:
>
>> Hello, I would really appreciate if anyone could help me with the
>> problem that I have encountered using cork. While using cork in order to
>> calculate the intersection of two polyhedrons, The return polyhedron of
>> cork intersection function becomes unstable when the external facets of the
>> two input polyhedra coincide with each other in space. Has anyone else had
>> such a problem with cork?? and is there anyone who can help me with this?
>>
>> —
>> You are receiving this because you are subscribed to this thread.
>> Reply to this email directly, view it on GitHub
>> <#3>, or mute the thread
>> <https://github.com/notifications/unsubscribe-auth/AALH6M25ZOQY6QS4HJ5HNT3PUQRUBANCNFSM4HL2Q4HA>
>> .
>>
>