Package org.robwork.sdurw_geometry
Class Face
- java.lang.Object
-
- org.robwork.sdurw_geometry.Face
-
- Direct Known Subclasses:
GenericFace
public class Face extends java.lang.ObjectAbstract interface for geometric faces.
A face consist of a surface and curves that form the boundary of the face.
For all faces there must be the same number of vertices and curves.
The order of vertices and curves are ordered such that a curve at a certain index will have a
corresponding start vertex at the same vertex index.
-
-
Constructor Summary
Constructors Constructor Description Face(long cPtr, boolean cMemoryOwn)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description longcurveCount()Get the number of curves in the face.voiddelete()pair_d_dextremums(Vector3D dir)Find the extent of the surface along a specific direction.static longgetCPtr(Face obj)CurvegetCurve(long i)Get a curve of the face.TriMeshPtrgetTriMesh()Create a TriMesh representation of the face.
This function relies on the resolution set with setMeshResolution.
The resolution is passed on to Curve::discretizeAdaptive and
Surface::setDiscretizationResolution.
TriMeshPtrgetTriMesh(boolean forceCopy)Create a TriMesh representation of the face.
This function relies on the resolution set with setMeshResolution.
The resolution is passed on to Curve::discretizeAdaptive and
Surface::setDiscretizationResolution.
OBBobb()Create Oriented Bounding Box.
The default implementation forms a TriMesh in order to estimate the directions for the
OBB.
voidsetMeshResolution(double resolution)Set the resolution used for discretization in the getTriMesh and faceTriMesh
functions.
The meaning of this parameter depends on the type of surface.
Surfacesurface()Get the surface of the face.voidtransform(Transform3D T)Transform the face.voidtransform(Vector3D P)Translation of face.SWIGTYPE_p_std__vectorT_rw__math__Vector3DT_double_t_tvertices()Get the vertices of the face.
-
-
-
Method Detail
-
getCPtr
public static long getCPtr(Face obj)
-
delete
public void delete()
-
surface
public Surface surface()
Get the surface of the face.- Returns:
- a reference to the surface data.
-
curveCount
public long curveCount()
Get the number of curves in the face.- Returns:
- the number of curves.
-
getCurve
public Curve getCurve(long i)
Get a curve of the face.- Parameters:
i- [in] the curve index, which should be less than the number returned by
curveCount().- Returns:
- a reference to the curve data.
-
vertices
public SWIGTYPE_p_std__vectorT_rw__math__Vector3DT_double_t_t vertices()
Get the vertices of the face.- Returns:
- a reference to the vertex vector.
-
transform
public void transform(Transform3D T)
Transform the face.- Parameters:
T- [in] transform.
-
transform
public void transform(Vector3D P)
Translation of face.- Parameters:
P- [in] translation vector.
-
getTriMesh
public TriMeshPtr getTriMesh(boolean forceCopy)
Create a TriMesh representation of the face.
This function relies on the resolution set with setMeshResolution.
The resolution is passed on to Curve::discretizeAdaptive and
Surface::setDiscretizationResolution.
- Parameters:
forceCopy- [in] (not currently used in default implementation)- Returns:
- a new TriMesh.
-
getTriMesh
public TriMeshPtr getTriMesh()
Create a TriMesh representation of the face.
This function relies on the resolution set with setMeshResolution.
The resolution is passed on to Curve::discretizeAdaptive and
Surface::setDiscretizationResolution.
- Returns:
- a new TriMesh.
-
extremums
public pair_d_d extremums(Vector3D dir)
Find the extent of the surface along a specific direction.- Parameters:
dir- [in] a normalized direction vector.- Returns:
- the minimum and maximum values along the given direction.
-
obb
public OBB obb()
Create Oriented Bounding Box.
The default implementation forms a TriMesh in order to estimate the directions for the
OBB.
- Returns:
- an OBB around the Face.
-
setMeshResolution
public void setMeshResolution(double resolution)
Set the resolution used for discretization in the getTriMesh and faceTriMesh
functions.
The meaning of this parameter depends on the type of surface.
- Parameters:
resolution- [in] the resolution parameter.
-
-