Documentation of 'jv.geom.PuCleanMesh' Java class
PuCleanMesh ("JavaView Reference Manual")
"JavaView? v5.03.003"
jv.geom

Class PuCleanMesh



  • public class PuCleanMesh
    extends java.lang.Object
    Utility programs for identification of equal vertices and other cleaning operations.
    Author:
    Konrad Polthier, Ulrich Reitebuch
    Version:
    06.10.03, 3.00 created (kp) Class created from a subset of methods of jvx.geom.PwCleanMesh.
    07.02.02, 2.00 revised (ur) IdentifyVertices and removeDegenerateElements maintain Neighbourhoods.
    21.12.01, 1.90 revised (ur) Identify Vertices enabled for PointSet, Polygon and PolygonSet.
    06.06.01, 1.70 revised (ur) RemoveDegenerateElements method improved.
    15.06.00, 1.20 revised (kp) Added method identifyVertices().
    27.04.00, 1.10 revised (kp) Method adapt() moved from PgElementSet into this workshop.
    25.01.00, 1.00 created (ur) Original class jvx.geom.PwCleanMesh.
    • Constructor Summary

      Constructors 
      Constructor and Description
      PuCleanMesh() 
    • Method Summary

      All Methods Static Methods Concrete 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)
        Author:
        Konrad Polthier
        Version:
        25.10.04, 1.10 revised (kp) Recompute vertex normals if previously available.
        06.10.03, 1.00 created (kp)
      • 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)
        Author:
        Konrad Polthier
        Version:
        15.06.00, 1.00 created (kp) Method calls #identifyVertices(PgPointSet,double,false).
      • 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)
        Author:
        Konrad Polthier
        Version:
        04.06.07, 2.20 revised (fk) New position of joined vertices is now average of old ones.
        14.03.05, 2.10 revised (kp) Recompute vertex normals if initially existing.
        13.08.04, 2.00 revised (kp) Additional parameter bMarked added.
        20.03.03, 1.80 revised (ep) Check for (numVertices < 2).
        19.05.02, 1.70 revised (kp) Sort vertices first along diagonal of bounding box.
        20.12.01, 1.60 revised (ur) Extended to handle different types of geometries.
        01.03.01, 1.50 revised (kp) Use heapsort to reduce complexity of method.
        15.06.00, 1.00 created (kp)
      • 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.
        Author:
        Ulrich Reitebuch
        Version:
        14.08.06, 1.00 created (ur)
      • 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.
        Author:
        Ulrich Reitebuch
        Version:
        14.08.06, 1.30 revised (ur) Maintain element textures, normals and vector fields.
        30.01.02, 1.20 revised (ur) Maintain neighbourhood informations.
        06.06.01, 1.10 revised (ur) Divide elements with not subsequent equal vertices.
        25.01.00, 1.00 created (ur)
"JavaView? v5.03.003"

"

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

Ads help maintain this website.