Package org.robwork.sdurw_sensor
Class TactileArrayModel
- java.lang.Object
-
- org.robwork.sdurw_kinematics.Stateless
-
- org.robwork.sdurw_sensor.SensorModel
-
- org.robwork.sdurw_sensor.TactileArrayModel
-
public class TactileArrayModel extends SensorModel
the TactileArrayModel describes tactile sensor consisting of
arrays of tactile cells that can be placed on a defined shape. The shape is described
with a matrix of 3d vertices. Such that tactil (0,0) maps to the quad
defined by the four vertices {(0,0),(0,1),(1,1),(1,0)}. Notice that the
normal is defined by sequence of the vertices and that the normal defines
the direction of tactile sensing.
-
-
Constructor Summary
Constructors Constructor Description TactileArrayModel(long cPtr, boolean cMemoryOwn)
TactileArrayModel(java.lang.String name, FramePtr sensorframe, Transform3D fThmap, SWIGTYPE_p_Eigen__MatrixXf heightMap, double cell_width, double cell_height)
constructor
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
delete()
TactileVertexMatrix
getCenters()
a matrix with position of each tactile cell center.static long
getCPtr(TactileArrayModel obj)
int
getHeight()
get height of tactile arrayTactileVertexMatrix
getNormals()
a matrix of normals that are described relative to each tactile
cell center.pair_d_d
getPressureLimit()
get the minimum and maximum pressure capability of any tactile
cell in the TactileArraySWIGTYPE_p_Eigen__MatrixXf
getTexelData(State state)
returns the pressure on each texel of the TactileArray in
the unit Pa (N/m^2).Vector2D
getTexelSize(int x, int y)
gets the size of an individual tactile cell with coordinates (x,y)Transform3D
getTransform()
a transformation from the sensor frame to the geometric data of
the tactile array.TactileVertexMatrix
getVertexGrid()
gets the 3d geometry of this tactilearray.int
getWidth()
get width of tactile arrayvoid
setPressureLimit(double min, double max)
set pressure limits.void
setPressureLimit(pair_d_d range)
void
setTexelData(SWIGTYPE_p_Eigen__MatrixXf data, State state)
set the pressure on each texel of the TactileArray in
the unit Pa (N/m^2).-
Methods inherited from class org.robwork.sdurw_sensor.SensorModel
attachTo, getCPtr, getDescription, getFrame, getName, getPropertyMap, setDescription, setName
-
Methods inherited from class org.robwork.sdurw_kinematics.Stateless
getCPtr, getStateStructure, isRegistered, registerIn, registerIn, unregister
-
-
-
-
Constructor Detail
-
TactileArrayModel
public TactileArrayModel(long cPtr, boolean cMemoryOwn)
-
TactileArrayModel
public TactileArrayModel(java.lang.String name, FramePtr sensorframe, Transform3D fThmap, SWIGTYPE_p_Eigen__MatrixXf heightMap, double cell_width, double cell_height)
constructor- Parameters:
name
- [in] name of sensorsensorframe
- [in] the frame to which the sensor is attachedfThmap
- [in] transformation from sensor frame to the heightmap definitionheightMap
- [in] a height map defining the height of each corner in the tactile
arraycell_width
- [in] width of cellcell_height
- [in] height of cell
-
-
Method Detail
-
getCPtr
public static long getCPtr(TactileArrayModel obj)
-
delete
public void delete()
- Overrides:
delete
in classSensorModel
-
getTexelSize
public Vector2D getTexelSize(int x, int y)
gets the size of an individual tactile cell with coordinates (x,y)- Parameters:
x
-y
-- Returns:
- the dimensions of the tactile cell in meters
-
getPressureLimit
public pair_d_d getPressureLimit()
get the minimum and maximum pressure capability of any tactile
cell in the TactileArray- Returns:
- min and max pressure in Pa
-
setPressureLimit
public void setPressureLimit(double min, double max)
set pressure limits. should define min max of any tactile cell in array- Parameters:
min
- [in] min pressure in Pamax
- [in] max pressure in Pa
-
setPressureLimit
public void setPressureLimit(pair_d_d range)
-
getVertexGrid
public TactileVertexMatrix getVertexGrid()
gets the 3d geometry of this tactilearray. The vertexes are expressed
realtive to the transform.- Returns:
-
getTransform
public Transform3D getTransform()
a transformation from the sensor frame to the geometric data of
the tactile array.- Returns:
-
getCenters
public TactileVertexMatrix getCenters()
a matrix with position of each tactile cell center. The coordinates
are described relative to the TactileArray transform (see getTransform())- Returns:
- a matrix describing the center of each tactile cell.
-
getNormals
public TactileVertexMatrix getNormals()
a matrix of normals that are described relative to each tactile
cell center.- Returns:
-
getWidth
public int getWidth()
get width of tactile array
-
getHeight
public int getHeight()
get height of tactile array
-
getTexelData
public SWIGTYPE_p_Eigen__MatrixXf getTexelData(State state)
returns the pressure on each texel of the TactileArray in
the unit Pa (N/m^2).- Parameters:
state
- [in] state to get the values from- Returns:
- matrix of texel pressure values
-
setTexelData
public void setTexelData(SWIGTYPE_p_Eigen__MatrixXf data, State state)
set the pressure on each texel of the TactileArray in
the unit Pa (N/m^2).- Parameters:
data
- [in] pressure valuesstate
- [in] state to set the values in
-
-