Package org.robwork.sdurw_geometry
Class ParametricCurveCPtr
- java.lang.Object
-
- org.robwork.sdurw_geometry.ParametricCurveCPtr
-
public class ParametricCurveCPtr extends java.lang.ObjectPtr stores a pointer and optionally takes ownership of the value.
-
-
Constructor Summary
Constructors Constructor Description ParametricCurveCPtr()Default constructor yielding a NULL-pointer.ParametricCurveCPtr(long cPtr, boolean cMemoryOwn)ParametricCurveCPtr(ParametricCurve ptr)Do not take ownership of ptr.
ptr can be null.
The constructor is implicit on purpose.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ParametricCurve__ref__()Dereferencing operator.ParametricCurvePtrclone()SWIGTYPE_p_std__vectorT_rw__math__Vector3DT_double_t_tclosestPoints(Vector3D p)doubleclosestTime(Vector3D p)Get the parameter value where the curve is closest to a point p.
Notice that the limits are taken into account.
vector_dclosestTimes(Vector3D p)Get the parameter values where the curve is closest to a point p.
Notice that the limits are taken into account.
doublecurvature(double t)The curvature in a given point on the curve.
This function does not take the limits into account.
booleanCurveEqual(CurveCPtr curve, double eps)Vector3Dddx(double t)Evaluate the second derivative in a point on the curve.voiddelete()ParametricCurvederef()The pointer stored in the object.SWIGTYPE_p_std__listT_rw__math__Vector3DT_double_t_tdiscretizeAdaptive(double stepsPerRevolution)Vector3Ddx(double t)Evaluate the derivative in a point on the curve.booleanequals(ParametricCurve p)pair_d_dextremums(Vector3D dir)static longgetCPtr(ParametricCurveCPtr obj)ParametricCurvegetDeref()Member access operator.booleanhasLimits()Check if the curve is limited.booleaninLimits(double t)Check if the parameter t is inside the limits set for the curve.booleanisNull()checks if the pointer is nullbooleanisShared()check if this Ptr has shared ownership or none
ownershippair_d_dlimits()Get the limits of the curve segment.
The returned values are only valid when hasLimits() returns true.
OBBobr()ParametricCurvePtrreverse()ParametricCurvePtrscale(double factor)ParametricCurvePtrtransform(Transform3D T)rw::math::Transform3D<double>&) constParametricCurvePtrtransform(Vector3D P)rw::math::Vector3D<double>&) constVector3Dx(double t)Evaluate a point on the curve.
-
-
-
Constructor Detail
-
ParametricCurveCPtr
public ParametricCurveCPtr(long cPtr, boolean cMemoryOwn)
-
ParametricCurveCPtr
public ParametricCurveCPtr()
Default constructor yielding a NULL-pointer.
-
ParametricCurveCPtr
public ParametricCurveCPtr(ParametricCurve ptr)
Do not take ownership of ptr.
ptr can be null.
The constructor is implicit on purpose.
-
-
Method Detail
-
getCPtr
public static long getCPtr(ParametricCurveCPtr obj)
-
delete
public void delete()
-
deref
public ParametricCurve deref()
The pointer stored in the object.
-
__ref__
public ParametricCurve __ref__()
Dereferencing operator.
-
getDeref
public ParametricCurve getDeref()
Member access operator.
-
equals
public boolean equals(ParametricCurve p)
-
isShared
public boolean isShared()
check if this Ptr has shared ownership or none
ownership- Returns:
- true if Ptr has shared ownership, false if it has no ownership.
-
isNull
public boolean isNull()
checks if the pointer is null- Returns:
- Returns true if the pointer is null
-
transform
public ParametricCurvePtr transform(Transform3D T)
rw::math::Transform3D<double>&) const
-
transform
public ParametricCurvePtr transform(Vector3D P)
rw::math::Vector3D<double>&) const
-
scale
public ParametricCurvePtr scale(double factor)
-
reverse
public ParametricCurvePtr reverse()
-
clone
public ParametricCurvePtr clone()
-
discretizeAdaptive
public SWIGTYPE_p_std__listT_rw__math__Vector3DT_double_t_t discretizeAdaptive(double stepsPerRevolution)
-
obr
public OBB obr()
-
closestPoints
public SWIGTYPE_p_std__vectorT_rw__math__Vector3DT_double_t_t closestPoints(Vector3D p)
-
CurveEqual
public boolean CurveEqual(CurveCPtr curve, double eps)
-
x
public Vector3D x(double t)
Evaluate a point on the curve.- Parameters:
t- [in] the parameter to find point for.- Returns:
- the vector p \in \mathbb{R}^3 .
-
dx
public Vector3D dx(double t)
Evaluate the derivative in a point on the curve.- Parameters:
t- [in] the parameter to find derivative for.- Returns:
- a derivative vector p \in \mathbb{R}^3 .
-
ddx
public Vector3D ddx(double t)
Evaluate the second derivative in a point on the curve.- Parameters:
t- [in] the parameter to find second derivative for.- Returns:
- a second derivative vector p \in \mathbb{R}^3 .
-
hasLimits
public boolean hasLimits()
Check if the curve is limited.- Returns:
- true if curve is limited, false otherwise.
-
limits
public pair_d_d limits()
Get the limits of the curve segment.
The returned values are only valid when hasLimits() returns true.
- Returns:
- the minimum and maximum parameter values on the curve.
-
inLimits
public boolean inLimits(double t)
Check if the parameter t is inside the limits set for the curve.- Parameters:
t- [in] the parameter to check.- Returns:
- true if inside limits, false otherwise.
-
curvature
public double curvature(double t)
The curvature in a given point on the curve.
This function does not take the limits into account.
- Parameters:
t- [in] the parameter to evaluate the curvature for.- Returns:
- the curvature.
-
closestTimes
public vector_d closestTimes(Vector3D p)
Get the parameter values where the curve is closest to a point p.
Notice that the limits are taken into account.
- Parameters:
p- [in] the point to find closest values for.- Returns:
- a list of parameter values.
-
closestTime
public double closestTime(Vector3D p)
Get the parameter value where the curve is closest to a point p.
Notice that the limits are taken into account.
- Parameters:
p- [in] the point to find closest values for.- Returns:
- the point on the curve closest to p. If multiple points are equally close to
p, only one of those points are returned.
-
-