Public Member Functions | |
| FastInSphereTesterSoS (java.lang.foreign.MemorySegment ptr, boolean owned, java.lang.Object owner) | |
| FastInSphereTesterSoS () | |
| FastInSphereTesterSoS (meshlib.FastInSphereTesterSoS _other) | |
| meshlib.FastInSphereTesterSoS | assignFromAnother (meshlib.FastInSphereTesterSoS _other) |
| boolean | reset (meshlib.PreciseVertCoords a, meshlib.PreciseVertCoords b, meshlib.PreciseVertCoords c, long rSq) |
| void | flip () |
| meshlib.InSphereResult | call (meshlib.PreciseVertCoords d) |
| boolean | outsideBothSpheres (meshlib.Vector3i d) |
| boolean | sphereExists (meshlib.PreciseVertCoords a, meshlib.PreciseVertCoords b, meshlib.PreciseVertCoords c, long rSq) |
| boolean | degenerateTriangle () |
| meshlib.InSphereTester_int | upcastToInSphereTester_int () |
| meshlib.InSphereTesterSoS | upcastToInSphereTesterSoS () |
| Public Member Functions inherited from meshlib.CppObject | |
| final java.lang.foreign.MemorySegment | rawPointer () |
| final boolean | isOwned () |
| final void | close () |
| final java.lang.foreign.MemorySegment | release () |
Static Public Member Functions | |
| static meshlib.FastInSphereTesterSoS | staticDowncastFromInSphereTester_int (meshlib.InSphereTester_int object) |
| static meshlib.FastInSphereTesterSoS | staticDowncastFromInSphereTesterSoS (meshlib.InSphereTesterSoS object) |
Additional Inherited Members | |
| Protected Member Functions inherited from meshlib.CppObject | |
| CppObject (java.lang.foreign.MemorySegment ptr, java.util.function.Consumer< java.lang.foreign.MemorySegment > destroy, java.lang.Object owner) | |
gives exactly the same answers as InSphereTesterSoS, only faster: the sphere's center is also computed in floating point during reset(), and every query point far enough from the sphere's surface is answered by it alone, leaving the exact predicates for the points close to it Generated from class MR::FastInSphereTesterSoS. Base classes: Direct: (non-virtual) MR::InSphereTesterSoS Indirect: (non-virtual) MR::InSphereTester<int>
Instances created here own their C++ objects, see CppObject.
| meshlib.FastInSphereTesterSoS.FastInSphereTesterSoS | ( | java.lang.foreign.MemorySegment | ptr, |
| boolean | owned, | ||
| java.lang.Object | owner ) |
Wraps a pointer from the C bindings. If owned, the object is destroyed when the wrapper dies. owner is kept alive as long as this wrapper is. Not for normal use.
| meshlib.FastInSphereTesterSoS.FastInSphereTesterSoS | ( | ) |
Constructs an empty (default-constructed) instance.
Calls MR_FastInSphereTesterSoS_DefaultConstruct().
| meshlib.FastInSphereTesterSoS.FastInSphereTesterSoS | ( | meshlib.FastInSphereTesterSoS | _other | ) |
Generated from constructor MR::FastInSphereTesterSoS::FastInSphereTesterSoS. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object.
Calls MR_FastInSphereTesterSoS_ConstructFromAnother().
| meshlib.FastInSphereTesterSoS meshlib.FastInSphereTesterSoS.assignFromAnother | ( | meshlib.FastInSphereTesterSoS | _other | ) |
Generated from method MR::FastInSphereTesterSoS::operator=. The reference to things referred to by the parameter _other (if any) might be preserved in this object.
Calls MR_FastInSphereTesterSoS_AssignFromAnother().
| meshlib.InSphereResult meshlib.FastInSphereTesterSoS.call | ( | meshlib.PreciseVertCoords | d | ) |
returns the position of the point d.pt relative to the sphere, with the ties resolved by simulation-of-simplicity exactly as InSphereTesterSoS does (never OnSphere or NoSphere); shall be called only after reset() returned true, and all four ids must be distinct Generated from method MR::FastInSphereTesterSoS::operator().
Calls MR_FastInSphereTesterSoS_call().
| boolean meshlib.FastInSphereTesterSoS.degenerateTriangle | ( | ) |
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 Generated from method MR::FastInSphereTesterSoS::degenerateTriangle.
Calls MR_FastInSphereTesterSoS_degenerateTriangle().
| void meshlib.FastInSphereTesterSoS.flip | ( | ) |
selects the mirror sphere as the base class does, moving the floating-point center as well; this hides the flip of the base class, which would leave the center on the wrong side Generated from method MR::FastInSphereTesterSoS::flip.
Calls MR_FastInSphereTesterSoS_flip().
| boolean meshlib.FastInSphereTesterSoS.outsideBothSpheres | ( | meshlib.Vector3i | d | ) |
whether d is strictly outside both spheres of the given radius passing via the three points of reset(): the selected one and its mirror in the plane of the triangle; the answer is exact, and a point lying on either of them is not strictly outside, so no tie arises and no simulation-of-simplicity is involved; filtered in floating point as the query above, and equally exact; for a degenerate triangle, where only the perturbed spheres exist and the answer would need the id of d, returns false conservatively (never prunes) Generated from method MR::FastInSphereTesterSoS::outsideBothSpheres.
Calls MR_FastInSphereTesterSoS_outsideBothSpheres().
| boolean meshlib.FastInSphereTesterSoS.reset | ( | meshlib.PreciseVertCoords | a, |
| meshlib.PreciseVertCoords | b, | ||
| meshlib.PreciseVertCoords | c, | ||
| long | rSq ) |
prepares the tester as InSphereTesterSoS.reset does, and additionally computes the floating-point center of the sphere and the tolerance of the tests below; this hides the reset of the base class, which would leave the center stale Generated from method MR::FastInSphereTesterSoS::reset.
Calls MR_FastInSphereTesterSoS_reset().
| boolean meshlib.FastInSphereTesterSoS.sphereExists | ( | meshlib.PreciseVertCoords | a, |
| meshlib.PreciseVertCoords | b, | ||
| meshlib.PreciseVertCoords | c, | ||
| long | rSq ) |
returns exactly what reset( a, b, c, rSq ) would, without changing the tester: only the squared circumradius of the triangle is compared with rSq, and the sphere itself is not computed, which is much cheaper where just the existence of a sphere is needed Generated from method MR::FastInSphereTesterSoS::sphereExists.
Calls MR_FastInSphereTesterSoS_sphereExists().
|
static |
Static downcast from the base class MR::InSphereTester<int>. Undefined behavior if the object isn't actually a FastInSphereTesterSoS. The result refers to object.
Calls MR_FastInSphereTesterSoS_MutableStaticDowncastFrom_MR_InSphereTester_int().
|
static |
Static downcast from the base class MR::InSphereTesterSoS. Undefined behavior if the object isn't actually a FastInSphereTesterSoS. The result refers to object.
Calls MR_FastInSphereTesterSoS_MutableStaticDowncastFrom_MR_InSphereTesterSoS().
| meshlib.InSphereTester_int meshlib.FastInSphereTesterSoS.upcastToInSphereTester_int | ( | ) |
Upcasts to the base class MR::InSphereTester<int>. The result refers to this object.
Calls MR_FastInSphereTesterSoS_MutableUpcastTo_MR_InSphereTester_int().
| meshlib.InSphereTesterSoS meshlib.FastInSphereTesterSoS.upcastToInSphereTesterSoS | ( | ) |
Upcasts to the base class MR::InSphereTesterSoS. The result refers to this object.
Calls MR_FastInSphereTesterSoS_MutableUpcastTo_MR_InSphereTesterSoS().