Package org.jzy3d.plot3d.primitives
Class Sphere
- java.lang.Object
-
- org.jzy3d.plot3d.primitives.Drawable
-
- org.jzy3d.plot3d.primitives.Wireframeable
-
- org.jzy3d.plot3d.primitives.Sphere
-
- All Implemented Interfaces:
ISingleColorable
,IGLRenderer
,ISortableDraw
- Direct Known Subclasses:
PickableSphere
,SelectableSphere
public class Sphere extends Wireframeable implements ISingleColorable
Allows rendering a sphere. The position and shape of a Sphere3d is defined through itssetData()
method. Moreover, a Sphere3d is Wireframeable3d and support only one color that is defined trough itssetColor()
method.- Author:
- Martin Pernollet
-
-
Field Summary
Fields Modifier and Type Field Description protected Color
color
protected Coord3d
position
protected float
radius
protected int
slices
protected int
stacks
-
Fields inherited from class org.jzy3d.plot3d.primitives.Wireframeable
depthFunctionChangeForWireframe, faceDisplayed, materialAmbiantReflection, materialDiffuseReflection, materialEmission, materialShininess, materialSpecularReflection, NO_OVERLAP_DEPTH_RATIO, polygonOffsetFactor, polygonOffsetFillEnable, polygonOffsetUnit, polygonWireframeDepthTrick, reflectLight, wireframeColor, wireframeColorFromPolygonPoints, wireframeDisplayed, wireframeWidth, wireframeWithLineLoop
-
Fields inherited from class org.jzy3d.plot3d.primitives.Drawable
bbox, boundingBoxColor, boundingBoxDisplayed, displayed, hasListeners, legend, legendDisplayed, listeners, spaceTransformer, transform, transformBefore
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
applyGeometryTransform(Transform transform)
protected void
doDrawSphere(IPainter painter)
void
draw(IPainter painter)
Call OpenGL2 routines for rendering the object.Color
getColor()
Get the color.Coord3d
getPosition()
void
setColor(Color color)
Set the color.void
setData(Coord3d position, float radius, float height, int slices, int stacks)
Set the sphere data.void
setPosition(Coord3d position)
Set the position of the Sphere and the dimensions of its boundingbox.void
setSlicing(int verticalWires, int horizontalWires)
Set the sphere slicing parameters, i.e. the subtlety of the circle estimation.void
setVolume(float radius)
Set the radius of the sphere, and the dimensions of its boundingbox.String
toString(int depth)
void
updateBounds()
-
Methods inherited from class org.jzy3d.plot3d.primitives.Wireframeable
applyDepthRangeDefault, applyDepthRangeForOverlying, applyDepthRangeForUnderlying, applyMaterial, doDrawBoundsIfDisplayed, getMaterialAmbiantReflection, getMaterialDiffuseReflection, getMaterialEmission, getMaterialShininess, getMaterialSpecularReflection, getPolygonOffsetFactor, getPolygonOffsetUnit, getWireframeColor, getWireframeWidth, isFaceDisplayed, isPolygonOffsetFillEnable, isPolygonWireframeDepthTrick, isReflectLight, isWireframeColorFromPolygonPoints, isWireframeDisplayed, polygonOffsetFillDisable, polygonOffsetFillEnable, polygonOffsetLineDisable, polygonOffsetLineEnable, setFaceDisplayed, setMaterialAmbiantReflection, setMaterialDiffuseReflection, setMaterialEmission, setMaterialShininess, setMaterialSpecularReflection, setPolygonOffsetFactor, setPolygonOffsetFillEnable, setPolygonOffsetUnit, setPolygonWireframeDepthTrick, setReflectLight, setWireframeColor, setWireframeColorFromPolygonPoints, setWireframeDisplayed, setWireframeWidth
-
Methods inherited from class org.jzy3d.plot3d.primitives.Drawable
addDrawableListener, asWireframeable, dispose, doTransform, fireDrawableChanged, fireDrawableChanged, getBarycentre, getBoundingBoxColor, getBounds, getDistance, getLegend, getLongestDistance, getShortestDistance, getSpaceTransformer, getTransform, getTransformBefore, hasLegend, isBoundingBoxDisplayed, isDisplayed, isLegendDisplayed, removeDrawableListener, setBoundingBoxColor, setBoundingBoxDisplayed, setDisplayed, setLegend, setLegendDisplayed, setSpaceTransformer, setTransform, setTransformBefore, toString
-
-
-
-
Method Detail
-
draw
public void draw(IPainter painter)
Description copied from class:Drawable
Call OpenGL2 routines for rendering the object.- Specified by:
draw
in interfaceIGLRenderer
- Specified by:
draw
in classDrawable
-
doDrawSphere
protected void doDrawSphere(IPainter painter)
-
applyGeometryTransform
public void applyGeometryTransform(Transform transform)
- Specified by:
applyGeometryTransform
in classDrawable
-
setData
public void setData(Coord3d position, float radius, float height, int slices, int stacks)
Set the sphere data.- Parameters:
position
- sphere position (may be handled differently in future version)radius
- radius of the sphereslices
- number of vertical slices (i.e. wireframes)stacks
- number of horizontal stacks (i.e. wireframes)
-
setPosition
public void setPosition(Coord3d position)
Set the position of the Sphere and the dimensions of its boundingbox. Note that this position will be use to translate the object before drawing it (meaning a glTranslate(position) is performed right after the Translate.execute).- Parameters:
position
-
-
getPosition
public Coord3d getPosition()
-
updateBounds
public void updateBounds()
- Specified by:
updateBounds
in classDrawable
-
setVolume
public void setVolume(float radius)
Set the radius of the sphere, and the dimensions of its boundingbox.- Parameters:
radius
- sphere radius
-
setSlicing
public void setSlicing(int verticalWires, int horizontalWires)
Set the sphere slicing parameters, i.e. the subtlety of the circle estimation.- Parameters:
verticalWires
- number of vertical sliceshorizontalWires
- number of horizontal slices
-
setColor
public void setColor(Color color)
Description copied from interface:ISingleColorable
Set the color.- Specified by:
setColor
in interfaceISingleColorable
- Parameters:
color
- the color
-
getColor
public Color getColor()
Description copied from interface:ISingleColorable
Get the color.- Specified by:
getColor
in interfaceISingleColorable
- Returns:
- color the color.
-
-