Changeset 5795 in orxonox.OLD for trunk/src/util
- Timestamp:
- Nov 27, 2005, 4:04:52 PM (19 years ago)
- Location:
- trunk/src/util
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/util/object_manager.cc
r5750 r5795 17 17 18 18 #include "object_manager.h" 19 #include "class_list.h" 20 21 #include "p_node.h" 22 #include "world_entity.h" 23 #include "list.h" 19 24 20 25 using namespace std; … … 28 33 this->setClassID(CL_OBJECT_MANAGER, "ObjectManager"); 29 34 this->setName("ObjectManager"); 35 36 pNodeList = NULL; 30 37 } 31 38 … … 42 49 ObjectManager::singletonRef = NULL; 43 50 } 51 52 /** 53 * returns a new List with a list of WorldEntities of distance Radius from center 54 */ 55 std::list<WorldEntity*>* ObjectManager::distanceFromObject(const PNode& center, float radius, ClassID classID) 56 { 57 const std::list<BaseObject*>* objectList = ClassList::getList(classID); 58 if (objectList != NULL) 59 { 60 std::list<WorldEntity*>* newList = new std::list<WorldEntity*>; 61 62 list<BaseObject*>::const_iterator node; 63 for (node = objectList->begin(); node != objectList->end(); node++) 64 { 65 printf("1:::%s\n", (*node)->getName()); 66 if ((dynamic_cast<PNode*>(*node)->getAbsCoor() - center.getAbsCoor()).len() < radius) 67 { 68 newList->push_back(dynamic_cast<WorldEntity*>(*node)); 69 printf("%s\n",(*node)->getName()); 70 } 71 } 72 return newList; 73 } 74 return NULL; 75 } -
trunk/src/util/object_manager.h
r5750 r5795 11 11 12 12 // FORWARD DECLARATION 13 13 class PNode; 14 class WorldEntity; 14 15 15 16 class ObjectGroupList … … 30 31 31 32 33 static std::list<WorldEntity*>* distanceFromObject(const PNode& center, float radius, ClassID classID); 34 32 35 ObjectGroupList* getGroupList( ); 33 36 … … 38 41 std::list<ObjectGroupList> groupList; 39 42 43 const std::list<BaseObject>* pNodeList; 44 40 45 41 46 };
Note: See TracChangeset
for help on using the changeset viewer.