30 #include <OgreCamera.h> 31 #include <OgreSceneManager.h> 32 #include <OgreSceneNode.h> 49 "TF frame whose motion this view will follow.",
this,
nullptr,
true);
96 Ogre::Vector3 new_reference_position;
97 Ogre::Quaternion new_reference_orientation;
101 new_reference_position, new_reference_orientation);
107 return got_transform;
136 if (target_frame.isValid())
~FramePositionTrackingViewController() override
std::string getFrameStd() const
FramePositionTrackingViewController()
void changed()
Emitted by setValue() just after the value has changed.
TfFrameProperty * target_frame_property_
void onActivate() override
called by activate().
bool setValue(const QVariant &new_value) override
Override from Property to resolve the frame name on the way in.
void onInitialize() override
Do subclass-specific initialization.
virtual Property * subProp(const QString &sub_name)
Return the first child Property with the given name, or the FailureProperty if no child has the name...
virtual void onTargetFrameChanged(const Ogre::Vector3 &, const Ogre::Quaternion &)
Override to implement the change in properties which nullifies the change in target frame...
Ogre::Vector3 reference_position_
Ogre::Quaternion reference_orientation_
void update(float dt, float ros_dt) override
Called at 30Hz by ViewManager::update() while this view is active. Override with code that needs to r...
virtual FrameManager * getFrameManager() const =0
Return the FrameManager instance.
virtual Ogre::SceneManager * getSceneManager() const =0
Returns the Ogre::SceneManager used for the main RenderPanel.
virtual void queueRender()=0
Queues a render. Multiple calls before a render happens will only cause a single render.
static const QString FIXED_FRAME_STRING
virtual void updateTargetFrame()
Called when Target Frame property changes while view is active. Purpose is to change values in the vi...
bool getTransform(const Header &header, Ogre::Vector3 &position, Ogre::Quaternion &orientation)
Return the pose for a header, relative to the fixed frame, in Ogre classes.
void setFrameManager(FrameManager *frame_manager)
Ogre::SceneNode * target_scene_node_
virtual void updateTargetSceneNode()
Update the position of the target_scene_node_ from the TF frame specified in the Target Frame propert...
void mimic(ViewController *source_view) override
Configure the settings of this view controller to give, as much as possible, a similar view as that g...
virtual QVariant getValue() const
Return the value of this Property as a QVariant. If the value has never been set, an invalid QVariant...
DisplayContext * context_