Changeset 1302 for code/branches/hud3/src/orxonox/hud/HUD.cc
- Timestamp:
- May 15, 2008, 10:10:47 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/hud3/src/orxonox/hud/HUD.cc
r1281 r1302 30 30 #include <OgreOverlay.h> 31 31 #include <OgreOverlayContainer.h> 32 #include <OgreOverlayManager.h> ma32 #include <OgreOverlayManager.h> 33 33 #include <OgreSceneNode.h> 34 34 #include <OgreEntity.h> … … 50 50 51 51 Ogre::OverlayManager& overlayManager = Ogre::OverlayManager::getSingleton(); 52 52 53 53 BarOverlayElementFactory *barOverlayElementFactory = new BarOverlayElementFactory(); 54 54 overlayManager.addOverlayElementFactory(barOverlayElementFactory); 55 55 56 56 SmartBarOverlayElementFactory *smartBarOverlayElementFactory = new SmartBarOverlayElementFactory(); 57 57 overlayManager.addOverlayElementFactory(smartBarOverlayElementFactory); 58 58 59 59 RadarOverlayElementFactory *radarOverlayElementFactory = new RadarOverlayElementFactory(); 60 60 overlayManager.addOverlayElementFactory(radarOverlayElementFactory); 61 62 Ogre::Overlay* orxonoxOverlay = overlayManager.create("Orxonox/HUD"); 61 62 Ogre::Overlay* orxonoxOverlay = overlayManager.create("Orxonox/HUD"); 63 63 64 64 Ogre::OverlayContainer* energyCounterPanel = static_cast<Ogre::OverlayContainer*>(overlayManager.createOverlayElement("Panel", "Orxonox/HUD/energyCounterPanel")); 65 65 66 66 energyCounter = static_cast<SmartBarOverlayElement*>(overlayManager.createOverlayElement("SmartBar", "energyCounter")); 67 67 energyCounter->show(); 68 69 68 69 70 70 radar = static_cast<RadarOverlayElement*>(overlayManager.createOverlayElement("Radar", "radar")); 71 71 radar->show(); 72 72 73 73 74 74 /* TextAreaOverlayElement* test = static_cast<TextAreaOverlayElement*>(overlayManager.createOverlayElement("TextArea", "test")); 75 75 76 76 int dirX, dirY, dirZ; //flying direction 77 77 int ortX, ortY, ortZ; //orthogonal direction … … 81 81 double beta; //defines the angle in the radar 82 82 bool right; //checks whether the object is on the right side (since cos is not bijective) 83 83 84 84 dirX = 1; 85 85 dirY = 0; 86 86 dirZ = 0; 87 87 88 88 ortX = 0; 89 89 ortY = 0; 90 90 ortZ = 1; 91 91 92 92 dX = -2; 93 93 dY = 2; 94 94 dZ = 0; 95 95 96 96 alpha = acos((dirX*dX+dirY*dY+dirZ*dZ)/(sqrt(pow(dX,2)+pow(dY,2)+pow(dZ,2))*sqrt(pow(dirX,2)+pow(dirY,2)+pow(dirZ,2)))); 97 97 beta = acos((ortX*dX+ortY*dY+ortZ*dZ)/(sqrt(pow(dX,2)+pow(dY,2)+pow(dZ,2))*sqrt(pow(ortX,2)+pow(ortY,2)+pow(ortZ,2)))); … … 99 99 vecY = dirZ*ortX - dirX*ortZ; 100 100 vecZ = dirX*ortY - dirY*ortX; 101 101 102 102 if((vecX*dX+vecY*dY+vecZ*dZ)>0){right=true;} 103 103 else right=false; 104 104 105 105 test->setCaption("hell"); 106 106 test->setPosition(10,10); 107 107 test->setDimensions(20,20); 108 108 test->show(); 109 test->setMetricsMode(Ogre::GMM_PIXELS); 109 test->setMetricsMode(Ogre::GMM_PIXELS); 110 110 energyCounterPanel->addChild(test); 111 111 112 112 COUT(0)<<alpha<<" "<<beta<<" "<<right<<std::endl; 113 113 */ 114 114 115 115 energyCounterPanel->addChild(energyCounter); 116 116 energyCounterPanel->addChild(radar); 117 117 energyCounterPanel->show(); 118 118 119 119 orxonoxOverlay->add2D(energyCounterPanel); 120 120 orxonoxOverlay->show(); 121 121 122 123 122 123 124 124 // important: don't use SceneManager to create the node! but register the creator scene manager. 125 125 /* ogreNode_ = new Ogre::SceneNode(Orxonox::getSingleton()->getSceneManager(), "hudNoedely"); 126 126 127 127 ogreNode_->setPosition(80,-60,-200); 128 128 ogreNode_->setScale(0.4,0.4,0.4); … … 132 132 // orxonoxOverlay->add3D(ogreNode_); 133 133 */ 134 134 135 135 energyCounterPanel->setLeft(-50); 136 136 energyCounterPanel->setTop(10); … … 138 138 energyCounterPanel->setHeight(20); 139 139 energyCounterPanel->setHorizontalAlignment(Ogre::GHA_CENTER); 140 energyCounterPanel->setMetricsMode(Ogre::GMM_PIXELS); 141 140 energyCounterPanel->setMetricsMode(Ogre::GMM_PIXELS); 141 142 142 energyCounter->initSmartBarOverlayElement(-100,0,200,20,BarOverlayElement::LEFT); 143 143 energyCounter->reset(80); 144 144 145 145 radar->initRadarOverlayElement(10,10,200,energyCounterPanel); 146 146 147 147 148 148 } 149 149 150 /*void HUD::tick(float dt)150 void HUD::tick(float dt) 151 151 { 152 if (this->ogreNode_) 152 radar->update(); 153 /*if (this->ogreNode_) 153 154 { 154 155 this->ogreNode_->roll(Ogre::Degree(dt*200),Ogre::Node::TS_LOCAL); 155 this->ogreNode_->yaw(Ogre::Degree(dt*200),Ogre::Node::TS_LOCAL); 156 this->ogreNode_->yaw(Ogre::Degree(dt*200),Ogre::Node::TS_LOCAL); 156 157 this->ogreNode_->pitch(Ogre::Degree(dt*200),Ogre::Node::TS_LOCAL); 157 } 158 }*/ 158 159 } 159 */ 160 160 161 HUD::~HUD(void){} 161 162 163 162 164 163 }
Note: See TracChangeset
for help on using the changeset viewer.