vmm.core
Interface UserExhibit

All Superinterfaces:
Parameterizable
All Known Subinterfaces:
UserExhibit3D
All Known Implementing Classes:
UserCentralForce, UserConformalMap, UserMagneticField, UserODE1stOrder3D, UserODE1stOrder3DNonAutonomous, UserODE2ndOrder3DNonAutonomous, UserODEF2ndOrder2D, UserODEF2ndOrder2DNonAutonomous, UserODEF2ndOrder3D, UserODEFirstOrder1D, UserODEFirstOrder2D, UserODEFirstOrder2DNonAutonomous, UserODESecondOrder1D, UserPlaneCurveParametric, UserPlaneCurveParametricKappa, UserPlaneCurveParametricPolar, UserSpaceCurveKappaTau, UserSpaceCurveParametric, UserSurfaceImplicit, UserSurfaceParametric

public interface UserExhibit
extends Parameterizable

A UserExhbit is meant to be an Exhibit whose data is computed by one or more functions entered by the user. A UserExhibit class should be declared as a subclass of some subclass of Exhibit and it should implement the UserExhbit interface. All the methods specified by this interface, except for getUserExhibitSupport(), are already defined in the Exhibit class and do not have to be reimplmented in the user exhibit class. The user exhibit class should define an instance variable of type UserExhibit.Support. It should create and customize an object of that type in its contstructor, and should return that object as the value of getUserExhibitSupport().

User exhibit classes can be very simple. For examples, see UserPlaneCurveParametric and UserConformalMap.

Note that a user exhibits that is a subclass of Exhibit3D should implement UserExhibit3D instead of UserExhibit.


Nested Class Summary
static class UserExhibit.FunctionInfo
          An object of type FunctionInfo holds information about one the functions, to be entered by the user, that compute the data for the user exhibit.
static class UserExhibit.Support
          An object of type UserExhibit.Support holds the information need for a user exhibit and provides some methods for manipulating that information.
 
Method Summary
 View getDefaultView()
          This method is already defined in class Exhibit and will not ordinarily be redefined in a user exhibit class.
 double[] getDefaultWindow()
          This method is already defined in class Exhibit and will not ordinarily be redefined in a user exhibit class.
 Parameter[] getParameters()
          This method is already defined in class Exhibit and will not ordinarily be redefined in a user exhibit class.
 UserExhibit.Support getUserExhibitSupport()
          This method should return a non-null object that is created and customized in the constructor of the class that implements UserExhbit.
 void setDefaultWindow(double[] window)
          This method is already defined in class Exhibit and will not ordinarily be redefined in a user exhibit class.
 
Methods inherited from interface vmm.core.Parameterizable
parameterChanged
 

Method Detail

getUserExhibitSupport

UserExhibit.Support getUserExhibitSupport()
This method should return a non-null object that is created and customized in the constructor of the class that implements UserExhbit.


getParameters

Parameter[] getParameters()
This method is already defined in class Exhibit and will not ordinarily be redefined in a user exhibit class.

See Also:
Exhibit.getParameters()

getDefaultWindow

double[] getDefaultWindow()
This method is already defined in class Exhibit and will not ordinarily be redefined in a user exhibit class.

See Also:
Exhibit.getDefaultWindow()

setDefaultWindow

void setDefaultWindow(double[] window)
This method is already defined in class Exhibit and will not ordinarily be redefined in a user exhibit class.

See Also:
Exhibit.setDefaultWindow(double[])

getDefaultView

View getDefaultView()
This method is already defined in class Exhibit and will not ordinarily be redefined in a user exhibit class.

See Also:
Exhibit.getDefaultView()