Panda3D

Functions
bulletBodyNode.cxx File Reference

PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University. More...

`#include "bulletBodyNode.h"`
`#include "config_bullet.h"`
`#include "bulletShape.h"`
`#include "bulletBoxShape.h"`
`#include "bulletCapsuleShape.h"`
`#include "bulletPlaneShape.h"`
`#include "bulletSphereShape.h"`
`#include "bulletTriangleMeshShape.h"`
`#include "bulletTriangleMesh.h"`
`#include "bulletWorld.h"`
`#include "collisionBox.h"`
`#include "collisionPlane.h"`
`#include "collisionSphere.h"`
`#include "collisionPolygon.h"`
`#include "collisionCapsule.h"`

Go to the source code of this file.

## Functions
| CPT (TransformState) BulletBodyNode
| Hook which will be called whenever the total shape of a body changed. More...

## Detailed Description

PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.

All rights reserved.

All use of this software is subject to the terms of the revised BSD license. You should have received a copy of this license along with this source code in a file named "LICENSE."

Author
  enn0x

Date
  2010-11-19

Definition in file bulletBodyNode.cxx.

## Function Documentation

## ◆ CPT()

CPT | ( | TransformState |  | ) |
| inline

Hook which will be called whenever the total shape of a body changed.

Returns the inverse of this transform.

Makes a new 2-d TransformState with the specified components.

Makes a new two-dimensional TransformState with the specified 3x3 transformation matrix.

Makes a new two-dimensional TransformState with the specified components.

Makes a new TransformState with the specified transformation matrix.

Makes a new TransformState with the specified components.

Constructs an invalid transform; for instance, the result of inverting a singular matrix.

Returns the transform that has been set as this node's "previous" position.

Returns the net "previous" transform on this node from the root.

Returns the texture matrix on the current node for the given stage, relative to the other node.

Returns the texture matrix on the current node for the given stage, or identity transform if there is no explicit transform set for the given stage.

Returns the relative "previous" transform to this node from the other node; i.e.

Returns what the cs_transform would be set to after a call to set_coordinate_system(cs).

Returns the relative transform to convert from the LODNode space to the camera space.

Used for example to update the mass properties (inertia) of a rigid body. The default implementation does nothing. Assumes the lock(bullet global lock) is held

This is another way of saying the cs_transform when rendering the scene for a camera with the indicated coordinate system.

Returns a transform that converts from the GSG's external coordinate system (as returned by get_coordinate_system()) to its internal coordinate system (as returned by get_internal_coordinate_system()). This is used for rendering.

This is fundametically similar to do_issue_light(), with calls to apply_clip_plane() and enable_clip_planes(), as appropriate.

the position of this node in the previous frame, as seen by the other node in the previous frame.

Sets the "previous" transform object on this node, relative to the other node. This computes a new transform object that will have the indicated value when seen from the other node.

Sets the texture matrix on the current node to the indicated transform for the given stage.

Enables automatic texture coordinate generation for the indicated texture stage.

See set_prev_transform().

Sets the translation component of the transform, leaving rotation and scale untouched. This also resets the node's "previous" position, so that the collision system will see the node as having suddenly appeared in the new position, without passing any points in between.

See set_prev_transform().

Returns true if this node has the _dirty_prev_transform flag set, which indicates its _prev_transform is different from its _transform value (in pipeline stage 0). In this case, the node will be visited by reset_prev_transform().

Retrieves the user-defined value that was previously set on this node for the particular key, if any. If no value has been previously set, returns the empty string.

Returns true if a value has been defined on this node for the particular key (even if that value is the empty string), or false if no value has been set.

Returns the number of tags applied to this node.

Returns the key of the nth tag applied to this node.

Returns true if the node has any tags (or any Python tags) at all, false if it has none.

Lists all the nodes at and below the current path hierarchically.

Returns the special bit that, when specifically cleared in the node's DrawMask, indicates that the node is hidden to all cameras, regardless of the remaining DrawMask bits.

If you are going to immediately compose this result with another TransformState, it is faster to do it in one operation with invert_compose().

Returns the pointer to the unique TransformState in the cache that is equivalent to this one. This may be the same pointer as this object, or it may be a different pointer; but it will be an equivalent object, and it will be a shared pointer. This may be called from time to time to improve cache benefits.

Returns the union of the Geom::GeomRendering bits that will be required once this TransformState is applied to a geom which includes the indicated geom_rendering bits. The RenderState's get_geom_rendering() should already have been applied.

Overrides this method to update PStats appropriately.

Overrides this method to update PStats appropriately.

Overrides this method to update PStats appropriately.

Overrides this method to update PStats appropriately.

Returns the number of entries in the composition cache for this TransformState. This is the number of other TransformStates whose composition with this one has been cached. This number is not useful for any practical reason other than performance analysis.

Returns the number of entries in the invert_composition cache for this TransformState. This is similar to the composition cache, but it records cache entries for the invert_compose() operation. See get_composition_cache_num_entries().

Returns the number of slots in the composition cache for this TransformState. You may use this as an upper bound when walking through all of the composition cache results via get_composition_cache_source() or result().

This has no practical value other than for examining the cache for performance analysis.

Returns the source TransformState of the nth element in the composition cache. Returns NULL if there doesn't happen to be an entry in the nth element. See get_composition_cache_result().

This has no practical value other than for examining the cache for performance analysis.

Returns the result TransformState of the nth element in the composition cache. Returns NULL if there doesn't happen to be an entry in the nth element.

In general, a->compose(a->get_composition_cache_source(n)) == a->get_composition_cache_result(n).

This has no practical value other than for examining the cache for performance analysis.

Returns the number of slots in the composition cache for this TransformState. You may use this as an upper bound when walking through all of the composition cache results via get_invert_composition_cache_source() or result().

This has no practical value other than for examining the cache for performance analysis.

Returns the source TransformState of the nth element in the invert composition cache. Returns NULL if there doesn't happen to be an entry in the nth element. See get_invert_composition_cache_result().

This has no practical value other than for examining the cache for performance analysis.

Returns the result TransformState of the nth element in the invert composition cache. Returns NULL if there doesn't happen to be an entry in the nth element.

In general, a->invert_compose(a->get_invert_composition_cache_source(n)) == a->get_invert_composition_cache_result(n).

This has no practical value other than for examining the cache for performance analysis.

Flushes the PStatCollectors used during traversal.

Definition at line 552 of file bulletBodyNode.cxx.