SBPhysicalIAVector3#

This class represents a three-dimensional physical interval vector.

SBPhysicalIAVector3()            # a dimensionless zero interval vector
SBPhysicalIAVector3(1, 2, 3)     # a dimensionless interval vector [ [1, 1] [2, 2] [3, 4] ]
SBPhysicalIAVector3([[1, 2], [3, 4], [5, 6]])   # a dimensionless interval vector [ [1, 2] [3, 4] [5, 6] ]
SBPhysicalIAVector3(1, 2, 3, 4, 5, 6)   # a dimensionless interval vector [ [1, 2] [3, 4] [5, 6] ]

There are multiple convenience constructors available for the commonly used physical interval vectors:

These convenience constructors internally call SBPhysicalIAVector3 with proper SBQuantity and can be used as follows, without specifying the SBQuantity unit:

SBIAVector3(1, 2, 3)                # an interval vector in dimensionless units
SBIALength3(0, 10, 0, 20, 0, 30)    # an interval vector in length units
SBIAForce3(1e0, 1e3, 1e0, 1e3, 1e0, 1e3)  # an interval vector in force units
SBIAVector3(1, 2, 3) == SBPhysicalIAVector3(1, 2, 3)    # True

See also

SAMSON SDK: SBDTypePhysicalIAVector3

class samson.SBPhysicalIAVector3(*args, **kwargs)#

Bases: pybind11_object

This class represents three-dimensional physical interval vectors.

SAMSON API: SBDTypePhysicalIAVector3

Overloaded function.

  1. __init__(self: samson.SBPhysicalIAVector3) -> None

Constructs a physical interval vector with all components set to [0, 0]

  1. __init__(self: samson.SBPhysicalIAVector3, x: samson.SBPhysicalInterval) -> None

Constructs the physical interval vector [ x, x, x ] from interval x.

  1. __init__(self: samson.SBPhysicalIAVector3, u: samson.SBPhysicalVector3) -> None

Constructs the physical interval vector [ [u[0], u[0]], [u[1], u[1]], [u[2], u[2]] ]

  1. __init__(self: samson.SBPhysicalIAVector3, v: list[samson.SBPhysicalInterval]) -> None

Constructs the physical interval vector [ v[0], v[1], v[2] ]

  1. __init__(self: samson.SBPhysicalIAVector3, x: samson.SBQuantity.unitsSI) -> None

Constructs a physical interval vector with all components set to [x, x]

  1. __init__(self: samson.SBPhysicalIAVector3, x: samson.SBQuantity.unitsSI, y: samson.SBQuantity.unitsSI, z: samson.SBQuantity.unitsSI) -> None

Constructs the physical interval vector [ [x, x], [y, y], [z, z] ]

  1. __init__(self: samson.SBPhysicalIAVector3, x: list[samson.SBQuantity.unitsSI], y: list[samson.SBQuantity.unitsSI], z: list[samson.SBQuantity.unitsSI]) -> None

Constructs the physical interval vector [ [x[0], x[1]], [y[0], y[1]], [z[0], z[1]] ]

  1. __init__(self: samson.SBPhysicalIAVector3, v: list[list[samson.SBQuantity.unitsSI]]) -> None

Constructs the physical interval vector [ [v[0][0], v[0][1]] [v[1][0], v[1][1]] [v[2][0], v[2][1]] ]

  1. __init__(self: samson.SBPhysicalIAVector3, xl: samson.SBQuantity.unitsSI, xu: samson.SBQuantity.unitsSI, yl: samson.SBQuantity.unitsSI, yu: samson.SBQuantity.unitsSI, zl: samson.SBQuantity.unitsSI, zu: samson.SBQuantity.unitsSI) -> None

Constructs the physical interval vector [ [xl, xu], [yl, yu], [zl, zu] ]

  1. __init__(self: samson.SBPhysicalIAVector3, x: samson.SBPhysicalInterval, y: samson.SBPhysicalInterval, z: samson.SBPhysicalInterval) -> None

Constructs the physical interval vector [ [x, x], [y, y], [z, z] ]

  1. __init__(self: samson.SBPhysicalIAVector3, x: float) -> None

Constructs the dimensionless physical interval vector with all components set to [x, x]

  1. __init__(self: samson.SBPhysicalIAVector3, x: float, y: float, z: float) -> None

Constructs the dimensionless physical interval vector [ [x, x], [y, y], [z, z] ]

  1. __init__(self: samson.SBPhysicalIAVector3, x: list[float], y: list[float], z: list[float]) -> None

Constructs the dimensionless physical interval vector [ [x[0], x[1]], [y[0], y[1]], [z[0], z[1]] ]

  1. __init__(self: samson.SBPhysicalIAVector3, v: list[list[float]]) -> None

Constructs the dimensionless physical interval vector [ [v[0][0], v[0][1]], [v[1][0], v[1][1]], [v[2][0], v[2][1]] ]

  1. __init__(self: samson.SBPhysicalIAVector3, xl: float, xu: float, yl: float, yu: float, zl: float, zu: float) -> None

Constructs the dimensionless physical interval vector [ [xl, xu], [yl, yu], [zl, zu] ]

__add__(self: samson.SBPhysicalIAVector3, arg0: samson.SBPhysicalIAVector3) samson.SBPhysicalIAVector3#
__contains__(*args, **kwargs)#

Overloaded function.

  1. __contains__(self: samson.SBPhysicalIAVector3, u: samson.SBPhysicalVector3) -> bool

Returns True when this physical interval vector contains the physical vector u

  1. __contains__(self: samson.SBPhysicalIAVector3, u: samson.SBPhysicalIAVector3) -> bool

Returns True when this physical interval vector contains in physical interval vector u

__eq__(self: samson.SBPhysicalIAVector3, arg0: samson.SBPhysicalIAVector3) bool#
__iadd__(self: samson.SBPhysicalIAVector3, arg0: samson.SBPhysicalIAVector3) samson.SBPhysicalIAVector3#
__imul__(*args, **kwargs)#

Overloaded function.

  1. __imul__(self: samson.SBPhysicalIAVector3, arg0: float) -> samson.SBPhysicalIAVector3

  2. __imul__(self: samson.SBPhysicalIAVector3, arg0: samson.SBQuantity.unitsSI) -> samson.SBPhysicalIAVector3

  3. __imul__(self: samson.SBPhysicalIAVector3, arg0: samson.SBPhysicalInterval) -> samson.SBPhysicalIAVector3

  4. __imul__(self: samson.SBPhysicalIAVector3, arg0: samson.SBPhysicalIAVector3) -> samson.SBPhysicalIAVector3

__isub__(self: samson.SBPhysicalIAVector3, arg0: samson.SBPhysicalIAVector3) samson.SBPhysicalIAVector3#
__itruediv__(*args, **kwargs)#

Overloaded function.

  1. __itruediv__(self: samson.SBPhysicalIAVector3, arg0: float) -> samson.SBPhysicalIAVector3

  2. __itruediv__(self: samson.SBPhysicalIAVector3, arg0: samson.SBQuantity.unitsSI) -> samson.SBPhysicalIAVector3

  3. __itruediv__(self: samson.SBPhysicalIAVector3, arg0: samson.SBPhysicalInterval) -> samson.SBPhysicalIAVector3

  4. __itruediv__(self: samson.SBPhysicalIAVector3, arg0: samson.SBPhysicalIAVector3) -> samson.SBPhysicalIAVector3

__mul__(*args, **kwargs)#

Overloaded function.

  1. __mul__(self: samson.SBPhysicalIAVector3, arg0: float) -> samson.SBPhysicalIAVector3

  2. __mul__(self: samson.SBPhysicalIAVector3, arg0: samson.SBQuantity.unitsSI) -> samson.SBPhysicalIAVector3

  3. __mul__(self: samson.SBPhysicalIAVector3, arg0: samson.SBPhysicalInterval) -> samson.SBPhysicalIAVector3

  4. __mul__(self: samson.SBPhysicalIAVector3, arg0: samson.SBPhysicalIAVector3) -> samson.SBPhysicalIAVector3

__ne__(self: samson.SBPhysicalIAVector3, arg0: samson.SBPhysicalIAVector3) bool#
__neg__(self: samson.SBPhysicalIAVector3) samson.SBPhysicalIAVector3#
__rmul__(*args, **kwargs)#

Overloaded function.

  1. __rmul__(self: samson.SBPhysicalIAVector3, arg0: float) -> samson.SBPhysicalIAVector3

  2. __rmul__(self: samson.SBPhysicalIAVector3, arg0: samson.SBQuantity.unitsSI) -> samson.SBPhysicalIAVector3

  3. __rmul__(self: samson.SBPhysicalIAVector3, arg0: samson.SBPhysicalInterval) -> samson.SBPhysicalIAVector3

__sub__(self: samson.SBPhysicalIAVector3, arg0: samson.SBPhysicalIAVector3) samson.SBPhysicalIAVector3#
__truediv__(*args, **kwargs)#

Overloaded function.

  1. __truediv__(self: samson.SBPhysicalIAVector3, arg0: float) -> samson.SBPhysicalIAVector3

  2. __truediv__(self: samson.SBPhysicalIAVector3, arg0: samson.SBQuantity.unitsSI) -> samson.SBPhysicalIAVector3

  3. __truediv__(self: samson.SBPhysicalIAVector3, arg0: samson.SBPhysicalInterval) -> samson.SBPhysicalIAVector3

area(self: samson.SBPhysicalIAVector3) samson.SBQuantity.unitsSI#

Returns the area 2.0*((i[0].i[1]-i[0].i[0])*(i[0].i[1]-i[0].i[0])+(i[1].i[1]-i[1].i[0])*(i[1].i[1]-i[1].i[0])+(i[2].i[1]-i[2].i[0])*(i[2].i[1]-i[2].i[0])) of the physical interval vector

bound(*args, **kwargs)#

Overloaded function.

  1. bound(self: samson.SBPhysicalIAVector3, u: samson.SBPhysicalVector3) -> None

Enlarges the physical interval vector to contain the physical vector u.

  1. bound(self: samson.SBPhysicalIAVector3, u: samson.SBPhysicalIAVector3) -> None

Enlarges the physical interval vector to contain the physical interval vector u.

center(self: samson.SBPhysicalIAVector3) samson.SBPhysicalVector3#

Returns the center [ 0.5*(i[0].i[0]+i[0].i[1]) 0.5*(i[1].i[0]+i[1].i[1]) 0.5*(i[2].i[0]+i[2].i[1]) ] of the physical interval vector

collapseToLowerBound(self: samson.SBPhysicalIAVector3) None#

Sets the lower bounds of the intervals equal to the upper bounds.

collapseToUpperBound(self: samson.SBPhysicalIAVector3) None#

Sets the upper bounds of the intervals equal to the lower bounds.

contains(*args, **kwargs)#

Overloaded function.

  1. contains(self: samson.SBPhysicalIAVector3, u: samson.SBPhysicalVector3) -> bool

Returns True when this physical interval vector contains the physical vector u

  1. contains(self: samson.SBPhysicalIAVector3, u: samson.SBPhysicalIAVector3) -> bool

Returns True when this physical interval vector contains in physical interval vector u

diameter(self: samson.SBPhysicalIAVector3) samson.SBPhysicalVector3#

Returns the diameter [ (i[0].i[1]-i[0].i[0]) (i[1].i[1]-i[1].i[0]) (i[2].i[1]-i[2].i[0]) ] of the physical interval vector

distance2ToPoint(self: samson.SBPhysicalIAVector3, u: samson.SBPhysicalVector3) samson.SBQuantity.unitsSI#

Returns the squared Euclidean distance between this physical interval vector and physical vector u

expand(*args, **kwargs)#

Overloaded function.

  1. expand(self: samson.SBPhysicalIAVector3, r: samson.SBQuantity.unitsSI) -> None

Expands all components of this physical interval vector by offset r.

  1. expand(self: samson.SBPhysicalIAVector3, r: float) -> None

Expands all components of this physical interval vector by offset r.

fit(self: samson.SBPhysicalIAVector3, a: samson.SBPhysicalIAVector3, b: samson.SBPhysicalIAVector3) None#

Sets the components of the physical interval vector to exactly bound both physical interval vectors a and b.

isContainedIn(self: samson.SBPhysicalIAVector3, u: samson.SBPhysicalIAVector3) bool#

Returns True when this physical interval vector is contained in physical interval vector u

lengthsSum(self: samson.SBPhysicalIAVector3) samson.SBQuantity.unitsSI#

Returns the sum i[0].diameter()+i[1].diameter()+i[2].diameter() of the components diameters of the physical interval vector.

lowerBound(self: samson.SBPhysicalIAVector3) samson.SBPhysicalVector3#

Returns the lower bound [ i[0].i[0] i[1].i[0] i[2].i[0] ] of the physical interval vector.

overlaps(*args, **kwargs)#

Overloaded function.

  1. overlaps(self: samson.SBPhysicalIAVector3, u: samson.SBPhysicalIAVector3) -> bool

Returns True when this physical interval vector overlaps physical interval vector u

  1. overlaps(self: samson.SBPhysicalIAVector3, u: samson.SBPhysicalIAVector3, cutoffDistance: samson.SBQuantity.unitsSI) -> bool

Returns True when the Manhattan distance between this physical interval vector and physical interval vector u is smaller than cutoffDistance

overlapsAdvanced(self: samson.SBPhysicalIAVector3, u: samson.SBPhysicalIAVector3, cutoff: samson.SBQuantity.unitsSI, cutoff2: samson.SBQuantity.unitsSI) str#

Returns the overlap type (as a string) between this physical interval vector and physical interval vector u

reset(self: samson.SBPhysicalIAVector3, u: samson.SBPhysicalVector3) None#

Sets the physical interval vector to [ [u[0], u[0]], [u[1], u[1]], [u[2], u[2]] ].

setZero(self: samson.SBPhysicalIAVector3) None#

Sets the components of the physical interval vector to [0, 0].

shrink(*args, **kwargs)#

Overloaded function.

  1. shrink(self: samson.SBPhysicalIAVector3, r: samson.SBQuantity.unitsSI) -> None

Shrinks all components of this physical interval vector by offset r.

  1. shrink(self: samson.SBPhysicalIAVector3, r: float) -> None

Shrinks all components of this physical interval vector by offset r.

split(self: samson.SBPhysicalIAVector3) list[samson.SBPhysicalIAVector3]#

Splits the physical interval vector along the longest axis into physical interval vectors.

str(self: samson.SBPhysicalIAVector3, fullName: bool = False) str#

Converts the physical interval vector to a string with a full unit name when fullName is True.

upperBound(self: samson.SBPhysicalIAVector3) samson.SBPhysicalVector3#

Returns the upper bound [ i[0].i[1] i[1].i[1] i[2].i[1] ] of the physical interval vector.

volume(self: samson.SBPhysicalIAVector3) samson.SBQuantity.unitsSI#

Returns the volume (i[0].i[1]-i[0].i[0])*(i[1].i[1]-i[1].i[0])*(i[2].i[1]-i[2].i[0]) of the physical interval vector

property isDimensionless#

Returns True if the physical interval vector is dimensionless

property value#
property x#

The x interval.

property y#

The y interval.

property z#

The z interval.