Public Member Functions | |
| InSphereResult | __call__ (self, PreciseVertCoords d) |
| None | __init__ (self) |
| None | __init__ (self, InSphereTesterSoS arg0) |
| bool | degenerateTriangle (self) |
| None | flip (self) |
| bool | reset (self, PreciseVertCoords a, PreciseVertCoords b, PreciseVertCoords c, int rSq) |
| Public Member Functions inherited from mrmeshpy.InSphereTester_int | |
| InSphereResult | __call__ (self, Vector3i d) |
| None | __init__ (self) |
| None | __init__ (self, InSphereTester_int arg0) |
Static Public Member Functions | |
| None | __init__ (*args, **kwargs) |
| InSphereTesterSoS | operator (*args, **kwargs) |
| InSphereTesterSoS | operator (*args, **kwargs) |
| Static Public Member Functions inherited from mrmeshpy.InSphereTester_int | |
| None | __init__ (*args, **kwargs) |
Generated from: MR::InSphereTesterSoS the precise tester with simulation-of-simplicity resolution of "exactly on the sphere" ties, which reuses all the geometric machinery of InSphereTester<int> and adds only the vertex ids
|
static |
| None mrmeshpy.InSphereTesterSoS.__init__ | ( | self | ) |
| None mrmeshpy.InSphereTesterSoS.__init__ | ( | self, | |
| InSphereTesterSoS | arg0 ) |
Implicit copy constructor.
| InSphereResult mrmeshpy.InSphereTesterSoS.__call__ | ( | self, | |
| PreciseVertCoords | d ) |
returns the position of the point d.pt relative to the sphere, resolving "exactly on the sphere" ties into Inside or Outside by simulation-of-simplicity as described at the inSphere overload above, using the ids of d and of the points given in reset() (never returns OnSphere or NoSphere); shall be called only after reset() returned true, and all four ids must be distinct
| bool mrmeshpy.InSphereTesterSoS.degenerateTriangle | ( | self | ) |
whether the last successful reset() got a degenerate triangle (two coincident points), where only the symbolically perturbed sphere exists; the exact sphere quantities of the base class are not valid then
| None mrmeshpy.InSphereTesterSoS.flip | ( | self | ) |
swaps the points b and c together with their ids, which selects the mirror sphere as in the base class, and gives exactly the state of reset( a, c, b, rSq ); this hides the id-less flip of the base class, which would leave stale ids
Reimplemented from mrmeshpy.InSphereTester_int.
Reimplemented in mrmeshpy.FastInSphereTesterSoS.
|
static |
Reimplemented from mrmeshpy.InSphereTester_int.
Reimplemented in mrmeshpy.FastInSphereTesterSoS, and mrmeshpy.FastInSphereTesterSoS.
|
static |
Reimplemented from mrmeshpy.InSphereTester_int.
Reimplemented in mrmeshpy.FastInSphereTesterSoS, and mrmeshpy.FastInSphereTesterSoS.
| bool mrmeshpy.InSphereTesterSoS.reset | ( | self, | |
| PreciseVertCoords | a, | ||
| PreciseVertCoords | b, | ||
| PreciseVertCoords | c, | ||
| int | rSq ) |
prepares the tester for the sphere of radius sqrt(rSq) passing via points a.pt, b.pt, c.pt, with the center located on the positive side of their plane (in the half-space pointed at by cross( b.pt - a.pt, c.pt - a.pt ) from the plane), remembering the ids for the queries; returns false if no such sphere exists for the symbolically perturbed points (see the simulation-of-simplicity inSphere above): in particular, coincident and collinear triangle points are resolved by the perturbation here, and rSq exactly equal to the squared circumradius gives false whenever the perturbation of these ids breaks the existence; this hides the id-less reset of the base class, which would leave stale ids
Reimplemented from mrmeshpy.InSphereTester_int.
Reimplemented in mrmeshpy.FastInSphereTesterSoS.