RobWorkProject  24.6.21-
Public Types | Public Member Functions | List of all members
SimulatedScanner2D Class Reference

Simulated scanner in 2D. More...

#include <SimulatedScanner2D.hpp>

Inherits SimulatedSensor.

Public Types

typedef rw::core::Ptr< SimulatedScanner2DPtr
 smart pointer of this class
 
- Public Types inherited from SimulatedSensor
typedef rw::core::Ptr< SimulatedSensorPtr
 smart pointer type of this class
 
- Public Types inherited from Stateless
typedef rw::core::Ptr< StatelessPtr
 Smart pointer type for Stateless.
 

Public Member Functions

 SimulatedScanner2D (const std::string &name, rw::core::Ptr< rw::kinematics::Frame > frame, rw::core::Ptr< rwlibs::simulation::FrameGrabber25D > framegrabber)
 constructor More...
 
 SimulatedScanner2D (const std::string &name, const std::string &desc, rw::core::Ptr< rw::kinematics::Frame > frame, rw::core::Ptr< rwlibs::simulation::FrameGrabber25D > framegrabber)
 constructor More...
 
virtual ~SimulatedScanner2D ()
 destructor
 
void setFrameRate (double rate)
 set the framerate in frames per sec. More...
 
void open ()
 Opens connection to the scanner. More...
 
bool isOpen ()
 Returns whether the scanner has been opened. More...
 
void close ()
 Closes the connection to the scanner. More...
 
void acquire ()
 Acquires data. More...
 
bool isScanReady ()
 tests whether an image has been acquired More...
 
std::pair< double, double > getRange ()
 Returns the min and max range of this Scanner. More...
 
double getFrameRate ()
 returns the framerate that this camera is setup with More...
 
const rw::geometry::PointCloudgetScan () const
 Simulates a Kinnect grabbing RGBD images. More...
 
void update (const rwlibs::simulation::Simulator::UpdateInfo &info, rw::kinematics::State &state)
 steps the the SimulatedSensor with time dt and saves any state changes in state. More...
 
void reset (const rw::kinematics::State &state)
 Resets the state of the SimulatedSensor to that of state. More...
 
rw::core::Ptr< rw::sensor::Scanner2DgetScanner2DSensor (rwlibs::simulation::Simulator *instance)
 returns a handle to what represents a statefull interface. The handle will be locked to the simulator More...
 
rw::core::Ptr< rw::sensor::Scanner2DModelgetSensorModel ()
 Get a model of the sensor. More...
 
virtual double 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. More...
 
virtual size_t getMeasurementCount () const
 
- Public Member Functions inherited from SimulatedSensor
virtual ~SimulatedSensor ()
 destructor
 
const std::string & getName () const
 get name of this simulated sensor
 
rw::kinematics::FramegetFrame () const
 get frame that this sensor is attached to. More...
 
rw::sensor::SensorModel::Ptr getSensorModel ()
 get the sensor model of this simulated sensor.
 
rw::sensor::Sensor::Ptr getSensorHandle (rwlibs::simulation::Simulator::Ptr sim)
 get a handle to controlling an instance of the simulated sensor in a specific simulator More...
 
- Public Member Functions inherited from Stateless
virtual ~Stateless ()
 destructor
 
virtual void registerIn (State &state)
 initialize this stateless data to a specific state More...
 
virtual void registerIn (StateStructure::Ptr state)
 register this stateless object in a statestructure.
 
virtual void unregister ()
 unregisters all state data of this stateless object
 
StateStructure::Ptr getStateStructure ()
 Get the state structure. More...
 
const StateStructure::Ptr getStateStructure () const
 Get the state structure. More...
 
bool isRegistered ()
 Check if object has registered its state. More...
 

Additional Inherited Members

- Protected Member Functions inherited from SimulatedSensor
 SimulatedSensor (rw::sensor::SensorModel::Ptr model)
 constructor
 
- Protected Member Functions inherited from Stateless
 Stateless ()
 constructor
 
template<class T >
void add (StatelessData< T > &data)
 implementations of sensor should add all their stateless data on initialization
 
void add (StateData *data)
 Add data. More...
 
void add (rw::core::Ptr< StateData > data)
 implementations of sensor should add all their state data on initialization
 
- Protected Attributes inherited from Stateless
bool _registered
 True if object has registered its state.
 
std::vector< rw::core::Ptr< StateData > > _datas
 Data.
 
StateStructure::Ptr _stateStruct
 The state structure.
 

Detailed Description

Simulated scanner in 2D.

Constructor & Destructor Documentation

◆ SimulatedScanner2D() [1/2]

SimulatedScanner2D ( const std::string &  name,
rw::core::Ptr< rw::kinematics::Frame frame,
rw::core::Ptr< rwlibs::simulation::FrameGrabber25D framegrabber 
)

constructor

Parameters
name[in] name of this simulated scanner
frame[in] the sensor frame.
framegrabber[in] the framegrabber used for grabbing 2.5D images

◆ SimulatedScanner2D() [2/2]

SimulatedScanner2D ( const std::string &  name,
const std::string &  desc,
rw::core::Ptr< rw::kinematics::Frame frame,
rw::core::Ptr< rwlibs::simulation::FrameGrabber25D framegrabber 
)

constructor

Parameters
name[in] name of this simulated scanner
desc[in] description of this scanner
frame[in] the sensor frame.
framegrabber[in] the framegrabber used for grabbing 2.5D images

Member Function Documentation

◆ acquire()

void acquire ( )

Acquires data.

◆ close()

void close ( )

Closes the connection to the scanner.

◆ getAngularRange()

virtual double getAngularRange ( )
virtual

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

◆ getFrameRate()

double getFrameRate ( )

returns the framerate that this camera is setup with

Returns
the framerate in frames per second

◆ getRange()

std::pair<double, double> getRange ( )

Returns the min and max range of this Scanner.

Returns
min and max range

◆ getScan()

const rw::geometry::PointCloud& getScan ( ) const

Simulates a Kinnect grabbing RGBD images.

◆ getScanner2DSensor()

returns a handle to what represents a statefull interface. The handle will be locked to the simulator

Returns

◆ getSensorModel()

Get a model of the sensor.

Returns
the model.

◆ isOpen()

bool isOpen ( )

Returns whether the scanner has been opened.

Returns
true if scanner is opened

◆ isScanReady()

bool isScanReady ( )

tests whether an image has been acquired

Returns
true if an image has been acquired, false otherwise.

◆ open()

void open ( )

Opens connection to the scanner.

◆ reset()

void reset ( const rw::kinematics::State state)
virtual

Resets the state of the SimulatedSensor to that of state.

Parameters
state[in] the state that the sensor is reset too.

Implements SimulatedSensor.

◆ setFrameRate()

void setFrameRate ( double  rate)

set the framerate in frames per sec.

Parameters
rate[in] frames per sec

◆ update()

void update ( const rwlibs::simulation::Simulator::UpdateInfo info,
rw::kinematics::State state 
)
virtual

steps the the SimulatedSensor with time dt and saves any state changes in state.

Parameters
info[in] update information related to the time step.
state[out] changes of the SimulatedSensor is saved in state.

Implements SimulatedSensor.


The documentation for this class was generated from the following file: