Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

FltTransformRotateScale Class Reference

#include <fltTransformRotateScale.h>

Inheritance diagram for FltTransformRotateScale:

FltTransformRecord FltRecord TypedReferenceCount TypedObject ReferenceCount List of all members.

Public Member Functions

 FltTransformRotateScale (FltHeader *header)
void set (const LPoint3d &center, const LPoint3d &reference_point, const LPoint3d &to_point, bool axis_scale)
const LPoint3d & get_center () const
const LPoint3d & get_reference_point () const
const LPoint3d & get_to_point () const
float get_overall_scale () const
float get_axis_scale () const
float get_angle () const
virtual TypeHandle get_type () const
virtual TypeHandle force_init_type ()

Static Public Member Functions

TypeHandle get_class_type ()
void init_type ()

Protected Member Functions

virtual bool extract_record (FltRecordReader &reader)
virtual bool build_record (FltRecordWriter &writer) const

Private Member Functions

void recompute_matrix ()

Private Attributes

LPoint3d _center
LPoint3d _reference_point
LPoint3d _to_point
float _overall_scale
float _axis_scale
float _angle

Static Private Attributes

TypeHandle _type_handle

Constructor & Destructor Documentation

FltTransformRotateScale::FltTransformRotateScale FltHeader header  ) 
 

Definition at line 34 of file fltTransformRotateScale.cxx.

References _angle, _axis_scale, _center, _overall_scale, _reference_point, and _to_point.


Member Function Documentation

bool FltTransformRotateScale::build_record FltRecordWriter writer  )  const [protected, virtual]
 

Reimplemented from FltRecord.

Definition at line 216 of file fltTransformRotateScale.cxx.

References _angle, _axis_scale, _center, _overall_scale, _reference_point, _to_point, Datagram::add_be_float32(), Datagram::add_be_float64(), FltRecord::build_record(), FO_put, Datagram::pad_bytes(), and writer().

bool FltTransformRotateScale::extract_record FltRecordReader reader  )  [protected, virtual]
 

Reimplemented from FltRecord.

Definition at line 176 of file fltTransformRotateScale.cxx.

References _angle, _axis_scale, _center, _overall_scale, _reference_point, _to_point, FltRecord::check_remaining_size(), FltRecord::extract_record(), FO_rotate_and_scale, DatagramIterator::get_be_float32(), DatagramIterator::get_be_float64(), nassertr, reader(), recompute_matrix(), and DatagramIterator::skip_bytes().

virtual TypeHandle FltTransformRotateScale::force_init_type void   )  [inline, virtual]
 

Reimplemented from FltTransformRecord.

Definition at line 63 of file fltTransformRotateScale.h.

References get_class_type(), and init_type().

float FltTransformRotateScale::get_angle  )  const
 

Definition at line 136 of file fltTransformRotateScale.cxx.

References _angle.

float FltTransformRotateScale::get_axis_scale  )  const
 

Definition at line 126 of file fltTransformRotateScale.cxx.

References _axis_scale.

const LPoint3d & FltTransformRotateScale::get_center  )  const
 

Definition at line 85 of file fltTransformRotateScale.cxx.

References _center.

TypeHandle FltTransformRotateScale::get_class_type void   )  [inline, static]
 

Reimplemented from FltTransformRecord.

Definition at line 64 of file fltTransformRotateScale.h.

References _type_handle.

Referenced by force_init_type(), and get_type().

float FltTransformRotateScale::get_overall_scale  )  const
 

Definition at line 115 of file fltTransformRotateScale.cxx.

References _overall_scale.

const LPoint3d & FltTransformRotateScale::get_reference_point  )  const
 

Definition at line 95 of file fltTransformRotateScale.cxx.

References _reference_point.

const LPoint3d & FltTransformRotateScale::get_to_point  )  const
 

Definition at line 105 of file fltTransformRotateScale.cxx.

References _to_point.

virtual TypeHandle FltTransformRotateScale::get_type void   )  const [inline, virtual]
 

Reimplemented from FltTransformRecord.

Definition at line 60 of file fltTransformRotateScale.h.

References get_class_type().

void FltTransformRotateScale::init_type void   )  [inline, static]
 

Reimplemented from FltTransformRecord.

Definition at line 67 of file fltTransformRotateScale.h.

References _type_handle, FltTransformRecord::get_class_type(), FltTransformRecord::init_type(), and register_type().

Referenced by force_init_type(), and init_libflt().

void FltTransformRotateScale::recompute_matrix  )  [private]
 

Definition at line 146 of file fltTransformRotateScale.cxx.

References _angle, _axis_scale, _center, FltTransformRecord::_matrix, _overall_scale, _reference_point, _to_point, CS_zup_right, invert, and look_at().

Referenced by extract_record(), and set().

void FltTransformRotateScale::set const LPoint3d &  center,
const LPoint3d &  reference_point,
const LPoint3d &  to_point,
bool  axis_scale
 

Definition at line 56 of file fltTransformRotateScale.cxx.

References _angle, _axis_scale, _center, _overall_scale, _reference_point, _to_point, dot(), length(), MathNumbers::pi, and recompute_matrix().


Member Data Documentation

float FltTransformRotateScale::_angle [private]
 

Definition at line 53 of file fltTransformRotateScale.h.

Referenced by build_record(), extract_record(), FltTransformRotateScale(), get_angle(), recompute_matrix(), and set().

float FltTransformRotateScale::_axis_scale [private]
 

Definition at line 52 of file fltTransformRotateScale.h.

Referenced by build_record(), extract_record(), FltTransformRotateScale(), get_axis_scale(), recompute_matrix(), and set().

LPoint3d FltTransformRotateScale::_center [private]
 

Definition at line 48 of file fltTransformRotateScale.h.

Referenced by build_record(), extract_record(), FltTransformRotateScale(), get_center(), recompute_matrix(), and set().

float FltTransformRotateScale::_overall_scale [private]
 

Definition at line 51 of file fltTransformRotateScale.h.

Referenced by build_record(), extract_record(), FltTransformRotateScale(), get_overall_scale(), recompute_matrix(), and set().

LPoint3d FltTransformRotateScale::_reference_point [private]
 

Definition at line 49 of file fltTransformRotateScale.h.

Referenced by build_record(), extract_record(), FltTransformRotateScale(), get_reference_point(), recompute_matrix(), and set().

LPoint3d FltTransformRotateScale::_to_point [private]
 

Definition at line 50 of file fltTransformRotateScale.h.

Referenced by build_record(), extract_record(), FltTransformRotateScale(), get_to_point(), recompute_matrix(), and set().

TypeHandle FltTransformRotateScale::_type_handle [static, private]
 

Reimplemented from FltTransformRecord.

Definition at line 26 of file fltTransformRotateScale.cxx.

Referenced by get_class_type(), and init_type().


The documentation for this class was generated from the following files:
Generated on Fri Apr 18 01:01:05 2003 for Panda-Tool by doxygen1.3