Package org.robwork.sdurw_sensor
Class Scanner2DModel
- java.lang.Object
-
- org.robwork.sdurw_kinematics.Stateless
-
- org.robwork.sdurw_sensor.SensorModel
-
- org.robwork.sdurw_sensor.Scanner2DModel
-
public class Scanner2DModel extends SensorModel
The Scanner2DModel encapsulate the basic model of a
2 dimensional range scanning device such as SICK or Hokyuo laser
range scanners.
The model supports any range scanner that measures distance in
an arc around the origin of the sensor. The scanner scans in the z-x plane
with z-axis being the 0 angle measurement.
TODO: enable the selection of internal format, either pointcloud (large) or
range-array (compact).
-
-
Constructor Summary
Constructors Constructor Description Scanner2DModel(long cPtr, boolean cMemoryOwn)
Scanner2DModel(java.lang.String name, double angularRangeInRad, int maxDataPoints, FramePtr frame)
constructor
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
delete()
pair_d_d
getAngularRange()
Returns the min and max angular range of the scanner, where
the angles represent the beginning and end of scanning in the z-x plane.
Hence, angles represent rotation of z-axis around the y-axis.static long
getCPtr(Scanner2DModel obj)
pair_d_d
getDistanceRange()
get the min an max range in meters that is scannable by the 2D scannerlong
getMeasurementCount()
Returns the number of scan pointsPointCloud
getScan(State state)
get handle to point cloud data in state.void
setDistanceRange(double min, double max)
set distance rangevoid
setDistanceRange(pair_d_d range)
set distance rangevoid
setScan(PointCloud data, State state)
set point cloud data in state-
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
-
Scanner2DModel
public Scanner2DModel(long cPtr, boolean cMemoryOwn)
-
Scanner2DModel
public Scanner2DModel(java.lang.String name, double angularRangeInRad, int maxDataPoints, FramePtr frame)
constructor- Parameters:
name
- [in] name of scanner sensorangularRangeInRad
- [in] angular range in rad, with middle scan
point pointin along z-axismaxDataPoints
- [in] the number of scan pointsframe
- [in] the sensor frame
-
-
Method Detail
-
getCPtr
public static long getCPtr(Scanner2DModel obj)
-
delete
public void delete()
- Overrides:
delete
in classSensorModel
-
getScan
public PointCloud getScan(State state)
get handle to point cloud data in state.- Parameters:
state
- [in] the state with point cloud data
-
setScan
public void setScan(PointCloud data, State state)
set point cloud data in state- Parameters:
data
- [in] point cloud data to setstate
- [in] state in which to set the point cloud
-
getAngularRange
public pair_d_d getAngularRange()
Returns the min and max angular range of the scanner, where
the angles represent the beginning and end of scanning in the z-x plane.
Hence, angles represent rotation of z-axis around the y-axis. Normally range would
be something like -170 to 170 degree for a Hokyo or Sick scanner
- Returns:
- Angular range in radians
-
getMeasurementCount
public long getMeasurementCount()
Returns the number of scan points
-
getDistanceRange
public pair_d_d getDistanceRange()
get the min an max range in meters that is scannable by the 2D scanner- Returns:
- range in meters
-
setDistanceRange
public void setDistanceRange(pair_d_d range)
set distance range- Parameters:
range
-
-
setDistanceRange
public void setDistanceRange(double min, double max)
set distance range- Parameters:
min
- documentation missing !max
- documentation missing !
-
-