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 is None

  • buffer (bool) – Variable to create a buffer. Options include: True or False, default set to True

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