gemgis.vector.remove_object_within_buffer
gemgis.vector.remove_object_within_buffer#
- gemgis.vector.remove_object_within_buffer(buffer_object: shapely.geometry.base.BaseGeometry, buffered_object: shapely.geometry.base.BaseGeometry, distance: Union[int, float] = None, buffer: bool = True) Tuple[shapely.geometry.base.BaseGeometry, shapely.geometry.base.BaseGeometry] #
Removing object from a buffered object by providing a distance
- Parameters
buffer_object (shapely.geometry.base.BaseGeometry) – Shapely object for which a buffer will be created, e.g.
buffer_object=Point(0, 0)
buffered_object (shapely.geometry.base.BaseGeometry) – Shapely object that will be removed from the buffer, e.g.
buffered_object=LineString([(0, 0), (10, 10), (20, 20)])
distance (Union[float, int]) – Distance of the buffer around the geometry object, e.g.
distance=10
, default isNone
buffer (bool) – Variable to create a buffer. Options include:
True
orFalse
, default set toTrue
- Returns
result_out (shapely.geometry.base.BaseGeometry) – Shapely object that remains after the buffering (outside the buffer)
result_in (shapely.geometry.base.BaseGeometry) – Shapely object that was buffered (inside the buffer)
New in version 1.0.x.
Example
>>> # Loading Libraries and creating Point >>> import gemgis as gg >>> from shapely.geometry import Point, LineString >>> point = Point(0, 0) >>> point.wkt 'POINT (0 0)'
>>> # Creating LineString >>> linestring = LineString([(0, 0), (10, 10), (20, 20)]) >>> linestring.wkt 'LINESTRING (0 0, 10 10, 20 20)'
>>> # Removing object within buffer >>> result_out, result_in = gg.vector.remove_object_within_buffer(buffer_object=point, buffered_object=linestring, distance=10)
>>> # Inspecting the Base Geometry that remains outside >>> result_out.wkt 'LINESTRING (7.071067811865473 7.071067811865473, 10 10, 20 20)'
>>> # Inspecting the Base Geometry that remains inside >>> result_in.wkt 'LINESTRING (0 0, 7.071067811865473 7.071067811865473)'
See also
remove_objects_within_buffer
Removing several objects from one buffered object
remove_interfaces_within_fault_buffers
Removing interfaces of layer boundaries within fault line buffers