vgp.minimal.weier
Class PgWeierstrass
- java.lang.Object
-
- jv.object.PsObject
-
- jv.project.PgGeometry
-
- jv.geom.PgPointSet
-
- jv.geom.PgElementSet
-
- vgp.minimal.weier.PgWeierstrass
-
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, PsUpdateIf, PgGeometryIf
public class PgWeierstrass extends PgElementSet
Class for computing minimal surfaces from Weierstrass functions.- See Also:
- Serialized Form
- Author:
- Konrad Polthier and Ulrich Reitebuch
- Version:
- 20.11.09, 2.30 revised (ur) Move center of gravity for Real and Imaginary Point Set to zero.
15.10.08, 2.20 revised (ur) Generation of default element textures added.
16.05.07, 2.10 revised (ur) Full revision.
09.04.07, 2.00 revised (kp) Major revision and class reorganization.
02.12.02, 1.30 revised (ur) Show global front and back colors by default.
19.10.00, 1.20 revised (ur) Show marked boundary for reflections by vertex tag.
06.10.99, 1.01 revised (ur) Compute connectivity anew after call of PgElementSet.close with next update.
01.06.99, 1.00 created (ur).
-
-
Field Summary
-
Fields inherited from class jv.object.PsObject
HAS_BOUNDARY_PANEL, HAS_CONFIG_PANEL, HAS_INFO_PANEL, HAS_LABEL_PANEL, HAS_MATERIAL_PANEL, HAS_TEXTURE_PANEL, HAS_VECTOR_PANEL, INSPECTOR_INFO, INSPECTOR_INFO_EXT, IS_DELETED, IS_FIXED, IS_FOCUSSED, IS_PICKED, IS_SELECTED, IS_USED, NUM_TAGS
-
Fields inherited from interface jv.project.PgGeometryIf
AMBIENT_H2_HYPERBOLIC, AMBIENT_H3_HYPERBOLIC, AMBIENT_H4_HYPERBOLIC, AMBIENT_PROJECTIONS, AMBIENT_R1_EUCLIDEAN, AMBIENT_R2_EUCLIDEAN, AMBIENT_R3_EUCLIDEAN, AMBIENT_R4_EUCLIDEAN, AMBIENT_R5_EUCLIDEAN, AMBIENT_S1_SPHERE, AMBIENT_S2_SPHERE, AMBIENT_S3_SPHERE, AMBIENT_S4_SPHERE, AMBIENT_SPACES, BLEND_ALPHA, BLEND_MATERIAL, BLEND_REPLACE, FILTER_DIRECT, FILTER_LINEAR, FILTER_QUADRATIC, HAS_METHOD_MENU, INSPECTOR_CONTROL, INSPECTOR_CONTROL_EXT, INSPECTOR_MATERIAL, INSPECTOR_MATERIAL_EXT, INSPECTOR_TEXTURE, INSPECTOR_TEXTURE_EXT, LABEL_BASE, LABEL_CENTER, LABEL_HEAD, LABEL_MIDDLE, LABEL_TAIL, LABEL_TOP, m_numLabelTypes, METHOD_EXT, PERIODIC_BOTH, PERIODIC_HEIGHT, PERIODIC_NONE, PERIODIC_WIDTH, PROJ_KLEIN_BALL, PROJ_PARALLEL, PROJ_POINCARE_BALL, PROJ_STEREOGRAPHIC, PROJ_UPPER_HALFSPACE, SIDE_BACK, SIDE_BOTH, SIDE_FRONT, SIDE_NONE
-
-
Constructor Summary
Constructors Constructor and Description PgWeierstrass()Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description PuComplex[]cIntegrate(int patchIndex, PuComplex zzStart, PuComplex zzEnd, PuComplex[] FStart, int discr)Complex integration by Riemann-summation ("TrapezIntegral"). !!!booleanclose()Connectivity of the surface must be generated anew before call of PgElementSet.close().voidcomputePart(PgWeierstrassDescr descr, PiVector partPath, int patchIndex, PuComplex[] fStart)Compute 3d-data Re and Im in a part by complex integration.voidcomputePartReflection(int partNr)Get 3d-data Re and Im from an other part by reflection.voidcomputeSurface(PgWeierstrassDescr descr)Copy 3d-data Re and Im from Re and Im in the parts of the surface.voidcomputeSurface(PgWeierstrassDescr descr, PiVector partPath)Copy 3d-data Re and Im from Re and Im data in the patches of the surface.voidcomputeVertices(PgWeierstrassDescr descr)Compute 3d-points of the surface from Re and Im data.voidgenerateConnectivity(PgWeierstrassDescr descr)Generate connectivity of ElementSet by copying parts to one ElementSet.voidgenerateConnectivity(PgWeierstrassDescr descr, PiVector partPath)Generate connectivity of ElementSet by copying parts to one ElementSet.voidgenerateConnectivity(PgWeierstrassDescr descr, PiVector partPath, int partNr)Generate connectivity of one basis part of the surface by ElementSet.makeQuadrConn.voidgeneratePartReflection(int partNr)Generate connectivity of one part of the surface by reflecting an existing part.PgWeierstrassDescrgetDescr()Get surface descriptor.voidinit()InitialisationvoidmarkBnd(int ElementInd)Find boundary polygon touching element with given index.voidsetDescr(PgWeierstrassDescr descr)Set surface descriptor.booleansetSurfaceName(java.lang.String surface, java.lang.String baseSurfaceName)Find descriptor with given surfaceName.booleanshowMarkedBnd()Select vertices of chosen boundary polygon.booleanupdate(java.lang.Object event)Update the class whenever a child has changed.-
Methods inherited from class jv.geom.PgElementSet
addElement, addElement, allocateEdgeStars, applyModelingMatrix, assureBoundary, assureDimOfElements, assureEdgeColors, assureEdgeSizes, assureElementBackColors, assureElementColors, assureElementNormals, assureElementTextures, blend, buildPolygon, buildQuadr, buildQuadrFromCurve, buildTriangle, buildTriangleFromCurve, checkNeighbour, checkNeighbour, clearTagElement, clone, computeCone, computeCylinder, computeDisk, computePlane, computeRotation, computeSnail, computeSphere, computeTorus, copy, copyConnectivity, copyConnectivitySelect, copyElementSet, copyElementSetSelect, copySelect, fixBoundaries, flipEdges, flipOrientation, getArea, getAreaOfElement, getBoundaries, getCenterOfElement, getCreaseAngle, getDimOfElement, getDimOfElements, getEdge, getEdge, getEdgeColors, getEdgeLength, getEdgeSizes, getEdgeStar, getEdgeStars, getElement, getElementBackColor, getElementBackColors, getElementColor, getElementColors, getElementEdge, getElementEdges, getElementNormal, getElementNormals, getElements, getElementTexture, getElementTextures, getElementVertices, getElementWithVertex, getFVector, getGlobalBndColor, getGlobalBndSize, getGlobalBndTagColor, getGlobalEdgeColor, getGlobalEdgeSize, getGlobalEdgeTagColor, getGlobalElementBackColor, getGlobalElementColor, getGlobalElementNormalColor, getGlobalElementNormalLength, getGlobalElementNormalSize, getGlobalElementTagColor, getIndexOfBndPolygon, getJvx, getL2Matrix, getL2Norm, getMaxDimOfElements, getMaxNumElements, getNeighbour, getNeighbourLocInd, getNeighbours, getNumBoundaries, getNumBoundaryEdges, getNumBoundaryVertices, getNumEdges, getNumEdgeStars, getNumElementIndices, getNumElements, getNumUnusedVertices, getOppVertexInd, getOppVertexLocInd, getSavedElements, getSavedNumVertices, getSelectedBndPolygon, getVertexAngle, getVertexTextures, getVertexValence, getVolume, getVolumeOfElement, hasBoundary, hasEdgeColors, hasEdgeSizes, hasElementBackColors, hasElementColors, hasElementNormals, hasElementTextures, hasTagElement, intersectionWithLine, isConforming, isEnabledEdges, isShowingBackface, isShowingBoundaries, isShowingEdgeColorFromElements, isShowingEdgeColorFromVertices, isShowingEdgeColors, isShowingEdgeLabels, isShowingEdges, isShowingEdgeSizes, isShowingElementBackColor, isShowingElementBackColors, isShowingElementColorFromVertices, isShowingElementColors, isShowingElementFromVertexColors, isShowingElementLabels, isShowingElementNormalArrow, isShowingElementNormals, isShowingElements, isShowingElementTexture, isShowingElementTextures, isShowingSilhouette, isShowingSmoothEdgeColors, isShowingSmoothElementColors, isShowingSmoothLighting, isShowingTaggedBoundaries, isShowingTaggedEdges, isShowingTaggedElements, makeAlternatingQuadrConn, makeCylinderConn, makeEdgeStars, makeEdgeStarsFromNeighbour, makeElementColorsFromNormal, makeElementColorsFromXYZ, makeElementColorsFromZ, makeElementColorsFromZHue, makeElementFromVertexColors, makeElementFromVertexTexture, makeElementNormals, makeNeighbour, makeQuadrBnd, makeQuadrConn, makeQuadrElementTexture, makeTriangleBnd, makeTriangleConn, makeVertexFromElementColors, makeVertexNormals, markBoundary, merge, paint, printEdgeList, projectFromAmbientSpace, refineGlobalIntoFour, refineGlobalIntoFour, reflect, removeBoundaries, removeDeletedBoundaries, removeEdgeColors, removeEdgeSizes, removeElement, removeElementBackColors, removeElementColors, removeElementEdges, removeElementNormals, removeMarkedElements, removeMarkedVertices, removeTexture, removeUnusedVertices, resetBoundaryNormals, selectBndPolygon, setBoundary, setConforming, setCreaseAngle, setDimOfColors, setDimOfElement, setDimOfElements, setDimOfVectors, setDimOfVertices, setEdgeColors, setEdgeSizes, setEdgeStar, setElement, setElement, setElement, setElement, setElementBackColor, setElementBackColors, setElementColor, setElementColors, setElementEdges, setElementNormal, setElementNormals, setElements, setElementTexture, setElementTextures, setElementTexturesFromList, setElementVertices, setEnabledEdges, setGlobalBndColor, setGlobalBndSize, setGlobalBndTagColor, setGlobalEdgeColor, setGlobalEdgeSize, setGlobalEdgeTagColor, setGlobalElementBackColor, setGlobalElementColor, setGlobalElementNormalColor, setGlobalElementNormalLength, setGlobalElementNormalSize, setGlobalElementTagColor, setGlobalVertexNormalColor, setGlobalVertexNormalLength, setGlobalVertexNormalSize, setJvx, setMaxNumElements, setNeighbour, setNeighbours, setNumElements, setSavedElements, setSavedNumVertices, setTagElement, showBackface, showBoundaries, showEdgeColorFromElements, showEdgeColorFromVertices, showEdgeColors, showEdgeLabels, showEdges, showEdgeSizes, showElementBackColor, showElementBackColors, showElementColorFromVertices, showElementColors, showElementFromVertexColors, showElementLabels, showElementNormalArrow, showElementNormals, showElements, showElementTexture, showSilhouette, showSmoothEdgeColors, showSmoothElementColors, showSmoothLighting, showTaggedBoundaries, showTaggedEdges, showTaggedElements, showVertexTexture, toString, triangulate
-
Methods inherited from class jv.geom.PgPointSet
addGeometryItem, addVectorField, addVertex, applyAmbientMatrix, assureVertexColors, assureVertexNormals, assureVertexSizes, assureVertexTextures, clearTagVertex, getAmbientBounds, getBounds, getCenterOfBndBox, getCenterOfGravity, getDimOfColors, getDimOfTextures, getDimOfVectors, getEulerCharacteristic, getGlobalVectorColor, getGlobalVectorLength, getGlobalVectorSize, getGlobalVertexColor, getGlobalVertexNormalColor, getGlobalVertexNormalLength, getGlobalVertexNormalSize, getGlobalVertexSize, getGlobalVertexTagColor, getIndexOfVectorField, getMarkedVertices, getMarkedVertices, getMaxNumVertices, getNumVectorFields, getNumVertices, getSelectedVectorField, getShininess, getSpecularColor, getTexture, getTextureImage, getTextureImageName, getTransparency, getVectorField, getVectorField, getVertex, getVertexColor, getVertexColors, getVertexNormal, getVertexNormals, getVertexSize, getVertexSizes, getVertexTexture, getVertices, hasTagVertex, hasVertex, hasVertex, hasVertexColors, hasVertexNormals, hasVertexSizes, hasVertexTextures, isDefaultLabelEnabled, isEnabledIndexLabels, isShowingIndices, isShowingSingleVectorField, isShowingTaggedVertices, isShowingTransparency, isShowingVectorArrow, isShowingVectorArrows, isShowingVectorColors, isShowingVectorField, isShowingVectorFields, isShowingVertexColors, isShowingVertexLabels, isShowingVertexNormalArrow, isShowingVertexNormals, isShowingVertexOutline, isShowingVertexSizes, isShowingVertexTexture, isShowingVertices, makeColorFromVectorLength, makeQuadrVertexTexture, makeVertexColorsFromNormal, makeVertexColorsFromXYZ, makeVertexColorsFromZ, makeVertexColorsFromZHue, makeVertexTextureFromBndBox, makeVertexTextureFromCylinder, makeVertexTextureFromSphere, makeVertexTextureFromUV, projectToSphere, removeAllVectorFields, removeHiddenVectorFields, removeVectorField, removeVertex, removeVertexColors, removeVertexNormals, removeVertexSizes, scale, scale, selectVectorField, setCenterOfBndBox, setDefaultLabelEnabled, setDimOfTextures, setEnabledIndexLabels, setGlobalVectorColor, setGlobalVectorLength, setGlobalVectorSize, setGlobalVertexColor, setGlobalVertexSize, setGlobalVertexSize, setGlobalVertexTagColor, setMaxNumVertices, setNumVertices, setShininess, setSpecularColor, setState, setTagVertex, setTexture, setTextureImage, setTextureImageName, setTransparency, setVertex, setVertex, setVertex, setVertex, setVertexColor, setVertexColors, setVertexNormal, setVertexNormals, setVertexSize, setVertexSizes, setVertexTexture, setVertexTextures, setVertices, showIndices, showSingleVectorField, showTaggedVertices, showTransparency, showVectorArrow, showVectorArrows, showVectorColors, showVectorField, showVectorFields, showVertexColors, showVertexLabels, showVertexNormalArrow, showVertexNormals, showVertexOutline, showVertexSizes, showVertices, translate
-
Methods inherited from class jv.project.PgGeometry
addDisplay, addPolygon, clearTagPolygon, convertWorldToModel, fillMethodMenu, fillMethodMenu, getAmbientInvMatrix, getAmbientMatrix, getAmbientProjection, getAmbientSpace, getAuthorInfo, getAuthors, getCenter, getCenterOfElement, getControlPanel, getDiameter, getDimOfSimplex, getDimOfVertices, getDisplayList, getDisplays, getGeometryInfo, getLabelAttribute, getLabelColor, getLabelFont, getLabelSize, getLabelStyle, getMaterialPanel, getModelMatrix, getPolygon, getState, getTitle, getType, getVersion, getVersionType, hasAmbientMatrix, hasDisplay, hasModelMatrix, hasTagPolygon, isConfigurable, isEnabledInstanceSharing, isShowingBndBox, isShowingCenter, isShowingName, isShowingTitle, isVisible, removeDisplay, removeMethodMenus, removePolygon, setAmbientMatrix, setAmbientProjection, setAmbientSpace, setAuthorInfo, setAuthors, setCenter, setDimOfSimplex, setEnabledInstanceSharing, setGeometryInfo, setLabelAttribute, setLabelAttribute, setLabelColor, setLabelFont, setLabelSize, setLabelStyle, setModelMatrix, setPolygon, setTagPolygon, setTitle, setType, setVersion, setVersionType, setVisible, showBndBox, showCenter, showName, showTitle
-
Methods inherited from class jv.object.PsObject
addInspector, addUpdateListener, assureInspector, clearTag, clone, clone, getFather, getInfoPanel, getInspector, getName, getNumObjects, getSymbol, hasInspector, hasTag, hasUpdateListener, instanceOf, instanceOf, newInspector, newInspector, removeInspector, removeInspector, removeUpdateListener, setName, setParent, setSymbol, setTag, updatePanels
-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface jv.project.PgGeometryIf
assureInspector, getInfoPanel, getName, hasTag, setName
-
Methods inherited from interface jv.object.PsUpdateIf
getFather, setParent
-
-
-
-
Method Detail
-
init
public void init()
Initialisation- Overrides:
initin classPgElementSet
-
update
public boolean update(java.lang.Object event)
Update the class whenever a child has changed. Method is usually invoked from the children.- Specified by:
updatein interfacePsUpdateIf- Overrides:
updatein classPgElementSet- Parameters:
event- carries a lot of information- Returns:
- true if event has been handled, otherwise false
- See Also:
PsObject.setParent(PsUpdateIf),PsObject.getFather(),PsObject.addUpdateListener(PsUpdateIf)
-
setSurfaceName
public boolean setSurfaceName(java.lang.String surface, java.lang.String baseSurfaceName)Find descriptor with given surfaceName.
-
getDescr
public PgWeierstrassDescr getDescr()
Get surface descriptor.
-
setDescr
public void setDescr(PgWeierstrassDescr descr)
Set surface descriptor.
-
generateConnectivity
public void generateConnectivity(PgWeierstrassDescr descr)
Generate connectivity of ElementSet by copying parts to one ElementSet.
-
generateConnectivity
public void generateConnectivity(PgWeierstrassDescr descr, PiVector partPath)
Generate connectivity of ElementSet by copying parts to one ElementSet.- Author:
- Ulrich Reitebuch
- Version:
- 01.06.99, 1.00 created (ur).
-
generateConnectivity
public void generateConnectivity(PgWeierstrassDescr descr, PiVector partPath, int partNr)
Generate connectivity of one basis part of the surface by ElementSet.makeQuadrConn.- Author:
- Ulrich Reitebuch
- Version:
- 01.06.99, 1.00 created (ur).
-
generatePartReflection
public void generatePartReflection(int partNr)
Generate connectivity of one part of the surface by reflecting an existing part.- Author:
- Ulrich Reitebuch
- Version:
- 01.06.99, 1.00 created (ur).
-
computeSurface
public void computeSurface(PgWeierstrassDescr descr)
Copy 3d-data Re and Im from Re and Im in the parts of the surface.
-
computeSurface
public void computeSurface(PgWeierstrassDescr descr, PiVector partPath)
Copy 3d-data Re and Im from Re and Im data in the patches of the surface.- Author:
- Ulrich Reitebuch
- Version:
- 01.06.99, 1.00 created (ur).
-
computeVertices
public void computeVertices(PgWeierstrassDescr descr)
Compute 3d-points of the surface from Re and Im data.- Author:
- Ulrich Reitebuch
- Version:
- 01.06.99, 1.00 created (ur).
-
computePart
public void computePart(PgWeierstrassDescr descr, PiVector partPath, int patchIndex, PuComplex[] fStart)
Compute 3d-data Re and Im in a part by complex integration.- Author:
- Ulrich Reitebuch
- Version:
- 01.06.99, 1.00 created (ur).
-
cIntegrate
public PuComplex[] cIntegrate(int patchIndex, PuComplex zzStart, PuComplex zzEnd, PuComplex[] FStart, int discr)
Complex integration by Riemann-summation ("TrapezIntegral"). !!! - Should be replaced by some more sophisticated integrator.- Author:
- Ulrich Reitebuch
- Version:
- 01.06.99, 1.00 created (ur).
-
computePartReflection
public void computePartReflection(int partNr)
Get 3d-data Re and Im from an other part by reflection.- Author:
- Ulrich Reitebuch
- Version:
- 01.06.99, 1.00 created (ur).
-
showMarkedBnd
public boolean showMarkedBnd()
Select vertices of chosen boundary polygon.- Author:
- Ulrich Reitebuch
- Version:
- 02.12.02, 1.30 revised (ur) Don't use PiVector.m_data.length.
19.10.00, 1.20 revised (ur) Show marked boundary for reflections by vertex tag.
01.06.99, 1.00 created (ur).
-
markBnd
public void markBnd(int ElementInd)
Find boundary polygon touching element with given index.- Author:
- Ulrich Reitebuch
- Version:
- 19.10.00, 1.20 revised (ur) Show marked boundary for reflections by vertex tag.
01.06.99, 1.00 created (ur).
-
close
public boolean close()
Connectivity of the surface must be generated anew before call of PgElementSet.close().- Overrides:
closein classPgElementSet- Returns:
trueif successful- See Also:
PgElementSet.close()
-
-
"