LVecBase4d
from panda3d.core import LVecBase4d
- class LVecBase4d
Bases:
This is the base class for all three-component vectors and points.
Inheritance diagram
- __add__(other: LVecBase4d) LVecBase4d
- __div__(scalar: float) LVecBase4d
- __eq__(other: LVecBase4d) bool
- __iadd__(other: LVecBase4d) LVecBase4d
- __idiv__(scalar: float) LVecBase4d
- __imul__(scalar: float) LVecBase4d
- __init__()
- __init__(copy: LVecBase3d, w: float)
- __init__(param0: LVecBase4d)
- __init__(vector: LVector3d)
Constructs an
LVecBase4
from anLVector3
. The w coordinate is set to 0.0.
- __init__(copy: UnalignedLVecBase4d)
- __init__(fill_value: float)
- __isub__(other: LVecBase4d) LVecBase4d
- __lt__(other: LVecBase4d) bool
- __mul__(scalar: float) LVecBase4d
- __ne__(other: LVecBase4d) bool
- __sub__(other: LVecBase4d) LVecBase4d
- __sub__(other: LVecBase4d) LVecBase4d
- addToCell(i: int, value: float)
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:
- almostEqual(other: LVecBase4d) bool
Returns true if two vectors are memberwise equal within a default tolerance based on the numeric type.
- almostEqual(other: LVecBase4d, threshold: float) bool
Returns true if two vectors are memberwise equal within a specified tolerance.
- assign(copy: LVecBase4d) LVecBase4d
- assign(fill_value: float) LVecBase4d
- compareTo(other: LVecBase4d) int
This flavor of
compareTo()
uses a default threshold value based on the numeric type.
- compareTo(other: LVecBase4d, 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: LVecBase4d)
- dot(other: LVecBase4d) float
- fill(fill_value: float)
Sets each element of the vector to the indicated fill_value. This is particularly useful for initializing to zero.
- fmax(other: LVecBase4d) LVecBase4d
- fmin(other: LVecBase4d) LVecBase4d
- generateHash(hashgen: ChecksumHashGenerator)
Adds the vector to the indicated hash generator.
- generateHash(hashgen: ChecksumHashGenerator, threshold: float)
Adds the vector to the indicated hash generator.
- static getClassType() TypeHandle
- getData()
Returns the address of the first of the four data elements in the vector. The remaining elements occupy the next positions consecutively in memory.
- getXy() LVecBase2d
Returns the x and y component of this vector
- getXyz() LVecBase3d
Returns the x, y and z component of this vector
- normalize() bool
Normalizes the vector in place. Returns true if the vector was normalized, false if it was a zero-length vector.
- normalized() LVecBase4d
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.
- project(onto: LVecBase4d) LVecBase4d
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)
Reads the vector from the Datagram using get_stdfloat().
- readDatagramFixed(source: DatagramIterator)
Reads the vector from the Datagram using get_float32() or get_float64(). See
writeDatagramFixed()
.
- static unitW() LVecBase4d
Returns a unit W vector.
- static unitX() LVecBase4d
Returns a unit X vector.
- static unitY() LVecBase4d
Returns a unit Y vector.
- static unitZ() LVecBase4d
Returns a unit Z vector.
- writeDatagram(destination: Datagram)
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)
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 xy LVecBase2d
Returns the x and y component of this vector
- property xyz LVecBase3d
Returns the x, y and z component of this vector
- static zero() LVecBase4d
Returns a zero-length vector.