awScene.LodCollapse Class Reference

#include <classaw_scene_1_1_lod_collapse.h>

Inheritance diagram for awScene.LodCollapse:
Inheritance graph
[legend]

List of all members.

Public Member Functions

  __init__ ()
  setAllDirty (bool dirty)
  traverse (NodeVisitor)
  Note, if setTraverseOriginal is turned on this node will traverse the original sub-graph children, not the actual levels of detail.
  accept (NodeVisitor)
GroupRef  setCollapseGroup (GroupRef group)
  This method will cause this LodCollapse node to replace the given group node in the graph and arrange for the sub-graph rooted at the group node to be collapsed into this one.
  setCollapseGroupMaintainSceneHierarchy (bool msh)
bool  getCollapseGroupMaintainSceneHierarchy ()
GroupRef  getCollapseGroup ()
  getCollapseGroup returns a temporary group node that references the children of the collapsed graph.
bool  collapse ()
  This method will do the collapsing and should be called only by the update visitor.
  getCollapseChildren (NodeSet children)
  Request a list of the children of the collapsed node.
int  getCollapseChildCount ()
  Methods to allow Python to iterate over the collapsed children.
NodeRef  getCollapseChild (int i)
bool  resetCollapseState ()
  Call resetCollapseState() to make this node look like it's original collapsed group.
bool  isCollapsed ()
int  insertChildAtIndex (NodeRef child, int index)
int  removeChild (NodeRef child)
int  removeAllChildren ()
  setCollapseRoot (Group root)
bool  needToMaintainSceneHierarchy ()
  Look at the children and parents, and let us know if this node should be marked as "maintain" or not.
bool  setTraverseOriginalMode (bool)
  Use this method with discretion.
bool  isTraverseOriginalMode ()

Protected Member Functions

  __del__ ()
  Reference counted objects shouldn't exist on the stack.
LodCollapse  operator= (LodCollapse rhs)
  Should we allow assignment of these?.
bool  retainPolygonsAmbientOcclusionData ()
bool  retainAmbientOcclusionTextures (aw.vector lodGroups, bool hasSurfaceData)
bool  collectBitmapsAndDomains (LodGroup lodGroup, str textureFilename, int filterSize, int accumulatedTextureTransformsCount, aw.vector accumulatedBitmaps, aw.vector accumulatedDomains, bool hasSurfaceData)
bool  packAndSaveTextureToFile (awImage.Packing packedBitmap, aw.vector accumulatedBitmaps, str outTextureFilename)
  collectAndApplyTextureTransforms (awImage.Packing packedBitmap, aw.vector accumulatedDomains)
  applyOcclusionTextureToAppearance (str outTextureFilename)
  getOcclusionFilename (str filename, str extName)
awImage ImageByte  scaleOcclusionTexture (awImage.ImageByte source, float scaleFactor)
int  getMinimumLODCount (NodeSet leaves)
bool  skipLodGroup (awScene.LodGroup lodGroup)

Member Function Documentation

awScene.LodCollapse.__init__ ( )
awScene.LodCollapse.setAllDirty ( bool  dirty )
awScene.LodCollapse.traverse ( NodeVisitor  )

Note, if setTraverseOriginal is turned on this node will traverse the original sub-graph children, not the actual levels of detail.

awScene.LodCollapse.accept ( NodeVisitor  )
GroupRef awScene.LodCollapse.setCollapseGroup ( GroupRef  group )

This method will cause this LodCollapse node to replace the given group node in the graph and arrange for the sub-graph rooted at the group node to be collapsed into this one.

Call setCollapseGroup( NULL ) to uncollapse the currently collapsed group. Returns a ref to the node that is in the graph. If this is an uncollapse it will return a new group node that has replaced this one. If this is a collapse it will return a reference to this node.

awScene.LodCollapse.setCollapseGroupMaintainSceneHierarchy ( bool  msh )
bool awScene.LodCollapse.getCollapseGroupMaintainSceneHierarchy ( )
GroupRef awScene.LodCollapse.getCollapseGroup ( )

getCollapseGroup returns a temporary group node that references the children of the collapsed graph.

This node should only be used for traversal of the children and should be released when done.

bool awScene.LodCollapse.collapse ( )

This method will do the collapsing and should be called only by the update visitor.

awScene.LodCollapse.getCollapseChildren ( NodeSet  children )

Request a list of the children of the collapsed node.

int awScene.LodCollapse.getCollapseChildCount ( )

Methods to allow Python to iterate over the collapsed children.

NodeRef awScene.LodCollapse.getCollapseChild ( int  i )
bool awScene.LodCollapse.resetCollapseState ( )

Call resetCollapseState() to make this node look like it's original collapsed group.

It will take on the children of the orginal group and will be marked as needing to be re-collapsed.

bool awScene.LodCollapse.isCollapsed ( )
int awScene.LodCollapse.insertChildAtIndex ( NodeRef  child,
int  index 
)
int awScene.LodCollapse.removeChild ( NodeRef  child )
int awScene.LodCollapse.removeAllChildren ( )
awScene.LodCollapse.setCollapseRoot ( Group  root )
bool awScene.LodCollapse.needToMaintainSceneHierarchy ( )

Look at the children and parents, and let us know if this node should be marked as "maintain" or not.

Return true if we really, really need that flag set. The "set...Check" behaves as the "set..." above if maintain is false. If maintain is true, it consults the "needTo..." to decide if it should set it or not. In the process, it may fix up the parents as well.

bool awScene.LodCollapse.setTraverseOriginalMode ( bool  )

Use this method with discretion.

It sets a static property for all instances and hence is not safe for multi-threaded access. When the mode is true traversing collapse nodes will traverse the original un-collapsed sub-graph instead of the collapsed LodGroup. Returns the previous state of the mode.

bool awScene.LodCollapse.isTraverseOriginalMode ( )
awScene.LodCollapse.__del__ ( ) [protected]

Reference counted objects shouldn't exist on the stack.

Reimplemented from awScene.LodGroup.

LodCollapse awScene.LodCollapse.operator= ( LodCollapse  rhs ) [protected]

Should we allow assignment of these?.

bool awScene.LodCollapse.retainPolygonsAmbientOcclusionData ( ) [protected]
bool awScene.LodCollapse.retainAmbientOcclusionTextures ( aw.vector  lodGroups,
bool  hasSurfaceData 
) [protected]
bool awScene.LodCollapse.collectBitmapsAndDomains ( LodGroup  lodGroup,
str  textureFilename,
int  filterSize,
int  accumulatedTextureTransformsCount,
aw.vector  accumulatedBitmaps,
aw.vector  accumulatedDomains,
bool  hasSurfaceData 
) [protected]
bool awScene.LodCollapse.packAndSaveTextureToFile ( awImage.Packing  packedBitmap,
aw.vector  accumulatedBitmaps,
str  outTextureFilename 
) [protected]
awScene.LodCollapse.collectAndApplyTextureTransforms ( awImage.Packing  packedBitmap,
aw.vector  accumulatedDomains 
) [protected]
awScene.LodCollapse.applyOcclusionTextureToAppearance ( str  outTextureFilename ) [protected]
awScene.LodCollapse.getOcclusionFilename ( str  filename,
str  extName 
) [protected]
awImage ImageByte awScene.LodCollapse.scaleOcclusionTexture ( awImage.ImageByte  source,
float  scaleFactor 
) [protected]
int awScene.LodCollapse.getMinimumLODCount ( NodeSet  leaves ) [protected]
bool awScene.LodCollapse.skipLodGroup ( awScene.LodGroup  lodGroup ) [protected]

awScene.LodCollapse awScene.LodCollapse awScene.LodCollapse awScene.LodCollapse awScene.LodCollapse awScene.LodCollapse awScene.LodCollapse awScene.LodCollapse awScene.LodCollapse awScene.LodCollapse
awScene.LodCollapse awScene.LodCollapse awScene.LodCollapse awScene.LodCollapse awScene.LodCollapse awScene.LodCollapse awScene.LodCollapse awScene.LodCollapse awScene.LodCollapse awScene.LodCollapse