Skyscraper 2.0
|
#include <scenenode.h>
Public Member Functions | |
SceneNode (Object *parent, std::string name) | |
~SceneNode () | |
Ogre::SceneNode * | GetRawSceneNode () |
void | AddChild (SceneNode *scenenode) |
void | RemoveChild (SceneNode *scenenode) |
void | ShowBoundingBox (bool value) |
void | SetPosition (const Vector3 &position) |
void | SetPositionRelative (const Vector3 &position) |
Vector3 | GetPosition (bool relative=false) |
void | SetRotation (const Vector3 &rotation) |
Vector3 | GetRotation () |
void | Update () |
Quaternion | GetOrientation (bool relative=false) |
void | SetOrientation (const Quaternion &q, bool relative=false) |
void | Move (const Vector3 &vector, Real speed=1.0) |
void | DetachAllObjects () |
void | AttachObject (Ogre::MovableObject *object) |
void | DetachObject (Ogre::MovableObject *object) |
Real | GetScale () |
void | SetScale (Real scale) |
SceneNode * | CreateChild (std::string name, const Vector3 &offset=Vector3::ZERO) |
std::string | GetFullName () |
bool | IsRoot () |
void | Pitch (Real °ree) |
void | Yaw (Real °ree) |
void | Roll (Real °ree) |
Vector3 | GetDerivedPosition () |
Quaternion | GetDerivedOrientation () |
void | SetDirection (const Vector3 &direction) |
void | LookAt (const Vector3 &point) |
![]() | |
ObjectBase (Object *parent) | |
virtual | ~ObjectBase () |
Object * | GetParent () |
SBS * | GetRoot () |
void | SetName (const std::string &name) |
const std::string & | GetName () |
std::string | GetNameBase () |
virtual void | Report (const std::string &message) |
virtual bool | ReportError (const std::string &message) |
Private Attributes | |
Ogre::SceneNode * | node |
Vector3 | Rotation |
Additional Inherited Members | |
![]() | |
SBS * | sbs |
Definition at line 29 of file scenenode.h.
SBS::SceneNode::SceneNode | ( | Object * | parent, |
std::string | name ) |
Definition at line 32 of file scenenode.cpp.
References SBS::ObjectBase::GetNameBase(), SBS::ObjectBase::GetParent(), SBS::Object::GetSceneNode(), SBS::SBS::mSceneManager, node, SBS::ObjectBase::ReportError(), Rotation, SBS::ObjectBase::sbs, and SBS::ObjectBase::SetName().
Referenced by CreateChild().
SBS::SceneNode::~SceneNode | ( | ) |
Definition at line 59 of file scenenode.cpp.
References SBS::SBS::mSceneManager, node, and SBS::ObjectBase::sbs.
void SBS::SceneNode::AddChild | ( | SceneNode * | scenenode | ) |
Definition at line 73 of file scenenode.cpp.
References GetRawSceneNode(), and node.
Referenced by SBS::Object::AddChild().
void SBS::SceneNode::AttachObject | ( | Ogre::MovableObject * | object | ) |
Definition at line 250 of file scenenode.cpp.
References node, and SBS::ObjectBase::ReportError().
Referenced by SBS::Camera::Attach(), SBS::CameraTexture::CameraTexture(), SBS::DynamicMesh::Mesh::Enabled(), and SBS::Light::Light().
SceneNode * SBS::SceneNode::CreateChild | ( | std::string | name, |
const Vector3 & | offset = Vector3::ZERO ) |
Definition at line 304 of file scenenode.cpp.
References SBS::ObjectBase::GetParent(), GetRawSceneNode(), Move(), node, and SceneNode().
Referenced by SBS::MeshObject::CreateBoxCollider(), SBS::MeshObject::CreateCollider(), and SBS::MeshObject::CreateColliderFromModel().
void SBS::SceneNode::DetachAllObjects | ( | ) |
void SBS::SceneNode::DetachObject | ( | Ogre::MovableObject * | object | ) |
Definition at line 267 of file scenenode.cpp.
References node, SBS::ObjectBase::ReportError(), SBS::ObjectBase::sbs, and SBS::SBS::Verbose.
Referenced by SBS::Camera::Detach(), SBS::DynamicMesh::Mesh::Detach(), SBS::DynamicMesh::Mesh::Enabled(), SBS::CameraTexture::~CameraTexture(), and SBS::Light::~Light().
Quaternion SBS::SceneNode::GetDerivedOrientation | ( | ) |
Vector3 SBS::SceneNode::GetDerivedPosition | ( | ) |
Definition at line 354 of file scenenode.cpp.
References node, SBS::ObjectBase::sbs, and SBS::SBS::ToLocal().
Referenced by GetPosition().
std::string SBS::SceneNode::GetFullName | ( | ) |
Definition at line 318 of file scenenode.cpp.
References node.
Referenced by SBS::DynamicMesh::Mesh::CreateSubMesh(), and SBS::MeshObject::MeshObject().
Quaternion SBS::SceneNode::GetOrientation | ( | bool | relative = false | ) |
Definition at line 197 of file scenenode.cpp.
References SBS::SBS::FromGlobal(), GetDerivedOrientation(), IsRoot(), node, and SBS::ObjectBase::sbs.
Referenced by SBS::Object::ChangeParent(), SBS::Object::GetOrientation(), SBS::DynamicMesh::Mesh::Prepare(), and SBS::DynamicMesh::Mesh::UpdateVertices().
Vector3 SBS::SceneNode::GetPosition | ( | bool | relative = false | ) |
Definition at line 128 of file scenenode.cpp.
References SBS::SBS::FromGlobal(), GetDerivedPosition(), IsRoot(), node, SBS::ObjectBase::sbs, and SBS::SBS::ToLocal().
Referenced by SBS::Camera::GetPosition(), SBS::Object::GetPosition(), SBS::DynamicMesh::Mesh::IsVisible(), SBS::DynamicMesh::Mesh::Prepare(), Skyscraper::HAL::UpdateOpenXR(), and SBS::DynamicMesh::Mesh::UpdateVertices().
|
inline |
Definition at line 35 of file scenenode.h.
Referenced by AddChild(), SBS::Vehicle::AddWheel(), SBS::MeshObject::CreateBoxCollider(), SBS::Vehicle::CreateChassis(), CreateChild(), SBS::MeshObject::CreateCollider(), SBS::MeshObject::CreateColliderFromModel(), SBS::Camera::Move(), RemoveChild(), and SBS::Camera::~Camera().
Vector3 SBS::SceneNode::GetRotation | ( | ) |
Definition at line 179 of file scenenode.cpp.
References Rotation.
Referenced by SBS::Object::GetRotation().
Real SBS::SceneNode::GetScale | ( | ) |
Definition at line 285 of file scenenode.cpp.
References node.
Referenced by SBS::MeshObject::CreateBoxCollider(), SBS::Vehicle::CreateChassis(), and SBS::MeshObject::CreateCollider().
bool SBS::SceneNode::IsRoot | ( | ) |
Definition at line 328 of file scenenode.cpp.
References SBS::Object::GetSceneNode(), and SBS::ObjectBase::sbs.
Referenced by GetOrientation(), GetPosition(), SetOrientation(), and SetPosition().
void SBS::SceneNode::LookAt | ( | const Vector3 & | point | ) |
Definition at line 372 of file scenenode.cpp.
References node, SBS::ObjectBase::sbs, and SBS::SBS::ToRemote().
Referenced by SBS::CameraTexture::CameraTexture(), and SBS::CameraTexture::LookAt().
Definition at line 237 of file scenenode.cpp.
References node, SBS::ObjectBase::sbs, SBS::SBS::ToRemote(), and Update().
Referenced by CreateChild(), and SBS::Object::Move().
void SBS::SceneNode::Pitch | ( | Real & | degree | ) |
Definition at line 333 of file scenenode.cpp.
References node.
void SBS::SceneNode::RemoveChild | ( | SceneNode * | scenenode | ) |
Definition at line 81 of file scenenode.cpp.
References GetRawSceneNode(), and node.
Referenced by SBS::Object::RemoveChild().
void SBS::SceneNode::Roll | ( | Real & | degree | ) |
Definition at line 347 of file scenenode.cpp.
References node.
void SBS::SceneNode::SetDirection | ( | const Vector3 & | direction | ) |
Definition at line 367 of file scenenode.cpp.
References node, SBS::ObjectBase::sbs, and SBS::SBS::ToRemote().
Referenced by SBS::Light::SetDirection().
void SBS::SceneNode::SetOrientation | ( | const Quaternion & | q, |
bool | relative = false ) |
Definition at line 217 of file scenenode.cpp.
References IsRoot(), node, SBS::ObjectBase::sbs, SBS::SBS::ToGlobal(), and Update().
Referenced by SBS::Object::ChangeParent(), SBS::Object::SetOrientation(), and SetRotation().
void SBS::SceneNode::SetPosition | ( | const Vector3 & | position | ) |
Definition at line 101 of file scenenode.cpp.
References IsRoot(), node, SBS::ObjectBase::sbs, SBS::SBS::ToGlobal(), SBS::SBS::ToRemote(), and Update().
Referenced by SBS::Camera::SetPosition(), and SBS::Object::SetPosition().
void SBS::SceneNode::SetPositionRelative | ( | const Vector3 & | position | ) |
Definition at line 115 of file scenenode.cpp.
References node, SBS::ObjectBase::sbs, SBS::SBS::ToRemote(), and Update().
Referenced by SBS::Object::SetPositionRelative().
void SBS::SceneNode::SetRotation | ( | const Vector3 & | rotation | ) |
Definition at line 148 of file scenenode.cpp.
References node, Rotation, and SetOrientation().
Referenced by SBS::Object::SetRotation().
void SBS::SceneNode::SetScale | ( | Real | scale | ) |
Definition at line 294 of file scenenode.cpp.
References node.
Referenced by SBS::MeshObject::MeshObject().
void SBS::SceneNode::ShowBoundingBox | ( | bool | value | ) |
Definition at line 93 of file scenenode.cpp.
References node.
Referenced by SBS::Object::ShowBoundingBox().
void SBS::SceneNode::Update | ( | ) |
Definition at line 187 of file scenenode.cpp.
References node.
Referenced by Move(), SBS::Object::NotifyMove(), SBS::Object::NotifyRotate(), SBS::MeshObject::OnMove(), SBS::MeshObject::OnRotate(), SetOrientation(), SetPosition(), SetPositionRelative(), and SBS::Camera::Sync().
void SBS::SceneNode::Yaw | ( | Real & | degree | ) |
Definition at line 340 of file scenenode.cpp.
References node.
|
private |
Definition at line 66 of file scenenode.h.
Referenced by AddChild(), AttachObject(), CreateChild(), DetachAllObjects(), DetachObject(), GetDerivedOrientation(), GetDerivedPosition(), GetFullName(), GetOrientation(), GetPosition(), GetScale(), LookAt(), Move(), Pitch(), RemoveChild(), Roll(), SceneNode(), SetDirection(), SetOrientation(), SetPosition(), SetPositionRelative(), SetRotation(), SetScale(), ShowBoundingBox(), Update(), Yaw(), and ~SceneNode().
|
private |
Definition at line 67 of file scenenode.h.
Referenced by GetRotation(), SceneNode(), and SetRotation().