Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] Polytope distance - polytope Q is not separated by its hyperplane

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] Polytope distance - polytope Q is not separated by its hyperplane


Chronological Thread 
  • From: Dimitris Tzionas <>
  • To:
  • Subject: Re: [cgal-discuss] Polytope distance - polytope Q is not separated by its hyperplane
  • Date: Mon, 6 Oct 2014 16:12:21 +0200

So, a youtube video on Blender and Bullet-physics was mentioning that perfect cubes with sharp edges can create instabilities in the physics mathematical component.

Based on this, using blender, I changed my mesh model a little bit using a Bevel operator, in order to make the edges of the cube a bit rounded.
It seems that it works, since the assertion was happening only with the sharp-edges-cube, but now with the rouded-edges-cube the assertion is not violated any more.

But the question remains, are there any practical thumb rules for the creation of meshes, when polytope distances have to be used?
Is the above one of them or did I get just lucky?


On Mon, Oct 6, 2014 at 2:05 PM, Dimitris Tzionas <> wrote:
Hi all, 

This is a follow-up of a previous question of mine, however I think that this should be in a different thread.

I've incorporated this sample in my pipeline, and the useful part is being summarized by the following lines:
Polytope_distance pd(P, P+p, Q, Q+q);
assert (pd.is_valid());

After creating new experiments, it's the first time (after lots of experimentation) that a violation of the assertion occurs.

By setting verbose=true in the "is_valid" method I get:

CGAL::Polytope_distance_d<Traits>::
is_valid( true, 0):
  |P+Q| = 31+8, |S| = 1+3
  checking squared_distance...  checking P...passed.
  checking Q...FAILED.
  --> polytope Q is not separated by its hyperplane
  object is NOT valid!

In practical terms, what could be some examples of the cause for this assertion violation?

The new mesh (Q) I insert is a cube (created with blender and cleaned with meshlab, eg. remove double vertices, zero area faces, etc). No rounding of the edges has taken place. The violation happens during the touch between this cube and another mesh, however this never happened when I tested with a ball instead of cube. Also in cases of penetration, I never got a violation.

Thanks,
dimitris





Archive powered by MHonArc 2.6.18.

Top of Page