Open source remastering of the Freespace 2 engine
triggered_rotation Class Reference

#include <modelanim.h>

Public Member Functions

 triggered_rotation ()
 ~triggered_rotation ()
void clear ()
void start (queued_animation *q)
void set_to_initial (queued_animation *q)
void set_to_final (queued_animation *q)
void apply_trigger_angles (angles *submodel_angles)
void add_queue (queued_animation *new_queue, int dir)
void process_queue ()

Public Attributes

vec3d current_ang
vec3d current_vel
vec3d rot_accel
vec3d rot_vel
vec3d slow_angle
vec3d end_angle
vec3d direction
int instance
bool has_started
int end_time
int start_time

Detailed Description

This is the triggered animation object, it is responsable for controlling how the current triggered animation works rot_accel is the acceleration for starting to move and stopping, so figure it in twice.

Definition at line 96 of file modelanim.h.

Constructor & Destructor Documentation

triggered_rotation::triggered_rotation ( )

Definition at line 173 of file modelanim.cpp.

triggered_rotation::~triggered_rotation ( )

Definition at line 206 of file modelanim.cpp.

Member Function Documentation

void triggered_rotation::add_queue ( queued_animation new_queue,
int  dir 

Definition at line 210 of file modelanim.cpp.

void triggered_rotation::apply_trigger_angles ( angles submodel_angles)

Definition at line 133 of file modelanim.cpp.

void triggered_rotation::clear ( )

Definition at line 178 of file modelanim.cpp.

void triggered_rotation::process_queue ( )

Look at the queue and see if any of the items on it need to be started remove items from the queue that you just executed

Definition at line 319 of file modelanim.cpp.

void triggered_rotation::set_to_final ( queued_animation q)

Definition at line 164 of file modelanim.cpp.

void triggered_rotation::set_to_initial ( queued_animation q)

Definition at line 156 of file modelanim.cpp.

void triggered_rotation::start ( queued_animation q)

Calculates the angle at wich the rotation should start to slow down and fills in a bunch of other crap. If anyone wants the calculus behind these numbers I'll provide it.

Definition at line 94 of file modelanim.cpp.

Member Data Documentation

vec3d triggered_rotation::current_ang

Definition at line 124 of file modelanim.h.

vec3d triggered_rotation::current_vel

Definition at line 125 of file modelanim.h.

vec3d triggered_rotation::direction

Definition at line 130 of file modelanim.h.

vec3d triggered_rotation::end_angle

Definition at line 129 of file modelanim.h.

int triggered_rotation::end_time

Definition at line 134 of file modelanim.h.

bool triggered_rotation::has_started

Definition at line 133 of file modelanim.h.

int triggered_rotation::instance

Definition at line 132 of file modelanim.h.

vec3d triggered_rotation::rot_accel

Definition at line 126 of file modelanim.h.

vec3d triggered_rotation::rot_vel

Definition at line 127 of file modelanim.h.

vec3d triggered_rotation::slow_angle

Definition at line 128 of file modelanim.h.

int triggered_rotation::start_time

Definition at line 135 of file modelanim.h.

The documentation for this class was generated from the following files: