LVecBase2d

from panda3d.core import LVecBase2d
class LVecBase2d

Bases:

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

Inheritance diagram

Inheritance diagram of LVecBase2d

__add__(other: LVecBase2d) → LVecBase2d
__ceil__() → object
__div__(scalar: float) → LVecBase2d
__eq__(other: LVecBase2d) → bool
__floor__() → object
__floordiv__(scalar: float) → object
__getattr__(attr_name: str) → object
__getitem__(i: int, assign_val: float)
__getitem__(i: int) → float
__iadd__(other: LVecBase2d) → LVecBase2d
__idiv__(scalar: float) → LVecBase2d
__ifloordiv__(scalar: float) → object
__imul__(scalar: float) → LVecBase2d
__init__()
__init__(param0: LVecBase2d)
__init__(fill_value: float)
__init__(x: float, y: float)
__ipow__(exponent: float) → object
__isub__(other: LVecBase2d) → LVecBase2d
__lt__(other: LVecBase2d) → bool
__mul__(scalar: float) → LVecBase2d
__ne__(other: LVecBase2d) → bool
__pow__(exponent: float) → object
__reduce__() → object
__repr__() → str
__round__() → object
__setattr__(attr_name: str, assign: object) → int
__sub__(other: LVecBase2d) → LVecBase2d
__sub__(other: LVecBase2d) → LVecBase2d
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)

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:

addX(value: float)
addY(value: float)
almostEqual(other: LVecBase2d) → bool

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

almostEqual(other: LVecBase2d, threshold: float) → bool

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

assign(copy: LVecBase2d) → LVecBase2d
assign(fill_value: float) → LVecBase2d
compareTo(other: LVecBase2d) → int

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

compareTo(other: LVecBase2d, 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: LVecBase2d)
dot(other: LVecBase2d) → 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: LVecBase2d) → LVecBase2d
fmin(other: LVecBase2d) → LVecBase2d
generateHash(hashgen: ChecksumHashGenerator)

Adds the vector to the indicated hash generator.

generateHash(hashgen: ChecksumHashGenerator, threshold: float)

Adds the vector to the indicated hash generator.

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

Returns the address of the first of the two data elements in the vector. The next element occupies the next position 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
getX() → float
getY() → 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() → LVecBase2d

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)
output(out: ostream)
project(onto: LVecBase2d) → LVecBase2d

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().

set(x: float, y: float)
setCell(i: int, value: float)
setX(value: float)
setY(value: float)
static size() → int
static unitX() → LVecBase2d

Returns a unit X vector.

static unitY() → LVecBase2d

Returns a unit Y 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 x → float
property y → float
static zero() → LVecBase2d

Returns a zero-length vector.