Panda3D

- Main Page
- Packages
- Classes

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Public Attributes | Static Public Attributes

# ProjectileInterval Class Reference

Inherits Interval::Interval.

List of all members.

## Public Member Functions
def | __init__
def | privInitialize
def | privInstant
def | privStep
def | testTrajectory
## Public Attributes
| collNode
| duration
| endPos
| implicitStartPos
| node
| parabola
| startPos
| startVel
| trajectoryArgs
| zAcc
## Static Public Attributes
int | gravity = 32
tuple | notify = directNotify.newCategory('ProjectileInterval')
int | projectileIntervalNum = 1

## Detailed Description

    ProjectileInterval class: moves a nodepath through the trajectory
    of a projectile under the influence of gravity

## Constructor & Destructor Documentation

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.

## Member Function Documentation

def privInitialize | ( |  | self,
|  |  | t
| ) |  |

def privInstant | ( |  | self | ) |

def privStep | ( |  | self,
|  |  | t
| ) |  |

def testTrajectory | ( |  | self | ) |

## Member Data Documentation

collNode

duration

endPos

int gravity = 32`[static]`

implicitStartPos

node

tuple notify = directNotify.newCategory('ProjectileInterval')`[static]`

parabola

int projectileIntervalNum = 1`[static]`

startPos

startVel

trajectoryArgs

zAcc

All Classes Namespaces Functions Variables Enumerations Enumerator Properties