- Timestamp:
- Jun 14, 2008, 6:37:12 PM (16 years ago)
- File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
code/branches/hud/src/orxonox/overlays/hud/HUDNavigation.cc
r1599 r1601 28 28 29 29 #include "OrxonoxStableHeaders.h" 30 #include " Navigation.h"30 #include "HUDNavigation.h" 31 31 32 32 #include <OgreOverlayManager.h> … … 38 38 #include "objects/Projectile.h" 39 39 #include "objects/CameraHandler.h" 40 #include " HUD.h"40 #include "overlays/OverlayGroup.h" 41 41 #include "RadarObject.h" 42 42 #include "RadarOverlayElement.h" … … 46 46 namespace orxonox 47 47 { 48 CreateFactory( Navigation);48 CreateFactory(HUDNavigation); 49 49 50 50 using namespace Ogre; 51 51 52 Navigation::Navigation()52 HUDNavigation::HUDNavigation() 53 53 : container_(0) 54 54 , navMarker_(0) … … 57 57 , focus_(0) 58 58 { 59 RegisterObject( Navigation);60 } 61 62 Navigation::~Navigation()59 RegisterObject(HUDNavigation); 60 } 61 62 HUDNavigation::~HUDNavigation() 63 63 { 64 64 if (this->isInitialized()) … … 75 75 } 76 76 77 void Navigation::XMLPort(Element& xmlElement, XMLPort::Mode mode)78 { 79 HUDOverlay::XMLPort(xmlElement, mode);77 void HUDNavigation::XMLPort(Element& xmlElement, XMLPort::Mode mode) 78 { 79 OrxonoxOverlay::XMLPort(xmlElement, mode); 80 80 81 81 if (mode == XMLPort::LoadObject) … … 118 118 } 119 119 120 XMLPortParam( Navigation, "font", setFont, getFont, xmlElement, mode);121 XMLPortParam( Navigation, "textsize", setTextSize, getTextSize, xmlElement, mode);122 XMLPortParam( Navigation, "navmarkersize", setNavMarkerSize, getNavMarkerSize, xmlElement, mode);123 XMLPortParam( Navigation, "aimmarkersize", setAimMarkerSize, getAimMarkerSize, xmlElement, mode);120 XMLPortParam(HUDNavigation, "font", setFont, getFont, xmlElement, mode); 121 XMLPortParam(HUDNavigation, "textsize", setTextSize, getTextSize, xmlElement, mode); 122 XMLPortParam(HUDNavigation, "navmarkersize", setNavMarkerSize, getNavMarkerSize, xmlElement, mode); 123 XMLPortParam(HUDNavigation, "aimmarkersize", setAimMarkerSize, getAimMarkerSize, xmlElement, mode); 124 124 125 125 if (mode == XMLPort::LoadObject) … … 129 129 } 130 130 131 void Navigation::setNavMarkerSize(float size)131 void HUDNavigation::setNavMarkerSize(float size) 132 132 { 133 133 this->navMarkerSize_ = size; 134 134 } 135 135 136 float Navigation::getNavMarkerSize() const136 float HUDNavigation::getNavMarkerSize() const 137 137 { 138 138 return this->navMarkerSize_; 139 139 } 140 140 141 void Navigation::setAimMarkerSize(float size)141 void HUDNavigation::setAimMarkerSize(float size) 142 142 { 143 143 this->aimMarkerSize_ = size; 144 144 } 145 145 146 float Navigation::getAimMarkerSize() const146 float HUDNavigation::getAimMarkerSize() const 147 147 { 148 148 return this->aimMarkerSize_; 149 149 } 150 150 151 void Navigation::setFont(const std::string& font)151 void HUDNavigation::setFont(const std::string& font) 152 152 { 153 153 if (this->navText_ && font != "") … … 155 155 } 156 156 157 std::string Navigation::getFont() const157 std::string HUDNavigation::getFont() const 158 158 { 159 159 if (this->navText_) … … 163 163 } 164 164 165 void Navigation::setTextSize(float size)165 void HUDNavigation::setTextSize(float size) 166 166 { 167 167 if (this->navText_ && size >= 0.0f) … … 169 169 } 170 170 171 float Navigation::getTextSize() const171 float HUDNavigation::getTextSize() const 172 172 { 173 173 if (this->navText_) … … 177 177 } 178 178 179 void Navigation::tick(float dt)179 void HUDNavigation::tick(float dt) 180 180 { 181 181 if (!focus_) … … 185 185 } 186 186 187 void Navigation::updateMarker()187 void HUDNavigation::updateMarker() 188 188 { 189 189 // set text … … 291 291 } 292 292 293 void Navigation::cycleFocus()293 void HUDNavigation::cycleFocus() 294 294 { 295 295 if (!focus_) … … 298 298 float distance = (unsigned int) -1; 299 299 Vector3 shipPos = SpaceShip::getLocalShip()->getPosition(); 300 it_ = HUD::getSingleton().getRadarObjects().begin();301 302 for (std::list<RadarObject*>::iterator it = HUD::getSingleton().getRadarObjects().begin(); it != HUD::getSingleton().getRadarObjects().end(); ++it)300 it_ = OverlayGroup::getHUD().getRadarObjects().begin(); 301 302 for (std::list<RadarObject*>::iterator it = OverlayGroup::getHUD().getRadarObjects().begin(); it != OverlayGroup::getHUD().getRadarObjects().end(); ++it) 303 303 { 304 304 float newdist = (*it)->getPosition().squaredDistance(shipPos); … … 310 310 } 311 311 312 if (it_ != HUD::getSingleton().getRadarObjects().end())312 if (it_ != OverlayGroup::getHUD().getRadarObjects().end()) 313 313 { 314 314 focus_ = *it_; 315 315 316 316 // move the focused object to the begin of the list, so we will iterate through all other objects when cycling 317 HUD::getSingleton().getRadarObjects().erase(it_);318 HUD::getSingleton().getRadarObjects().insert(HUD::getSingleton().getRadarObjects().begin(), focus_);319 it_ = HUD::getSingleton().getRadarObjects().begin();320 } 321 } 322 else if (it_ != HUD::getSingleton().getRadarObjects().end())317 OverlayGroup::getHUD().getRadarObjects().erase(it_); 318 OverlayGroup::getHUD().getRadarObjects().insert(OverlayGroup::getHUD().getRadarObjects().begin(), focus_); 319 it_ = OverlayGroup::getHUD().getRadarObjects().begin(); 320 } 321 } 322 else if (it_ != OverlayGroup::getHUD().getRadarObjects().end()) 323 323 { 324 324 focus_->resetMaterial(); 325 325 ++it_; 326 if (it_ != HUD::getSingleton().getRadarObjects().end())326 if (it_ != OverlayGroup::getHUD().getRadarObjects().end()) 327 327 focus_ = *it_; 328 328 else … … 336 336 } 337 337 338 void Navigation::updateFocus()338 void HUDNavigation::updateFocus() 339 339 { 340 340 if (focus_) … … 349 349 } 350 350 351 void Navigation::releaseFocus()351 void HUDNavigation::releaseFocus() 352 352 { 353 353 this->focus_ = 0; … … 355 355 } 356 356 357 float Navigation::getDist2Focus() const357 float HUDNavigation::getDist2Focus() const 358 358 { 359 359 if (focus_) … … 363 363 } 364 364 365 void Navigation::sizeChanged()365 void HUDNavigation::sizeChanged() 366 366 { 367 367 float xScale = this->getActualSize().x;
Note: See TracChangeset
for help on using the changeset viewer.