LVecBase3f¶
-
class LVecBase3f¶
This is the base class for all three-component vectors and points.
Inheritance diagram
digraph inheritancea3b02a79e7 { bgcolor=transparent; rankdir=BT; size="8.0, 12.0"; "DTOOL_SUPER_BASE" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style=""]; "LVecBase3f" [URL="acron.core.LVecBase3f.html#acron.core.LVecBase3f",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "DTOOL_SUPER_BASE" -> "LVecBase3f" [arrowsize=0.75,style=""]; }- LVecBase3f.__add__()¶
- LVecBase3f.__ceil__()¶
- LVecBase3f.__div__()¶
- LVecBase3f.__eq__()¶
- LVecBase3f.__floor__()¶
- LVecBase3f.__floordiv__()¶
- LVecBase3f.__getattr__()¶
- LVecBase3f.__getbuffer__()¶
- LVecBase3f.__getitem__()¶
- LVecBase3f.__iadd__()¶
- LVecBase3f.__idiv__()¶
- LVecBase3f.__ifloordiv__()¶
- LVecBase3f.__imul__()¶
- LVecBase3f.__init__()¶
- LVecBase3f.__ipow__()¶
- LVecBase3f.__isub__()¶
- LVecBase3f.__lt__()¶
- LVecBase3f.__mul__()¶
- LVecBase3f.__ne__()¶
- LVecBase3f.__pow__()¶
- LVecBase3f.__reduce__()¶
- LVecBase3f.__repr__()¶
- LVecBase3f.__rmul__()¶
- LVecBase3f.__round__()¶
- LVecBase3f.__setattr__()¶
- LVecBase3f.__sub__()¶
- LVecBase3f.__sub__()¶
- LVecBase3f.add_hash()¶
Adds the vector into the running hash.
Adds the vector into the running hash.
- LVecBase3f.add_to_cell()¶
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:
- LVecBase3f.add_x()¶
- LVecBase3f.add_y()¶
- LVecBase3f.add_z()¶
- LVecBase3f.almost_equal()¶
Returns true if two vectors are memberwise equal within a specified tolerance.
Returns true if two vectors are memberwise equal within a default tolerance based on the numeric type.
- LVecBase3f.assign()¶
- LVecBase3f.compare_to()¶
This flavor of compare_to uses a default threshold value based on the numeric type.
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).
- LVecBase3f.componentwise_mult()¶
- LVecBase3f.cross()¶
- LVecBase3f.cross_into()¶
- LVecBase3f.dot()¶
- LVecBase3f.fill()¶
Sets each element of the vector to the indicated fill_value. This is particularly useful for initializing to zero.
- LVecBase3f.fmax()¶
- LVecBase3f.fmin()¶
- LVecBase3f.generate_hash()¶
Adds the vector to the indicated hash generator.
Adds the vector to the indicated hash generator.
- LVecBase3f.get_cell()¶
- static LVecBase3f.get_class_type()¶
- static LVecBase3f.get_data()¶
Returns the address of the first of the three data elements in the vector. The remaining elements occupy the next positions consecutively in memory.
- LVecBase3f.get_hash()¶
Returns a suitable hash for phash_map.
Returns a suitable hash for phash_map.
- static LVecBase3f.get_num_components()¶
- LVecBase3f.get_standardized_hpr()¶
Try to un-spin the hpr to a standard form. Like all standards, someone decides between many arbitrary possible standards. This function assumes that 0 and 360 are the same, as is 720 and -360. Also 180 and -180 are the same. Another example is -90 and 270. Each element will be in the range -180.0 to 179.99999. The original usage of this function is for human readable output.
It doesn’t work so well for asserting that foo_hpr is roughly equal to bar_hpr. Try using
LQuaternionf::is_same_direction()for that. See Also: get_standardized_rotation, LQuaternion::is_same_direction
- LVecBase3f.get_x()¶
- LVecBase3f.get_xy()¶
Returns a 2-component vector that shares just the first two components of this vector.
- LVecBase3f.get_xz()¶
Returns a 2-component vector that shares just the first and last components of this vector.
- LVecBase3f.get_y()¶
- LVecBase3f.get_yz()¶
Returns a 2-component vector that shares just the last two components of this vector.
- LVecBase3f.get_z()¶
- LVecBase3f.is_nan()¶
Returns true if any component of the vector is not-a-number, false otherwise.
- LVecBase3f.length()¶
Returns the length of the vector, by the Pythagorean theorem.
- LVecBase3f.length_squared()¶
Returns the square of the vector’s length, cheap and easy.
- LVecBase3f.normalize()¶
Normalizes the vector in place. Returns true if the vector was normalized, false if it was a zero-length vector.
- LVecBase3f.normalized()¶
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.
- static LVecBase3f.operator_delete()¶
- static LVecBase3f.operator_delete()¶
- static LVecBase3f.operator_new()¶
- static LVecBase3f.operator_new()¶
- LVecBase3f.output()¶
- LVecBase3f.project()¶
Returns a new vector representing the projection of this vector onto another one. The resulting vector will be a scalar multiple of onto.
- LVecBase3f.read_datagram()¶
Reads the vector from the Datagram using get_stdfloat().
- LVecBase3f.read_datagram_fixed()¶
Reads the vector from the Datagram using get_float32() or get_float64(). See
write_datagram_fixed().
- LVecBase3f.set()¶
- LVecBase3f.set_cell()¶
- LVecBase3f.set_x()¶
- LVecBase3f.set_y()¶
- LVecBase3f.set_z()¶
- static LVecBase3f.size()¶
- static LVecBase3f.unit_x()¶
Returns a unit X vector.
- static LVecBase3f.unit_y()¶
Returns a unit Y vector.
- static LVecBase3f.unit_z()¶
Returns a unit Z vector.
- static LVecBase3f.validate_ptr()¶
- LVecBase3f.write_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.
- LVecBase3f.write_datagram_fixed()¶
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.
- static LVecBase3f.zero()¶
Returns a zero-length vector.