LVecBase4d
from panda3d.core import LVecBase4d
- class LVecBase4d
Bases:
Bases:
MemoryBase
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
- add_to_cell(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:
- almost_equal(other: LVecBase4d) bool
Returns true if two vectors are memberwise equal within a default tolerance based on the numeric type.
- almost_equal(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
- compare_to(other: LVecBase4d) int
This flavor of compare_to uses a default threshold value based on the numeric type.
- compare_to(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).
- componentwise_mult(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
- generate_hash(hashgen: ChecksumHashGenerator)
Adds the vector to the indicated hash generator.
- generate_hash(hashgen: ChecksumHashGenerator, threshold: float)
Adds the vector to the indicated hash generator.
- static get_class_type() TypeHandle
- get_data()
Returns the address of the first of the four data elements in the vector. The remaining elements occupy the next positions consecutively in memory.
- get_xy() LVecBase2d
Returns the x and y component of this vector
- get_xyz() 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.
- read_datagram(source: DatagramIterator)
Reads the vector from the Datagram using get_stdfloat().
- read_datagram_fixed(source: DatagramIterator)
Reads the vector from the Datagram using get_float32() or get_float64(). See
write_datagram_fixed()
.
- static unit_w() LVecBase4d
Returns a unit W vector.
- static unit_x() LVecBase4d
Returns a unit X vector.
- static unit_y() LVecBase4d
Returns a unit Y vector.
- static unit_z() LVecBase4d
Returns a unit Z vector.
- write_datagram(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.
- write_datagram_fixed(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.set_stdfloat_double()
. 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.