vtdata library
Public Member Functions | Protected Attributes | List of all members
vtStructure Class Referenceabstract
Inheritance diagram for vtStructure:
Inheritance graph

Public Member Functions

void CopyFrom (const vtStructure &v)
void SetType (vtStructureType t)
vtStructureType GetType () const
void SetElevationOffset (float fOffset)
float GetElevationOffset () const
void SetAbsolute (bool b)
bool GetAbsolute () const
vtBuildingGetBuilding ()
vtFenceGetFence ()
vtStructInstanceGetInstance ()
virtual bool GetExtents (DRECT &rect) const =0
virtual bool IsContainedBy (const DRECT &rect) const =0
virtual void WriteXML (GZOutput &out, bool bDegrees) const =0
void WriteTags (GZOutput &out) const
- Public Member Functions inherited from vtTagArray
void AddTag (const vtTag &pTag)
void AddTag (const char *name, const char *value)
vtTagFindTag (const char *szTagName)
const vtTagFindTag (const char *szTagName) const
vtTagGetTag (int index)
const vtTagGetTag (int index) const
uint NumTags () const
void RemoveTag (int index)
void RemoveTag (const char *szTagName)
void Clear ()
void SetValueString (const char *szTagName, const vtString &string, bool bCreating=false)
void SetValueBool (const char *szTagName, bool value, bool bCreating=false)
void SetValueInt (const char *szTagName, int value, bool bCreating=false)
void SetValueFloat (const char *szTagName, float value, bool bCreating=false)
void SetValueDouble (const char *szTagName, double value, bool bCreating=false)
void SetValueRGBi (const char *szTagName, const RGBi &value, bool bCreating=false)
const char * GetValueString (const char *szTagName, bool bSuppressWarning=false) const
bool GetValueBool (const char *szTagName) const
int GetValueInt (const char *szTagName) const
float GetValueFloat (const char *szTagName) const
double GetValueDouble (const char *szTagName) const
RGBi GetValueRGBi (const char *szTagName) const
bool GetValueString (const char *szTagName, vtString &string) const
bool GetValueBool (const char *szTagName, bool &bValue) const
bool GetValueInt (const char *szTagName, int &iValue) const
bool GetValueFloat (const char *szTagName, float &fValue) const
bool GetValueDouble (const char *szTagName, double &dValue) const
bool GetValueRGBi (const char *szTagName, RGBi &color) const
vtTagArrayoperator= (const vtTagArray &v)
bool operator== (const vtTagArray &v) const
bool operator!= (const vtTagArray &v) const
void CopyTagsFrom (const vtTagArray &v)
bool WriteToXML (const char *fname, const char *title) const
void WriteToXMLBody (FILE *fp, int iIndent) const
bool LoadFromXML (const char *fname)
virtual bool OverrideValue (const char *szTagName, const vtString &string)
virtual void WriteOverridesToXML (FILE *fp) const
void LogTags () const

Protected Attributes

vtStructureType m_type
float m_fElevationOffset
bool m_bAbsolute
- Protected Attributes inherited from vtTagArray
std::vector< vtTagm_tags

Additional Inherited Members

- Static Public Member Functions inherited from vtTagArray
static void SetVerbose (bool value)
- Static Protected Attributes inherited from vtTagArray
static bool s_bVerbose = false

Detailed Description

The vtStructure class represents any "built structure". These are generally immobile, artificial entities of human-scale and larger, such as buildings and fences.

Structures are implemented as 3 types:
For enclosed and linear structures which can be well-described parametrically, vtBuilding and vtFence provide efficient data representation. For other structures which are not easily reduced to parameters, the Instance type allows you to reference any external model, such as a unique building which has been created in a 3D Modelling Tool.