Types for Surface Analysis¶
The following types are used in functions related to surface analysis operations as parameters and return values. These types use fixed, numeric constants, which are defined here.
- globalmapper.GM_CombineOp_t8¶
Available operations when combining terrain layers
- Values:
- GM_CombineOp_Add = 0
Addition
- GM_CombineOp_SubtractSigned = 1
Subtraction (Difference) - Signed
- GM_CombineOp_SubtractUnsigned = 2
Subtraction (Difference) - Unsigned
- GM_CombineOp_Average = 3
Average Elevation
- GM_CombineOp_Minimum = 4
Minimum Elevation
- GM_CombineOp_Maximum = 5
Maximum Elevation
- GM_CombineOp_Multiply = 6
Multiply the values from the layers together
- GM_CombineOp_Divide = 7
Divide the First Layer Value by the Second
- GM_CombineOp_FilterKeepFirstIfSecond = 8
Filter - Keep First Layer Value only if Second Layer Value Valid
- GM_CombineOp_KeepFirstIfGTSecond = 9
Filter - Keep First Layer Value only if Greater Than Second Layer Value
- GM_CombineOp_KeepFirstIfLTSecond = 10
Filter - Keep First Layer Value only if Less Than Second Layer Value
- GM_CombineOp_KeepFirstIfSecondGTVal = 11
Filter - Keep First Layer Value only if Second Layer Value > Some Value
- GM_CombineOp_KeepFirstIfSecondLTVal = 12
Filter - Keep First Layer Value only if Second Layer Value > Some Value
- GM_CombineOp_FilterKeepFirstIfNotSecond = 13
Filter - Keep First Layer Value only if Second Layer Value Invalid
- GM_CombineOp_CountValid = 14
Count Valid Samples at Each Location
GM_CombineOp_NumTypes = 15
- globalmapper.GM_CombineOpFlags_t32¶
Flags used in the setup structure needed for a grid layer combine operation
- Values:
- GM_CombineOp_FillGaps = 0x00000001
Fill small gaps in terrain layers
- GM_CombineOp_HideProgress = 0x00000002
Hide progress for the operation
- GM_CombineOp_FindOverlap = 0x00000004
When counting layers, only count where all layers overlap (1 for valid from all, 0 otherwise)
- globalmapper.GM_DensityGridFlags_t32¶
Flags for density grid generation
- Values:
- GM_DensityFlags_DisableProgress = 0x00000001
Don’t display a progress dialog
- globalmapper.GM_DensityKernelType_t8¶
Different type of calculation kernels to use for density generation
- Values:
- GM_KernelType_Gaussian = 0
Gaussian
- GM_KernelType_Circle = 1
Circle
- GM_KernelType_Epanechnikov = 2
Anechnikov
GM_NumKernelTypes = 3
- globalmapper.GM_EqualValueAreaFlags_t32¶
Flags for the equal-value area operation
- Values:
- GM_EqualValueArea_ForceRGB = 0x00000001
Use RGB attribute for color attributes even if in palette
- GM_EqualValueArea_Coverage = 0x00000002
Just create a coverage layer, so we only care about valid or not
- GM_EqualValueArea_FixInvalid = 0x00000004
Automatically chop up any resulting areas that are invalid
- GM_EqualValueArea_BluntCorners = 0x00000008
Force the blunting of right angles to avoid invalid areas
- GM_EqualValueArea_NoSlope = 0x00000010
Don’t do equal value of slope even if slope shader is used
- GM_EqualValueArea_UseElevRange = 0x00000020
The mElevRangeLow/mElevRangeHigh values in GM_EqualValueAreaSetup_t are valid
- GM_EqualValueArea_UseSlopeDir = 0x00000040
Use slope direction values
- GM_EqualValueArea_BaseElevRangeZero = 0x00000080
make the area ranges based on elevations or slopes start at zero rather than having the bin at zero go +/- mElevDist to either side. For example, with mElevDist=500, you would get ranges of [0,1000),[1000,2000),… rather than [-500,500),[500,1500),…
- GM_EqualValueArea_HideProgress = 0x00000100
don’t display the progress bar during the process
- globalmapper.GM_GridAlg_t8¶
Gridding algorithm - Specify what gridding algorithm to use when gridding 3D vector data and point clouds
- Values:
- GM_GridAlg_TIN = 0
Triangulate and grid, same as normal 3D gridding
- GM_GridAlg_BinMinimum = 1
(DTM) Bin the points, use min value (i.e. elevation) in each bin, use a bin size some multiplier of average spacing
- GM_GridAlg_BinAverage = 2
Bin the points, use avg value (i.e. elevation) in each bin, use a bin size some multiplier of average spacing
- GM_GridAlg_BinMaximum = 3
(DSM) Bin the points, use max value (i.e. elevation) in each bin, use a bin size some multiplier of average spacing
- GM_GridAlg_BinMedian = 4
Bin the points. Use median value (i.e. elevation) in each bin.
- GM_GridAlg_BinVariance = 5
Bin the points. use variance of value (i.e. elevation) in each bin.
- GM_GridAlg_BinFromMaxElev = 6
Bin Lidar points, use attribute value from point with maximum elevation
- GM_GridAlg_BinFromMinElev = 7
Bin Lidar points, use attribute value from point with minimum elevation
GM_GridAlg_NumTypes = 8
- GM_GridAlg_None = 0xFF
Create a point cloud (don’t grid)
GM_GridAlg_Default = GM_GridAlg_TIN
- GM_GridAlg_DefaultLidar = GM_GridAlg_BinMinimum
Default algorithm for only Lidar points
- globalmapper.GM_GridGapFillAlg_t8¶
Gridding gap fill algorithm - specify what gridding algorithm to use when filling gaps
- Values:
- GM_GapFillAlg_None = 0
No Gap fill at all
- GM_GapFillAlg_TinSample = 1
Sample TIN surface triangles (piecewise affine) [only available with GM_GridAlg_TIN]
- GM_GapFillAlg_IDW = 2
Inverse weighted distance algorithm
- GM_GapFillAlg_Kriging = 3
Kriging
- GM_GapFillAlg_NearestNeighbor = 4
Use elevation of nearest valid sample
- GM_GapFillAlg_NaturalNeighbor = 5
The neighbor weights are calculated by finding how much of each of the surrounding areas is “stolen” when inserting (x,y) into the Voronoi tessellation
GM_GapFillAlg_NumTypes = 6
GM_GapFillAlg_Default = GM_GapFillAlg_IDW
- globalmapper.GM_GridGenFlags_t32¶
This type represents the different flags available for elevation grid generation
- Values:
- GM_GridGen_NoConstraints = 0x00000001
Don’t treat area and line boundaries as constraints (i.e. break lines)
- GM_GridGen_FlattenAreas = 0x00000002
Flatten 3D areas
- GM_GridGen_FillToBounds = 0x00000004
Fill the grid to the full bounding rectangle of the input data and not just to the convex hull
- GM_GridGen_IgnoreZeroElevs = 0x00000008
Don’t use features with an elevation value of 0
- GM_GridGen_HeightsRelative = 0x00000010
Vector elevations are relative to underlying terrain data (if loaded)
- GM_GridGen_CropToAreasIfAllAreas = 0x00000020
If all features are areas, mark everything outside areas as invalid
- GM_GridGen_IncludeStreams = 0x00000040
If stream lines are provided assign them elevations from intersecting lines
- GM_GridGen_SelAreasOnly = 0x00000080
Only consider selected areas
- GM_GridGen_AreaVertexRelativeOnly = 0x00000100
Only the area vertex height is relative to ground, not inside the area
- GM_GridGen_RelativeRequireValid = 0x00000200
If GM_GridGen_HeightsRelative is set, don’t grid points if there is no terrain at the location
- GM_GridGen_SaveGroundHeight = 0x00000400
If using Lidar field GM_LidarGrid_Height, grid the DSM (digital surface model) by working backwards from calculated heights above ground
- GM_GridGen_CreateLidarImage = 0x00000800
If gridding a Lidar field than can potentially be stored as an image or grid (i.e. GM_LidarGrid_Intensity), create an image rather than a grid
- GM_GridGen_ApplyLidarBreaklines = 0x00040000
Apply 3D line and 3D area features as breaklines when gridding Lidar data
- GM_GridGen_IgnoreTypeFilters = 0x00080000
Ignore any set type filters and grid all 3D features in the provided layer(s)
- GM_GridGen_TinAreasOnly = 0x00100000
Only grid 3D area features with TIN geometry (ignore all other features)
- GM_GridGen_HideProgress = 0x00200000
Don’t show progress during this operation
- globalmapper.GM_GridValType_t8¶
(DEPRECATED) List of supported grid layouts for GM_CreateCustomElevGridLayer
- Values:
- GM_GridValType_SInt16 = 0
Each sample is a signed 16-bit integer
- GM_GridValType_SInt32 = 1
Each sample is a signed 32-bit integer
- GM_GridValType_Float = 2
Each sample is an IEEE 32-bit floating point number
GM_GridValType_NumTypes = 3
- globalmapper.GM_PathProfileLOSFlags_t32¶
Flags to control the behavior of path profile/line of sight analysis
- Values:
- GM_PathProfile_LOSValid = 0x00000001
Perform line-of-sight analysis
- GM_PathProfile_LOSIgnoreEndpoints = 0x00000002
Ignore endpoints when performing line-of-sight analysis (i.e. end points can’t block line of sight)
GM_PathProfile_LOSFromHeightAbsolute = 0x00000004
- GM_PathProfile_LOSToHeightAbsolute = 0x00000008
Line-of-sight to height is absolute height above sea level rathern than height above ground
- GM_PathProfile_IgnoreEarthCurvature = 0x00000010
Ignore earth curvature in any line-of-sight analysis
- globalmapper.GM_RoughnessGridFlags_t32¶
Flags for roughness grid generation
- Values:
- GM_RoughnessFlags_DisableProgress = 0x00000001
Don’t display a progress dialog
- GM_RoughnessFlags_DontFixInvalid = 0x00000002
Don’t automatically chop up invalid areas to make them valid
- globalmapper.GM_RoughnessTable_t¶
Types of roughness tables for converting color values representing land cover to roughness values
- Values:
- GM_Roughness_CorineSummer = 0
CORINE Land Cover - Summer
- GM_Roughness_CorineWinter = 1
CORINE Land Cover - Winter
- GM_Roughness_VCF = 2
Vegetation Continuous Fields (GLCF from MODIS)
- GM_Roughness_NLCD = 3
US NLCD (National Land Cover Database)
- GM_Roughness_GlobCoverESA2009 = 4
GlobCover ESA 2009 Land Cover Database
- GM_Roughness_GlobeLand30 = 5
GlobeLand30 Land Cover Database
- GM_Roughness_ESA_CCI = 6
ESA CCI (Climate Change Initiative) Land Cover Database
- GM_Roughness_GlobCoverESA2020 = 7
GlobCover ESA 2020 Land Cover Database
GM_Roughness_NumTypes = 8
- globalmapper.GM_WatershedFlags_32¶
Flags for watershed calculations
- Values:
- GM_Watershed_FillGaps = 0x00000001
Fill small gaps when getting elevation values?
- GM_Watershed_CreateAreas = 0x00000002
Should we generate areas coverage the drainage basin for each stream?
- GM_Watershed_KeepZeroAtZero = 0x00000004
Keep elevation of zero at zero during depression filling
- GM_Watershed_SmoothStreams = 0x00000008
Smooth generated streams?
- GM_Watershed_FindRidgeLines = 0x00000010
Find ridge lines rather than streams. This is basically a watershed operation with inverted terrain.
- GM_Watershed_AutoStyle = 0x00000020
Automatically style generated stream / ridge lines
- GM_Watershed_CalcStrahler = 0x00000040
Specifies whether the Strahler stream order should be calculated and added to stream lines as an attribute