Package org.jzy3d.plot3d.primitives
Class Tube
- java.lang.Object
-
- org.jzy3d.plot3d.primitives.Drawable
-
- org.jzy3d.plot3d.primitives.Wireframeable
-
- org.jzy3d.plot3d.primitives.Tube
-
- All Implemented Interfaces:
ISingleColorable
,IGLRenderer
,ISortableDraw
public class Tube extends Wireframeable implements ISingleColorable
ATube
may be used to render cylinders or pyramids, according to its input parameters.
The position and shape of aTube
is defined through itssetData()
method. ATube
is aWireframeable
and support only one color that is defined trough itssetColor()
method. Being backed by a GLU cylinder, its normals are automatically processed which make the object able to reflect light.- Author:
- Martin Pernollet
-
-
Field Summary
-
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)
void
draw(IPainter painter)
Call OpenGL2 routines for rendering the object.Color
getColor()
Get the color.void
setColor(Color color)
Set the color.void
setData(Coord3d position, float radiusBottom, float radiusTop, float height, int slices, int stacks)
Set theTube
data.void
setPosition(Coord3d position)
Set the position of the Cylinder and the dimensions of its boundingbox.void
setSlicing(int verticalWires, int horizontalWires)
Set the cylinder slicing parameters, i.e. the subtlety of the circle estimation.void
setVolume(float radiusBottom, float radiusTop, float height)
Set the top and bottom radius of the cylinder, its height, and the dimensions of its boundingbox.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, 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
-
applyGeometryTransform
public void applyGeometryTransform(Transform transform)
- Specified by:
applyGeometryTransform
in classDrawable
-
updateBounds
public void updateBounds()
- Specified by:
updateBounds
in classDrawable
-
setData
public void setData(Coord3d position, float radiusBottom, float radiusTop, float height, int slices, int stacks)
Set theTube
data.- Parameters:
position
- cylinder position (may be handled diffrently in future version)radiusBottom
- radius of the bottom circleradiusTop
- radius of the top circleheight
- height of the cylinderslices
- 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 Cylinder 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
-
-
setVolume
public void setVolume(float radiusBottom, float radiusTop, float height)
Set the top and bottom radius of the cylinder, its height, and the dimensions of its boundingbox.- Parameters:
radiusBottom
-radiusTop
-height
-
-
setSlicing
public void setSlicing(int verticalWires, int horizontalWires)
Set the cylinder 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.
-
-