2#include <NDEVR/Model.h>
3#if NDEVR_GROUND_SURFACE
10 struct AerialImageRequest;
12 class DesignSelection;
16 GroundSurface(
const Model& model,
const void* lock_ptr =
nullptr);
17 void setupSurface(
const Bounds<2, fltp08>& size, fltp08 elevation);
21 void createFlatGeometry();
22 static constexpr const char* TypeName() {
return "ground_surface"; }
23 void setupMaterial(AerialImageMode mode, uint04 resolution,
const void* lock_ptr, ProgressInfo* progress);
24 void setupMaterialCoordinates();
25 void setupPositionCoordinates(fltp08 grid_spacing,
const void* lock_ptr, ProgressInfo* progress);
26 void createLinework(AerialImageMode mode, uint04 resolution,
bool apply_elevation,
bool auto_surface,
const void* lock_ptr, ProgressInfo* progress);
27 bool canCreateLinework()
const;
28 uint04 surfaceMaterialResolution()
const;
29 uint04 lineworkResolution()
const;
30 Model surfaceModel()
const;
31 Model lineworkModel()
const;
34 bool appliedLineworkElevation()
const;
35 bool hasSurfacedLinework()
const;
36 Bounds<2, fltp08> wgs84Bounds()
const;
37 AerialImageRequest createImageRequest(AerialImageMode mode, uint04 resolution);
38 static Model FeatureLayer(ArialFeatureList feature, Model& reference);
39 fltp08 gridSpacing()
const;
41 void setupElevationCoordinates(Vertex<2, uint04> grid_size,
const void* lock_ptr, ProgressInfo* progress);
42 void onLineworkImageFinished(
const MercatorImage& generated_image,
bool auto_surface,
bool apply_elevation, ProgressInfo* progress, uint04 resolution, AerialImageMode mode,
const void* lock_ptr);
43 void initialize(
const void* lock_ptr);
AerialImageMode
enum specifying what type of image to fetch. Options for terrain, satellite, or road views
Definition MercatorImageManager.h:17
ArialFeatureList
Definition MercatorImageManager.h:26
void setupMaterial(const TranslatedString &category, Material &mat)
Definition DefaultMaterials.cpp:11
uint32_t uint04
-Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 throu...
Definition BaseValues.hpp:120
double fltp08
Defines an alias representing an 8 byte floating-point number.
Definition BaseValues.hpp:181