BasicTools.ImplicitGeometry.ImplicitGeometryBase module

BasicTools.ImplicitGeometry.ImplicitGeometryBase.CheckIntegrity(GUI=False)[source]
class BasicTools.ImplicitGeometry.ImplicitGeometryBase.ImplicitGeometryBase[source]

Bases: BaseOutputObject

ApplyInsideOut(res)[source]
ApplyVector(support, cellCenter=False, dim=None)[source]
GetDistanceToPoint(pos)[source]
GetGradientDistanceToPoint(pos: ndarray, dx: float64 | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes] | None = None) ndarray[source]

Compute the numerical gradient of the implicit geometry the child classes can overwrite it for a more efficient or exact result.

Parameters:
  • pos (np.ndarray) – the position to evaluate the gradient

  • dx (Optional[PBasicFloatType,Arraylike], optional) – the step (per coordinate) to be used to compute the numerical gradient, by default dx is 1e-6

Returns:

_description_

Return type:

np.ndarray

class BasicTools.ImplicitGeometry.ImplicitGeometryBase.ImplicitGeometryCachedData(internalImplicitGeometry)[source]

Bases: ImplicitGeometryBase

ApplyVector(support, cellCenter=False, dim=None)[source]
GetDistanceToPoint(pos)[source]
class BasicTools.ImplicitGeometry.ImplicitGeometryBase.ImplicitGeometryDelayedInit(name, ops={})[source]

Bases: ImplicitGeometryBase

ApplyVector(support, cellCenter=False, dim=None)[source]
GetDistanceToPoint(pos)[source]
Init()[source]
BasicTools.ImplicitGeometry.ImplicitGeometryBase.TryToCreate(name, ops=None)[source]
BasicTools.ImplicitGeometry.ImplicitGeometryBase.dcos(x)[source]
BasicTools.ImplicitGeometry.ImplicitGeometryBase.dsin(x)[source]
BasicTools.ImplicitGeometry.ImplicitGeometryBase.smoothmax(a, b, k=1)[source]
BasicTools.ImplicitGeometry.ImplicitGeometryBase.smoothmin(a, b, k=1)[source]