18#ifndef INCLUDED_HELPER_RENDER
19#define INCLUDED_HELPER_RENDER
66 const CSimContext& context,
const std::vector<float>& xz,
68 bool floating,
float heightOffset = 0.25f);
81 const CSimContext& context,
float x,
float z,
float radius,
83 bool floating,
float heightOffset = 0.25f);
90 const CSimContext& context,
float x,
float z,
float radius,
91 float start,
float end,
93 bool floating,
float heightOffset = 0.25f);
106 const CSimContext& context,
float x,
float z,
float w,
float h,
float a,
108 bool floating,
float heightOffset = 0.25f);
167void InterpolatePointsRNS(std::vector<CVector2D>& points,
bool closed,
float offset,
int segmentSamples = 4);
178 const float dashLength,
const float blankLength);
189void SubdividePoints(std::vector<CVector2D>& points,
float maxSegmentLength,
bool closed);
Definition: BoundingBoxAligned.h:34
Definition: BoundingBoxOriented.h:31
Definition: FixedVector3D.h:25
Definition: Matrix3D.h:34
Contains pointers to various 'global' objects that are needed by the simulation code,...
Definition: SimContext.h:33
Definition: Vector2D.h:32
Definition: Vector3D.h:31
void ConstructBoxOutline(const CBoundingBoxOriented &box, SOverlayLine &overlayLine)
Constructs a solid outline of an arbitrarily-aligned bounding box.
Definition: Render.cpp:218
void ConstructSquareOnGround(const CSimContext &context, float x, float z, float w, float h, float a, SOverlayLine &overlay, bool floating, float heightOffset=0.25f)
Constructs overlay line as rectangle with given center and dimensions, conforming to terrain.
Definition: Render.cpp:151
void ConstructTexturedLineBox(SOverlayTexturedLine &overlay, const CVector2D &origin, const CFixedVector3D &rotation, const float sizeX, const float sizeZ)
Sets the coordinates of a rectangular textured overlay, for example used by selection rings of struct...
Definition: Render.cpp:593
void ConstructCircleOnGround(const CSimContext &context, float x, float z, float radius, SOverlayLine &overlay, bool floating, float heightOffset=0.25f)
Constructs overlay line as a circle with given center and radius, conforming to terrain.
Definition: Render.cpp:119
void InterpolatePointsRNS(std::vector< CVector2D > &points, bool closed, float offset, int segmentSamples=4)
Updates the given points to include intermediate points interpolating between the original control po...
Definition: Render.cpp:375
void SubdividePoints(std::vector< CVector2D > &points, float maxSegmentLength, bool closed)
Subdivides a list of points into segments of maximum length maxSegmentLength that are of equal size b...
Definition: Render.cpp:555
void ConstructTexturedLineCircle(SOverlayTexturedLine &overlay, const CVector2D &origin, const float overlay_radius)
Sets the coordinates of a circular textured overlay, for example by selection rings of units or attac...
Definition: Render.cpp:616
void ConstructLineOnGround(const CSimContext &context, const std::vector< float > &xz, SOverlayLine &overlay, bool floating, float heightOffset=0.25f)
Constructs overlay line from given points, conforming to terrain.
Definition: Render.cpp:36
void ConstructGimbal(const CVector3D ¢er, float radius, SOverlayLine &out, size_t numSteps=16)
Constructs a simple gimbal outline with the given radius and center.
Definition: Render.cpp:248
void ConstructClosedArcOnGround(const CSimContext &context, float x, float z, float radius, float start, float end, SOverlayLine &overlay, bool floating, float heightOffset=0.25f)
Constructs overlay line as an outlined circle sector (an arc with straight lines between the endpoint...
Definition: Render.cpp:126
void ConstructDashedLine(const std::vector< CVector2D > &linePoints, SDashedLine &dashedLineOut, const float dashLength, const float blankLength)
Creates a dashed line from the given line, dash length, and blank space between.
Definition: Render.cpp:466
void ConstructAxesMarker(const CMatrix3D &coordSystem, SOverlayLine &outX, SOverlayLine &outY, SOverlayLine &outZ)
Constructs 3D axis marker overlay lines for the given coordinate system.
Definition: Render.cpp:309
void SmoothPointsAverage(std::vector< CVector2D > &points, bool closed)
Updates the given points so each point is averaged with its neighbours, resulting in a somewhat smoot...
Definition: Render.cpp:333
size_t GetEndIndex(size_t i)
Returns the (exclusive) end point index (i.e. index within m_Points) of dash n.
Definition: Render.h:47
std::vector< size_t > m_StartIndices
Start indices in m_Points of each dash.
Definition: Render.h:44
std::vector< CVector2D > m_Points
Packed array of consecutive dashes' points. Use m_StartIndices to navigate it.
Definition: Render.h:37
Line-based overlay, with world-space coordinates, rendered in the world potentially behind other obje...
Definition: Overlay.h:39
Textured line overlay, with world-space coordinates, rendered in the world onto the terrain.
Definition: Overlay.h:66
static void out(const wchar_t *fmt,...)
Definition: wdbg_sym.cpp:407