
Public Member Functions | |
| vtBuilding & | operator= (const vtBuilding &v) |
| void | SetFootprint (int i, const DLine2 &dl) |
| void | SetFootprint (int i, const DPolygon2 &poly) |
| const DPolygon2 & | GetFootprint (int i) const |
| const DLine2 & | GetOuterFootprint (int i) const |
| bool | GetBaseLevelCenter (DPoint2 &p) const |
| void | SetRectangle (const DPoint2 ¢er, float fWidth, float fDepth, float fRotation=0.0f) |
| void | SetCircle (const DPoint2 ¢er, float fRad) |
| void | FlipFootprintDirection () |
| float | CalculateBaseElevation (vtHeightField *pHeightField) |
| void | TransformCoords (OCT *trans) |
| void | SetRoofType (RoofType rt, int iSlope=-1, int iLev=-1) |
| RoofType | GetRoofType () |
| void | SetColor (BldColor which, RGBi col) |
| RGBi | GetColor (BldColor which) const |
| void | SetStories (int i) |
| int | GetStories () const |
| float | GetTotalHeight () const |
| unsigned int | GetNumLevels () const |
| vtLevel * | GetLevel (int i) |
| const vtLevel * | GetLevel (int i) const |
| vtLevel * | CreateLevel (const DPolygon2 &footprint) |
| vtLevel * | CreateLevel () |
| void | InsertLevel (int iLev, vtLevel *pLev) |
| void | DeleteLevel (int iLev) |
| bool | GetExtents (DRECT &rect) const |
| void | Offset (const DPoint2 &delta) |
| double | GetDistanceToInterior (const DPoint2 &point) const |
| void | WriteXML (GZOutput &out, bool bDegrees) const |
| void | AddDefaultDetails () |
| void | DetermineLocalFootprints () |
| const FPolygon3 & | GetLocalFootprint (int i) |
| bool | IsContainedBy (const DRECT &rect) const |
| void | SwapLevels (int lev1, int lev2) |
| void | CopyFromDefault (vtBuilding *pDefBld, bool bDoHeight) |
Static Public Member Functions | |
| static const char * | GetEdgeFeatureString (int edgetype) |
| static int | GetEdgeFeatureValue (const char *value) |
Static Public Attributes | |
| static vtLocalConversion | s_Conv |
Protected Attributes | |
| vtArray< vtLevel * > | m_Levels |
The geometry is described by a series of levels (vtLevel), each of which contains a set of edges (vtEdge), which in turn are composed of edge features (vtEdgeFeature). These components can vary in color, material, size, and number, which gives a high-level representation of a building, which can be used to construct a reasonable (visually similar) model of the building.
|
|
Calculate the elevation at which this building should be placed on a given heightfield. |
|
|
Flips the direction of the footprint, which is either clockwise or counterclockwise when viewed from above. This affects the footprints of all levels. |
|
|
Get the color of the building. In the case of multi-colored buildings, note that this method returns only the first color encountered.
|
|
|
Find the closest distance from a given point to the interior of a building's lowest footprint. If the point is inside the footprint, the value 0.0 is returned. |
|
|
Get the total number of stories of this building. The top level is assumed to be a roof and does not count toward the total. |
|
|
Asignment operator, which makes an explicit copy the entire building including each level. |
|
||||||||||||
|
Sets the base footprint of the building to be a circle. A circle is represented by a 20-sided polygonal footprint.
|
|
||||||||||||
|
Set the colors of the building.
|
|
||||||||||||
|
Set the footprintf of the given level of the building.
|
|
||||||||||||
|
Set the footprint of the given level of the building.
|
|
||||||||||||||||
|
Set the type of roof for this building. In cases of ambiguity, such as setting a gable roof, the method will try to make intelligent guesses about where to put the roof angles based the length of the roof edges.
|
|
|
Set the height of the building in stories. If the building has no levels, two will be created: for the walls and the roof. If the number of stories is greater than before, the additional stories are added to the top-most non-roof level. If lesser, stories and levels are removed from the top down until the desired number is met.
|
|
|
Transform the coodinates of this building (the footprints of each level) by the given coordinate transformation. |
1.4.5