Panda3D
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
BufferedDistancePhasedNode Class Reference
Inheritance diagram for BufferedDistancePhasedNode:
DistancePhasedNode PhasedObject DirectObject

Public Member Functions

def __init__ (self, name, bufferParamMap={}, autoCleanup=True, enterPrefix='enter', exitPrefix='exit', phaseCollideMask=BitMask32.allOn(), fromCollideNode=None)
 
def __repr__ (self)
 
def __str__ (self)
 
def setPhase (self, aPhase)
 
- Public Member Functions inherited from DistancePhasedNode
def __del__ (self)
 
def cleanup (self)
 
def reset (self)
 
def setPhaseCollideMask (self, mask)
 
- Public Member Functions inherited from PhasedObject
def __init__ (self, aliasMap={})
 
def getAliasPhase (self, alias)
 
def getPhase (self)
 
def getPhaseAlias (self, phase)
 
def setAlias (self, phase, alias)
 
- Public Member Functions inherited from DirectObject
def __init__ (self)
 
def accept (self, event, method, extraArgs=[])
 
def acceptOnce (self, event, method, extraArgs=[])
 
def addTask (self, *args, **kwargs)
 
def detectLeaks (self)
 
def doMethodLater (self, *args, **kwargs)
 
def getAllAccepting (self)
 
def ignore (self, event)
 
def ignoreAll (self)
 
def isAccepting (self, event)
 
def isIgnoring (self, event)
 
def removeAllTasks (self)
 
def removeTask (self, taskOrName)
 

Public Attributes

 bufferParamList
 
 bufferParamMap
 
- Public Attributes inherited from DistancePhasedNode
 autoCleanup
 
 cTrav
 
 enterPrefix
 
 exitPrefix
 
 fromCollideNode
 
 phaseCollideMask
 
 phaseParamList
 
 phaseParamMap
 
- Public Attributes inherited from PhasedObject
 aliasPhaseMap
 
 phase
 
 phaseAliasMap
 

Static Public Attributes

 notify = directNotify.newCategory("BufferedDistancePhasedObject")
 
- Static Public Attributes inherited from DistancePhasedNode
 notify = directNotify.newCategory("DistancePhasedObject")
 
- Static Public Attributes inherited from PhasedObject
 notify = directNotify.newCategory("PhasedObject")
 
- Static Public Attributes inherited from DirectObject
def accept_once = acceptOnce
 
def add_task = addTask
 
def detect_leaks = detectLeaks
 
def do_method_later = doMethodLater
 
def get_all_accepting = getAllAccepting
 
def ignore_all = ignoreAll
 
def is_accepting = isAccepting
 
def is_ignoring = isIgnoring
 
def remove_all_tasks = removeAllTasks
 
def remove_task = removeTask
 

Detailed Description

This class is similar to DistancePhasedNode except you can also
specify a buffer distance for each phase.  Upon entering that phase,
its distance will be increased by the buffer amount.  Conversely,
the distance will be decremented by that amount, back to its
original size, upon leaving.  In this manner, you can avoid the problem
of 'phase flicker' as someone repeatedly steps across a static phase
border.

You specify the buffer amount in the bufferParamMap parameter
to :meth:`__init__()`.  It has this format::

    bufferParamMap = {'alias':(distance, bufferAmount), ...}

Constructor & Destructor Documentation

◆ __init__()

def __init__ (   self,
  name,
  bufferParamMap = {},
  autoCleanup = True,
  enterPrefix = 'enter',
  exitPrefix = 'exit',
  phaseCollideMask = BitMask32.allOn(),
  fromCollideNode = None 
)

Reimplemented from DistancePhasedNode.

Member Function Documentation

◆ __repr__()

def __repr__ (   self)

Reimplemented from DistancePhasedNode.

◆ __str__()

def __str__ (   self)

Reimplemented from DistancePhasedNode.

◆ setPhase()

def setPhase (   self,
  aPhase 
)
see DistancePhasedNode.setPhase()

Reimplemented from DistancePhasedNode.

Member Data Documentation

◆ bufferParamList

bufferParamList

◆ bufferParamMap

bufferParamMap

◆ notify

notify = directNotify.newCategory("BufferedDistancePhasedObject")
static