Panda3D

Functions
collisionPolygon.cxx File Reference

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

`#include "collisionPolygon.h"`
`#include "collisionHandler.h"`
`#include "collisionEntry.h"`
`#include "collisionSphere.h"`
`#include "collisionLine.h"`
`#include "collisionRay.h"`
`#include "collisionSegment.h"`
`#include "collisionParabola.h"`
`#include "config_collide.h"`
`#include "cullTraverserData.h"`
`#include "boundingBox.h"`
`#include "pointerToArray.h"`
`#include "geomNode.h"`
`#include "geom.h"`
`#include "datagram.h"`
`#include "datagramIterator.h"`
`#include "bamReader.h"`
`#include "bamWriter.h"`
`#include "transformState.h"`
`#include "clipPlaneAttrib.h"`
`#include "nearly_zero.h"`
`#include "geomTrifans.h"`
`#include "geomLinestrips.h"`
`#include "geomVertexWriter.h"`
`#include "renderState.h"`
`#include "epvector.h"`
`#include <algorithm>`

Go to the source code of this file.

## Functions
| PT (BoundingVolume) CollisionPolygon
| This is part of the double-dispatch implementation of test_intersection(). More...
| PT (PandaNode) CollisionPolygon
| Returns a GeomNode that may be rendered to visualize the CollisionSolid. 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
  drose

Date
  2000-04-25

Definition in file collisionPolygon.cxx.

## Function Documentation

## ◆ PT() [1/2]

PT | ( | BoundingVolume |  | ) |

This is part of the double-dispatch implementation of test_intersection().

It is called when the "from" object is a sphere.

This is part of the double-dispatch implementation of test_intersection(). It is called when the "from" object is a line.

This is part of the double-dispatch implementation of test_intersection(). It is called when the "from" object is a ray.

This is part of the double-dispatch implementation of test_intersection(). It is called when the "from" object is a segment.

This is part of the double-dispatch implementation of test_intersection(). It is called when the "from" object is a parabola.

This is part of the double-dispatch implementation of test_intersection(). It is called when the "from" object is a box.

Fills the _viz_geom GeomNode up with Geoms suitable for rendering this solid.

Definition at line 330 of file collisionPolygon.cxx.

## ◆ PT() [2/2]

PT | ( | PandaNode |  | ) |

Returns a GeomNode that may be rendered to visualize the CollisionSolid.

Creates a card behind the text with a specified border for button edge or what have you.

Creates a card behind the text.

Returns the actual node that is used internally to render the text, if the TextNode is parented within the scene graph.

Generates the text, according to the parameters indicated within the TextNode, and returns a Node that may be parented within the tree to represent it.

Generates the GeomNode appropriate to a T_texture_border frame.

Generates the GeomNode appropriate to a T_groove or T_ridge frame.

Generates the GeomNode appropriate to a T_bevel_in or T_bevel_out frame.

This is the recursive implementation of copy_subgraph().

Reads the bytes created by a previous call to encode_to_bam_stream(), and extracts and returns the single object on those bytes.

Loads a single scene graph file, if possible.

Generates the card by rescaling the source geometry appropriately.

This is used during the cull traversal to render the CollisionNodes that have been made visible.

Returns a PStatCollector that is used to count the number of bounding volume tests made against a solid of this type in a given frame.

Returns the Node that is the root of the file, or NULL if the file cannot be loaded.

If search is true, the file is searched for along the model path; otherwise, only the exact filename is loaded.

The implementatin of load_file(), this tries a single possible file without searching further along the path.

Saves a scene graph to a single file, if possible. The file type written is implicit in the filename extension.

The implementation of save_file(), this tries to write a specific file type.

Loads up all of the dynamic libraries named in a load-file-type Configure variable. Presumably this will make the various file types available for runtime loading.

Returns NULL on error.

This method is intended to replace decode_raw_from_bam_stream() when you know the stream in question returns an object of type PandaNode, allowing for easier reference count management. Note that the caller is still responsible for maintaining the reference count on the return value.

It returns a copy of the entire subgraph rooted at this node.

Note that it includes the parameter inst_map, which is a map type, and is not (and cannot be) exported from PANDA.DLL. Thus, any derivative of PandaNode that is not also a member of PANDA.DLL *cannot* access this map.

This is called by r_copy_subgraph(); the copy has already been made of this particular node (and this is the copy); this function's job is to copy all of the children from the original.

Note that it includes the parameter inst_map, which is a map type, and is not (and cannot be) exported from PANDA.DLL. Thus, any derivative of PandaNode that is not also a member of PANDA.DLL *cannot* access this map, and probably should not even override this function.

Creates a frame around the text.

Definition at line 237 of file collisionPolygon.cxx.