Panda3D
|
A "put", which is a MultiGen concept of defining a transformation by mapping three arbitrary points to three new arbitrary points. More...
#include "fltTransformPut.h"
Public Member Functions | |
FltTransformPut (FltHeader *header) | |
virtual TypeHandle | force_init_type () |
const LPoint3d & | get_from_align () const |
const LPoint3d & | get_from_origin () const |
const LPoint3d & | get_from_track () const |
const LPoint3d & | get_to_align () const |
const LPoint3d & | get_to_origin () const |
const LPoint3d & | get_to_track () const |
virtual TypeHandle | get_type () const |
void | set (const LPoint3d &from_origin, const LPoint3d &from_align, const LPoint3d &from_track, const LPoint3d &to_origin, const LPoint3d &to_align, const LPoint3d &to_track) |
Defines the put explicitly. | |
Static Public Member Functions | |
static TypeHandle | get_class_type () |
static void | init_type () |
This function is declared non-inline to work around a compiler bug in g++ 2.96. | |
Protected Member Functions | |
virtual bool | build_record (FltRecordWriter &writer) const |
Fills up the current record on the FltRecordWriter with data for this record, but does not advance the writer. | |
virtual bool | extract_record (FltRecordReader &reader) |
Fills in the information in this record based on the information given in the indicated datagram, whose opcode has already been read. |
A "put", which is a MultiGen concept of defining a transformation by mapping three arbitrary points to three new arbitrary points.
Definition at line 28 of file fltTransformPut.h.
bool FltTransformPut::build_record | ( | FltRecordWriter & | writer | ) | const [protected, virtual] |
Fills up the current record on the FltRecordWriter with data for this record, but does not advance the writer.
Returns true on success, false if there is some error.
Reimplemented from FltRecord.
Definition at line 191 of file fltTransformPut.cxx.
References Datagram::add_be_float64(), FltRecord::build_record(), Datagram::pad_bytes(), FltRecordWriter::set_opcode(), and FltRecordWriter::update_datagram().
bool FltTransformPut::extract_record | ( | FltRecordReader & | reader | ) | [protected, virtual] |
Fills in the information in this record based on the information given in the indicated datagram, whose opcode has already been read.
Returns true on success, false if the datagram is invalid.
Reimplemented from FltRecord.
Definition at line 147 of file fltTransformPut.cxx.
References FltRecord::check_remaining_size(), FltRecord::extract_record(), FltRecordReader::get_iterator(), FltRecordReader::get_opcode(), and DatagramIterator::skip_bytes().
static void FltTransformPut::init_type | ( | ) | [inline, static] |
This function is declared non-inline to work around a compiler bug in g++ 2.96.
Making it inline seems to cause problems in the optimizer.
Reimplemented from FltTransformRecord.
Definition at line 68 of file fltTransformPut.h.
void FltTransformPut::set | ( | const LPoint3d & | from_origin, |
const LPoint3d & | from_align, | ||
const LPoint3d & | from_track, | ||
const LPoint3d & | to_origin, | ||
const LPoint3d & | to_align, | ||
const LPoint3d & | to_track | ||
) |
Defines the put explicitly.
The transformation will map the three "from" points to the corresponding three "to" points.
Definition at line 46 of file fltTransformPut.cxx.