[FREE] MAPUtil - extension for MAP operations

Advanced Cartographic Toolkit: A multifunctional extension for geospatial analysis and routing
Implemented Functions:

Determining the nearest point from the list of points - FindNearestPoint
FindNearestPointBlock
a function that determines the closest point from a given list of points to a specified target point. It is useful for navigation, routing, and geographic data analysis when it is necessary to find the nearest point of interest (POI), the nearest object on the map, or optimize a route.

Trimming polyline to the nearest point — TrimPolylineToNearestPoint
TrimPolylineToNearestPointBlock
Removes all points in the route after the nearest point to a given location, leaving only the necessary portion of the route. Useful for dynamic route adjustment.

Generate points along a polyline at equal intervals — GeneratePolylinePoints
GeneratePolylinePointsBlock
Creates intermediate points along a route at equal distance intervals in meters. Useful for improved visualization of the route or uniform distribution of points along the path.

Conversion from decimal coordinates to degrees — ConvertToDegrees
ConvertToDegreesBlock
Converts coordinates from decimal degrees format to degrees, minutes, and seconds notation with direction indication. For example, input “56.1,23.1” will be converted to “56°6’0.0"N, 23°6’0.0"E”.

Conversion from degrees format to decimal coordinates — ConvertToDecimal
ConvertToDecimalBlock
Converts coordinates from degrees, minutes, and seconds format to decimal degrees, convenient for calculations and working with mapping services. For example, input “56°6’0.0"N, 23°6’0.0"E” will be converted to “56.1,23.1”.

Angle between two points (azimuth)— AngleBetween
AngleBetweenBlock
Calculates the direction angle (bearing) in degrees between two points. The result is expressed in the range from 0° to 360°, where 0° is north, 90° is east, 180° is south, and 270° is west.

Polygon area — AreaPolygon
AreaPolygonBlock
Calculates the area of a closed polygon in square meters. The polygon must contain at least three points, and the area is computed considering the Earth’s spherical surface.

Bounding Box calculation — CalculatesBoundingBox
CalculatesBoundingBoxBlock
Determines the minimum and maximum coordinates of an area covering all points. If the indentation parameter is enabled, the boundaries are automatically expanded based on the average latitude.
Useful for highlighting an area of the map

Distance between two points — DistanceBetween
DistanceBetweenBlock
Calculates the shortest distance on the Earth’s surface between two points. The calculation uses a spherical model of the Earth to provide accurate results in meters.

Distance from a point to a polygon boundary — DistancePointToPolygon
DistancePointToPolygonBlock
Determines the shortest distance from a given point to the nearest edge of a polygon. Useful for monitoring proximity to a specific area.it doesn’t matter what kind of polygon you have.

Polyline length — LengthPolyline
LengthPolylineBlock
Calculates the total distance along a route connecting a sequence of points. The Earth’s curvature is taken into account to provide accurate results in meters.

Point inside polygon check — PointInPolygon
PointInPolygonBlock
Checks if a given point is inside a polygon using the ray-casting algorithm. Useful for geofencing and working with geographic zones.

Polyline simplification (Douglas-Peucker algorithm) — SimplifyPolyline
SimplifyPolylineBlock

Reduces the number of points in a route while preserving its shape according to the specified tolerance. Helps decrease data volume without significant quality loss.

important! The coordinates in all functions are set to a string value, for example, “52.13,13.42”.
This format is more convenient and understandable.

With this extension, I am announcing my project (under completion) for working with maps (online and offline modes) and independent of access keys. :sweat:

MAPUtil.aix (15.1 KB)

4 Likes

Looks like a super useful extension for geospatial data!