parameters: (self, node, startPos = None,
                   endPos = None, duration = None,
                   startVel = None, endZ = None,
                   wayPoint = None, timeToWayPoint = None,
                   gravityMult = None, name = None,
                   collNode = None)
docstring: You may specify several different sets of input parameters.
          (If startPos is not provided, it will be obtained from the node's
          position at the time that the interval is first started. Note that
          in this case you must provide a duration of some kind.)
  
          # go from startPos to endPos in duration seconds
          startPos, endPos, duration
          # given a starting velocity, go for a specific time period
          startPos, startVel, duration
          # given a starting velocity, go until you hit a given Z plane
          startPos, startVel, endZ
          # pass through wayPoint at time 'timeToWayPoint'. Go until
          # you hit a given Z plane
          startPos, wayPoint, timeToWayPoint, endZ
  
          You may alter gravity by providing a multiplier in 'gravityMult'.
          '2.' will make gravity twice as strong, '.5' half as strong.
          '-1.' will reverse gravity
  
          If collNode is not None, it should be an empty CollisionNode
          which will be filled with an appropriate CollisionParabola
          when the interval starts.  This CollisionParabola will be set
          to match the interval's parabola, and its t1, t2 values will
          be updated automatically as the interval plays.  It will *not*
          be automatically removed from the node when the interval
          finishes.
docstring_summary: You may specify several different sets of input parameters.
          (If startPos is not provided, it will be obtained from the node's
          position at the time that the interval is first started. Note that
          in this case you must provide a duration of some kind.)
docstring_tokens: You may specify several different sets of input parameters . ( If startPos is not provided it will be obtained from the node s position at the time that the interval is first started . Note that in this case you must provide a duration of some kind . )
function: def __init__(self, node, startPos = None,
                   endPos = None, duration = None,
                   startVel = None, endZ = None,
                   wayPoint = None, timeToWayPoint = None,
                   gravityMult = None, name = None,
                   collNode = None):
          """
          You may specify several different sets of input parameters.
          (If startPos is not provided, it will be obtained from the node's
          position at the time that the interval is first started. Note that
          in this case you must provide a duration of some kind.)
  
          # go from startPos to endPos in duration seconds
          startPos, endPos, duration
          # given a starting velocity, go for a specific time period
          startPos, startVel, duration
          # given a starting velocity, go until you hit a given Z plane
          startPos, startVel, endZ
          # pass through wayPoint at time 'timeToWayPoint'. Go until
          # you hit a given Z plane
          startPos, wayPoint, timeToWayPoint, endZ
  
          You may alter gravity by providing a multiplier in 'gravityMult'.
          '2.' will make gravity twice as strong, '.5' half as strong.
          '-1.' will reverse gravity
  
          If collNode is not None, it should be an empty CollisionNode
          which will be filled with an appropriate CollisionParabola
          when the interval starts.  This CollisionParabola will be set
          to match the interval's parabola, and its t1, t2 values will
          be updated automatically as the interval plays.  It will *not*
          be automatically removed from the node when the interval
          finishes.
  
          """
          self.node = node
          self.collNode = collNode
          if self.collNode:
              if isinstance(self.collNode, NodePath):
                  self.collNode = self.collNode.node()
              assert self.collNode.getNumSolids() == 0
  
          if name is None:
              name = '%s-%s' % (self.__class__.__name__,
                                self.projectileIntervalNum)
              ProjectileInterval.projectileIntervalNum += 1
  
          args = (startPos, endPos, duration, startVel, endZ,
                  wayPoint, timeToWayPoint, gravityMult)
          self.implicitStartPos = 0
          if startPos is None:
              if duration is None:
                  self.notify.error('must provide either startPos or duration')
              self.duration = duration
              # we can't calc the trajectory until we know our starting
              # position; delay until the interval is actually started
              self.trajectoryArgs = args
              self.implicitStartPos = 1
          else:
              self.trajectoryArgs = args
              self.__calcTrajectory(*args)
  
          Interval.__init__(self, name, self.duration)
function_tokens: def __init__ ( self , node , startPos = None , endPos = None , duration = None , startVel = None , endZ = None , wayPoint = None , timeToWayPoint = None , gravityMult = None , name = None , collNode = None ) : self . node = node self . collNode = collNode if self . collNode : if isinstance ( self . collNode , NodePath ) : self . collNode = self . collNode . node ( ) assert self . collNode . getNumSolids ( ) == 0 if name is None : name = '%s-%s' % ( self . __class__ . __name__ , self . projectileIntervalNum ) ProjectileInterval . projectileIntervalNum += 1 args = ( startPos , endPos , duration , startVel , endZ , wayPoint , timeToWayPoint , gravityMult ) self . implicitStartPos = 0 if startPos is None : if duration is None : self . notify . error ( 'must provide either startPos or duration' ) self . duration = duration # we can't calc the trajectory until we know our starting # position; delay until the interval is actually started self . trajectoryArgs = args self . implicitStartPos = 1 else : self . trajectoryArgs = args self . __calcTrajectory ( * args ) Interval . __init__ ( self , name , self . duration )