public class ChenGackstatterextends WeierstrassMinimalSurfaceThe Chen-Gackstatter surface posed surprising numerical difficulties, which increased with exponent. 1.) One cannot integrate the Weierstrass Data close enough into the three saddles to close gaping holes, starting at exponent = 5. 2.) For putting the pieces together one has to find the intersection of the symmetry planes. Only after experimentation did I find points on these symmetry lines that allowed to compute the intersection with sufficient accuracy. This then worked also in the Lopez-Ros morph. 3.) Finally, the period-closing Lopez-Ros value had to be found. One only has to solve a linear equation with coefficients depending on the minimal surface. For reasons that I could not find this worked only for symmetry parameters 2,3,4,5 and then developed visible inaccuracies. These went away after repeating the determination of the Lopez-Ros parameter three times. This indicates that the linear equation has inaccurately defined coefficients, but I do not see a reason for that. 4.) For esthetic reasons the big holes had to be closed. For the top and bottom symmetry points this worked satisfactorily. The middle symmetry point still has gaps for exponent > 5. H. Karcher
Nested Class Summary
Fields inherited from class vmm3d.surface.parametric.WeierstrassMinimalSurface
afp, I__C, I_C, I1_C, I2_C, I3_C, I4_C, IP__C, IP_C, ONE__C, ONE_C, ZERO_C
Fields inherited from class vmm3d.surface.parametric.SurfaceParametric
COLOR_GAUSS_CURVATURE, COLOR_MEAN_CURVATURE, COLOR_TWO_SIDED_DEFAULT, COLOR_TWO_SIDED_USER, COLOR_USER, COLOR_USER_FUNCTION_HSB, COLOR_USER_FUNCTION_RGB, COLOR_WHITE
Constructors Constructor and Description
Methods Modifier and Type Method and Description
getDefaultView()Returns a default view of this exhibit, a View of type
parameterChanged(Parameter param, Object oldValue, Object newValue)This method will be called automatically when a parameter that has been added to this Exhibit is changed.
surfacePoint(double u, double v)Override surfacePoint to close the hole around the center saddle.
Methods inherited from class vmm3d.surface.parametric.WeierstrassMinimalSurface
ComplexVectorIntegrator, ComplexVectorOneStepIntegrator, computeHalfPeriod, createHelperArray, getAdditionalAnimationsForView, getNumberOfPieces, helperToMinimal, minimalToHelper, setNumberOfPieces, surfaceNormal
Methods inherited from class vmm3d.surface.parametric.SurfaceParametric
addExtraXML, deriv_u, deriv_v, gaussMap, getActionsForView, getPatchCountU, getPatchCountV, readExtraXML, removeView, setEpsilon, setPatchCount, setU, setV, setViewpoint
Methods inherited from class vmm3d.surface.Surface
getBuildAnimation, getDefaultOrientation, getGrid3D, setDefaultOrientation
Methods inherited from class vmm3d.core3D.Exhibit3D
getDefaultTransform, getDefaultViewpoint, getDefaultViewUp, setDefaultViewpoint, setDefaultViewUp
Methods inherited from class vmm3d.core.Exhibit
addChangeListener, addDecoration, addView, clearDecorations, forceRedraw, getAlternativeViews, getCreateAnimation, getDecorations, getDefaultBackground, getDefaultForeground, getDefaultWindow, getFramesForMorphing, getMorphingAnimation, getName, getParameterByName, getParameters, getSettingsCommandsForView, getTitle, getUseFilmstripForMorphing, getViews, removeChangeListener, removeDecoration, render, setDefaultBackground, setDefaultForeground, setDefaultWindow, setDefaultWindow, setFramesForMorphing, setName, setUseFilmstripForMorphing, stateChanged
public View getDefaultView()Description copied from class:
SurfaceReturns a default view of this exhibit, a View of type
SurfaceView. (Note: If a Surface is displayed in a plain View3D, it will always appear as a wireframe.)
parameterChangedDescription copied from class:
ExhibitThis method will be called automatically when a parameter that has been added to this Exhibit is changed. It should not ordinarily be called directly. Note that in fact, this method simply calls
forceRedraw. This method is defined in the <@link Parameterizable} interface.
- Specified by:
param- The Parmeter whose value has been set.
oldValue- The previous value of the parameter.
newValue- The new, current value of the parameter. This is not necessarily guaranteed to be different from the old value (although it is for parameters definedin the VMM core).
- See Also:
SCaVis 2.0 © jWork.ORG