Package org.robwork.sdurw_geometry
Class BSphere_fPtr
- java.lang.Object
-
- org.robwork.sdurw_geometry.BSphere_fPtr
-
public class BSphere_fPtr extends java.lang.Object
Ptr stores a pointer and optionally takes ownership of the value.
-
-
Constructor Summary
Constructors Constructor Description BSphere_fPtr()
Default constructor yielding a NULL-pointer.BSphere_fPtr(long cPtr, boolean cMemoryOwn)
BSphere_fPtr(BSphere_f 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 BSphere_f
__ref__()
Dereferencing operator.float
calcArea()
get the surface areafloat
calcVolume()
get the volumeBSphere_fCPtr
cptr()
void
delete()
BSphere_f
deref()
The pointer stored in the object.boolean
equals(BSphere_f p)
BSphere_f
fitEigen(GeometryDataPtr tris)
BSphere_f
fitEigen(TriMesh tris)
fit a sphere in $O(n)$ to a triangle mesh using Principal Component Analysis (PCA)
where the eigen values of the vertices are used to compute the center of the sphere
using the vector with the maximum spread (largest eigenvalue).BSphere_f
fitEigen(TriMeshPtr tris)
static long
getCPtr(BSphere_fPtr obj)
BSphere_f
getDeref()
Member access operator.Vector3Df
getPosition()
get the position of the sphere centerfloat
getRadius()
get the sphere radiusfloat
getRadiusSqr()
get the sphere radius^2boolean
isNull()
checks if the pointer is nullboolean
isShared()
check if this Ptr has shared ownership or none
ownershipvoid
setPosition(Vector3Df p3d)
set the sphere center coordinatejava.lang.String
toString()
-
-
-
Constructor Detail
-
BSphere_fPtr
public BSphere_fPtr(long cPtr, boolean cMemoryOwn)
-
BSphere_fPtr
public BSphere_fPtr()
Default constructor yielding a NULL-pointer.
-
BSphere_fPtr
public BSphere_fPtr(BSphere_f ptr)
Do not take ownership of ptr.
ptr can be null.
The constructor is implicit on purpose.
-
-
Method Detail
-
getCPtr
public static long getCPtr(BSphere_fPtr obj)
-
delete
public void delete()
-
deref
public BSphere_f deref()
The pointer stored in the object.
-
__ref__
public BSphere_f __ref__()
Dereferencing operator.
-
getDeref
public BSphere_f getDeref()
Member access operator.
-
equals
public boolean equals(BSphere_f 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 BSphere_fCPtr cptr()
-
getPosition
public Vector3Df getPosition()
get the position of the sphere center- Returns:
- a Vector3D with the center coordinates
-
setPosition
public void setPosition(Vector3Df p3d)
set the sphere center coordinate- Parameters:
p3d
- [in] the new center coordinates
-
getRadius
public float getRadius()
get the sphere radius- Returns:
- sphere radius
-
getRadiusSqr
public float getRadiusSqr()
get the sphere radius^2- Returns:
- sphere radius^2
-
calcArea
public float calcArea()
get the surface area- Returns:
- surface area
-
calcVolume
public float calcVolume()
get the volume- Returns:
- volume
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
fitEigen
public BSphere_f fitEigen(TriMesh tris)
fit a sphere in $O(n)$ to a triangle mesh using Principal Component Analysis (PCA)
where the eigen values of the vertices are used to compute the center of the sphere
using the vector with the maximum spread (largest eigenvalue).- Parameters:
tris
- [in] input mesh- Returns:
- bounding sphere
-
fitEigen
public BSphere_f fitEigen(TriMeshPtr tris)
-
fitEigen
public BSphere_f fitEigen(GeometryDataPtr tris)
-
-