Umasoft
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
ItemGroup.h
1 //
2 // Name: ItemGroup.h
3 //
4 // Copyright (c) 2003-2011 Virtual Terrain Project
5 // Free for all uses, see license.txt for details.
6 //
7 
8 #ifndef ITEMGROUPH
9 #define ITEMGROUPH
10 
12 // ItemGroup
13 //
14 class ItemGroup
15 {
16 public:
17  ItemGroup(vtItem *pItem);
18  void CreateNodes();
19  void AttemptToLoadModels();
20  void AttachModels(osgText::Font *font);
21  void ShowLOD(bool bTrue);
22  void SetRanges();
23  vtGroup *GetTop() { return m_pTop; }
24  void ShowOrigin(bool bShow);
25  void ShowRulers(bool bShow);
26  void UpdateCrosshair(const FSphere &sph);
27  void UpdateRulers(osgText::Font *font, const FSphere &sph);
28 
29 protected:
30  vtItem *m_pItem;
31  vtGroup *m_pTop;
32  vtGroup *m_pGroup;
33  vtLOD *m_pLOD;
34  vtGeode *m_pAxes;
35  vtGeode *m_pRulers;
36  float m_ranges[20]; // One LOD distance for each child
37 };
38 
39 // helper
40 vtGeode *CreateRulers(osgText::Font *font, float fSize);
41 
42 #endif // ITEMGROUPH
43