jv.geom

## Class PuCleanMesh

- java.lang.Object
- - jv.geom.PuCleanMesh

-     public class PuCleanMesh
      extends java.lang.Object

  Utility programs for identification of equal vertices and other cleaning operations.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `PuCleanMesh()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static int` | `getNumDegenerateElements(PgElementSet geom)` Count degenerated elements. degenerated are elements, which do not have pairwise distinct vertices or element with less than three vertices.
    `static int` | `identifyVertices(PgGeometry geom)` Identify vertices which are identical.
    `static int` | `identifyVertices(PgPointSet geom, double eps)` Identify vertices which are within an epsilon box of each other.
    `static int` | `identifyVertices(PgPointSet geom, double eps, boolean bMarked)` Identify vertices which are within an epsilon box of each other.
    `static void` | `removeDegenerateElements(PgElementSet geom)` Adapt triangulation to the following conventions: - the vertices of an element must be pairwise different

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### PuCleanMesh

          public PuCleanMesh()

  - ### Method Detail

    - #### identifyVertices

          public static int identifyVertices(PgGeometry geom)

      Identify vertices which are identical. Vertices are first sorted along the diagonal of the bounding box to accelerate the comparison.

      Vertex normals are recomputed if previously available and a positive number of vertices were removed.

      Method is applicable to PgPointSet and its subclasses.

      Parameters:
        `geom` - Geometry whose vertices shall be identified
      Returns:
        number of removed vertices
      See Also:
        `identifyVertices(PgPointSet, double)`

    - #### identifyVertices

          public static int identifyVertices(PgPointSet geom,
                             double eps)

      Identify vertices which are within an epsilon box of each other. Vertices are first sorted along the diagonal of the bounding box to accelerate the comparison.
      Parameters:
        `geom` - Geometry whose vertices shall be identified
        `eps` - tolerance of coordinate components, not distance
      Returns:
        number of removed vertices
      See Also:
        `identifyVertices(PgGeometry)`, `identifyVertices(PgPointSet, double, boolean)`

    - #### identifyVertices

          public static int identifyVertices(PgPointSet geom,
                             double eps,
                             boolean bMarked)

      Identify vertices which are within an epsilon box of each other. The new position of joined vertices is the average of the old ones. Vertices are first sorted along the diagonal of the bounding box to accelerate the comparison.

      If flag bMarked is true then nearby vertices are identified only if both of the vertices are marked. This allows to perform identification only on a selected set of vertices.

      Parameters:
        `geom` - Geometry whose vertices shall be identified
        `eps` - tolerance of coordinate components, not distance
        `bMarked` - flag if identification is only performed on selected set of vertices
      Returns:
        number of removed vertices
      See Also:
        `identifyVertices(PgPointSet, double)`

    - #### getNumDegenerateElements

          public static int getNumDegenerateElements(PgElementSet geom)

      Count degenerated elements. degenerated are elements, which do not have pairwise distinct vertices or element with less than three vertices.

    - #### removeDegenerateElements

          public static void removeDegenerateElements(PgElementSet geom)

      Adapt triangulation to the following conventions: - the vertices of an element must be pairwise different. - every element has at least three vertices.

"

The software JavaView? is copyright protected. All Rights Reserved.
"