- globalmapper.SpatialCircle(GM_LayerHandle_t32 aLayer, GM_SpatialOps_Params_t aParams, GM_Distance_t aDistance, GM_FeatureGrouping_t8 aGrouping, str aStr) GM_Error_t32
-
The Circle spatial transform creates a new layer with a circle around the center point of each feature or collection of features. The aDistance parameter is the radius in the given units. If aDistance is 0, then it creates a minimum enclosing circle for the entire feature.
- Parameters:
-
aLayer (GM_LayerHandle_t32) – Input layer
aParams (GM_SpatialOps_Params_t) – Parameters
aDistance (GM_Distance_t) – Circle radius
aGrouping (GM_FeatureGrouping_t8) – Grouping type
aStr (str) – The attribute list string; may be an empty string
- Returns:
-
Error Code
- Return type:
-
GM_Error_t32
BEFORE |
AFTER |
|---|---|
|
|
|
Example
The following is an example of SpatialCircle.
import os
import globalmapper as gm
import_dir = "Z:/GM-20069/spatial_operations_sample_data/"
# Close all layers that may be open
layers_are_open = gm.GetLoadedLayerList()
if layers_are_open:
arr_ptr, arr_size = layers_are_open
initial_layers = gm.GM_LayerHandle_array_frompointer(arr_ptr)
for i in range(arr_size):
gm.CloseLayer(initial_layers[i])
err_LoadLayerList, array_pointer, array_size_param = gm.LoadLayerList(
os.path.join(import_dir, "multShapes.shp"),
gm.GM_LoadFlags_HideAllPrompts,
)
# Get handle for the loaded layers
arr_ptr, arr_size = gm.GetLoadedLayerList()
layers_array = gm.GM_LayerHandle_array_frompointer(arr_ptr)
layers_list = gm.carray_to_list(layers_array, arr_size)
### START SAMPLE
spatial_params = gm.GM_SpatialOps_Params_t()
spatial_params.mResultLayerName = "Circle_Result"
dist = gm.GM_Distance_t()
dist.mDistance = 0.0
dist.mUnits = gm.GM_DistUnit_Kilometers
err_SpatialCircle = gm.SpatialCircle(
layers_list[0], spatial_params, dist, gm.GM_GroupingNone, ""
)
### END SAMPLE
assert (
gm.GM_Error_None == err_LoadLayerList
), f"LoadLayerList: Expected {gm.GM_Error_None}, got {err_LoadLayerList}"
assert (
gm.GM_Error_None == err_SpatialCircle
), f"SpatialCircle: Expected {gm.GM_Error_None}, got {err_SpatialCircle}"
assert os.path.isdir(import_dir), f"Import directory doesn't exist: {import_dir}"
assert os.path.exists(
os.path.join(import_dir, "multShapes.shp")
), "Sample data doesn't exist"