Package org.robwork.sdurw_models
Class SE3DeviceCPtr
- java.lang.Object
-
- org.robwork.sdurw_models.SE3DeviceCPtr
-
public class SE3DeviceCPtr extends java.lang.ObjectPtr stores a pointer and optionally takes ownership of the value.
-
-
Constructor Summary
Constructors Constructor Description SE3DeviceCPtr()Default constructor yielding a NULL-pointer.SE3DeviceCPtr(long cPtr, boolean cMemoryOwn)SE3DeviceCPtr(SE3Device 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 SE3Device__ref__()Dereferencing operator.JacobianCalculatorPtrbaseJCend(State state)DeviceJacobian for the end frame.
By default this method forwards to baseDJframe().JacobianCalculatorPtrbaseJCframe(FrameCPtr frame, State state)DeviceJacobian for a particular frame.
By default this method forwards to baseDJframes().JacobianCalculatorPtrbaseJCframes(FrameVector frames, State state)JacobianbaseJend(State state)JacobianbaseJframe(FrameCPtr frame, State state)Calculates the jacobian matrix of a frame f described in the
robot base frame ^{base}_{frame}\mathbf{J}_{\mathbf{q}}(\mathbf{q})
JacobianbaseJframes(FrameVector frames, State state)The Jacobian for a sequence of frames.
A Jacobian is computed for each of the frames and the Jacobians are
stacked on top of eachother.Transform3DbaseTend(State state)Calculates the homogeneous transform from base to the end frame
\robabx{base}{end}{\mathbf{T}}Transform3DbaseTframe(FrameCPtr f, State state)Calculates the homogeneous transform from base to a frame f
\robabx{b}{f}{\mathbf{T}}voiddelete()SE3Devicederef()The pointer stored in the object.booleanequals(SE3Device p)QgetAccelerationLimits()get the Joint Acceleration limitPairQgetBounds()
Since the SE3Device robot is unconstrained and can move anywhere
whithin the taskspace each of the 6 input's are unbounded ( [-\inf, \inf] ) in practice the inputs are limited to the
numerical limits of the real datatype, thus this method returns the
range ([DBL_MIN, DBL_MAX]) for each of the 6 inputsstatic longgetCPtr(SE3DeviceCPtr obj)SE3DevicegetDeref()Member access operator.longgetDOF()
This method always returns the value 6java.lang.StringgetName()Returns the name of the deviceQgetQ(State state)QgetVelocityLimits()get the Joint velocity limitbooleanisNull()checks if the pointer is nullbooleanisShared()check if this Ptr has shared ownership or none
ownershipvoidsetQ(Q q, State state)
Transform3DworldTbase(State state)Calculates the homogeneous transform from world to base \robabx{w}{b}{\mathbf{T}}
-
-
-
Constructor Detail
-
SE3DeviceCPtr
public SE3DeviceCPtr(long cPtr, boolean cMemoryOwn)
-
SE3DeviceCPtr
public SE3DeviceCPtr()
Default constructor yielding a NULL-pointer.
-
SE3DeviceCPtr
public SE3DeviceCPtr(SE3Device ptr)
Do not take ownership of ptr.
ptr can be null.
The constructor is implicit on purpose.
-
-
Method Detail
-
getCPtr
public static long getCPtr(SE3DeviceCPtr obj)
-
delete
public void delete()
-
deref
public SE3Device deref()
The pointer stored in the object.
-
__ref__
public SE3Device __ref__()
Dereferencing operator.
-
getDeref
public SE3Device getDeref()
Member access operator.
-
equals
public boolean equals(SE3Device 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
-
getBounds
public PairQ getBounds()
Since the SE3Device robot is unconstrained and can move anywhere
whithin the taskspace each of the 6 input's are unbounded ( [-\inf, \inf] ) in practice the inputs are limited to the
numerical limits of the real datatype, thus this method returns the
range ([DBL_MIN, DBL_MAX]) for each of the 6 inputs
-
baseJCframes
public JacobianCalculatorPtr baseJCframes(FrameVector frames, State state)
-
getDOF
public long getDOF()
This method always returns the value 6
-
getVelocityLimits
public Q getVelocityLimits()
get the Joint velocity limit- Returns:
- the velocity limit as Q
-
getAccelerationLimits
public Q getAccelerationLimits()
get the Joint Acceleration limit- Returns:
- the Acceleration limit as Q
-
getName
public java.lang.String getName()
Returns the name of the device- Returns:
- name of the device
-
baseTframe
public Transform3D baseTframe(FrameCPtr f, State state)
Calculates the homogeneous transform from base to a frame f
\robabx{b}{f}{\mathbf{T}}- Returns:
- the homogeneous transform \robabx{b}{f}{\mathbf{T}}
-
baseTend
public Transform3D baseTend(State state)
Calculates the homogeneous transform from base to the end frame
\robabx{base}{end}{\mathbf{T}}- Returns:
- the homogeneous transform \robabx{base}{end}{\mathbf{T}}
-
worldTbase
public Transform3D worldTbase(State state)
Calculates the homogeneous transform from world to base \robabx{w}{b}{\mathbf{T}}
- Returns:
- the homogeneous transform \robabx{w}{b}{\mathbf{T}}
-
baseJframe
public Jacobian baseJframe(FrameCPtr frame, State state)
Calculates the jacobian matrix of a frame f described in the
robot base frame ^{base}_{frame}\mathbf{J}_{\mathbf{q}}(\mathbf{q})
- Parameters:
frame- [in] Frame for which to calculate the Jacobianstate- [in] State for which to calculate the Jacobian
- Returns:
- the 6*ndof jacobian matrix:
{^{base}_{frame}}\mathbf{J}_{\mathbf{q}}(\mathbf{q})
This method calculates the jacobian relating joint velocities ( \mathbf{\dot{q}} ) to the frame f velocity seen from base-frame
( \nu^{base}_{frame} )
\nu^{base}_{frame} = {^{base}_{frame}}\mathbf{J}_\mathbf{q}(\mathbf{q})\mathbf{\dot{q}}
The jacobian matrix {^{base}_n}\mathbf{J}_{\mathbf{q}}(\mathbf{q})
is defined as:
{^{base}_n}\mathbf{J}_{\mathbf{q}}(\mathbf{q}) = \frac{\partial ^{base}\mathbf{x}_n}{\partial \mathbf{q}}
By default the method forwards to baseJframes().
-
baseJframes
public Jacobian baseJframes(FrameVector frames, State state)
The Jacobian for a sequence of frames.
A Jacobian is computed for each of the frames and the Jacobians are
stacked on top of eachother.- Parameters:
frames- [in] the frames to calculate the frames fromstate- [in] the state to calculate in- Returns:
- the jacobian
-
baseJCend
public JacobianCalculatorPtr baseJCend(State state)
DeviceJacobian for the end frame.
By default this method forwards to baseDJframe().
-
baseJCframe
public JacobianCalculatorPtr baseJCframe(FrameCPtr frame, State state)
DeviceJacobian for a particular frame.
By default this method forwards to baseDJframes().
-
-