LVecBase4f

from panda3d.core import LVecBase4f
class LVecBase4f

This is the base class for all three-component vectors and points.

Inheritance diagram

Inheritance diagram of LVecBase4f

__add__(other: LVecBase4f)LVecBase4f
__div__(scalar: float)LVecBase4f
__eq__(other: LVecBase4f)bool
__getattr__(attr_name: str)object
__getitem__(i: int, assign_val: float)None
__getitem__(i: int)float
__iadd__(other: LVecBase4f)LVecBase4f
__idiv__(scalar: float)LVecBase4f
__imul__(scalar: float)LVecBase4f
__init__()
__init__(point: LPoint3f)

Constructs an LVecBase4 from an LPoint3. The w coordinate is set to 1.0.

__init__(copy: LVecBase3f, w: float)
__init__(param0: LVecBase4f)
__init__(vector: LVector3f)

Constructs an LVecBase4 from an LVector3. The w coordinate is set to 0.0.

__init__(copy: UnalignedLVecBase4f)
__init__(fill_value: float)
__init__(x: float, y: float, z: float, w: float)
__ipow__(exponent: float)object
__isub__(other: LVecBase4f)LVecBase4f
__lt__(other: LVecBase4f)bool
__mul__(scalar: float)LVecBase4f
__ne__(other: LVecBase4f)bool
__pow__(exponent: float)LVecBase4f
__reduce__()object
__repr__()str
__setattr__(attr_name: str, assign: object)int
__sub__(other: LVecBase4f)LVecBase4f
__sub__(other: LVecBase4f)LVecBase4f
addHash(hash: int)int

Adds the vector into the running hash.

addHash(hash: int, threshold: float)int

Adds the vector into the running hash.

addToCell(i: int, value: float)None

These next functions add to an existing value. i.e. foo.set_x(foo.get_x() + value) These are useful to reduce overhead in scripting languages:

addW(value: float)None
addX(value: float)None
addY(value: float)None
addZ(value: float)None
almostEqual(other: LVecBase4f)bool

Returns true if two vectors are memberwise equal within a default tolerance based on the numeric type.

almostEqual(other: LVecBase4f, threshold: float)bool

Returns true if two vectors are memberwise equal within a specified tolerance.

assign(copy: LVecBase4f)LVecBase4f
assign(fill_value: float)LVecBase4f
compareTo(other: LVecBase4f)int

This flavor of compareTo() uses a default threshold value based on the numeric type.

compareTo(other: LVecBase4f, threshold: float)int

Sorts vectors lexicographically, componentwise. Returns a number less than 0 if this vector sorts before the other one, greater than zero if it sorts after, 0 if they are equivalent (within the indicated tolerance).

componentwiseMult(other: LVecBase4f)None
dot(other: LVecBase4f)float
fill(fill_value: float)None

Sets each element of the vector to the indicated fill_value. This is particularly useful for initializing to zero.

fmax(other: LVecBase4f)LVecBase4f
fmin(other: LVecBase4f)LVecBase4f
generateHash(hashgen: ChecksumHashGenerator)None

Adds the vector to the indicated hash generator.

generateHash(hashgen: ChecksumHashGenerator, threshold: float)None

Adds the vector to the indicated hash generator.

getCell(i: int)float
static getClassType()TypeHandle
getData()None

Returns the address of the first of the four data elements in the vector. The remaining elements occupy the next positions consecutively in memory.

getHash()int

Returns a suitable hash for phash_map.

getHash(threshold: float)int

Returns a suitable hash for phash_map.

static getNumComponents()int
getW()float
getX()float
getXy()LVecBase2f

Returns the x and y component of this vector

getXyz()LVecBase3f

Returns the x, y and z component of this vector

getY()float
getZ()float
isNan()bool

Returns true if any component of the vector is not-a-number, false otherwise.

length()float

Returns the length of the vector, by the Pythagorean theorem.

lengthSquared()float

Returns the square of the vector’s length, cheap and easy.

normalize()bool

Normalizes the vector in place. Returns true if the vector was normalized, false if it was a zero-length vector.

normalized()LVecBase4f

Normalizes the vector and returns the normalized vector as a copy. If the vector was a zero-length vector, a zero length vector will be returned.

operatorNew(size: int)None
output(out: ostream)None
project(onto: LVecBase4f)LVecBase4f

Returns a new vector representing the projection of this vector onto another one. The resulting vector will be a scalar multiple of onto.

readDatagram(source: DatagramIterator)None

Reads the vector from the Datagram using get_stdfloat().

readDatagramFixed(source: DatagramIterator)None

Reads the vector from the Datagram using get_float32() or get_float64(). See writeDatagramFixed().

set(x: float, y: float, z: float, w: float)None
setCell(i: int, value: float)None
setW(value: float)None
setX(value: float)None
setY(value: float)None
setZ(value: float)None
static size()int
static unitW()LVecBase4f

Returns a unit W vector.

static unitX()LVecBase4f

Returns a unit X vector.

static unitY()LVecBase4f

Returns a unit Y vector.

static unitZ()LVecBase4f

Returns a unit Z vector.

writeDatagram(destination: Datagram)None

Writes the vector to the Datagram using add_stdfloat(). This is appropriate when you want to write the vector using the standard width setting, especially when you are writing a bam file.

writeDatagramFixed(destination: Datagram)None

Writes the vector to the Datagram using add_float32() or add_float64(), depending on the type of floats in the vector, regardless of the setting of Datagram.setStdfloatDouble(). This is appropriate when you want to write a fixed-width value to the datagram, especially when you are not writing a bam file.

property xfloat

Getter Setter

property xyLVecBase2f

Returns the x and y component of this vector

property xyzLVecBase3f

Returns the x, y and z component of this vector

property yfloat

Getter Setter

property zfloat

Getter Setter

static zero()LVecBase4f

Returns a zero-length vector.