Skip to content

flex_rf.tidy3d.CornerFinderSpec

Type: class Base(s): Tidy3dBaseModel

Specification for corner detection on a 2D plane.

medium [Literal['metal', 'dielectric', 'all']] = 'metal'

Find corners of structures made of Medium, which can take value metal for PEC and lossy metal, dielectric for non-metallic materials, and all for all materials.

angle_threshold [float] = CORNER_ANGLE_THRESOLD

A vertex is qualified as a corner if the angle spanned by its two edges is larger than the supplementary angle of this threshold value.

distance_threshold [PositiveFloat | None] = None

If not None and the distance of the vertex to its neighboring vertices is below the threshold value based on Douglas-Peucker algorithm, the vertex is disqualified as a corner.

concave_resolution [PositiveInt | None] = None

Specifies number of steps to use for determining dl_min based on concave featues.If set to None, then the corresponding dl_min reduction is not applied.

convex_resolution [PositiveInt | None] = None

Specifies number of steps to use for determining dl_min based on convex featues.If set to None, then the corresponding dl_min reduction is not applied.

mixed_resolution [PositiveInt | None] = None

Specifies number of steps to use for determining dl_min based on mixed featues.If set to None, then the corresponding dl_min reduction is not applied.

corners(normal_axis: Axis, coord: float, structure_list: list[Structure], center: tuple[float, float, float] = [0, 0, 0], size: tuple[float, float, float] = [inf, inf, inf], interior_disjoint_geometries: bool = False, keep_metal_only: bool = False)

On a 2D plane specified by axis = normal_axis and coordinate coord, find out corners of merged geometries made of medium.