Package org.robwork.sdurw_invkin
Class ClosedFormIKSolverKukaIIWAPtr
- java.lang.Object
-
- org.robwork.sdurw_invkin.ClosedFormIKSolverKukaIIWAPtr
-
public class ClosedFormIKSolverKukaIIWAPtr extends java.lang.Object
Ptr stores a pointer and optionally takes ownership of the value.
-
-
Constructor Summary
Constructors Constructor Description ClosedFormIKSolverKukaIIWAPtr()
Default constructor yielding a NULL-pointer.ClosedFormIKSolverKukaIIWAPtr(long cPtr, boolean cMemoryOwn)
ClosedFormIKSolverKukaIIWAPtr(ClosedFormIKSolverKukaIIWA 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 ClosedFormIKSolverKukaIIWA
__ref__()
Dereferencing operator.ClosedFormIKSolverKukaIIWACPtr
cptr()
void
delete()
ClosedFormIKSolverKukaIIWA
deref()
The pointer stored in the object.boolean
equals(ClosedFormIKSolverKukaIIWA p)
static long
getCPtr(ClosedFormIKSolverKukaIIWAPtr obj)
ClosedFormIKSolverKukaIIWA
getDeref()
Member access operator.FrameCPtr
getTCP()
boolean
isNull()
checks if the pointer is nullboolean
isShared()
check if this Ptr has shared ownership or none
ownershipClosedFormIKPtr
make(Device device, State state)
Closed-form IK solver for a device.
The device must be a serial device with 6 revolute joints described
by DH parameters.
The IK solver is currently implemented in terms of PieperSolver.void
setCheckJointLimits(boolean check)
VectorQ
solve(Transform3D baseTend, State state)
VectorQ
solve(Transform3D baseTend, State state, Vector3D dir4)
Find inverse kinematic solutions deterministically by pulling joint 4 as much in
the given direction as possible.
-
-
-
Constructor Detail
-
ClosedFormIKSolverKukaIIWAPtr
public ClosedFormIKSolverKukaIIWAPtr(long cPtr, boolean cMemoryOwn)
-
ClosedFormIKSolverKukaIIWAPtr
public ClosedFormIKSolverKukaIIWAPtr()
Default constructor yielding a NULL-pointer.
-
ClosedFormIKSolverKukaIIWAPtr
public ClosedFormIKSolverKukaIIWAPtr(ClosedFormIKSolverKukaIIWA ptr)
Do not take ownership of ptr.
ptr can be null.
The constructor is implicit on purpose.
-
-
Method Detail
-
getCPtr
public static long getCPtr(ClosedFormIKSolverKukaIIWAPtr obj)
-
delete
public void delete()
-
deref
public ClosedFormIKSolverKukaIIWA deref()
The pointer stored in the object.
-
__ref__
public ClosedFormIKSolverKukaIIWA __ref__()
Dereferencing operator.
-
getDeref
public ClosedFormIKSolverKukaIIWA getDeref()
Member access operator.
-
equals
public boolean equals(ClosedFormIKSolverKukaIIWA 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
-
cptr
public ClosedFormIKSolverKukaIIWACPtr cptr()
-
solve
public VectorQ solve(Transform3D baseTend, State state)
-
solve
public VectorQ solve(Transform3D baseTend, State state, Vector3D dir4)
Find inverse kinematic solutions deterministically by pulling joint 4 as much in
the given direction as possible.- Parameters:
baseTend
- [in] Desired base to end transformation
\robabx{}{desired}{\mathbf{T}}.state
- [in] State of the device from which to start the iterations.dir4
- [in] unit vector giving the direction to pull joint 4 in (given in base
coordinate system).- Returns:
- List of up to 8 solutions. Notice that the list may be empty.
-
setCheckJointLimits
public void setCheckJointLimits(boolean check)
-
getTCP
public FrameCPtr getTCP()
-
make
public ClosedFormIKPtr make(Device device, State state)
Closed-form IK solver for a device.
The device must be a serial device with 6 revolute joints described
by DH parameters.
The IK solver is currently implemented in terms of PieperSolver. See
the documentation of PieperSolver for the specific requirements for
the DH parameters.
An exception is thrown if closed-form IK for the device is not
supported, except that all such cases are currently not discovered.
You should check for yourself that the closed-form IK for the device
is correct.
-
-