org.opensourcephysics.display3d.simple3d
Class ElementCylinder

java.lang.Object
  extended by org.opensourcephysics.display3d.simple3d.Element
      extended by org.opensourcephysics.display3d.simple3d.AbstractTile
          extended by org.opensourcephysics.display3d.simple3d.ElementCylinder
All Implemented Interfaces:
Element, ElementCylinder, InteractionSource

public class ElementCylinder
extends AbstractTile
implements ElementCylinder

Title: ElementCylinder

Description: Painter's algorithm implementation of a Cylinder

Version:
March 2005
Author:
Francisco Esquembre

Nested Class Summary
protected static class ElementCylinder.Loader
           
 
Field Summary
protected static double TO_RADIANS
           
 
Fields inherited from class org.opensourcephysics.display3d.simple3d.AbstractTile
corners, numberOfTiles
 
Fields inherited from class org.opensourcephysics.display3d.simple3d.Element
targetPosition, targetSize
 
Fields inherited from interface org.opensourcephysics.display3d.core.Element
TARGET_POSITION, TARGET_SIZE
 
Constructor Summary
ElementCylinder()
           
 
Method Summary
protected  void computeCorners()
          This will be used by subclasses whenever there is a need to recompute the actual values of the corners before drawing.
static XML.ObjectLoader getLoader()
          Returns an XML.ObjectLoader to save and load object data.
 int getMaximumAngle()
          Gets the maximum angle used to build the top and faces sides of the cylinder.
 int getMinimumAngle()
          Gets the minimum angle used to build the top and bottom faces of the cylinder.
 boolean isClosedBottom()
          Whether the element is closed at its bottom.
 boolean isClosedLeft()
          Whether the element is closed at its left side.
 boolean isClosedRight()
          Whether the element is closed at its right side.
 boolean isClosedTop()
          Whether the element is closed at its top.
 void setClosedBottom(boolean close)
          Whether the element should be closed at its bottom.
 void setClosedLeft(boolean close)
          Whether an incomplete element should be closed at its left side.
 void setClosedRight(boolean close)
          Whether an incomplete element should be closed at its right side.
 void setClosedTop(boolean close)
          Whether the element should be closed at its top.
 void setMaximumAngle(int angle)
          Sets the maximum angle to build the top and bottom faces of the cylinder.
 void setMinimumAngle(int angle)
          Sets the minimum angle to build the top and bottom faces of the cylinder.
 
Methods inherited from class org.opensourcephysics.display3d.simple3d.AbstractTile
getDisplacementFactor, getTargetHit, projectPoints, setColorBelowWhenEqual, setColorOriginAndDirection, setColorRegions, setCorners, setDisplacementFactor, setDrawQuickInterior
 
Methods inherited from class org.opensourcephysics.display3d.simple3d.Element
addInteractionListener, getAxesMode, getDrawingPanel3D, getHotSpotBodyCoordinates, getInteractionTarget, getName, getSizeX, getSizeY, getSizeZ, getStyle, getTransformation, getX, getY, getZ, isReallyVisible, isVisible, loadUnmutableObjects, removeInteractionListener, setName, setSizeX, setSizeXYZ, setSizeXYZ, setSizeY, setSizeZ, setTransformation, setVisible, setX, setXYZ, setXYZ, setY, setZ, toBodyFrame, toSpaceFrame
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.opensourcephysics.display3d.core.Element
getDrawingPanel3D, getName, getSizeX, getSizeY, getSizeZ, getStyle, getTransformation, getX, getY, getZ, isVisible, loadUnmutableObjects, setName, setSizeX, setSizeXYZ, setSizeXYZ, setSizeY, setSizeZ, setTransformation, setVisible, setX, setXYZ, setXYZ, setY, setZ, toBodyFrame, toSpaceFrame
 
Methods inherited from interface org.opensourcephysics.display3d.core.interaction.InteractionSource
addInteractionListener, getInteractionTarget, removeInteractionListener
 

Field Detail

TO_RADIANS

protected static final double TO_RADIANS
See Also:
Constant Field Values
Constructor Detail

ElementCylinder

public ElementCylinder()
Method Detail

setClosedBottom

public void setClosedBottom(boolean close)
Description copied from interface: ElementCylinder
Whether the element should be closed at its bottom.

Specified by:
setClosedBottom in interface ElementCylinder

isClosedBottom

public boolean isClosedBottom()
Description copied from interface: ElementCylinder
Whether the element is closed at its bottom.

Specified by:
isClosedBottom in interface ElementCylinder
Returns:
the value

setClosedTop

public void setClosedTop(boolean close)
Description copied from interface: ElementCylinder
Whether the element should be closed at its top.

Specified by:
setClosedTop in interface ElementCylinder

isClosedTop

public boolean isClosedTop()
Description copied from interface: ElementCylinder
Whether the element is closed at its top.

Specified by:
isClosedTop in interface ElementCylinder
Returns:
the value

setClosedLeft

public void setClosedLeft(boolean close)
Description copied from interface: ElementCylinder
Whether an incomplete element should be closed at its left side.

Specified by:
setClosedLeft in interface ElementCylinder

isClosedLeft

public boolean isClosedLeft()
Description copied from interface: ElementCylinder
Whether the element is closed at its left side.

Specified by:
isClosedLeft in interface ElementCylinder
Returns:
the value

setClosedRight

public void setClosedRight(boolean close)
Description copied from interface: ElementCylinder
Whether an incomplete element should be closed at its right side.

Specified by:
setClosedRight in interface ElementCylinder

isClosedRight

public boolean isClosedRight()
Description copied from interface: ElementCylinder
Whether the element is closed at its right side.

Specified by:
isClosedRight in interface ElementCylinder
Returns:
the value

setMinimumAngle

public void setMinimumAngle(int angle)
Description copied from interface: ElementCylinder
Sets the minimum angle to build the top and bottom faces of the cylinder. Default is 0.

Specified by:
setMinimumAngle in interface ElementCylinder
Parameters:
angle - the minimum angle (in degrees)

getMinimumAngle

public int getMinimumAngle()
Description copied from interface: ElementCylinder
Gets the minimum angle used to build the top and bottom faces of the cylinder.

Specified by:
getMinimumAngle in interface ElementCylinder
Returns:
the minimum angle (in degrees)

setMaximumAngle

public void setMaximumAngle(int angle)
Description copied from interface: ElementCylinder
Sets the maximum angle to build the top and bottom faces of the cylinder. Default is 360.

Specified by:
setMaximumAngle in interface ElementCylinder
Parameters:
angle - the maximum angle (in degrees)

getMaximumAngle

public int getMaximumAngle()
Description copied from interface: ElementCylinder
Gets the maximum angle used to build the top and faces sides of the cylinder.

Specified by:
getMaximumAngle in interface ElementCylinder
Returns:
the maximum angle (in degrees)

computeCorners

protected void computeCorners()
Description copied from class: AbstractTile
This will be used by subclasses whenever there is a need to recompute the actual values of the corners before drawing. Synchronization is recomended.

Specified by:
computeCorners in class AbstractTile

getLoader

public static XML.ObjectLoader getLoader()
Returns an XML.ObjectLoader to save and load object data.

Returns:
the XML.ObjectLoader