gwnavruntime/navgraph/blobs/navgraphdisplay.h Source File

navgraphdisplay.h
Go to the documentation of this file.
1 /*
2 * Copyright 2015 Autodesk, Inc. All rights reserved.
3 * Use of this software is subject to the terms of the Autodesk license agreement and any attachments or Appendices thereto provided at the time of installation or download,
4 * or which otherwise accompanies this software in either electronic or hard copy form, or which is signed by you and accepted by Autodesk.
5 */
6 
7 
8 
9 // Primary contact: MAMU - secondary contact: NOBODY
10 #ifndef Navigation_NavGraph_DisplayListBuilder_H
11 #define Navigation_NavGraph_DisplayListBuilder_H
12 
15 
16 namespace Kaim
17 {
18 
19 class ScopedDisplayList;
20 class NavGraphArray;
21 class NavGraphBlob;
22 
23 class NavGraphDisplayListBuilder
24 {
25 public:
26  NavGraphDisplayListBuilder()
27  {
28  m_displayEdgesAsLines = false;
29  m_displayEdgesAsArrows = true;
30  m_displayEdgesAsCurves = false;
31 
32  m_vertexRadius = 0.05f;
33  m_edgeHalfWidth = 0.1f;
34  m_edgeColor = VisualColor(0, 225, 255, 128);
35 
36  m_vertexColor_whenLinkTypeIs_NoLink = VisualColor::Gray;
37  m_vertexColor_whenLinkTypeIs_LinkToNavMesh = VisualColor::LightGreen;
38  }
39 
40  void DisplayNavGraphArray(ScopedDisplayList* displayList, const NavGraphArray* navGraphArray);
41  void DisplayNavGraph(ScopedDisplayList* displayList, const NavGraphBlob* navGraphBlob);
42  void DisplayNavGraphName(ScopedDisplayList* displayList, const NavGraphBlob* navGraphBlob);
43 
44 public: // Internal
45 
46  VisualColor GetVertexColorFromVertexInfo(NavGraphVertexLinkType vertexType);
47 
48 public:
49  bool m_displayEdgesAsLines;
50  bool m_displayEdgesAsArrows;
51  bool m_displayEdgesAsCurves;
52 
53  KyFloat32 m_vertexRadius;
54  KyFloat32 m_edgeHalfWidth;
55  VisualColor m_edgeColor;
56 
57  VisualColor m_vertexColor_whenLinkTypeIs_NoLink;
58  VisualColor m_vertexColor_whenLinkTypeIs_LinkToNavMesh;
59 };
60 
61 }
62 
63 #endif
64 
KyUInt16 NavGraphVertexLinkType
Defines a type for a tag that determines whether or not a vertex in a NavGraph should be connected to...
Definition: navgraphtypes.h:26
static const VisualColor LightGreen
Represents the color with RGBA values (144, 238, 144, 255).  
Definition: visualcolor.h:164
Definition: gamekitcrowddispersion.h:20
static const VisualColor Gray
Represents the color with RGBA values (128, 128, 128, 255).  
Definition: visualcolor.h:146
float KyFloat32
Type used internally to represent a 32-bit floating-point number.
Definition: types.h:43