8 #include "VectorMath.h"
9 #include "AxisAlignedBox2.h"
11 #include "LabelAnchorCategory.h"
23 typedef std::string IdType;
27 virtual IdType GetId()
const = 0;
29 virtual const std::string& GetEntityName()
const = 0;
33 virtual void GetShapedGlyphs(std::vector<Text::ShapedGlyph>& out_shapedGlyphs)
const = 0;
37 virtual dv3 GetEcefAnchorPosition()
const = 0;
39 virtual v3 GetAnchorOffset()
const = 0;
41 virtual m44 CalcFeatureAlignedAnchorBasisEcef(
float environmentFlatteningScale)
const = 0;
45 virtual float GetConstraintRadiusEcef()
const = 0;
47 virtual bool CanCacheAnchorOffset()
const = 0;
49 virtual int GetSubPriority()
const = 0;
54 virtual void SetEcefAnchorPosition(
const dv3& ecefAnchorPosition) = 0;
56 virtual void SetTransform(
const m44& transform) = 0;
58 virtual void SetLabelText(
const std::string& labelTextUtf8) = 0;
60 virtual void SetIconKey(
const std::string& iconKey) = 0;
62 virtual void SetLocalAnchorOffset(
const v3& localAnchorOffset) = 0;