tidy3d.ClipOperation#
- class ClipOperation[source]#
Bases:
Geometry
Class representing the result of a set operation between geometries.
- Parameters:
operation (Literal['union', 'intersection', 'difference', 'symmetric_difference']) – Operation to be performed between geometries.
geometry_a (ForwardRef('annotate_type(GeometryType)')) – First operand for the set operation. It can be any geometry type, including
GeometryGroup
.geometry_b (ForwardRef('annotate_type(GeometryType)')) – Second operand for the set operation. It can also be any geometry type.
Attributes
Returns bounding box min and max coordinates.
Methods
inside
(x, y, z)For input arrays
x
,y
,z
of arbitrary but identical shape, return an array with the same shape which isTrue
for every point in zip(x, y, z) that is inside the volume of theGeometry
, andFalse
otherwise.inside_meshgrid
(x, y, z)Faster way to check
self.inside
on a meshgrid.intersections_plane
([x, y, z])Returns list of shapely geometries at plane specified by one non-None value of x,y,z.
intersections_tilted_plane
(normal, origin, to_2D)Return a list of shapely geometries at the plane specified by normal and origin.
to_polygon_list
(base_geometry)Return a list of valid polygons from a shapely geometry, discarding points, lines, and empty polygons.
- operation#
- geometry_a#
- geometry_b#
- static to_polygon_list(base_geometry)[source]#
Return a list of valid polygons from a shapely geometry, discarding points, lines, and empty polygons.
- Parameters:
base_geometry (shapely.geometry.base.BaseGeometry) – Base geometry for inspection.
- Returns:
Valid polygons retrieved from
base geometry
.- Return type:
List[shapely.geometry.base.BaseGeometry]
- intersections_tilted_plane(normal, origin, to_2D)[source]#
Return a list of shapely geometries at the plane specified by normal and origin.
- Parameters:
normal (Coordinate) – Vector defining the normal direction to the plane.
origin (Coordinate) – Vector defining the plane origin.
to_2D (MatrixReal4x4) – Transformation matrix to apply to resulting shapes.
- Returns:
List of 2D shapes that intersect plane. For more details refer to Shapely’s Documentation.
- Return type:
List[shapely.geometry.base.BaseGeometry]
- intersections_plane(x=None, y=None, z=None)[source]#
Returns list of shapely geometries at plane specified by one non-None value of x,y,z.
- Parameters:
x (float = None) – Position of plane in x direction, only one of x,y,z can be specified to define plane.
y (float = None) – Position of plane in y direction, only one of x,y,z can be specified to define plane.
z (float = None) – Position of plane in z direction, only one of x,y,z can be specified to define plane.
- Returns:
List of 2D shapes that intersect plane. For more details refer to Shapely’s Documentaton.
- Return type:
List[shapely.geometry.base.BaseGeometry]
- property bounds#
Returns bounding box min and max coordinates.
- Returns:
Min and max bounds packaged as
(minx, miny, minz), (maxx, maxy, maxz)
.- Return type:
Tuple[float, float, float], Tuple[float, float float]
- inside(x, y, z)[source]#
For input arrays
x
,y
,z
of arbitrary but identical shape, return an array with the same shape which isTrue
for every point in zip(x, y, z) that is inside the volume of theGeometry
, andFalse
otherwise.- Parameters:
x (np.ndarray[float]) – Array of point positions in x direction.
y (np.ndarray[float]) – Array of point positions in y direction.
z (np.ndarray[float]) – Array of point positions in z direction.
- Returns:
True
for every point that is inside the geometry.- Return type:
np.ndarray[bool]
- inside_meshgrid(x, y, z)[source]#
Faster way to check
self.inside
on a meshgrid. The input arrays are assumed sorted.- Parameters:
x (np.ndarray[float]) – 1D array of point positions in x direction.
y (np.ndarray[float]) – 1D array of point positions in y direction.
z (np.ndarray[float]) – 1D array of point positions in z direction.
- Returns:
Array with shape
(x.size, y.size, z.size)
, which isTrue
for every point that is inside the geometry.- Return type:
np.ndarray[bool]
- __hash__()#
Hash method.