gwnavruntime/spatialization/spatializedpointdisplay.h Source File

spatializedpointdisplay.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 // primary contact: LAPA - secondary contact: MAMU
9 #ifndef Navigation_SpatializedPointDisplay_H
10 #define Navigation_SpatializedPointDisplay_H
11 
14 
15 namespace Kaim
16 {
17 
18 class ScopedDisplayList;
19 class PointDbSpatializationBlob;
20 class SpatializationResultBlob;
21 
22 class SpatializedPointDisplayListBuilder
23 {
24 public:
25  SpatializedPointDisplayListBuilder() { SetDefaults(); }
26 
27  void SetDefaults()
28  {
29  m_linkColor = VisualColor::LightYellow;
30  m_spatializedPointColor_Projected = VisualColor::Lime;
31  m_spatializedPointColor_NotProjected = VisualColor::Red;
32  m_spatializationDetailsColor_Projected = VisualColor::Cyan;
33  m_spatializationDetailsColor_NotProjected = VisualColor::Red;
34  m_trianglePointColor = VisualColor::LightGreen;
35  m_spatializedPointWidth = 0.1f;
36  m_rangePointsWidth = 0.1f;
37  }
38 
39  void DisplaySpatializationError(ScopedDisplayList* displayList,
40  const Vec3f& spatializedPoint, const SpatializationResultBlob* spatializationResult, KyUInt32 databaseIndex, KyFloat32 textPositionZOffset = 3.0f);
41 
42  // If databaseIndex == KyUInt32MAXVAL, display all db spatializations, else only display spatialization for the specified databaseIndex.
43  void DisplaySpatializationResult(ScopedDisplayList* displayList,
44  const Vec3f& spatializedPoint, KyFloat32 height, const SpatializationResultBlob* spatializationResult, KyUInt32 databaseIndex);
45 
46  void DisplayPointDbSpatialization(ScopedDisplayList* displayList,
47  const Vec3f& spatializedPoint, KyFloat32 height, const PointDbSpatializationBlob& pointDbSpatializationBlob);
48 
49  void DisplayTriangleProjection(ScopedDisplayList* displayList,
50  const Vec3f& spatializedPoint, const PointDbSpatializationBlob& pointDbSpatializationBlob);
51 
52  void DisplayProjectionDetails(ScopedDisplayList* displayList,
53  const Vec3f& spatializedPoint, KyFloat32 height, const PointDbSpatializationBlob& pointDbSpatializationBlob,
54  const VisualColor& lineColor);
55 
56 public:
57  VisualColor m_linkColor;
58  VisualColor m_spatializedPointColor_Projected;
59  VisualColor m_spatializedPointColor_NotProjected;
60  VisualColor m_spatializationDetailsColor_Projected;
61  VisualColor m_spatializationDetailsColor_NotProjected;
62  VisualColor m_trianglePointColor;
63  KyFloat32 m_spatializedPointWidth;
64  KyFloat32 m_rangePointsWidth;
65 };
66 
67 } // namespace Kaim
68 
69 #endif // Navigation_SpatializedPointDisplay_H
static const VisualColor Lime
Represents the color with RGBA values ( 0, 255, 0, 255).  
Definition: visualcolor.h:172
static const VisualColor Red
Represents the color with RGBA values (255, 0, 0, 255).  
Definition: visualcolor.h:209
static const VisualColor LightGreen
Represents the color with RGBA values (144, 238, 144, 255).  
Definition: visualcolor.h:164
static const VisualColor LightYellow
Represents the color with RGBA values (255, 255, 224, 255).  
Definition: visualcolor.h:171
Definition: gamekitcrowddispersion.h:20
static const VisualColor Cyan
Represents the color with RGBA values ( 0, 255, 255, 255).  
Definition: visualcolor.h:116
unsigned int KyUInt32
Type used internally to represent an unsigned 32-bit integer.
Definition: types.h:36
float KyFloat32
Type used internally to represent a 32-bit floating-point number.
Definition: types.h:43