Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Dec 17, 2007, 9:56:47 PM (16 years ago)
Author:
scheusso
Message:

ip address with —ip=address

File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/branches/FICN/src/orxonox/objects/SceneNode.cc

    r590 r599  
    2525    void SceneNode::loadParams(TiXmlElement* xmlElem)
    2626    {
    27         Ogre::SceneManager* mgr = orxonox::Orxonox::getSingleton()->getSceneManager();
    28 
    2927        if (xmlElem->Attribute("name") && xmlElem->Attribute("pos"))
    3028        {
    31                 std::string name = xmlElem->Attribute("name");
     29                name_ = xmlElem->Attribute("name");
    3230
    3331                std::vector<std::string> pos = tokenize(xmlElem->Attribute("pos"),",");
    34                 float x, y, z;
    35                 String2Number<float>(x, pos[0]);
    36                 String2Number<float>(y, pos[1]);
    37                 String2Number<float>(z, pos[2]);
     32                //float x, y, z_;
     33                String2Number<float>(x_, pos[0]);
     34                String2Number<float>(y_, pos[1]);
     35                String2Number<float>(z_, pos[2]);
    3836
    39         float sx = 1, sy = 1, sz = 1;
     37        sx_ = 1; sy_ = 1; sz_ = 1;
    4038        if (xmlElem->Attribute("scale"))
    4139        {
    4240                  pos = tokenize(xmlElem->Attribute("scale"),",");
    43                   String2Number<float>(sx, pos[0]);
    44                   String2Number<float>(sy, pos[1]);
    45                   String2Number<float>(sz, pos[2]);
     41                  String2Number<float>(sx_, pos[0]);
     42                  String2Number<float>(sy_, pos[1]);
     43                  String2Number<float>(sz_, pos[2]);
     44        }
     45        yaw_ = 0.0;
     46        if (xmlElem->Attribute("yaw"))
     47        {
     48          String2Number<float>(yaw_,xmlElem->Attribute("yaw"));
     49        }
     50        pitch_ = 0.0;
     51        if (xmlElem->Attribute("pitch"))
     52        {
     53          String2Number<float>(pitch_,xmlElem->Attribute("pitch"));
     54        }
     55        roll_ = 0.0;
     56        if (xmlElem->Attribute("roll"))
     57        {
     58          String2Number<float>(roll_,xmlElem->Attribute("roll"));
    4659        }
    4760
    48         float yaw = 0.0;
    49         if (xmlElem->Attribute("yaw"))
    50         {
    51           String2Number<float>(yaw,xmlElem->Attribute("yaw"));
    52         }
    53         float pitch = 0.0;
    54         if (xmlElem->Attribute("pitch"))
    55         {
    56           String2Number<float>(pitch,xmlElem->Attribute("pitch"));
    57         }
    58         float roll = 0.0;
    59         if (xmlElem->Attribute("roll"))
    60         {
    61           String2Number<float>(roll,xmlElem->Attribute("roll"));
    62         }
     61        if(xmlElem->Attribute("node"))
     62          nodeName_ = xmlElem->Attribute("node");
     63        else
     64          nodeName_ = "";
     65       
     66        create();
    6367
    64         Ogre::SceneNode *parentNode;
    65         if (xmlElem->Attribute("node"))
    66           parentNode = mgr->getSceneNode(xmlElem->Attribute("node"));
    67         else
    68           parentNode = mgr->getRootSceneNode();
    69 
    70         Ogre::SceneNode* node = parentNode->createChildSceneNode(name, Vector3(x,y,z));
    71         node->scale(sx,sy,sz);
    72         node->yaw(Ogre::Degree(yaw));
    73         node->pitch(Ogre::Degree(pitch));
    74         node->roll(Ogre::Degree(roll));
    75 
    76                 COUT(4) << "Loader: Created node "<< name <<" : "<<x<<" " << y << " " << z  << std::endl << std::endl;
     68        COUT(4) << "Loader: loaded node "<< name_ <<" : "<< x_ <<" " << y_ << " " << z_ << std::endl << std::endl;
    7769        }
    7870   }
    7971   
    8072   void SceneNode::registerAllVariables(){
    81      
     73     registerVar(&x_, sizeof(float), network::DATA);
     74     registerVar(&y_, sizeof(float), network::DATA);
     75     registerVar(&z_, sizeof(float), network::DATA);
     76     registerVar(&sx_, sizeof(float), network::DATA);
     77     registerVar(&sy_, sizeof(float), network::DATA);
     78     registerVar(&sz_, sizeof(float), network::DATA);
     79     registerVar(&yaw_, sizeof(float), network::DATA);
     80     registerVar(&pitch_, sizeof(float), network::DATA);
     81     registerVar(&roll_, sizeof(float), network::DATA);
     82     registerVar(&name_, sizeof(float), network::STRING);
     83     registerVar(&nodeName_, sizeof(float), network::STRING);
    8284   }
    8385   
    8486   bool SceneNode::create(){
     87     Ogre::SceneManager* mgr = orxonox::Orxonox::getSingleton()->getSceneManager();
     88
     89     Ogre::SceneNode *parentNode;
     90     if (nodeName_.compare("")!=0)
     91       parentNode = mgr->getSceneNode(nodeName_);
     92     else
     93       parentNode = mgr->getRootSceneNode();
     94
     95     Ogre::SceneNode* node = parentNode->createChildSceneNode(name_, Vector3(x_,y_,z_));
     96     node->scale(sx_,sy_,sz_);
     97     node->yaw(Ogre::Degree(yaw_));
     98     node->pitch(Ogre::Degree(pitch_));
     99     node->roll(Ogre::Degree(roll_));
    85100     return true;
    86101   }
Note: See TracChangeset for help on using the changeset viewer.