vmm.surface.parametric
Class DiracBelt

java.lang.Object
  extended by vmm.core.Exhibit
      extended by vmm.core3D.Exhibit3D
          extended by vmm.surface.Surface
              extended by vmm.surface.parametric.SurfaceParametric
                  extended by vmm.surface.parametric.DiracBelt
All Implemented Interfaces:
java.util.EventListener, javax.swing.event.ChangeListener, Decorateable, Parameterizable

public class DiracBelt
extends SurfaceParametric

Defines a Dirac Belt (for the Belt-Trick) with parametric equations ((1/2)*(v - 8*u*cos(t)*(1 + 2*cos(t)^2*cos(v))*sin(t)*sin(v/2)^2 + cos(4*t)*(v - sin(v)) + sin(v)) -2.5, -cos(v)*sin(2*t) + u*cos(t)^2*sin(2*v);, u*(-cos(2*t)*sin(t)^2 + cos(t)^2*(cos(2*t)*cos(2*v) + 4*cos(v)*sin(t)^2)) + (1/2)*sin(4*t)*(-v + sin(v))))


Field Summary
 
Fields inherited from class vmm.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, umax, umin, vmax, vmin
 
Fields inherited from class vmm.surface.Surface
data, uPatchCount, vPatchCount
 
Fields inherited from class vmm.core3D.Exhibit3D
defaultViewpoint, defaultViewUp, previousTransform3D
 
Fields inherited from class vmm.core.Exhibit
decorations, exhibitNeedsRedraw, isMorphing, morphingView, parameters, previousTransform
 
Constructor Summary
DiracBelt()
           
 
Method Summary
 Animation getCreateAnimation(View view)
          This method is called to "create" the Exhibit.
 View getDefaultView()
          Returns a default view of this exhibit, a View of type SurfaceView.
 Vector3D surfacePoint(double u, double v)
          The parametric equations that define the surface, given as a function from the uv-plane into R3.
 
Methods inherited from class vmm.surface.parametric.SurfaceParametric
addExtraXML, createData, deriv_u, deriv_v, gaussMap, getActionsForView, readExtraXML, removeView, surfaceNormal
 
Methods inherited from class vmm.surface.Surface
computeDrawData3D, doDraw3D, getBuildAnimation, getDefaultOrientation, setDefaultOrientation
 
Methods inherited from class vmm.core3D.Exhibit3D
computeDrawDataHook, doDrawHook, getDefaultTransform, getDefaultViewpoint, getDefaultViewUp, setDefaultViewpoint, setDefaultViewUp
 
Methods inherited from class vmm.core.Exhibit
addChangeListener, addDecoration, addParameter, addView, clearDecorations, computeDrawData, doDraw, fireExhibitChangeEvent, forceRedraw, getAdditionalAnimationsForView, getAlternativeViews, getDecorations, getDefaultBackground, getDefaultForeground, getDefaultWindow, getFramesForMorphing, getMorphingAnimation, getName, getParameterByName, getParameters, getSettingsCommandsForView, getTitle, getUseFilmstripForMorphing, getViews, parameterChanged, removeChangeListener, removeDecoration, removeParameter, render, setDefaultBackground, setDefaultForeground, setDefaultWindow, setDefaultWindow, setFramesForMorphing, setName, setUseFilmstripForMorphing, stateChanged
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DiracBelt

public DiracBelt()
Method Detail

getDefaultView

public View getDefaultView()
Description copied from class: Surface
Returns 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.)

Overrides:
getDefaultView in class Surface

getCreateAnimation

public Animation getCreateAnimation(View view)
Description copied from class: Exhibit
This method is called to "create" the Exhibit. It should return an animation that will show the process of creating the Exhibit, whatever that means. The animation is run when the Exhibit is first shown on the screen (in the 3dxm shell program) and when the "Create" action command is invoked. If the return value is null, then there is no creation animation for this exhibit. If the return value is non-null, then it can be expected that the animation will be installed in the View's Display.

Overrides:
getCreateAnimation in class Exhibit
Parameters:
view - A View that is displaying this Exhibit. The animation, if any, that is returned by this method will be installed in the View's display. If the view is null, than a creation animation that can run independently of a view could be returned.
Returns:
A creation animation for the given View of this Exhibit. The return value can be null to indicate that no creation animation is to be run.

surfacePoint

public Vector3D surfacePoint(double u,
                             double v)
Description copied from class: SurfaceParametric
The parametric equations that define the surface, given as a function from the uv-plane into R3. The return value of this function can be null, indicating that the function is undefined for the given u and v.

Specified by:
surfacePoint in class SurfaceParametric