17 class VisualGeometryBuilder;
18 class BoundaryGraphBlob;
19 class BoundaryGraphBlobVertex;
20 class BoundaryGraphBlobEdge;
21 class BoundaryGraphBlobContour;
22 class BoundaryGraphBlobPolygon;
23 class BoundaryGraphBlobSimplifyPolyline;
24 class BoundaryGraphBlobSimplifiedHalfEdge;
25 class BoundaryGraphBlobSimplifiedContour;
26 class BoundaryGraphBlobSimplifiedPolygon;
30 class BoundaryGraphBlobVisualGeometryBuilder :
public IVisualGeometryBuilder
33 typedef BoundaryGraphBlobVertex Vertex;
34 typedef BoundaryGraphBlobEdge Edge;
35 typedef BoundaryGraphBlobContour Contour;
36 typedef BoundaryGraphBlobPolygon Polygon;
37 typedef BoundaryGraphBlobSimplifyPolyline SimplifyPolyline;
38 typedef BoundaryGraphBlobSimplifiedHalfEdge SimplifiedEdge;
39 typedef BoundaryGraphBlobSimplifiedContour SimplifiedContour;
40 typedef BoundaryGraphBlobSimplifiedPolygon SimplifiedPolygon;
55 m_polygonColor(PixelColor_Unset), m_contourWinding(ContourWinding_Unset), m_polygonIdx(0) {}
58 PixelColor m_polygonColor;
59 ContourWinding m_contourWinding;
64 BoundaryGraphBlobVisualGeometryBuilder(BoundaryGraphBlob* boundaryGraphBlob);
65 virtual void DoBuild();
68 Vec3f GetVertexPos(
const Vertex& vertex);
70 void BuildStaticVerticesGeometry(Color color);
71 void BuildNarrowVerticesGeometry(Color color);
73 void BuildEdgeGeometry(
const Edge& edge, EdgeVisualInfo& edgeVisualInfo);
74 void BuildContourGeometry(
const Contour& contour, EdgeVisualInfo& edgeVisualInfo);
75 void BuildPolygonsGeometry();
77 void BuildSimplifiedEdgeGeometry(
const SimplifiedEdge& simplifiedEdge, EdgeVisualInfo& edgeVisualInfo);
78 void BuildSimplifiedContourGeometry(
const SimplifiedContour& simplifiedContour, EdgeVisualInfo& edgeVisualInfo);
79 void BuildSimplifiedPolygonsGeometry();
81 void BuildSimplifyPolylinesGeometry();
82 void BuildSimplifySegmentGeometry(
const Vertex& start,
const Vertex& end,
KyUInt32 polylineIdx);
84 Color GetEdgeColor(
const EdgeVisualInfo& edgeVisualInfo,
const BoundaryEdgeType& edgeType);
87 const BoundaryGraphBlob* m_graph;
89 EdgeColorScheme m_edgeColorScheme;
90 const Vertex* m_vertices;
92 const Contour* m_contours;
93 const Polygon* m_polygons;
94 const SimplifyPolyline* m_simplifyPolylines;
95 const SimplifiedEdge* m_simplifiedEdges;
96 const SimplifiedContour* m_simplifiedContours;
97 const SimplifiedPolygon* m_simplifiedPolygons;
106 bool m_displayNarrowVertices;
107 bool m_displaySimplifyPolylines;
std::uint32_t KyUInt32
uint32_t
Definition: types.h:29
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17
float KyFloat32
float
Definition: types.h:32