14 #include "HeightField.h"
26 bool bBuildFoundations;
27 bool bUse25DForElevation;
34 enum HeightType { STORIES, METERS, FEET, METERSNOSTORIES, FEETNOSTORIES } m_HeightType;
56 SCHEMA_OSGB_TOPO_AREA,
57 SCHEMA_OSGB_TOPO_POINT,
58 SCHEMA_OSGB_TOPO_LINE,
59 SCHEMA_MAPINFO_OSGB_TOPO_AREA,
60 SCHEMA_MAPINFO_OSGB_TOPO_POINT,
75 virtual void DestructItems(uint first, uint last);
77 void SetFilename(
const vtString &str) { m_strFilename = str; }
78 vtString GetFilename() {
return m_strFilename; }
81 int GetNextSelected();
83 virtual void DestroyStructure(
int i) {}
86 bool progress_callback(
int) = NULL);
87 void AddElementsFromOGR(
class OGRDataSource *datasource,
90 void AddElementsFromOGR_SDTS(
class OGRDataSource *datasource,
91 bool progress_callback(
int) = NULL);
92 void AddElementsFromOGR_RAW(
class OGRDataSource *datasource,
95 void AddBuildingsFromOGR(
class OGRLayer *pLayer,
97 void AddLinearsFromOGR(
class OGRLayer *pLayer,
99 void AddInstancesFromOGR(
class OGRLayer *pLayer,
102 bool ReadBCF(
const char *pathname);
103 bool ReadBCF_Old(FILE *fp);
104 bool ReadXML(
const char *pathname,
bool progress_callback(
int) = NULL);
106 bool WriteXML(
const char *pathname,
bool bGZip =
false)
const;
107 bool WriteFootprintsToSHP(
const char *pathname);
112 int &building,
int &corner,
double &distance);
114 int &building,
double &distance);
115 bool FindClosestLinearCorner(
const DPoint2 &point,
double epsilon,
116 int &structure,
int &corner,
double &distance);
119 int &structure,
double &distance,
float fMaxInstRadius = 1E9f,
120 float fLinearWidthBuffer = 0.0f);
122 int &structure,
double &closest);
124 bool IsEmpty() {
return (GetSize() == 0); }
125 void GetExtents(
DRECT &ext)
const;
126 void Offset(
const DPoint2 &delta);
128 int AddFoundations(
vtHeightField *pHF,
bool progress_callback(
int) = NULL);
129 void RemoveFoundations();
146 vtBuilding *AddBuildingFromLineString(
class OGRLineString *pLineString);
149 virtual void SetEditedEdge(
vtBuilding *bld,
int lev,
int edge);
166 int GetSHPType(
const char *filename);
168 bool SetupDefaultStructures(
const vtString &fname);
173 #endif // STRUCTARRAYH