
Public Member Functions | |
| GNode (wxString name, GeometryNode *sn, wxString defName=wxT("")) | |
| void | setMaterial (VRUT::Material *mat, wxString name=wxT(""), wxString dn=wxT("")) |
| void | setGeometry (Geometry *g, wxString name=wxT(""), wxString dn=wxT("")) |
| ~GNode () | |
| destructs GNode, if the Geometry Node wasn't used than delete it | |
| void | addToScene (wxString parentUid) |
| adds Geometry object with geometry and material to the scene | |
Public Attributes | |
| VRUT::Material * | mparam |
| pointer to Material Node in the VRUT scene | |
| wxString | mname |
| name of the material which should be connected to Geometry Node | |
| wxString | mdef |
| name defined in VRML file to define the materail node | |
| Geometry * | gparam |
| pointer to Geometry Node in the VRUT scene | |
| wxString | gname |
| name of the geometry in VRUT scene | |
| wxString | gdef |
| name of the geometry defined in VRML file | |
Definition at line 141 of file vrmlparser.h.
| VRUT::VRMLParser::GNode::GNode | ( | wxString | name, | |
| GeometryNode * | sn, | |||
| wxString | defName = wxT("") | |||
| ) | [inline] |
| VRUT::VRMLParser::GNode::~GNode | ( | ) | [inline] |
| void VRUT::VRMLParser::GNode::setMaterial | ( | VRUT::Material * | mat, | |
| wxString | name = wxT(""), |
|||
| wxString | dn = wxT("") | |||
| ) | [inline] |
| void VRUT::VRMLParser::GNode::setGeometry | ( | Geometry * | g, | |
| wxString | name = wxT(""), |
|||
| wxString | dn = wxT("") | |||
| ) | [inline] |
| void VRUT::VRMLParser::GNode::addToScene | ( | wxString | parentUid | ) | [inline, virtual] |
adds Geometry object with geometry and material to the scene
Implements VRUT::VRMLParser::Node.
Definition at line 179 of file vrmlparser.h.
00179 { 00180 //look if it is already in the scene 00181 DefNamesListSN::iterator it = vrmlp->defNamesListSN.find(nodeName); 00182 if ( it != vrmlp->defNamesListSN.end()) { 00183 wxCommandEvent ev1 = Event::GET_EVT_SCENE_NODE_COPY(vrmlp->sceneID, it->second, parentUid); 00184 return; 00185 } 00186 wxCommandEvent ev = Event::GET_EVT_SCENE_NODE_INSERT(vrmlp->sceneID, static_cast<GeometryNode*> (sceneNode), parentUid); 00187 vrmlp->module->PostToKernel(ev); 00188 //look if material or geometry isn't already in the scene 00189 DefNamesListM::iterator itm; 00190 if ( (mdef != wxT("") && (itm = vrmlp->defNamesListM.find(mdef)) != vrmlp->defNamesListM.end()) || mparam == NULL ){ 00191 wxCommandEvent ev1 = Event::GET_EVT_SCENE_NODE_MATERIAL_SET(vrmlp->sceneID, nodeName, itm->second->name); 00192 vrmlp->module->PostToKernel(ev1); 00193 } else { 00194 wxCommandEvent ev0 = Event::GET_EVT_SCENE_MATERIAL_ADD(vrmlp->sceneID, mparam); 00195 vrmlp->module->PostToKernel(ev0); 00196 wxCommandEvent ev1 = Event::GET_EVT_SCENE_NODE_MATERIAL_SET(vrmlp->sceneID, nodeName, mname); 00197 vrmlp->module->PostToKernel(ev1); 00198 } 00199 DefNamesListG::iterator itg; 00200 if ( (gdef != wxT("") && (itg = vrmlp->defNamesListG.find(gdef)) != vrmlp->defNamesListG.end()) || gparam == NULL){ 00201 wxCommandEvent ev3 = Event::GET_EVT_SCENE_NODE_GEOMETRY_SET(vrmlp->sceneID, nodeName, itm->second->name); 00202 vrmlp->module->PostToKernel(ev3); 00203 } else { 00204 wxCommandEvent ev2 = Event::GET_EVT_SCENE_GEOMETRY_ADD(vrmlp->sceneID, gparam); 00205 vrmlp->module->PostToKernel(ev2); 00206 wxCommandEvent ev3 = Event::GET_EVT_SCENE_NODE_GEOMETRY_SET(vrmlp->sceneID, nodeName, gname); 00207 vrmlp->module->PostToKernel(ev3); 00208 } 00209 //if it was defined, add to hashmap and don't delete it 00210 if ( nodeName != wxT("")) { 00211 vrmlp->defNamesListSN.insert(DefNamesListSN::value_type(nodeName, defName )); 00212 remove = false; 00213 } 00214 }
| wxString VRUT::VRMLParser::GNode::mname |
name of the material which should be connected to Geometry Node
Definition at line 145 of file vrmlparser.h.
| wxString VRUT::VRMLParser::GNode::mdef |
| wxString VRUT::VRMLParser::GNode::gname |
| wxString VRUT::VRMLParser::GNode::gdef |
1.5.5