vmm3d.spacecurve.parametric
Class RepereMobileDecoration
- java.lang.Object
-
- vmm3d.core.Decoration
-
- vmm3d.spacecurve.parametric.RepereMobileDecoration
-
public class RepereMobileDecoration extends Decoration
A decoration that appears as a three perpendicular line segments at a point on the curve, representing the tangent, normal, and binormal vectors at that point. If the curve or its derivatives are undefined at that point, nothing is drawn.
-
-
Constructor Summary
Constructors Constructor and Description RepereMobileDecoration()Creates a RepereMobileDecoration with no associated curve.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description voiddoDraw(org.freehep.graphics2d.VectorGraphics g, View view, Transform transform)Draw the decoration.SpaceCurveParametricgetCurve()Returns the curve to which this decoration applies, or null if no curve has been set yet.doublegetT()Returns the t-value of the point (x(t),y(t),z(t)) where the decoration is drawn on the curve.voidsetCurve(SpaceCurveParametric c)Sets the curve to which this decoration applies.voidsetIndex(int tIndex)Set the t-value to be at one of the points in the array of points that defines the curve.voidsetT(double t)Change the value of t where the decoration appears.-
Methods inherited from class vmm3d.core.Decoration
addChangeListener, addExtraXML, computeDrawData, forceRedraw, getLayer, readExtraXML, removeChangeListener, setLayer
-
-
-
-
Constructor Detail
-
RepereMobileDecoration
public RepereMobileDecoration()
Creates a RepereMobileDecoration with no associated curve. A curve can be set later withsetCurve(SpaceCurveParametric), or it will be set implicitly when the decoration is drawn.
-
-
Method Detail
-
getCurve
public SpaceCurveParametric getCurve()
Returns the curve to which this decoration applies, or null if no curve has been set yet.- See Also:
setCurve(SpaceCurveParametric)
-
setCurve
public void setCurve(SpaceCurveParametric c)
Sets the curve to which this decoration applies. Note that the curve will also be set automatically the firt time the decoration is drawn.
-
setT
public void setT(double t)
Change the value of t where the decoration appears. This should be within the range of t-values shown on the curve, although this is not checked.- Parameters:
t- the t-value where the decoration is to be drawn. A value of Double.NaN means that nothing is to be drawn; this is the initial value.
-
getT
public double getT()
Returns the t-value of the point (x(t),y(t),z(t)) where the decoration is drawn on the curve. A value of Double.NaN means that the decoration is not drawn; this is the value when the decoration is first constructed.
-
setIndex
public void setIndex(int tIndex)
Set the t-value to be at one of the points in the array of points that defines the curve. If the curve is null when this is called, it has no effect.- Parameters:
tIndex- An index into the array of t-values that the curve uses to generate the curve. The index should be in the legal range; if not, nothing is drawn. The range is from 0 to getCurve().getTResolution(). If the value is outside this range, then no decoration will be drawn
-
doDraw
public void doDraw(org.freehep.graphics2d.VectorGraphics g, View view, Transform transform)Draw the decoration. If the curve is null when this is called, then curve will be set to the exhibit displayed in the View, which should be of type SpaceCurveParameteric, as long as this decoration is being used correctly. (If this is not the case, then nothing will be drawn.) Also, the View must be of type View3D, or nothing is drawn.- Overrides:
doDrawin classDecoration- Parameters:
g- The graphics context where the Exhibit and its decorations are being drawn.view- The View that is drawing the Exhibit; this object contains other information that might be of use, such as the Display, if any, associated with the View, and the the actual Exhibit that is being drawn.transform- Contains information about the rectangular area in the xy-plane that is being drawn and about the rectangle of pixels in the graphics context where it is drawn. Note that at least for the top-level View class, transform.getX() and transform.getY() can be assumed to be zero.- See Also:
Exhibit#render(Graphics2D, View, Transform, ArrayList),Decoration.computeDrawData(View, boolean, Transform, Transform)
-
-
DMelt 3.0 © DataMelt by jWork.ORG