Nef polyhedra in 3-dimensional Space

Definition

A Nef-polyhedron in dimension d is a point set P⊆ℜd generated from a finite number of open halfspaces by set complement and set intersection operations [Nef78].

Nef polyhedra in CGAL

CGAL is a collaborative effort of several sites in Europe and Israel. The goal is to make the most important of the solutions and methods developed in computational geometry available to users in industry and academia in a C++ library. The goal is to provide easy access to useful, reliable geometric algorithms. We, i.e., Peter Hachenberger and Lutz Kettner, continued the work of Michael Seel to bring Nef polyhedra as defined by the Swiss mathematician Walter Nef into CGAL. While Michael Seel provided planar Nef polyhedra, we implemented Nef polyhedra in 3-dimensional space. The implementation was first released as part of CGAL 3.1 in December 2004.

Publications

Experiment Tetgrid

  1. Create a regular N3 grid T of random tetrahedra:
  2. Create a regular (N-1)3 grid C of such cubes.
  3. Align T and C such that the grid nodes of C are at the centers of the grid cells of T.
  4. Measure time for T ∪ C.
Result of our test series.
Download test application and data.

Experiment Quadratic

  1. Construct N parallel cuboids of size 10000×1×100 spaced one unit apart in y-direction as object W.
  2. Construct N parallel cuboids of size 1× 10000×100 spaced one unit apart in x-direction as object W'.
  3. Align W and W' at their lower front left corner.
  4. Move W' along the z-axis for fifty units.
  5. Measure time for W ∪ W'
Result of our test series.
Download test application and data.

Experiment ComplexFacet + ComplexMinusSmall

  1. Create a cube C of size N3.
  2. Create a N × N × 1 grid of tetrahedra G:
  3. ComplexFacet: Measure time for C'=C ∪ G.
  4. Create a cube c of size 23 such that its vertices match centers of the grid cells.
  5. ComplexMinusSimple: Measure time for C'-c
Result of our test series ComplexFacet.
Download test application and data for ComplexFacet.
Result of our test series ComplexMinusSmall.
Download test application and data for ComplexMinusSmall.

Experiment ComplexSphereMap

  1. Create triangles ti,t'i,i=1,…, N+1 with the following properties:
    1. the first vertex of each triangle ti/t'i is located at the origin.
    2. the second vertex of each triangle ti/t'i has coordinates (N,-N+2*i,N)/(N,N,-N+2*i)
    3. the third vertex of each triangle ti has coordinates (N,-N+2*i,-N)/(N,-N,-N+2*i)
  2. unite triangles ti/t'i as object T/T'.
  3. Measure time for T ∪ T'
Result of our test series.
Download test application and data.

Experiment RotCylinders

  1. Create a right cylinder C:
  2. Create a copy C' of C.
  3. Rotate C' around its vertical centerline by α degrees.
  4. Measure time for C ∪ C'.
Result of our test series.
Download test application and data.
Last modified: Wed May 18 18:12:57 CEST 2005