jvx.geom
Class PnConjugate
- java.lang.Object
-
- jvx.geom.PnConjugate
-
public class PnConjugate extends java.lang.ObjectUtility class for computing the conjugate of a discrete harmonic map, and conversion between conforming and non-conforming triangulations.- Author:
- Konrad Polthier
- Version:
- 16.07.99, 2.00 revised (kp) Non-conforming methods moved from PgElementSet.
00.00.99, 1.00 created (kp)
-
-
Constructor Summary
Constructors Constructor and Description PnConjugate()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method and Description static PgElementSetconjugate(PgElementSet conj, PgElementSet surf, PgElementSet domain)Compute the conjugate surface of 'surf' and store it in 'conj' This conjugation algorithm rotates every element by 90 degrees todo: and needs no domain metric.static PgElementSetconjugateToFull(PgElementSet conj, PgElementSet surf, PgElementSet domain)Compute the conjugate surface of 'surf' and store it in 'conj' This conjugation algorithm rotates every element by 90 degrees todo: and needs no domain metric.static booleanmakeConforming(PgElementSet geom)Replace the edge based representation of an elementSet by restoring the vertex based representation whose elements were saved in PgElementSet.static booleanmakeConformingToFull(PgElementSet surf)Generate a triangle mesh where each triangles has its own set of vertices, and where the triangles are numbered in the same way as if the surface was constructed by conjugation.static booleanmakeNonConforming(PgElementSet geom)Replace the vertex based representation of an element set by a representation which is based on edge midpoints.
-
-
-
Method Detail
-
conjugate
public static PgElementSet conjugate(PgElementSet conj, PgElementSet surf, PgElementSet domain)
Compute the conjugate surface of 'surf' and store it in 'conj' This conjugation algorithm rotates every element by 90 degrees todo: and needs no domain metric. The new triangulation 'conj' is continuous at edge midpoints iff 'surf' is a discrete minimal surface.The resulting conjugate surface uses the midtriangles only. Two adjacent midtriangles use the same midpoint on the common edge.
- Parameters:
conj- conjugate minimal surface of surfsurf- discrete minimal surfacedomain- domain, if conjugation is applied to a map- Returns:
- new conjugate surface if conj==null, else conj
- Author:
- Konrad Polthier
- Version:
- 23.01.02, 1.70 revised (ep) Internationalization.
31.08.99, 1.60 revised (kp) Adjust metric if non-conforming domain is used.
26.08.99, 1.50 revised (kp) Domain added.
28.05.99, 1.01 revised (kp) Method moved from PgElementSet.
30.12.97, 1.00 created (kp)
-
conjugateToFull
public static PgElementSet conjugateToFull(PgElementSet conj, PgElementSet surf, PgElementSet domain)
Compute the conjugate surface of 'surf' and store it in 'conj' This conjugation algorithm rotates every element by 90 degrees todo: and needs no domain metric. The new triangulation 'conj' is continuous at edge midpoints iff 'surf' is a discrete minimal surface.The resulting conjugate surface uses full triangles. Two adjacent are continuous at the midpoint of the common edge but do not have a vertex there.
- Parameters:
conj- conjugate minimal surface of surfsurf- discrete minimal surfacedomain- domain, if conjugation is applied to a map- Returns:
- new conjugate surface if conj==null, else conj
- Author:
- Konrad Polthier
- Version:
- 31.08.99, 1.60 revised (kp) Adjust metric if non-conforming domain is used.
26.08.99, 1.50 revised (kp) Domain added.
28.05.99, 1.01 revised (kp) Method moved from PgElementSet.
30.12.97, 1.00 created (kp)
-
makeNonConforming
public static boolean makeNonConforming(PgElementSet geom)
Replace the vertex based representation of an element set by a representation which is based on edge midpoints. The original vertex based elements are saved in geometry such that they can be reconstructed in makeConforming(). The parameter element set is modified in place.- Returns:
- true on success, or if already non-conforming
- Author:
- Konrad Polthier
- Version:
- 21.08.99, 1.20 revised (kp) Save original vertex based elements.
16.07.99, 1.10 revised (kp) Moved from PgElementSet and slight changes.
31.12.97, 1.00 created (kp)
-
makeConforming
public static boolean makeConforming(PgElementSet geom)
Replace the edge based representation of an elementSet by restoring the vertex based representation whose elements were saved in PgElementSet. The parameter element set is modified in place.Note, this method may only be applied to a non-conforming mesh to undo
makeNonConforming(PgElementSet).- Returns:
- true on success, or if already conforming.
- Author:
- Konrad Polthier
- Version:
- 21.08.99, 2.00 revised (kp) Code assumes that makeNonConforming has saved the vertex based elements.
16.07.99, 1.10 revised (kp) Moved from PgElementSet and slight changes.
31.12.97, 1.00 created (kp)
-
makeConformingToFull
public static boolean makeConformingToFull(PgElementSet surf)
Generate a triangle mesh where each triangles has its own set of vertices, and where the triangles are numbered in the same way as if the surface was constructed by conjugation.This method prepares an original surface to allow interpolation with its full conjugate surface.
Method applies both to conforming and non-conforming meshes.
- Returns:
- true on success
- Author:
- Konrad Polthier
- Version:
- 29.05.03, 1.50 revised (kp) Doc improved.
-
-
"