# DirectSlider

from direct.gui.DirectSlider import DirectSlider

DirectSlider -- a widget which represents a slider that the user can pull left and right to represent a continuous value.

## Inheritance:

DirectSlider: DirectFrame
DirectFrame: DirectGuiWidget
DirectGuiWidget: NodePath DirectGuiBase
NodePath:
DirectGuiBase:

## Methods of DirectSlider:

__init__
__setValue
commandFunc
destroy
getRatio
getValue
setOrientation
setPageSize
setRange
setScrollSize
setValue

## Methods of DirectFrame:

__init__
destroy
setGeom
setImage
setText

## Methods of DirectGuiWidget:

__init__
copyOptions
destroy
disableEdit
editStart
editStop
enableEdit
frameInitialiseFunc
getBounds
getCenter
getFrameType
getHeight
getWidth
guiDragTask
guiScaleTask
printConfig
resetFrameSize
setBorderWidth
setFrameColor
setFrameSize
setFrameTexture
setFrameVisibleScale
setProp
setRelief
setState
taskName
uniqueName
updateFrameStyle

## Methods of NodePath:

NodePath (Constructor)
adjustAllPriorities
analyze
anyPath
applyTextureColors
attachNewNode
calcTightBounds
clearAntialias
clearAttrib
clearAudioVolume
clearBillboard
clearBin
clearClipPlane
clearColor
clearColorScale
clearCompass
clearDepthTest
clearDepthWrite
clearEffect
clearEffects
clearFog
clearLight
clearMat
clearMaterial
clearModelNodes
clearNormalMap
clearProjectTexture
clearPythonTag
clearRenderMode
clearScissor
clearShader
clearShaderInput
clearTag
clearTexGen
clearTexProjector
clearTexTransform
clearTexture
clearTransform
clearTransparency
clearTwoSided
compareTo
composeColorScale
copyTo
countNumDescendants
detachNode
doBillboardAxis
doBillboardPointEye
doBillboardPointWorld
fail
find
findAllMatches
findAllMaterials
findAllPathsTo
findAllTexcoords
findAllTextures
findAllTextureStages
findAllVertexColumns
findMaterial
findNetPythonTag
findNetTag
findPathTo
findTexture
findTextureStage
flattenLight
flattenMedium
flattenStrong
forceRecomputeBounds
getAncestor
getAntialias
getAttrib
getAudioVolume
getBinDrawOrder
getBinName
getBounds
getChild
getChildren
getClassType
getCollideMask
getColor
getColorScale
getCommonAncestor
getDepthTest
getDepthWrite
getDistance
getEffect
getEffects
getErrorType
getFog
getH
getHiddenAncestor
getHpr
getKey
getMat
getMaterial
getMaxSearchDepth
getName
getNetAudioVolume
getNetPrevTransform
getNetPythonTag
getNetState
getNetTag
getNetTransform
getNode
getNumChildren
getNumNodes
getP
getParent
getPos
getPosDelta
getPrevTransform
getPythonTag
getQuat
getR
getRelativePoint
getRelativeVector
getRenderMode
getRenderModePerspective
getRenderModeThickness
getSa
getSb
getScale
getSg
getShader
getShaderInput
getShear
getShxy
getShxz
getShyz
getSort
getSr
getStashedAncestor
getStashedChildren
getState
getSx
getSy
getSz
getTag
getTexGen
getTexGenLight
getTexHpr
getTexOffset
getTexPos
getTexProjectorFrom
getTexProjectorTo
getTexRotate
getTexScale
getTexScale3d
getTexTransform
getTexture
getTop
getTopNode
getTransform
getTransparency
getTwoSided
getX
getY
getZ
hasAntialias
hasAttrib
hasAudioVolume
hasBillboard
hasBin
hasClipPlane
hasClipPlaneOff
hasColor
hasColorScale
hasCompass
hasDepthTest
hasDepthWrite
hasEffect
hasFog
hasFogOff
hasLight
hasLightOff
hasMat
hasMaterial
hasNetPythonTag
hasNetTag
hasParent
hasPythonTag
hasRenderMode
hasScissor
hasTag
hasTexcoord
hasTexGen
hasTexProjector
hasTexTransform
hasTexture
hasTextureOff
hasTransparency
hasTwoSided
hasVertexColumn
headsUp
hide
hideBounds
instanceTo
instanceUnderNode
isAncestorOf
isEmpty
isHidden
isSameGraph
isSingleton
isStashed
listTags
lookAt
ls
node
notFound
operator !=
operator <
operator =
operator ==
output
premungeScene
prepareScene
projectTexture
removed
removeNode
reparentTo
reverseLs
setAllColorScale
setAlphaScale
setAntialias
setAttrib
setAudioVolume
setAudioVolumeOff
setBillboardAxis
setBillboardPointEye
setBillboardPointWorld
setBin
setClipPlane
setClipPlaneOff
setCollideMask
setColor
setColorOff
setColorScale
setColorScaleOff
setCompass
setDepthTest
setDepthWrite
setEffect
setEffects
setFluidPos
setFluidX
setFluidY
setFluidZ
setFog
setFogOff
setH
setHpr
setHprScale
setLight
setLightOff
setMat
setMaterial
setMaterialOff
setMaxSearchDepth
setName
setNormalMap
setP
setPos
setPosHpr
setPosHprScale
setPosHprScaleShear
setPosQuat
setPosQuatScale
setPosQuatScaleShear
setPrevTransform
setPythonTag
setQuat
setQuatScale
setR
setRenderMode
setRenderModeFilled
setRenderModePerspective
setRenderModeThickness
setRenderModeWireframe
setSa
setSb
setScale
setScissor
setSg
setShader
setShaderAuto
setShaderInput
setShaderOff
setShear
setShxy
setShxz
setShyz
setSr
setState
setSx
setSy
setSz
setTag
setTexGen
setTexHpr
setTexOffset
setTexPos
setTexProjector
setTexRotate
setTexScale
setTexTransform
setTexture
setTextureOff
setTransform
setTransparency
setTwoSided
setX
setY
setZ
show
showBounds
showThrough
showTightBounds
stash
stashTo
unifyTextureStages
unstash
unstashAll
verifyComplete
writeBamFile
writeBamStream
writeBounds
wrtReparentTo

## Methods of DirectGuiBase:

__init__
__setitem__
addoptions
bind
cget
component
components
configure
createcomponent
defineoptions
destroy
destroycomponent
hascomponent
initialiseoptions
isinitoption
options
postInitialiseFunc
unbind

## Constants in NodePath:

ETOk | (ErrorType)
ETNotFound | (ErrorType)
ETRemoved | (ErrorType)
ETFail | (ErrorType)

__init__ def __init__(self, parent=None, **kw) Undocumented function.

__setValue def __setValue(self) Undocumented function.

commandFunc def commandFunc(self) Undocumented function.

destroy def destroy(self) Undocumented function.

getRatio def getRatio(self) Undocumented function.

getValue def getValue(self) Undocumented function.

setOrientation def setOrientation(self) Undocumented function.

setPageSize def setPageSize(self) Undocumented function.

setRange def setRange(self) Undocumented function.

setScrollSize def setScrollSize(self) Undocumented function.

setValue def setValue(self, value) Undocumented function.

__init__ def __init__(self, parent=None, **kw) Undocumented function.

destroy def destroy(self) Undocumented function.

setGeom def setGeom(self) Undocumented function.

setImage def setImage(self) Undocumented function.

setText def setText(self) Undocumented function.

__init__ def __init__(self, parent=None, **kw) Undocumented function.

copyOptions def copyOptions(self, other) Copy other's options into our self so we look and feel like other

destroy def destroy(self) Undocumented function.

disableEdit def disableEdit(self) Undocumented function.

editStart def editStart(self, event) Undocumented function.

editStop def editStop(self, event) Undocumented function.

enableEdit def enableEdit(self) Undocumented function.

frameInitialiseFunc def frameInitialiseFunc(self) Undocumented function.

getBounds def getBounds(self, state=0) Undocumented function.

getCenter def getCenter(self) Undocumented function.

getFrameType def getFrameType(self, state=0) Undocumented function.

getHeight def getHeight(self) Undocumented function.

getWidth def getWidth(self) Undocumented function.

guiDragTask def guiDragTask(self, state) Undocumented function.

guiScaleTask def guiScaleTask(self, state) Undocumented function.

printConfig def printConfig(self, indent=0) Undocumented function.

resetFrameSize def resetFrameSize(self) Undocumented function.

setBorderWidth def setBorderWidth(self) Undocumented function.

setFrameColor def setFrameColor(self) Undocumented function.

setFrameSize def setFrameSize(self, fClearFrame=0) Undocumented function.

setFrameTexture def setFrameTexture(self) Undocumented function.

setFrameVisibleScale def setFrameVisibleScale(self) Undocumented function.

setProp def setProp(self, propString, value) Allows you to set a property like frame['text'] = 'Joe' in a function instead of an assignment. This is useful for setting properties inside function intervals where must input a function and extraArgs, not an assignment.

setRelief def setRelief(self, fSetStyle=1) Undocumented function.

setState def setState(self) Undocumented function.

taskName def taskName(self, idString) Undocumented function.

uniqueName def uniqueName(self, idString) Undocumented function.

updateFrameStyle def updateFrameStyle(self) Undocumented function.

NodePath NodePath::NodePath(void); Description: This constructs an empty NodePath with no nodes. Description: This constructs a new NodePath with a single node. An ordinary, unattached PandaNode is created with the indicated name. Description: This constructs a NodePath for the indicated node. If the node does not have any parents, this creates a singleton NodePath; otherwise, it automatically finds the path from the node to the root. If the node has multiple paths to the root, one path is chosen arbitrarily and a warning message is printed (but see also NodePath::any_path(), below). Description: Constructs a NodePath with the indicated parent NodePath and child node; the child node must be a stashed or unstashed child of the parent. Description:

adjustAllPriorities void NodePath::adjust_all_priorities(int adjustment); Description: Adds the indicated adjustment amount (which may be negative) to the priority for all transitions on the referenced node, and for all nodes in the subgraph below. This can be used to force these nodes not to be overridden by a high-level state change above. If the priority would drop below zero, it is set to zero.

analyze void NodePath::analyze(void) const; Description: Analyzes the geometry below this node and reports the number of vertices, triangles, etc. This is the same information reported by the bam-info program.

anyPath static NodePath NodePath::any_path(PandaNode *node, Thread *current_thread = ((get_current_thread()))); Description: Returns a new NodePath that represents any arbitrary path from the root to the indicated node. This is the same thing that would be returned by NodePath(node), except that no warning is issued if the path is ambiguous.

applyTextureColors void NodePath::apply_texture_colors(void); Description: Removes textures from Geoms at this node and below by applying the texture colors to the vertices. This is primarily useful to simplify a low-LOD model. The texture colors are replaced by flat colors that approximate the original textures. Only the bottommost texture on each Geom is used (if there is more than one), and it is applied as if it were M_modulate, and WM_repeat, regardless of its actual settings. If the texture has a simple_ram_image, this may be used if the main image isn't resident. After this call, there will be no texturing specified at this level and below. Of course, there might still be texturing inherited from above.

attachNewNode NodePath NodePath::attach_new_node(PandaNode *node, int sort = (0), Thread *current_thread = ((get_current_thread()))) const; Description: Creates an ordinary PandaNode and attaches it below the current NodePath, returning a new NodePath that references it. Description: Attaches a new node, with or without existing parents, to the scene graph below the referenced node of this NodePath. This is the preferred way to add nodes to the graph. If the node was already a child of the parent, this returns a NodePath to the existing child. This does *not* automatically extend the current NodePath to reflect the attachment; however, a NodePath that does reflect this extension is returned.

calcTightBounds bool NodePath::calc_tight_bounds(LPoint3f &min_point, LPoint3f &max_point, Thread *current_thread = ((get_current_thread()))) const; Description: Calculates the minimum and maximum vertices of all Geoms at this NodePath's bottom node and below. This is a tight bounding box; it will generally be tighter than the bounding volume returned by get_bounds() (but it is more expensive to compute). The return value is true if any points are within the bounding volume, or false if none are.

clearAntialias void NodePath::clear_antialias(void); Description: Completely removes any antialias setting that may have been set on this node via set_antialias().

clearAttrib void NodePath::clear_attrib(TypeHandle type); Description: Removes the render attribute of the given type from this node. This node, and the subgraph below, will now inherit the indicated render attribute from the nodes above this one.

clearAudioVolume void NodePath::clear_audio_volume(void); Description: Completely removes any audio volume from the referenced node. This is preferable to simply setting the audio volume to identity, as it also removes the overhead associated with having an audio volume at all.

clearBillboard void NodePath::clear_billboard(void); Description: Removes any billboard effect from the node.

clearBin void NodePath::clear_bin(void); Description: Completely removes any bin adjustment that may have been set via set_bin() from this particular node.

clearClipPlane void NodePath::clear_clip_plane(void); Description: Completely removes any clip planes that may have been set via set_clip_plane() or set_clip_plane_off() from this particular node. Description: Removes any reference to the indicated clipping plane from the NodePath.

clearColor void NodePath::clear_color(void); Description: Completely removes any color adjustment from the node. This allows the natural color of the geometry, or whatever color transitions might be otherwise affecting the geometry, to show instead.

clearColorScale void NodePath::clear_color_scale(void); Description: Completely removes any color scale from the referenced node. This is preferable to simply setting the color scale to identity, as it also removes the overhead associated with having a color scale at all.

clearCompass void NodePath::clear_compass(void); Description: Removes any compass effect from the node.

clearDepthTest void NodePath::clear_depth_test(void); Description: Completely removes any depth-test adjustment that may have been set on this node via set_depth_test().

clearDepthWrite void NodePath::clear_depth_write(void); Description: Completely removes any depth-write adjustment that may have been set on this node via set_depth_write().

clearEffect void NodePath::clear_effect(TypeHandle type); Description: Removes the render effect of the given type from this node.

clearEffects void NodePath::clear_effects(void); Description: Resets this node to have no render effects.

clearFog void NodePath::clear_fog(void); Description: Completely removes any fog adjustment that may have been set via set_fog() or set_fog_off() from this particular node. This allows whatever fogs might be otherwise affecting the geometry to show instead.

clearLight void NodePath::clear_light(void); Description: Completely removes any lighting operations that may have been set via set_light() or set_light_off() from this particular node. Description: Removes any reference to the indicated Light or PolylightNode from the NodePath.

clearMat void NodePath::clear_mat(void); Description: Completely removes any transform from the referenced node.

clearMaterial void NodePath::clear_material(void); Description: Completely removes any material adjustment that may have been set via set_material() from this particular node.

clearModelNodes int NodePath::clear_model_nodes(void); Description: Recursively walks through the scene graph at this level and below, looking for ModelNodes, and calls model_node->set_preserve_transform(PT_drop_node) on each one. This allows a subsequent call to flatten_strong() to eliminate all of the ModelNodes. Returns the number of ModelNodes found.

clearNormalMap void NodePath::clear_normal_map(void); Description: Undoes the effect of a previous call to set_normal_map().

clearProjectTexture void NodePath::clear_project_texture(TextureStage *stage); Description: Undoes the effect of project_texture().

clearPythonTag void NodePath::clear_python_tag(string const &key); Description: Removes the Python object defined for this key on this particular node. After a call to clear_python_tag(), has_python_tag() will return false for the indicated key.

clearRenderMode void NodePath::clear_render_mode(void); Description: Completely removes any render mode adjustment that may have been set on this node via set_render_mode_wireframe() or set_render_mode_filled().

clearScissor void NodePath::clear_scissor(void); Description: Removes the scissor region that was defined at this node level by a previous call to set_scissor().

clearShader void NodePath::clear_shader(void); Description:

clearShaderInput void NodePath::clear_shader_input(InternalName *id); Description:

clearTag void NodePath::clear_tag(string const &key); Description: Removes the value defined for this key on this particular node. After a call to clear_tag(), has_tag() will return false for the indicated key.

clearTexGen void NodePath::clear_tex_gen(void); Description: Removes the texture coordinate generation mode from all texture stages on this node. Description: Disables automatic texture coordinate generation for the indicated texture stage.

clearTexProjector void NodePath::clear_tex_projector(TextureStage *stage); Description: Removes the TexProjectorEffect for the indicated stage from this node. Description: Removes the TexProjectorEffect for all stages from this node.

clearTexTransform void NodePath::clear_tex_transform(void); Description: Removes all texture matrices from the current node. Description: Removes the texture matrix on the current node for the given stage.

clearTexture void NodePath::clear_texture(void); Description: Completely removes any texture adjustment that may have been set via set_texture() or set_texture_off() from this particular node. This allows whatever textures might be otherwise affecting the geometry to show instead. Description: Removes any reference to the indicated texture stage from the NodePath.

clearTransform void NodePath::clear_transform(Thread *current_thread = ((get_current_thread()))); Description: Sets the transform object on this node to identity. Description: Sets the transform object on this node to identity, relative to the other node. This effectively places this node at the same position as the other node.

clearTransparency void NodePath::clear_transparency(void); Description: Completely removes any transparency adjustment that may have been set on this node via set_transparency(). The geometry at this level and below will subsequently be rendered either transparent or not, to whatever other nodes may have had set_transparency() on them.

clearTwoSided void NodePath::clear_two_sided(void); Description: Completely removes any two-sided adjustment that may have been set on this node via set_two_sided(). The geometry at this level and below will subsequently be rendered either two-sided or one-sided, according to whatever other nodes may have had set_two_sided() on it, or according to the initial state otherwise.

compareTo int NodePath::compare_to(NodePath const &other) const; Description: Returns a number less than zero if this NodePath sorts before the other one, greater than zero if it sorts after, or zero if they are equivalent. Two NodePaths are considered equivalent if they consist of exactly the same list of nodes in the same order. Otherwise, they are different; different NodePaths will be ranked in a consistent but undefined ordering; the ordering is useful only for placing the NodePaths in a sorted container like an STL set.

composeColorScale void NodePath::compose_color_scale(LVecBase4f const &scale, int priority = (0)); Description: Sets the color scale component of the transform Description: multiplies the color scale component of the transform, with previous color scale leaving translation and rotation untouched.

copyTo NodePath NodePath::copy_to(NodePath const &other, int sort = (0), Thread *current_thread = ((get_current_thread()))) const; Description: Functions like instance_to(), except a deep copy is made of the referenced node and all of its descendents, which is then parented to the indicated node. A NodePath to the newly created copy is returned.

countNumDescendants int NodePath::count_num_descendants(void) const; Description: Returns the number of nodes at and below this level.

detachNode void NodePath::detach_node(Thread *current_thread = ((get_current_thread()))); Description: Disconnects the referenced node from its parent, but does not immediately delete it. The NodePath retains a pointer to the node, and becomes a singleton NodePath. This should be called to detach a node from the scene graph, with the option of reattaching it later to the same parent or to a different parent. In practice, the only difference between remove_node() and detach_node() is that remove_node() also resets the NodePath to empty, which will cause the node to be deleted immediately if there are no other references. On the other hand, detach_node() leaves the NodePath referencing the node, which will keep at least one reference to the node for as long as the NodePath exists.

doBillboardAxis void NodePath::do_billboard_axis(NodePath const &camera, float offset); Description: Performs a billboard-type rotate to the indicated camera node, one time only, and leaves the object rotated. This is similar in principle to heads_up().

doBillboardPointEye void NodePath::do_billboard_point_eye(NodePath const &camera, float offset); Description: Performs a billboard-type rotate to the indicated camera node, one time only, and leaves the object rotated. This is similar in principle to look_at(), although the point_eye billboard effect cannot be achieved using the ordinary look_at() call.

doBillboardPointWorld void NodePath::do_billboard_point_world(NodePath const &camera, float offset); Description: Performs a billboard-type rotate to the indicated camera node, one time only, and leaves the object rotated. This is similar in principle to look_at().

fail static NodePath NodePath::fail(void); Description: Creates a NodePath with the ET_fail error type set.

find NodePath NodePath::find(string const &path) const; Description: Searches for a node below the referenced node that matches the indicated string. Returns the shortest match found, if any, or an empty NodePath if no match can be found.

findAllMatches NodePathCollection NodePath::find_all_matches(string const &path) const; Description: Returns the complete set of all NodePaths that begin with this NodePath and can be extended by path. The shortest paths will be listed first.

findAllMaterials MaterialCollection NodePath::find_all_materials(void) const; Description: Returns a list of a materials applied to geometry at this node and below. Description: Returns a list of a materials applied to geometry at this node and below that match the indicated name (which may contain wildcard characters).

findAllPathsTo NodePathCollection NodePath::find_all_paths_to(PandaNode *node) const; Description: Returns the set of all NodePaths that extend from this NodePath down to the indicated node. The shortest paths will be listed first.

findAllTexcoords InternalNameCollection NodePath::find_all_texcoords(void) const; Description: Returns a list of all texture coordinate sets used by any geometry at this node level and below. Description: Returns a list of all texture coordinate sets used by any geometry at this node level and below that match the indicated name (which may contain wildcard characters).

findAllTextures TextureCollection NodePath::find_all_textures(void) const; Description: Returns a list of a textures applied to geometry at this node and below. Description: Returns a list of a textures applied to geometry at this node and below that match the indicated name (which may contain wildcard characters). Description: Returns a list of a textures on geometry at this node and below that are assigned to the indicated texture stage.

findAllTextureStages TextureStageCollection NodePath::find_all_texture_stages(void) const; Description: Returns a list of a TextureStages applied to geometry at this node and below. Description: Returns a list of a TextureStages applied to geometry at this node and below that match the indicated name (which may contain wildcard characters).

findAllVertexColumns InternalNameCollection NodePath::find_all_vertex_columns(void) const; Description: Returns a list of all vertex array columns stored on some geometry found at this node level and below. Description: Returns a list of all vertex array columns stored on some geometry found at this node level and below that match the indicated name (which may contain wildcard characters).

findMaterial Material *NodePath::find_material(string const &name) const; Description: Returns the first material found applied to geometry at this node or below that matches the indicated name (which may contain wildcards). Returns the material if it is found, or NULL if it is not.

findNetPythonTag NodePath NodePath::find_net_python_tag(string const &key) const; Description: Returns the lowest ancestor of this node that contains a tag definition with the indicated key, if any, or an empty NodePath if no ancestor of this node contains this tag definition. See set_python_tag().

findNetTag NodePath NodePath::find_net_tag(string const &key) const; Description: Returns the lowest ancestor of this node that contains a tag definition with the indicated key, if any, or an empty NodePath if no ancestor of this node contains this tag definition. See set_tag().

findPathTo NodePath NodePath::find_path_to(PandaNode *node) const; Description: Searches for the indicated node below this node and returns the shortest NodePath that connects them.

findTexture Texture *NodePath::find_texture(string const &name) const; Description: Returns the first texture found applied to geometry at this node or below that matches the indicated name (which may contain wildcards). Returns the texture if it is found, or NULL if it is not. Description: Returns the first texture found applied to geometry at this node or below that is assigned to the indicated texture stage. Returns the texture if it is found, or NULL if it is not.

findTextureStage TextureStage *NodePath::find_texture_stage(string const &name) const; Description: Returns the first TextureStage found applied to geometry at this node or below that matches the indicated name (which may contain wildcards). Returns the TextureStage if it is found, or NULL if it is not.

flattenLight int NodePath::flatten_light(void); Description: Lightly flattens out the hierarchy below this node by applying transforms, colors, and texture matrices from the nodes onto the vertices, but does not remove any nodes. This can result in improved rendering performance because there will be fewer transforms in the resulting scene graph, but the number of nodes will remain the same. In particular, any NodePaths that reference nodes within this hierarchy will not be damaged. However, since this operation will remove transforms from the scene graph, it may be dangerous to apply to nodes where you expect to dynamically modify the transform, or where you expect the geometry to remain in a particular local coordinate system. The return value is always 0, since flatten_light does not remove any nodes.

flattenMedium int NodePath::flatten_medium(void); Description: A more thorough flattening than flatten_light(), this first applies all the transforms, colors, and texture matrices from the nodes onto the vertices, and then removes unneeded grouping nodes--nodes that have exactly one child, for instance, but have no special properties in themselves. This results in improved performance over flatten_light() because the number of nodes in the scene graph is reduced. The return value is the number of nodes removed.

flattenStrong int NodePath::flatten_strong(void); Description: The strongest possible flattening. This first applies all of the transforms to the vertices, as in flatten_medium(), but then it will combine sibling nodes together when possible, in addition to removing unnecessary parent-child nodes. This can result in substantially fewer nodes, but any nicely-grouped hierachical bounding volumes may be lost. It is generally a good idea to apply this kind of flattening only to nodes that will be culled largely as a single unit, like a car. Applying this to an entire scene may result in overall poorer performance because of less-effective culling.

forceRecomputeBounds void NodePath::force_recompute_bounds(void); Description: Forces the recomputing of all the bounding volumes at every node in the subgraph beginning at this node and below. This should not normally need to be called, since the bounding volumes are supposed to be recomputed automatically when necessary. It may be useful when debugging, to verify that the bounding volumes have not become inadvertently stale; it may also be useful to force animated characters to update their bounding volumes (which does not presently happen automatically).

getAncestor NodePath NodePath::get_ancestor(int index, Thread *current_thread = ((get_current_thread()))) const; Description: Returns the nth ancestor of the path, where 0 is the NodePath itself and get_num_nodes() - 1 is get_top(). This requires iterating through the path. Also see get_node(), which returns the same thing as a PandaNode pointer, not a NodePath.

getAntialias unsigned short int NodePath::get_antialias(void) const; Description: Returns the antialias setting that has been specifically set on this node via set_antialias(), or M_none if no setting has been made.

getAttrib RenderAttrib const *NodePath::get_attrib(TypeHandle type) const; Description: Returns the render attribute of the indicated type, if it is defined on the node, or NULL if it is not. This checks only what is set on this particular node level, and has nothing to do with what render attributes may be inherited from parent nodes.

getAudioVolume float NodePath::get_audio_volume(void) const; Description: Returns the complete audio volume that has been applied to this node via a previous call to set_audio_volume(), or 1. (identity) if no volume has been applied to this particular node.

getBinDrawOrder int NodePath::get_bin_draw_order(void) const; Description: Returns the drawing order associated with the bin that this particular node was assigned to via set_bin(), or 0 if no bin was assigned. See set_bin() and has_bin().

getBinName string NodePath::get_bin_name(void) const; Description: Returns the name of the bin that this particular node was assigned to via set_bin(), or the empty string if no bin was assigned. See set_bin() and has_bin().

getBounds PointerTo< BoundingVolume > NodePath::get_bounds(Thread *current_thread = ((get_current_thread()))) const; Description: Returns a newly-allocated bounding volume containing the bottom node and all of its descendants. This is the bounding volume on the bottom arc, converted to the local coordinate space of the node.

getChild NodePath NodePath::get_child(int n, Thread *current_thread = ((get_current_thread()))) const; Description: Returns a NodePath representing the nth child of the referenced node.

getChildren NodePathCollection NodePath::get_children(Thread *current_thread = ((get_current_thread()))) const; Methods that return collections of NodePaths derived from or related to this one. Description: Returns the set of all child nodes of the referenced node.

getClassType static TypeHandle NodePath::get_class_type(void); Undocumented function.

getCollideMask BitMask< unsigned int, 32 > NodePath::get_collide_mask(void) const; Description: Returns the union of all of the into_collide_masks for nodes at this level and below. This is the same thing as node()->get_net_collide_mask(). If you want to return what the into_collide_mask of this node itself is, without regard to its children, use node()->get_into_collide_mask().

getColor LVecBase4f NodePath::get_color(void) const; Description: Returns the color that has been assigned to the node, or black if no color has been assigned.

getColorScale LVecBase4f const &NodePath::get_color_scale(void) const; Description: Returns the complete color scale vector that has been applied to this node via a previous call to set_color_scale() and/or set_alpha_scale(), or all 1's (identity) if no scale has been applied to this particular node.

getCommonAncestor NodePath NodePath::get_common_ancestor(NodePath const &other, Thread *current_thread = ((get_current_thread()))) const; Description: Returns the lowest NodePath that both of these two NodePaths have in common: the first ancestor that both of them share. If the two NodePaths are unrelated, returns NodePath::not_found().

getDepthTest bool NodePath::get_depth_test(void) const; Description: Returns true if depth-test rendering has been specifically set on this node via set_depth_test(), or false if depth-test rendering has been specifically disabled. If nothing has been specifically set, returns true. See also has_depth_test().

getDepthWrite bool NodePath::get_depth_write(void) const; Description: Returns true if depth-write rendering has been specifically set on this node via set_depth_write(), or false if depth-write rendering has been specifically disabled. If nothing has been specifically set, returns true. See also has_depth_write().

getDistance float NodePath::get_distance(NodePath const &other) const; Description: Returns the straight-line distance between this referenced node's coordinate frame's origin, and that of the other node's origin.

getEffect RenderEffect const *NodePath::get_effect(TypeHandle type) const; Description: Returns the render effect of the indicated type, if it is defined on the node, or NULL if it is not.

getEffects RenderEffects const *NodePath::get_effects(void) const; Description: Returns the complete RenderEffects that will be applied to this node.

getErrorType NodePath::ErrorType NodePath::get_error_type(void) const; Description: If is_empty() is true, this returns a code that represents the reason why the NodePath is empty.

getFog Fog *NodePath::get_fog(void) const; Description: Returns the fog that has been set on this particular node, or NULL if no fog has been set. This is not necessarily the fog that will be applied to the geometry at or below this level, as another fog at a higher or lower level may override.

getH float NodePath::get_h(void) const; Undocumented function.

getHiddenAncestor NodePath NodePath::get_hidden_ancestor(BitMask< unsigned int, 32 > camera_mask = ((get_overall_bit())), Thread *current_thread = ((get_current_thread()))) const; Description: Returns the NodePath at or above the referenced node that is hidden to the indicated camera(s), or an empty NodePath if no ancestor of the referenced node is hidden (and the node should be visible).

getHpr LVecBase3f NodePath::get_hpr(void) const; Description: Retrieves the rotation component of the transform. Description: Returns the relative orientation of the bottom node as seen from the other node.

getKey int NodePath::get_key(void) const; Description: Returns an integer that is guaranteed to be the same for all NodePaths that represent the same node instance, and different for all NodePaths that represent a different node instance. The same key will be returned for a particular instance as long as at least one NodePath exists that represents that instance; if all NodePaths for a particular instance destruct and a new one is later created, it may have a different index. However, a given key will never be reused for a different instance (unless the app has been running long enough that we overflow the integer key value).

getMat LMatrix4f const &NodePath::get_mat(void) const; Description: Returns the transform matrix that has been applied to the referenced node, or the identity matrix if no matrix has been applied. Description: Returns the matrix that describes the coordinate space of the bottom node, relative to the other path's bottom node's coordinate space.

getMaterial PointerTo< Material > NodePath::get_material(void) const; Description: Returns the material that has been set on this particular node, or NULL if no material has been set. This is not necessarily the material that will be applied to the geometry at or below this level, as another material at a higher or lower level may override. See also find_material().

getMaxSearchDepth static int NodePath::get_max_search_depth(void); Description: Returns the current setting of the search depth limit. See set_max_search_depth.

getName string NodePath::get_name(void) const; Description: Returns the name of the referenced node.

getNetAudioVolume float NodePath::get_net_audio_volume(void) const; Description: Returns the complete audio volume for this node taking highers nodes in the graph into account.

getNetPrevTransform ConstPointerTo< TransformState > NodePath::get_net_prev_transform(Thread *current_thread = ((get_current_thread()))) const; Description: Returns the net "previous" transform on this node from the root. See set_prev_transform().

getNetPythonTag PyObject *NodePath::get_net_python_tag(string const &key) const; Description: Returns the Python object that has been defined on this node, or the nearest ancestor node, for the indicated key. If no value has been defined for the indicated key on any ancestor node, returns None. See also get_python_tag().

getNetState ConstPointerTo< RenderState > NodePath::get_net_state(Thread *current_thread = ((get_current_thread()))) const; Description: Returns the net state on this node from the root.

getNetTag string NodePath::get_net_tag(string const &key) const; Description: Returns the tag value that has been defined on this node, or the nearest ancestor node, for the indicated key. If no value has been defined for the indicated key on any ancestor node, returns the empty string. See also get_tag().

getNetTransform ConstPointerTo< TransformState > NodePath::get_net_transform(Thread *current_thread = ((get_current_thread()))) const; Description: Returns the net transform on this node from the root.

getNode PandaNode *NodePath::get_node(int index, Thread *current_thread = ((get_current_thread()))) const; Description: Returns the nth node of the path, where 0 is the referenced (bottom) node and get_num_nodes() - 1 is the top node. This requires iterating through the path. Also see node(), which is a convenience function to return the same thing as get_node(0) (since the bottom node is the most important node in the NodePath, and is the one most frequently referenced). Note that this function returns the same thing as get_ancestor(index).node().

getNumChildren int NodePath::get_num_children(Thread *current_thread = ((get_current_thread()))) const; Description: Returns the number of children of the referenced node.

getNumNodes int NodePath::get_num_nodes(Thread *current_thread = ((get_current_thread()))) const; Description: Returns the number of nodes in the path.

getP float NodePath::get_p(void) const; Undocumented function.

getParent NodePath NodePath::get_parent(Thread *current_thread = ((get_current_thread()))) const; Description: Returns the NodePath to the parent of the referenced node: that is, this NodePath, shortened by one node. The parent of a singleton NodePath is defined to be the empty NodePath.

getPos LPoint3f NodePath::get_pos(void) const; Description: Retrieves the translation component of the transform. Description: Returns the relative position of the referenced node as seen from the other node.

getPosDelta LVector3f NodePath::get_pos_delta(void) const; Description: Returns the delta vector from this node's position in the previous frame (according to set_prev_transform(), typically set via the use of set_fluid_pos()) and its position in the current frame. This is the vector used to determine collisions. Generally, if the node was last repositioned via set_pos(), the delta will be zero; if it was adjusted via set_fluid_pos(), the delta will represent the change from the previous frame's position. Description: Returns the delta vector from this node's position in the previous frame (according to set_prev_transform(), typically set via the use of set_fluid_pos()) and its position in the current frame, as seen in the indicated node's coordinate space. This is the vector used to determine collisions. Generally, if the node was last repositioned via set_pos(), the delta will be zero; if it was adjusted via set_fluid_pos(), the delta will represent the change from the previous frame's position.

getPrevTransform TransformState const *NodePath::get_prev_transform(Thread *current_thread = ((get_current_thread()))) const; Description: Returns the transform that has been set as this node's "previous" position. See set_prev_transform(). Description: Returns the relative "previous" transform to this node from the other node; i.e. the position of this node in the previous frame, as seen by the other node in the previous frame.

getPythonTag PyObject *NodePath::get_python_tag(string const &key) const; Description: Retrieves the Python object that was previously set on this node for the particular key, if any. If no object has been previously set, returns None. See also get_net_python_tag().

getQuat LQuaternionf NodePath::get_quat(void) const; Description: Retrieves the rotation component of the transform. Description: Returns the relative orientation of the bottom node as seen from the other node.

getR float NodePath::get_r(void) const; Undocumented function.

getRelativePoint LPoint3f NodePath::get_relative_point(NodePath const &other, LVecBase3f const &point) const; Description: Given that the indicated point is in the coordinate system of the other node, returns the same point in this node's coordinate system.

getRelativeVector LVector3f NodePath::get_relative_vector(NodePath const &other, LVecBase3f const &vec) const; Description: Given that the indicated vector is in the coordinate system of the other node, returns the same vector in this node's coordinate system.

getRenderMode RenderModeAttrib::Mode NodePath::get_render_mode(void) const; Description: Returns the render mode that has been specifically set on this node via set_render_mode(), or M_unchanged if nothing has been set.

getRenderModePerspective bool NodePath::get_render_mode_perspective(void) const; Description: Returns the flag that has been set on this node via set_render_mode_perspective(), or false if no flag has been set.

getRenderModeThickness float NodePath::get_render_mode_thickness(void) const; Description: Returns the render mode thickness that has been specifically set on this node via set_render_mode(), or 1.0 if nothing has been set.

getSa float NodePath::get_sa(void) const; Description: Gets the alpha scale component of the transform

getSb float NodePath::get_sb(void) const; Description: Gets the blue scale component of the transform

getScale LVecBase3f NodePath::get_scale(void) const; Description: Retrieves the scale component of the transform. Description: Returns the relative scale of the bottom node as seen from the other node.

getSg float NodePath::get_sg(void) const; Description: Gets the green scale component of the transform

getShader Shader const *NodePath::get_shader(void) const; Description:

getShaderInput ShaderInput const *NodePath::get_shader_input(InternalName *id) const; Description:

getShear LVecBase3f NodePath::get_shear(void) const; Description: Retrieves the shear component of the transform. Description: Returns the relative shear of the bottom node as seen from the other node.

getShxy float NodePath::get_shxy(void) const; Description: Returns the relative shear of the referenced node as seen from the other node.

getShxz float NodePath::get_shxz(void) const; Undocumented function.

getShyz float NodePath::get_shyz(void) const; Undocumented function.

getSort int NodePath::get_sort(Thread *current_thread = ((get_current_thread()))) const; Description: Returns the sort value of the referenced node within its parent; that is, the sort number passed on the last reparenting operation for this node. This will control the position of the node within its parent's list of children.

getSr float NodePath::get_sr(void) const; Description: Gets the red scale component of the transform

getStashedAncestor NodePath NodePath::get_stashed_ancestor(Thread *current_thread = ((get_current_thread()))) const; Description: Returns the NodePath at or above the referenced node that is stashed, or an empty NodePath if no ancestor of the referenced node is stashed (and the node should be visible).

getStashedChildren NodePathCollection NodePath::get_stashed_children(Thread *current_thread = ((get_current_thread()))) const; Description: Returns the set of all child nodes of the referenced node that have been stashed. These children are not normally visible on the node, and do not appear in the list returned by get_children().

getState RenderState const *NodePath::get_state(Thread *current_thread = ((get_current_thread()))) const; Aggregate transform and state information. Description: Returns the complete state object set on this node. Description: Returns the state changes that must be made to transition to the render state of this node from the render state of the other node.

getSx float NodePath::get_sx(void) const; Description: Returns the relative scale of the referenced node as seen from the other node.

getSy float NodePath::get_sy(void) const; Undocumented function.

getSz float NodePath::get_sz(void) const; Undocumented function.

getTag string NodePath::get_tag(string const &key) const; Description: 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. See also get_net_tag().

getTexGen RenderAttrib::TexGenMode NodePath::get_tex_gen(TextureStage *stage) const; Description: Returns the texture coordinate generation mode for the given stage, or M_off if there is no explicit mode set for the given stage.

getTexGenLight NodePath NodePath::get_tex_gen_light(TextureStage *stage) const; Description: Returns the particular Light set for the indicated texgen mode's texture stage, or empty NodePath if no light is set. This is only meaningful if the texgen mode (returned by get_tex_gen()) is M_light_vector.

getTexHpr LVecBase3f NodePath::get_tex_hpr(TextureStage *stage) const; Description: Returns the 3-D HPR set for the UVW's for the given stage on the current node. This call is appropriate for 3-d texture coordinates.

getTexOffset LVecBase2f NodePath::get_tex_offset(TextureStage *stage) const; Description: Returns the offset set for the UV's for the given stage on the current node. This call is appropriate for ordinary 2-d texture coordinates.

getTexPos LVecBase3f NodePath::get_tex_pos(TextureStage *stage) const; Description: Returns the offset set for the UVW's for the given stage on the current node. This call is appropriate for 3-d texture coordinates.

getTexProjectorFrom NodePath NodePath::get_tex_projector_from(TextureStage *stage) const; Description: Returns the "from" node associated with the TexProjectorEffect on the indicated stage. The relative transform between the "from" and the "to" nodes is automatically applied to the texture transform each frame.

getTexProjectorTo NodePath NodePath::get_tex_projector_to(TextureStage *stage) const; Description: Returns the "to" node associated with the TexProjectorEffect on the indicated stage. The relative transform between the "from" and the "to" nodes is automatically applied to the texture transform each frame.

getTexRotate float NodePath::get_tex_rotate(TextureStage *stage) const; Description: Returns the rotation set for the UV's for the given stage on the current node. This call is appropriate for ordinary 2-d texture coordinates.

getTexScale LVecBase2f NodePath::get_tex_scale(TextureStage *stage) const; Description: Returns the scale set for the UV's for the given stage on the current node. This call is appropriate for ordinary 2-d texture coordinates.

getTexScale3d LVecBase3f NodePath::get_tex_scale_3d(TextureStage *stage) const; Description: Returns the scale set for the UVW's for the given stage on the current node. This call is appropriate for 3-d texture coordinates.

getTexTransform ConstPointerTo< TransformState > NodePath::get_tex_transform(TextureStage *stage) const; Description: 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. Description: Returns the texture matrix on the current node for the given stage, relative to the other node.

getTexture Texture *NodePath::get_texture(void) const; Description: Returns the base-level texture that has been set on this particular node, or NULL if no texture has been set. This is not necessarily the texture that will be applied to the geometry at or below this level, as another texture at a higher or lower level may override. See also find_texture(). Description: Returns the texture that has been set on the indicated stage for this particular node, or NULL if no texture has been set for this stage.

getTop NodePath NodePath::get_top(Thread *current_thread = ((get_current_thread()))) const; Description: Returns a singleton NodePath that represents the top of the path, or empty NodePath if this path is empty.

getTopNode PandaNode *NodePath::get_top_node(Thread *current_thread = ((get_current_thread()))) const; Description: Returns the top node of the path, or NULL if the path is empty. This requires iterating through the path.

getTransform TransformState const *NodePath::get_transform(Thread *current_thread = ((get_current_thread()))) const; Description: Returns the complete transform object set on this node. Description: Returns the relative transform to this node from the other node; i.e. the transformation of this node as seen from the other node.

getTransparency TransparencyAttrib::Mode NodePath::get_transparency(void) const; Description: Returns the transparent rendering that has been specifically set on this node via set_transparency(), or M_none if nontransparent rendering has been specifically set, or if nothing has been specifically set. See also has_transparency(). This does not necessarily imply that the geometry will or will not be rendered transparent, as there may be other nodes that override.

getTwoSided bool NodePath::get_two_sided(void) const; Description: Returns true if two-sided rendering has been specifically set on this node via set_two_sided(), or false if one-sided rendering has been specifically set, or if nothing has been specifically set. See also has_two_sided(). This does not necessarily imply that the geometry will or will not be rendered two-sided, as there may be other nodes that override.

getX float NodePath::get_x(void) const; Undocumented function.

getY float NodePath::get_y(void) const; Undocumented function.

getZ float NodePath::get_z(void) const; Undocumented function.

hasAntialias bool NodePath::has_antialias(void) const; Description: Returns true if an antialias setting has been explicitly mode on this particular node via set_antialias(). If this returns true, then get_antialias() may be called to determine what the setting was.

hasAttrib bool NodePath::has_attrib(TypeHandle type) const; Description: Returns true if there is a render attribute of the indicated type defined on this node, or false if there is not.

hasAudioVolume bool NodePath::has_audio_volume(void) const; Description: Returns true if an audio volume has been applied to the referenced node, false otherwise. It is still possible that volume at this node might have been scaled by an ancestor node.

hasBillboard bool NodePath::has_billboard(void) const; Description: Returns true if there is any billboard effect on the node.

hasBin bool NodePath::has_bin(void) const; Description: Returns true if the node has been assigned to the a particular rendering bin via set_bin(), false otherwise.

hasClipPlane bool NodePath::has_clip_plane(NodePath const &clip_plane) const; Description: Returns true if the indicated clipping plane has been specifically applied to this particular node. This means that someone called set_clip_plane() on this node with the indicated clip_plane.

hasClipPlaneOff bool NodePath::has_clip_plane_off(void) const; Description: Returns true if all clipping planes have been specifically disabled on this particular node. This means that someone called set_clip_plane_off() on this node with no parameters. Description: Returns true if the indicated clipping plane has been specifically disabled on this particular node. This means that someone called set_clip_plane_off() on this node with the indicated clip_plane.

hasColor bool NodePath::has_color(void) const; Description: Returns true if a color has been applied to the given node, false otherwise.

hasColorScale bool NodePath::has_color_scale(void) const; Description: Returns true if a color scale has been applied to the referenced node, false otherwise. It is still possible that color at this node might have been scaled by an ancestor node.

hasCompass bool NodePath::has_compass(void) const; Description: Returns true if there is any compass effect on the node.

hasDepthTest bool NodePath::has_depth_test(void) const; Description: Returns true if a depth-test adjustment has been explicitly set on this particular node via set_depth_test(). If this returns true, then get_depth_test() may be called to determine which has been set.

hasDepthWrite bool NodePath::has_depth_write(void) const; Description: Returns true if a depth-write adjustment has been explicitly set on this particular node via set_depth_write(). If this returns true, then get_depth_write() may be called to determine which has been set.

hasEffect bool NodePath::has_effect(TypeHandle type) const; Description: Returns true if there is a render effect of the indicated type defined on this node, or false if there is not.

hasFog bool NodePath::has_fog(void) const; Description: Returns true if a fog has been applied to this particular node via set_fog(), false otherwise. This is not the same thing as asking whether the geometry at this node will be rendered with fog, as there may be a fog in effect from a higher or lower level.

hasFogOff bool NodePath::has_fog_off(void) const; Description: Returns true if a fog has been specifically disabled on this particular node via set_fog_off(), false otherwise. This is not the same thing as asking whether the geometry at this node will be rendered unfogged, as there may be a fog in effect from a higher or lower level.

hasLight bool NodePath::has_light(NodePath const &light) const; Description: Returns true if the indicated Light or PolylightNode has been specifically enabled on this particular node. This means that someone called set_light() on this node with the indicated light.

hasLightOff bool NodePath::has_light_off(void) const; Description: Returns true if all Lights have been specifically disabled on this particular node. This means that someone called set_light_off() on this node with no parameters. Description: Returns true if the indicated Light has been specifically disabled on this particular node. This means that someone called set_light_off() on this node with the indicated light. This interface does not support PolylightNodes, which cannot be turned off at a lower level.

hasMat bool NodePath::has_mat(void) const; Description: Returns true if a non-identity transform matrix has been applied to the referenced node, false otherwise.

hasMaterial bool NodePath::has_material(void) const; Description: Returns true if a material has been applied to this particular node via set_material(), false otherwise.

hasNetPythonTag bool NodePath::has_net_python_tag(string const &key) const; Description: Returns true if the indicated Python object has been defined on this node or on any ancestor node, or false otherwise. See also has_python_tag().

hasNetTag bool NodePath::has_net_tag(string const &key) const; Description: Returns true if the indicated tag value has been defined on this node or on any ancestor node, or false otherwise. See also has_tag().

hasParent bool NodePath::has_parent(Thread *current_thread = ((get_current_thread()))) const; Description: Returns true if the referenced node has a parent; i.e. the NodePath chain contains at least two nodes.

hasPythonTag bool NodePath::has_python_tag(string const &key) const; Description: Returns true if a Python object 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. See also has_net_python_tag().

hasRenderMode bool NodePath::has_render_mode(void) const; Description: Returns true if a render mode has been explicitly set on this particular node via set_render_mode() (or set_render_mode_wireframe() or set_render_mode_filled()), false otherwise.

hasScissor bool NodePath::has_scissor(void) const; Description: Returns true if a scissor region was defined at this node by a previous call to set_scissor(). This does not check for scissor regions inherited from a parent class. It also does not check for the presence of a low-level ScissorAttrib, which is different from the ScissorEffect added by set_scissor.

hasTag bool NodePath::has_tag(string const &key) const; Description: 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. See also has_net_tag().

hasTexcoord bool NodePath::has_texcoord(string const &texcoord_name) const; Description: Returns true if there are at least some vertices at this node and below that use the named texture coordinate set, false otherwise. Pass the empty string for the default texture coordinate set.

hasTexGen bool NodePath::has_tex_gen(TextureStage *stage) const; Description: Returns true if there is a mode for automatic texture coordinate generation on the current node for the given stage.

hasTexProjector bool NodePath::has_tex_projector(TextureStage *stage) const; Description: Returns true if this node has a TexProjectorEffect for the indicated stage, false otherwise.

hasTexTransform bool NodePath::has_tex_transform(TextureStage *stage) const; Description: Returns true if there is an explicit texture matrix on the current node for the given stage.

hasTexture bool NodePath::has_texture(void) const; Description: Returns true if a texture has been applied to this particular node via set_texture(), false otherwise. This is not the same thing as asking whether the geometry at this node will be rendered with texturing, as there may be a texture in effect from a higher or lower level. Description: Returns true if texturing has been specifically enabled on this particular node for the indicated stage. This means that someone called set_texture() on this node with the indicated stage name, or the stage_name is the default stage_name, and someone called set_texture() on this node.

hasTextureOff bool NodePath::has_texture_off(void) const; Description: Returns true if texturing has been specifically disabled on this particular node via set_texture_off(), false otherwise. This is not the same thing as asking whether the geometry at this node will be rendered untextured, as there may be a texture in effect from a higher or lower level. Description: Returns true if texturing has been specifically disabled on this particular node for the indicated stage. This means that someone called set_texture_off() on this node with the indicated stage name, or that someone called set_texture_off() on this node to remove all stages.

hasTransparency bool NodePath::has_transparency(void) const; Description: Returns true if a transparent-rendering adjustment has been explicitly set on this particular node via set_transparency(). If this returns true, then get_transparency() may be called to determine whether transparency has been explicitly enabled or explicitly disabled for this node.

hasTwoSided bool NodePath::has_two_sided(void) const; Description: Returns true if a two-sided adjustment has been explicitly set on this particular node via set_two_sided(). If this returns true, then get_two_sided() may be called to determine which has been set.

hasVertexColumn bool NodePath::has_vertex_column(InternalName const *name) const; Description: Returns true if there are at least some vertices at this node and below that contain a reference to the indicated vertex data column name, false otherwise. This is particularly useful for testing whether a particular model has a given texture coordinate set (but see has_texcoord()).

headsUp void NodePath::heads_up(float x, float y, float z); Description: Behaves like look_at(), but with a strong preference to keeping the up vector oriented in the indicated "up" direction.

hide void NodePath::hide(void); Description: Makes the referenced node (and the entire subgraph below this node) invisible to all cameras. It remains part of the scene graph, its bounding volume still contributes to its parent's bounding volume, and it will still be involved in collision tests. Description: Makes the referenced node invisible just to the cameras whose camera_mask shares the indicated bits. This will also hide any nodes below this node in the scene graph, including those nodes for which show() has been called, but it will not hide descendent nodes for which show_through() has been called.

hideBounds void NodePath::hide_bounds(void); Description: Stops the rendering of the bounding volume begun with show_bounds().

instanceTo NodePath NodePath::instance_to(NodePath const &other, int sort = (0), Thread *current_thread = ((get_current_thread()))) const; Description: Adds the referenced node of the NodePath as a child of the referenced node of the indicated other NodePath. Any other parent-child relations of the node are unchanged; in particular, the node is not removed from its existing parent, if any. If the node already had an existing parent, this method will create a new instance of the node within the scene graph. This does not change the NodePath itself, but does return a new NodePath that reflects the new instance node. If the destination NodePath is empty, this creates a new instance which is not yet parented to any node. A new instance of this sort cannot easily be differentiated from other similar instances, but it is nevertheless a different instance and it will return a different get_id() value. If the referenced node is already a child of the indicated NodePath, returns that already-existing instance, unstashing it first if necessary.

instanceUnderNode NodePath NodePath::instance_under_node(NodePath const &other, string const &name, int sort = (0), Thread *current_thread = ((get_current_thread()))) const; Description: Behaves like instance_to(), but implicitly creates a new node to instance the geometry under, and returns a NodePath to that new node. This allows the programmer to set a unique state and/or transform on this instance.

isAncestorOf bool NodePath::is_ancestor_of(NodePath const &other, Thread *current_thread = ((get_current_thread()))) const; Description: Returns true if the node represented by this NodePath is a parent or other ancestor of the other NodePath, or false if it is not.

isEmpty bool NodePath::is_empty(void) const; Methods to query a NodePath's contents. Description: Returns true if the NodePath contains no nodes.

isHidden bool NodePath::is_hidden(BitMask< unsigned int, 32 > camera_mask = ((get_overall_bit()))) const; Description: Returns true if the referenced node is hidden from the indicated camera(s) either directly, or because some ancestor is hidden.

isSameGraph bool NodePath::is_same_graph(NodePath const &other, Thread *current_thread = ((get_current_thread()))) const; Description: Returns true if the node represented by this NodePath is parented within the same graph as that of the other NodePath. This is essentially the same thing as asking whether get_top() of both NodePaths is the same (e.g., both "render").

isSingleton bool NodePath::is_singleton(Thread *current_thread = ((get_current_thread()))) const; Description: Returns true if the NodePath contains exactly one node.

isStashed bool NodePath::is_stashed(void) const; Description: Returns true if the referenced node is stashed either directly, or because some ancestor is stashed.

listTags void NodePath::list_tags(void) const; HAVE_PYTHON Description: Lists the tags to the nout stream, one per line. See PandaNode::list_tags() for a variant that allows you to specify the output stream.

lookAt void NodePath::look_at(float x, float y, float z); Description: Sets the transform on this NodePath so that it rotates to face the indicated point in space. This will overwrite any previously existing scale on the node, although it will preserve any translation. Description: Sets the hpr on this NodePath so that it rotates to face the indicated point in space, which is relative to the other NodePath. Description: Sets the hpr on this NodePath so that it rotates to face the indicated point in space. Description: Sets the transform on this NodePath so that it rotates to face the indicated point in space, which is relative to the other NodePath.

ls void NodePath::ls(void) const; Description: Lists the hierarchy at and below the referenced node.

node PandaNode *NodePath::node(void) const; Description: Returns the referenced node of the path.

notFound static NodePath NodePath::not_found(void); Description: Creates a NodePath with the ET_not_found error type set.

operator != bool NodePath::operator !=(NodePath const &other) const; Comparison methods Description: Returns true if the two paths are not equivalent.

operator < bool NodePath::operator <(NodePath const &other) const; Description: Returns true if this NodePath sorts before the other one, false otherwise. The sorting order of two nonequivalent NodePaths is consistent but undefined, and is useful only for storing NodePaths in a sorted container like an STL set.

operator = void NodePath::operator =(NodePath const &copy); Description:

operator == bool NodePath::operator ==(NodePath const &other) const; Comparison methods Description: Returns true if the two paths are equivalent; that is, if they contain the same list of nodes in the same order.

output void NodePath::output(ostream &out) const; Handy ways to look at what's there, and other miscellaneous operations. Description: Writes a sensible description of the NodePath to the indicated output stream.

premungeScene void NodePath::premunge_scene(GraphicsStateGuardianBase *gsg = ((void *)(0))); Description: Walks through the scene graph beginning at the bottom node, and internally adjusts any GeomVertexFormats for optimal rendering on the indicated GSG. If this step is not done prior to rendering, the formats will be optimized at render time instead, for a small cost. It is not normally necessary to do this on a model loaded directly from disk, since the loader will do this by default.

prepareScene void NodePath::prepare_scene(GraphicsStateGuardianBase *gsg); Description: Walks through the scene graph beginning at the bottom node, and does whatever initialization is required to render the scene properly with the indicated GSG. It is not strictly necessary to call this, since the GSG will initialize itself when the scene is rendered, but this may take some of the overhead away from that process. In particular, this will ensure that textures within the scene are loaded in texture memory, and display lists are built up from static geometry.

projectTexture void NodePath::project_texture(TextureStage *stage, Texture *tex, NodePath const &projector); Description: A convenience function to enable projective texturing at this node level and below, using the indicated NodePath (which should contain a LensNode) as the projector.

removed static NodePath NodePath::removed(void); Description: Creates a NodePath with the ET_removed error type set.

removeNode void NodePath::remove_node(Thread *current_thread = ((get_current_thread()))); Description: Disconnects the referenced node from the scene graph. This will also delete the node if there are no other pointers to it. Normally, this should be called only when you are really done with the node. If you want to remove a node from the scene graph but keep it around for later, you should probably use detach_node() instead. In practice, the only difference between remove_node() and detach_node() is that remove_node() also resets the NodePath to empty, which will cause the node to be deleted immediately if there are no other references. On the other hand, detach_node() leaves the NodePath referencing the node, which will keep at least one reference to the node for as long as the NodePath exists.

reparentTo void NodePath::reparent_to(NodePath const &other, int sort = (0), Thread *current_thread = ((get_current_thread()))); Methods that actually move nodes around in the scene graph. The optional "sort" parameter can be used to force a particular ordering between sibling nodes, useful when dealing with LOD's and similar switch nodes. If the sort value is the same, nodes will be arranged in the order they were added. Description: Removes the referenced node of the NodePath from its current parent and attaches it to the referenced node of the indicated NodePath. If the destination NodePath is empty, this is the same thing as detach_node(). If the referenced node is already a child of the indicated NodePath (via some other instance), this operation fails and leaves the NodePath detached.

reverseLs void NodePath::reverse_ls(void) const; Description: Lists the hierarchy at and above the referenced node.

setAllColorScale void NodePath::set_all_color_scale(float scale, int priority = (0)); Description: Scales all the color components of the object by the same amount, darkening the object, without (much) affecting alpha. Note that any priority specified will also apply to the alpha scale.

setAlphaScale void NodePath::set_alpha_scale(float scale, int priority = (0)); Description: Sets the alpha scale component of the transform without (much) affecting the color scale. Note that any priority specified will also apply to the color scale.

setAntialias void NodePath::set_antialias(unsigned short int mode, int priority = (0)); Description: Specifies the antialiasing type that should be applied at this node and below. See AntialiasAttrib.

setAttrib void NodePath::set_attrib(RenderAttrib const *attrib, int priority = (0)); Description: Adds the indicated render attribute to the scene graph on this node. This attribute will now apply to this node and everything below. If there was already an attribute of the same type, it is replaced.

setAudioVolume void NodePath::set_audio_volume(float volume, int priority = (0)); Description: Sets the audio volume component of the transform

setAudioVolumeOff void NodePath::set_audio_volume_off(int priority = (0)); Description: Disables any audio volume attribute inherited from above. This is not the same thing as clear_audio_volume(), which undoes any previous set_audio_volume() operation on this node; rather, this actively disables any set_audio_volume() that might be inherited from a parent node. It is legal to specify a new volume on the same node with a subsequent call to set_audio_volume(); this new scale will apply to lower nodes.

setBillboardAxis void NodePath::set_billboard_axis(float offset = (0)); Description: Puts a billboard transition on the node such that it will rotate in two dimensions around the up axis. Description: Puts a billboard transition on the node such that it will rotate in two dimensions around the up axis, towards a specified "camera" instead of to the viewing camera.

setBillboardPointEye void NodePath::set_billboard_point_eye(float offset = (0)); Description: Puts a billboard transition on the node such that it will rotate in three dimensions about the origin, keeping its up vector oriented to the top of the camera. Description: Puts a billboard transition on the node such that it will rotate in three dimensions about the origin, keeping its up vector oriented to the top of the camera, towards a specified "camera" instead of to the viewing camera.

setBillboardPointWorld void NodePath::set_billboard_point_world(float offset = (0)); Description: Puts a billboard transition on the node such that it will rotate in three dimensions about the origin, keeping its up vector oriented to the sky. Description: Puts a billboard transition on the node such that it will rotate in three dimensions about the origin, keeping its up vector oriented to the sky, towards a specified "camera" instead of to the viewing camera.

setBin void NodePath::set_bin(string const &bin_name, int draw_order, int priority = (0)); Description: Assigns the geometry at this level and below to the named rendering bin. It is the user's responsibility to ensure that such a bin already exists, either via the cull-bin Configrc variable, or by explicitly creating a GeomBin of the appropriate type at runtime. There are two default bins created when Panda is started: "default" and "fixed". Normally, all geometry is assigned to "default" unless specified otherwise. This bin renders opaque geometry in state-sorted order, followed by transparent geometry sorted back-to-front. If any geometry is assigned to "fixed", this will be rendered following all the geometry in "default", in the order specified by draw_order for each piece of geometry so assigned. The draw_order parameter is meaningful only for GeomBinFixed type bins, e.g. "fixed". Other kinds of bins ignore it.

setClipPlane void NodePath::set_clip_plane(NodePath const &clip_plane, int priority = (0)); Description: Adds the indicated clipping plane to the list of planes that apply to geometry at this node and below. The clipping plane itself, a PlaneNode, should be parented into the scene graph elsewhere, to represent the plane's position in space; but until set_clip_plane() is called it will clip no geometry.

setClipPlaneOff void NodePath::set_clip_plane_off(int priority = (0)); Description: Sets the geometry at this level and below to render using no clip_planes at all. This is different from not specifying a clip_plane; rather, this specifically contradicts set_clip_plane() at a higher node level (or, with a priority, overrides a set_clip_plane() at a lower level). If no clip_planes are in effect on a particular piece of geometry, that geometry is rendered without being clipped (other than by the viewing frustum). Description: Sets the geometry at this level and below to render without being clipped by the indicated PlaneNode. This is different from not specifying the PlaneNode; rather, this specifically contradicts set_clip_plane() at a higher node level (or, with a priority, overrides a set_clip_plane() at a lower level).

setCollideMask void NodePath::set_collide_mask(BitMask< unsigned int, 32 > new_mask, BitMask< unsigned int, 32 > bits_to_change = ((all_on())), TypeHandle node_type = ((none()))); Description: Recursively applies the indicated CollideMask to the into_collide_masks for all nodes at this level and below. If node_type is not TypeHandle::none(), then only nodes matching (or inheriting from) the indicated PandaNode subclass are modified. The default is to change all bits, but if bits_to_change is not all bits on, then only the bits that are set in bits_to_change are modified, allowing this call to change only a subset of the bits in the subgraph.

setColor void NodePath::set_color(float r, float g, float b, float a = (1), int priority = (0)); Methods that affect appearance of geometry: color, texture, etc. These affect the state at the bottom level only. Description: Applies a scene-graph color to the referenced node. This color will apply to all geometry at this level and below (that does not specify a new color or a set_color_off()).

setColorOff void NodePath::set_color_off(int priority = (0)); Description: Sets the geometry at this level and below to render using the geometry color. This is normally the default, but it may be useful to use this to contradict set_color() at a higher node level (or, with a priority, to override a set_color() at a lower level).

setColorScale void NodePath::set_color_scale(LVecBase4f const &scale, int priority = (0)); Description: Sets the color scale component of the transform Description: Sets the color scale component of the transform, leaving translation and rotation untouched.

setColorScaleOff void NodePath::set_color_scale_off(int priority = (0)); Description: Disables any color scale attribute inherited from above. This is not the same thing as clear_color_scale(), which undoes any previous set_color_scale() operation on this node; rather, this actively disables any set_color_scale() that might be inherited from a parent node. This also disables set_alpha_scale() at the same time. It is legal to specify a new color scale on the same node with a subsequent call to set_color_scale() or set_alpha_scale(); this new scale will apply to lower geometry.

setCompass void NodePath::set_compass(NodePath const &reference = ((()))); Description: Puts a compass effect on the node, so that it will retain a fixed rotation relative to the reference node (or render if the reference node is empty) regardless of the transforms above it.

setDepthTest void NodePath::set_depth_test(bool depth_test, int priority = (0)); Description: Specifically sets or disables the testing of the depth buffer on this particular node. This is normally on in the 3-d scene graph and off in the 2-d scene graph; it should be on for rendering most 3-d objects properly.

setDepthWrite void NodePath::set_depth_write(bool depth_write, int priority = (0)); Description: Specifically sets or disables the writing to the depth buffer on this particular node. This is normally on in the 3-d scene graph and off in the 2-d scene graph; it should be on for rendering most 3-d objects properly.

setEffect void NodePath::set_effect(RenderEffect const *effect); Description: Adds the indicated render effect to the scene graph on this node. If there was already an effect of the same type, it is replaced.

setEffects void NodePath::set_effects(RenderEffects const *effects); Description: Sets the complete RenderEffects that will be applied this node. This completely replaces whatever has been set on this node via repeated calls to set_attrib().

setFluidPos void NodePath::set_fluid_pos(float x, float y, float z); Description: Sets the translation component, without changing the "previous" position, so that the collision system will see the node as moving fluidly from its previous position to its new position. Description: Sets the translation component, without changing the "previous" position, so that the collision system will see the node as moving fluidly from its previous position to its new position. See Also: NodePath::set_pos Description: Sets the translation component of the transform, relative to the other node.

setFluidX void NodePath::set_fluid_x(float x); Undocumented function.

setFluidY void NodePath::set_fluid_y(float y); Undocumented function.

setFluidZ void NodePath::set_fluid_z(float z); Undocumented function.

setFog void NodePath::set_fog(Fog *fog, int priority = (0)); Description: Sets the geometry at this level and below to render using the indicated fog.

setFogOff void NodePath::set_fog_off(int priority = (0)); Description: Sets the geometry at this level and below to render using no fog. This is normally the default, but it may be useful to use this to contradict set_fog() at a higher node level (or, with a priority, to override a set_fog() at a lower level).

setH void NodePath::set_h(float h); Undocumented function.

setHpr void NodePath::set_hpr(float h, float p, float r); Description: Sets the rotation component of the transform, leaving translation and scale untouched. Description: Sets the rotation component of the transform, relative to the other node.

setHprScale void NodePath::set_hpr_scale(float h, float p, float r, float sx, float sy, float sz); Description: Sets the rotation and scale components of the transform, leaving translation untouched. Description: Sets the rotation and scale components of the transform, leaving translation untouched. This, or set_pos_hpr_scale, is the preferred way to update a transform when both hpr and scale are to be changed.

setLight void NodePath::set_light(NodePath const &light, int priority = (0)); Description: Adds the indicated Light or PolylightNode to the list of lights that illuminate geometry at this node and below. The light itself should be parented into the scene graph elsewhere, to represent the light's position in space; but until set_light() is called it will illuminate no geometry.

setLightOff void NodePath::set_light_off(int priority = (0)); Description: Sets the geometry at this level and below to render using no lights at all. This is different from not specifying a light; rather, this specifically contradicts set_light() at a higher node level (or, with a priority, overrides a set_light() at a lower level). If no lights are in effect on a particular piece of geometry, that geometry is rendered with lighting disabled. Description: Sets the geometry at this level and below to render without using the indicated Light. This is different from not specifying the Light; rather, this specifically contradicts set_light() at a higher node level (or, with a priority, overrides a set_light() at a lower level). This interface does not support PolylightNodes, which cannot be turned off at a lower level.

setMat void NodePath::set_mat(LMatrix4f const &mat); Description: Directly sets an arbitrary 4x4 transform matrix. Description: Converts the indicated matrix from the other's coordinate space to the local coordinate space, and applies it to the node.

setMaterial void NodePath::set_material(Material *tex, int priority = (0)); Description: Sets the geometry at this level and below to render using the indicated material. Previously, this operation made a copy of the material structure, but nowadays it assigns the pointer directly.

setMaterialOff void NodePath::set_material_off(int priority = (0)); Description: Sets the geometry at this level and below to render using no material. This is normally the default, but it may be useful to use this to contradict set_material() at a higher node level (or, with a priority, to override a set_material() at a lower level).

setMaxSearchDepth static void NodePath::set_max_search_depth(int max_search_depth); Description: Certain operations, such as find() or find_all_matches(), require a traversal of the scene graph to search for the target node or nodes. This traversal does not attempt to detect cycles, so an arbitrary cap is set on the depth of the traversal as a poor man's cycle detection, in the event that a cycle has inadvertently been introduced into the scene graph. There may be other reasons you'd want to truncate a search before the bottom of the scene graph has been reached. In any event, this function sets the limit on the number of levels that a traversal will continue, and hence the maximum length of a path that may be returned by a traversal. This is a static method, and so changing this parameter affects all of the NodePaths in the universe.

setName void NodePath::set_name(string const &name); Description: Changes the name of the referenced node.

setNormalMap void NodePath::set_normal_map(Texture *normal_map, string const &texcoord_name = ((string())), bool preserve_color = (0)); Description: A convenience function to set up a normal map on this geometry. This uses the single highest-priority light on the object only. It also requires multitexture, and consumes at least two texture stages, in addition to what may already be in use. The normal_map parameter is the texture that contains the normal map information (with a 3-d delta vector encoded into the r,g,b of each texel). texcoord_name is the name of the texture coordinate set that contains the tangent and binormal we wish to use. If preserve_color is true, then one additional texture stage is consumed to blend in the geometry's original vertex color. Only one normal map may be in effect through this interface at any given time.

setP void NodePath::set_p(float p); Undocumented function.

setPos void NodePath::set_pos(float x, float y, float z); Methods that get and set the matrix transform: pos, hpr, scale, in the local coordinate system. Methods that get and set the matrix transforms relative to some other node in the scene graph. These perform an implicit wrt(). Description: 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. Description: Sets the translation component of the transform, relative to the other node. Description: 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 Also: NodePath::set_fluid_pos

setPosHpr void NodePath::set_pos_hpr(float x, float y, float z, float h, float p, float r); Description: Sets the translation and rotation component of the transform, leaving scale untouched. Description: Sets the translation and rotation component of the transform, relative to the other node.

setPosHprScale void NodePath::set_pos_hpr_scale(float x, float y, float z, float h, float p, float r, float sx, float sy, float sz); Description: Completely replaces the transform with new translation, rotation, and scale components. Description: Completely replaces the transform with new translation, rotation, and scale components, relative to the other node. Description: Replaces the translation, rotation, and scale components, implicitly setting shear to 0. Description: Completely replaces the transform with new translation, rotation, and scale components, relative to the other node, implicitly setting shear to 0.

setPosHprScaleShear void NodePath::set_pos_hpr_scale_shear(LVecBase3f const &pos, LVecBase3f const &hpr, LVecBase3f const &scale, LVecBase3f const &shear); Description: Completely replaces the transform with new translation, rotation, scale, and shear components. Description: Completely replaces the transform with new translation, rotation, scale, and shear components, relative to the other node.

setPosQuat void NodePath::set_pos_quat(LVecBase3f const &pos, LQuaternionf const &quat); Description: Sets the translation and rotation component of the transform, leaving scale untouched. Description: Sets the translation and rotation component of the transform, relative to the other node.

setPosQuatScale void NodePath::set_pos_quat_scale(LVecBase3f const &pos, LQuaternionf const &quat, LVecBase3f const &scale); Description: Replaces the translation, rotation, and scale components, implicitly setting shear to 0. Description: Completely replaces the transform with new translation, rotation, and scale components, relative to the other node, implicitly setting shear to 0.

setPosQuatScaleShear void NodePath::set_pos_quat_scale_shear(LVecBase3f const &pos, LQuaternionf const &quat, LVecBase3f const &scale, LVecBase3f const &shear); Description: Completely replaces the transform with new translation, rotation, scale, and shear components. Description: Completely replaces the transform with new translation, rotation, scale, and shear components, relative to the other node.

setPrevTransform void NodePath::set_prev_transform(TransformState const *transform, Thread *current_thread = ((get_current_thread()))); Description: Sets the transform that represents this node's "previous" position, one frame ago, for the purposes of detecting motion for accurate collision calculations. Description: 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.

setPythonTag void NodePath::set_python_tag(string const &key, PyObject *value); Description: Associates an arbitrary Python object with a user-defined key which is stored on the node. This object has no meaning to Panda; but it is stored indefinitely on the node until it is requested again. Each unique key stores a different Python object. There is no effective limit on the number of different keys that may be stored or on the nature of any one key's object.

setQuat void NodePath::set_quat(LQuaternionf const &quat); Description: Sets the rotation component of the transform, leaving translation and scale untouched. Description: Sets the rotation component of the transform, relative to the other node.

setQuatScale void NodePath::set_quat_scale(LQuaternionf const &quat, LVecBase3f const &scale); Description: Sets the rotation and scale components of the transform, leaving translation untouched. Description: Sets the rotation and scale components of the transform, leaving translation untouched. This, or set_pos_quat_scale, is the preferred way to update a transform when both quat and scale are to be changed.

setR void NodePath::set_r(float r); Undocumented function.

setRenderMode void NodePath::set_render_mode(RenderModeAttrib::Mode mode, float thickness, int priority = (0)); Description: Sets up the geometry at this level and below (unless overridden) to render in the specified mode and with the indicated line and/or point thickness.

setRenderModeFilled void NodePath::set_render_mode_filled(int priority = (0)); Description: Sets up the geometry at this level and below (unless overridden) to render in filled (i.e. not wireframe) mode.

setRenderModePerspective void NodePath::set_render_mode_perspective(bool perspective, int priority = (0)); Description: Sets up the point geometry at this level and below to render as perspective sprites (that is, billboarded quads). The thickness, as specified with set_render_mode_thickness(), is the width of each point in 3-D units, unless it is overridden on a per-vertex basis. This does not affect geometry other than points. If you want the quads to be individually textured, you should also set a TexGenAttrib::M_point_sprite on the node.

setRenderModeThickness void NodePath::set_render_mode_thickness(float thickness, int priority = (0)); Description: Sets up the point geometry at this level and below to render as thick points (that is, billboarded quads). The thickness is in pixels, unless set_render_mode_perspective is also true, in which case it is in 3-D units. If you want the quads to be individually textured, you should also set a TexGenAttrib::M_point_sprite on the node.

setRenderModeWireframe void NodePath::set_render_mode_wireframe(int priority = (0)); Description: Sets up the geometry at this level and below (unless overridden) to render in wireframe mode.

setSa void NodePath::set_sa(float sa); Description: Sets the alpha scale component of the transform

setSb void NodePath::set_sb(float sb); Description: Sets the blue scale component of the transform

setScale void NodePath::set_scale(float scale); Description: Sets the scale component of the transform, leaving translation and rotation untouched. Description: Sets the scale component of the transform, relative to the other node.

setScissor void NodePath::set_scissor(float left, float right, float bottom, float top); Description: Sets up a scissor region on the nodes rendered at this level and below. The four coordinates are understood to define a rectangle in screen space. These numbers are relative to the current DisplayRegion, where (0,0) is the lower-left corner of the DisplayRegion, and (1,1) is the upper-right corner. Description: Sets up a scissor region on the nodes rendered at this level and below. The two points are understood to be relative to this node. When these points are projected into screen space, they define the diagonally-opposite points that determine the scissor region. Description: Sets up a scissor region on the nodes rendered at this level and below. The four points are understood to be relative to this node. When these points are projected into screen space, they define the bounding volume of the scissor region (the scissor region is the smallest onscreen rectangle that encloses all four points). Description: Sets up a scissor region on the nodes rendered at this level and below. The two points are understood to be relative to the indicated other node. When these points are projected into screen space, they define the diagonally-opposite points that determine the scissor region. Description: Sets up a scissor region on the nodes rendered at this level and below. The four points are understood to be relative to the indicated other node. When these points are projected into screen space, they define the bounding volume of the scissor region (the scissor region is the smallest onscreen rectangle that encloses all four points).

setSg void NodePath::set_sg(float sg); Description: Sets the alpha scale component of the transform

setShader void NodePath::set_shader(Shader const *sha, int priority = (0)); Description:

setShaderAuto void NodePath::set_shader_auto(int priority = (0)); Description:

setShaderInput void NodePath::set_shader_input(ShaderInput const *inp); Description:

setShaderOff void NodePath::set_shader_off(int priority = (0)); Description:

setShear void NodePath::set_shear(float shxy, float shxz, float shyz); Description: Sets the shear component of the transform, leaving translation, rotation, and scale untouched. Description: Sets the shear component of the transform, relative to the other node. Description: Sets the shear component of the transform, leaving translation and rotation untouched.

setShxy void NodePath::set_shxy(float shxy); Undocumented function.

setShxz void NodePath::set_shxz(float shxz); Undocumented function.

setShyz void NodePath::set_shyz(float shyz); Undocumented function.

setSr void NodePath::set_sr(float sr); Description: Sets the red scale component of the transform

setState void NodePath::set_state(RenderState const *state, Thread *current_thread = ((get_current_thread()))); Aggregate transform and state information. Description: Changes the complete state object on this node. Description: Sets the state object on this node, relative to the other node. This computes a new state object that will have the indicated value when seen from the other node.

setSx void NodePath::set_sx(float sx); Undocumented function.

setSy void NodePath::set_sy(float sy); Undocumented function.

setSz void NodePath::set_sz(float sz); Undocumented function.

setTag void NodePath::set_tag(string const &key, string const &value); Description: Associates a user-defined value with a user-defined key which is stored on the node. This value has no meaning to Panda; but it is stored indefinitely on the node until it is requested again. Each unique key stores a different string value. There is no effective limit on the number of different keys that may be stored or on the length of any one key's value.

setTexGen void NodePath::set_tex_gen(TextureStage *stage, RenderAttrib::TexGenMode mode, int priority = (0)); Description: Enables automatic texture coordinate generation for the indicated texture stage. Description: Enables automatic texture coordinate generation for the indicated texture stage. This version of this method is useful when setting M_light_vector, which requires the name of the texture coordinate set that supplies the tangent and binormal, as well as the specific light to generate coordinates for. Description: Enables automatic texture coordinate generation for the indicated texture stage. This version of this method is useful when setting M_constant, which requires a constant texture coordinate value.

setTexHpr void NodePath::set_tex_hpr(TextureStage *stage, float h, float p, float r); Description: Sets a texture matrix on the current node to apply the indicated rotation, as a 3-D HPR, to UVW's for the given stage. This call is appropriate for 3-d texture coordinates.

setTexOffset void NodePath::set_tex_offset(TextureStage *stage, float u, float v); Description: Sets a texture matrix on the current node to apply the indicated offset to UV's for the given stage. This call is appropriate for ordinary 2-d texture coordinates.

setTexPos void NodePath::set_tex_pos(TextureStage *stage, float u, float v, float w); Description: Sets a texture matrix on the current node to apply the indicated offset to UVW's for the given stage. This call is appropriate for 3-d texture coordinates.

setTexProjector void NodePath::set_tex_projector(TextureStage *stage, NodePath const &from, NodePath const &to); Description: Establishes a TexProjectorEffect on this node, which can be used to establish projective texturing (but see also the NodePath::project_texture() convenience function), or it can be used to bind this node's texture transform to particular node's position in space, allowing a LerpInterval (for instance) to adjust this node's texture coordinates.

setTexRotate void NodePath::set_tex_rotate(TextureStage *stage, float r); Description: Sets a texture matrix on the current node to apply the indicated rotation, clockwise in degrees, to UV's for the given stage. This call is appropriate for ordinary 2-d texture coordinates.

setTexScale void NodePath::set_tex_scale(TextureStage *stage, float scale); Description: Sets a texture matrix on the current node to apply the indicated scale to UVW's for the given stage. This call is appropriate for 2-d or 3-d texture coordinates. Description: Sets a texture matrix on the current node to apply the indicated scale to UV's for the given stage. This call is appropriate for ordinary 2-d texture coordinates. This call is appropriate for 3-d texture coordinates.

setTexTransform void NodePath::set_tex_transform(TextureStage *stage, TransformState const *transform); Description: Sets the texture matrix on the current node to the indicated transform for the given stage.

setTexture void NodePath::set_texture(Texture *tex, int priority = (0)); Description: Adds the indicated texture to the list of textures that will be rendered on the default texture stage. This is the convenience single-texture variant of this method; it is now superceded by set_texture() that accepts a stage and texture. You may use this method if you just want to adjust the default stage. Description: Adds the indicated texture to the list of textures that will be rendered on the indicated multitexture stage. If there are multiple texture stages specified (possibly on multiple different nodes at different levels), they will all be applied to geometry together, according to the stage specification set up in the TextureStage object.

setTextureOff void NodePath::set_texture_off(int priority = (0)); Description: Sets the geometry at this level and below to render using no texture, on any stage. This is different from not specifying a texture; rather, this specifically contradicts set_texture() at a higher node level (or, with a priority, overrides a set_texture() at a lower level). Description: Sets the geometry at this level and below to render using no texture, on the indicated stage. This is different from not specifying a texture; rather, this specifically contradicts set_texture() at a higher node level (or, with a priority, overrides a set_texture() at a lower level).

setTransform void NodePath::set_transform(TransformState const *transform, Thread *current_thread = ((get_current_thread()))); Description: Changes the complete transform object on this node. Description: Sets the 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.

setTransparency void NodePath::set_transparency(TransparencyAttrib::Mode mode, int priority = (0)); Description: Specifically sets or disables transparent rendering mode on this particular node. If no other nodes override, this will cause items with a non-1 value for alpha color to be rendered partially transparent.

setTwoSided void NodePath::set_two_sided(bool two_sided, int priority = (0)); Description: Specifically sets or disables two-sided rendering mode on this particular node. If no other nodes override, this will cause backfacing polygons to be drawn (in two-sided mode, true) or culled (in one-sided mode, false).

setX void NodePath::set_x(float x); Undocumented function.

setY void NodePath::set_y(float y); Undocumented function.

setZ void NodePath::set_z(float z); Undocumented function.

show void NodePath::show(void); Variants on show and hide Description: Undoes the effect of a previous hide() on this node: makes the referenced node (and the entire subgraph below this node) visible to all cameras. This will not reveal the node if a parent node has been hidden. Description: Makes the referenced node visible just to the cameras whose camera_mask shares the indicated bits. This undoes the effect of a previous hide() call. It will not reveal the node if a parent node has been hidden. However, see show_through().

showBounds void NodePath::show_bounds(void); Description: Causes the bounding volume of the bottom node and all of its descendants (that is, the bounding volume associated with the the bottom arc) to be rendered, if possible. The rendering method is less than optimal; this is intended primarily for debugging.

showThrough void NodePath::show_through(void); Description: Makes the referenced node visible just to the cameras whose camera_mask shares the indicated bits. Unlike show(), this will reveal the node even if a parent node has been hidden, thus "showing through" a parent's hide(). Unlike show(), this will reveal the node even if a parent node has been hidden via the one-parameter hide() method, thus "showing through" a parent's hide(). (However, it will not show through a parent's hide() call if the no-parameter form of hide() was used.)

showTightBounds void NodePath::show_tight_bounds(void); Description: Similar to show_bounds(), this draws a bounding box representing the "tight" bounds of this node and all of its descendants. The bounding box is recomputed every frame by reexamining all of the vertices; this is far from efficient, but this is intended for debugging.

stash void NodePath::stash(int sort = (0), Thread *current_thread = ((get_current_thread()))); Description: Removes the referenced node (and the entire subgraph below this node) from the scene graph in any normal sense. The node will no longer be visible and is not tested for collisions; furthermore, no normal scene graph traversal will visit the node. The node's bounding volume no longer contributes to its parent's bounding volume. A stashed node cannot be located by a normal find() operation (although a special find string can still retrieve it).

stashTo void NodePath::stash_to(NodePath const &other, int sort = (0), Thread *current_thread = ((get_current_thread()))); Description: Similar to reparent_to(), but the node is added to its new parent's stashed list, so that the result is equivalent to calling reparent_to() immediately followed by stash().

unifyTextureStages void NodePath::unify_texture_stages(TextureStage *stage); Description: Searches through all TextureStages at this node and below. Any TextureStages that share the same name as the indicated TextureStage object are replaced with this object, thus ensuring that all geometry at this node and below with a particular TextureStage name is using the same TextureStage object.

unstash void NodePath::unstash(int sort = (0), Thread *current_thread = ((get_current_thread()))); Description: Undoes the effect of a previous stash() on this node: makes the referenced node (and the entire subgraph below this node) once again part of the scene graph.

unstashAll void NodePath::unstash_all(Thread *current_thread = ((get_current_thread()))); Description: Unstashes this node and all stashed child nodes.

verifyComplete bool NodePath::verify_complete(Thread *current_thread = ((get_current_thread()))) const; Miscellaneous Description: Returns true if all of the nodes described in the NodePath are connected, or false otherwise.

writeBamFile bool NodePath::write_bam_file(string const &filename) const; HAVE_PYTHON Description: Writes the contents of this node and below out to a bam file with the indicated filename. This file may then be read in again, as is, at some later point. Returns true if successful, false on some kind of error.

writeBamStream bool NodePath::write_bam_stream(ostream &out) const; Description: Writes the contents of this node and below out to the indicated stream.

writeBounds void NodePath::write_bounds(ostream &out) const; Description: Writes a description of the bounding volume containing the bottom node and all of its descendants to the indicated output stream.

wrtReparentTo void NodePath::wrt_reparent_to(NodePath const &other, int sort = (0), Thread *current_thread = ((get_current_thread()))); Description: This functions identically to reparent_to(), except the transform on this node is also adjusted so that the node remains in the same place in world coordinates, even if it is reparented into a different coordinate system.

__init__ def __init__(self) Undocumented function.

__setitem__ def __setitem__(self, key, value) Undocumented function.

addoptions def addoptions(self, optionDefs, optionkeywords) addoptions(optionDefs) - add option def to option info

bind def bind(self, event, command, extraArgs=[]) Bind the command (which should expect one arg) to the specified event (such as ENTER, EXIT, B1PRESS, B1CLICK, etc.) See DirectGuiGlobals for possible events

cget def cget(self, option) Get current configuration setting for this option

component def component(self, name) Undocumented function.

components def components(self) Undocumented function.

configure def configure(self, option=None, **kw) configure(option = None) Query or configure the megawidget options.

createcomponent def createcomponent(self, componentName, componentAliases, componentGroup, widgetClass, *widgetArgs, **kw) Create a component (during construction or later) for this widget.

defineoptions def defineoptions(self, keywords, optionDefs, dynamicGroups=()) defineoptions(keywords, optionDefs, dynamicGroups = {})

destroy def destroy(self) Undocumented function.

destroycomponent def destroycomponent(self, name) Undocumented function.

hascomponent def hascomponent(self, component) Undocumented function.

initialiseoptions def initialiseoptions(self, myClass) Call all initialisation functions to initialize widget options to default of keyword value

isinitoption def isinitoption(self, option) Is this opition one that can only be specified at construction?

options def options(self) Print out a list of available widget options. Does not include subcomponent options.

postInitialiseFunc def postInitialiseFunc(self) Undocumented function.

unbind def unbind(self, event) Unbind the specified event