PerpendicularCalculus
Canonical path: NemAll_Python_Geometry.PerpendicularCalculus
Class for perpendicular calculation
Calculate
overloaded
Calculate(
geoObject_object: object,
inputPnt: Point3D,
eps: float,
insideTolerance: float = 1.7976931348623157e308,
) -> tuple[bool, Point3D, Vector2D]
Calculates perpendicular point on IGeometry object.
Parameters:
-
geoObject_object
(object
) –IGeometry on which to calculate perpendicular point
-
inputPnt
(Point3D
) –Projection point
-
eps
(float
) –Tolerance for the perpendicular point calculation
-
insideTolerance
(float
, default:1.7976931348623157e+308
) –Tolerance for the IsInsideElement(..) comparison
Returns:
Calculate(
path: Path2D,
inputPnt: Point3D,
eps: float,
insideTolerance: float = 1.7976931348623157e308,
) -> tuple[bool, Point3D, Vector2D]
Calculates perpendicular point on a path of multiple objects.
This calculation only delivers perpendicular point which are on the element
Parameters:
-
path
(Path2D
) –Path on which to calculate perpendicular point
-
inputPnt
(Point3D
) –Projection point
-
eps
(float
) –Tolerance for the perpendicular point calculation
-
insideTolerance
(float
, default:1.7976931348623157e+308
) –Tolerance for the IsInsideElement(..) comparison
Returns:
Calculate(
path: Path2D,
inputPnt: Point3D,
eps: float,
insideTolerance: float = 1.7976931348623157e308,
) -> tuple[bool, Point3D]
Calculates perpendicular point on a path of multiple objects.
This calculation only delivers perpendicular point which are on the element
Parameters:
-
path
(Path2D
) –Path on which to calculate perpendicular point
-
inputPnt
(Point3D
) –Projection point
-
eps
(float
) –Tolerance for the perpendicular point calculation
-
insideTolerance
(float
, default:1.7976931348623157e+308
) –Tolerance for the IsInsideElement(..) comparison
Returns:
Calculate(
line2d: Line2D,
inputPnt: Point3D,
insideTolerance: float = 1.7976931348623157e308,
) -> tuple[bool, Point3D, Vector2D]
Calculate(
line2d: Line2D,
inputPnt: Point3D,
insideTolerance: float = 1.7976931348623157e308,
) -> tuple[bool, Point3D]
Calculate(
line3d: Line3D,
inputPnt: Point3D,
insideTolerance: float = 1.7976931348623157e308,
) -> tuple[bool, Point3D]
Calculate(
line3d: Line3D,
inputPnt: Point3D,
insideTolerance: float = 1.7976931348623157e308,
) -> tuple[bool, Point3D, Vector2D]
Calculate(
polyline3d: Polyline3D,
inputPnt: Point3D,
insideTolerance: float = 1.7976931348623157e308,
) -> tuple[bool, Point3D, Vector2D]
Calculates perpendicular point on Polyline3D object.
Parameters:
-
polyline3d
(Polyline3D
) –Polyline3D on which to calculate perpendicular point
-
inputPnt
(Point3D
) –Projection point
-
insideTolerance
(float
, default:1.7976931348623157e+308
) –Tolerance for the IsInsideElement(..) comparison
Returns:
Calculate(
polygon3d: Polygon3D,
inputPnt: Point3D,
insideTolerance: float = 1.7976931348623157e308,
) -> tuple[bool, Point3D, Vector2D]
Calculate(
polyhedron3d: Polyhedron3D,
inputPnt: Point3D,
insideTolerance: float = 1.7976931348623157e308,
) -> tuple[bool, Point3D, Vector2D]
Calculates perpendicular point on Polyhedron3D object.
Parameters:
-
polyhedron3d
(Polyhedron3D
) –Polyhedron3D on which to calculate perpendicular point
-
inputPnt
(Point3D
) –Projection point
-
insideTolerance
(float
, default:1.7976931348623157e+308
) –Tolerance for the IsInsideElement(..) comparison
Returns:
Calculate(
arc: Arc2D,
inputPnt: Point3D,
insideTolerance: float = 1.7976931348623157e308,
) -> tuple[bool, Point3D, Vector2D]
Calculate(
polyline: Polyline2D,
inputPnt: Point3D,
subelement: int,
insideTolerance: float = 1.7976931348623157e308,
) -> tuple[bool, Point3D, Vector2D]
Calculates perpendicular point on Polyline2D object.
This calculation only delivers perpendicular point which are on the element
Parameters:
-
polyline
(Polyline2D
) –Polyline2D on which to calculate perpendicular point
-
inputPnt
(Point3D
) –Projection point
-
subelement
(int
) –Line segment for calculation
-
insideTolerance
(float
, default:1.7976931348623157e+308
) –Tolerance for the IsInsideElement(..) comparison
Returns:
Calculates perpendicular point on Spline2D object.
This calculation only delivers perpendicular point which are on the element
Parameters:
-
spline
(Spline2D
) –Spline2D on which to calculate perpendicular point
-
inputPnt
(Point3D
) –Projection point
-
eps
(float
) –Tolerance for the perpendicular point calculation
Returns:
Calculate(
clothoid2D: Clothoid2D,
inputPnt: Point3D,
eps: float,
insideTolerance: float = 1.7976931348623157e308,
) -> tuple[bool, Point3D, Vector2D]
Calculates perpendicular point on Clothoid2D object.
Parameters:
-
clothoid2D
(Clothoid2D
) –Clothoid2D on which to calculate perpendicular point
-
inputPnt
(Point3D
) –Projection point
-
eps
(float
) –Tolerance for the perpendicular point calculation
-
insideTolerance
(float
, default:1.7976931348623157e+308
) –Tolerance for the IsInsideElement(..) comparison
Returns:
Calculate(
arc: Arc3D,
inputPnt: Point3D,
insideTolerance: float = 1.7976931348623157e308,
) -> tuple[bool, Point3D, Vector2D]
Calculate(
geoObject_object: object,
inputPnt: Point3D,
eps: float,
insideTolerance: float = 1.7976931348623157e308,
) -> tuple[bool, Point3D]
Calculates perpendicular point on IGeometry object.
Parameters:
-
geoObject_object
(object
) –IGeometry on which to calculate perpendicular point
-
inputPnt
(Point3D
) –Projection point
-
eps
(float
) –Tolerance for the perpendicular point calculation
-
insideTolerance
(float
, default:1.7976931348623157e+308
) –Tolerance for the IsInsideElement(..) comparison
Returns:
GetTangent
GetTangent() -> Vector2D
IsInsideElement
staticmethod
IsInsideElement(
geoElement_object: object, perPnt: Point3D, insideTolerance: float
) -> bool
Check, whether the perpendicular point is inside the element
Parameters:
-
geoElement_object
(object
) –Geometry element
-
perPnt
(Point3D
) –Perpendicular point
-
insideTolerance
(float
) –Allowed deviance to the end point outside the element
Returns:
-
bool
–Perpendicular point is inside the element: true/false
IsSuccessful
Get the result of the calculation
Returns:
-
bool
–true if calculation successful, else false
IsSupportedGeometry
staticmethod
Check, whether geometry is supported
Parameters:
-
geoObject_object
(object
) –Geometry element
Returns:
-
bool
–is supported
__init__
overloaded
__init__(
path: Path2D, eps: float, insideTolerance: float = 1.7976931348623157e308
)
Constructor.
Parameters:
-
path
(Path2D
) –Path of concatenated IGeometry objects
-
eps
(float
) –Tolerance for the perpendicular point calculation
-
insideTolerance
(float
, default:1.7976931348623157e+308
) –Tolerance for the IsInsideElement(..) comparison
__init__(line: Line2D, insideTolerance: float = 1.7976931348623157e+308)
Constructor.
Parameters:
-
line
(Line2D
) –Line which will be held in a 2D path
-
insideTolerance
(float
, default:1.7976931348623157e+308
) –Tolerance for the IsInsideElement(..) comparison
__init__(
polyline: Polyline2D, insideTolerance: float = 1.7976931348623157e308
)
Constructor.
Parameters:
-
polyline
(Polyline2D
) –Polyline which will be held in a 2D path
-
insideTolerance
(float
, default:1.7976931348623157e+308
) –Tolerance for the IsInsideElement(..) comparison
__init__(arc: Arc2D, insideTolerance: float = 1.7976931348623157e+308)
Constructor.
Parameters:
-
arc
(Arc2D
) –Arc which will be held in a 2D path
-
insideTolerance
(float
, default:1.7976931348623157e+308
) –Tolerance for the IsInsideElement(..) comparison
__init__(
clothoid: Clothoid2D,
eps: float,
insideTolerance: float = 1.7976931348623157e308,
)
Constructor.
Parameters:
-
clothoid
(Clothoid2D
) –Clothoid which will be held in a 2D path
-
eps
(float
) –Tolerance for the perpendicular point calculation
-
insideTolerance
(float
, default:1.7976931348623157e+308
) –Tolerance for the IsInsideElement(..) comparison
__init__(spline: Spline2D, eps: float)
Constructor.
This calculation only delivers perpendicular point which are on the element
Parameters:
-
spline
(Spline2D
) –Spline which will be held in a 2D path
-
eps
(float
) –Tolerance for the perpendicular point calculation
__init__(polygon2D: Polygon2D)
__init__(element: PerpendicularCalculus)
Constructor.
Parameters:
-
geoObject
(object
) –Geometry which will be held in a 2D path
-
eps
(float
) –Tolerance for the perpendicular point calculation
-
insideTolerance
(float
, default:1.7976931348623157e+308
) –Tolerance for the IsInsideElement(..) comparison