Alphabetical Class Index   Class Hierarchy   Compound Members   File Members   File List  

TK_Circle Class Reference

Handles the TKE_Circle, TKE_Circular_Arc, TKE_Circular_Chord and TKE_Circular_Wedge opcodes. More...

#include <BOpcodeHandler.h>

Inheritance diagram for TK_Circle:

BBaseOpcodeHandler BControlledMemoryObject HTK_Circle

List of all members.

Public Member Functions

TK_Status Clone (BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
float const * GetCenter () const
float const * GetEnd () const
float const * GetMiddle () const
float const * GetStart () const
TK_Status Read (BStreamFileToolkit &tk) alter
TK_Status ReadAscii (BStreamFileToolkit &tk) alter
 Deprecated.
void Reset () alter
void SetCenter (float const *c) alter
void SetCenter (float x, float y, float z) alter
void SetEnd (float const *e) alter
void SetEnd (float x, float y, float z) alter
void SetMiddle (float const *m) alter
void SetMiddle (float x, float y, float z) alter
void SetPoints (float const *s, float const *m, float const *e, float const *c=0) alter
void SetStart (float const *s) alter
void SetStart (float x, float y, float z) alter
 TK_Circle (unsigned char opcode)
TK_Status Write (BStreamFileToolkit &tk) alter
TK_Status WriteAscii (BStreamFileToolkit &tk) alter
 Deprecated.

Protected Attributes

float m_center [3]
float m_end [3]
unsigned char m_flags
float m_middle [3]
float m_start [3]


Detailed Description

Handles the TKE_Circle, TKE_Circular_Arc, TKE_Circular_Chord and TKE_Circular_Wedge opcodes.

TK_Circle provides support for writing/reading the TKE_Circle, TKE_Circular_Arc, TKE_Circular_Chord and TKE_Circular_Wedge opcode objects to/from an HSF file.

The HOOPS/3dGS scene-graph can contain various forms of a 'circle' primitive, defined by three non-colinear points.


Constructor & Destructor Documentation

TK_Circle::TK_Circle ( unsigned char  opcode  )  [inline]

constructor


Member Function Documentation

TK_Status TK_Circle::Clone ( BStreamFileToolkit tk,
BBaseOpcodeHandler **  handler 
) const [virtual]

Copies the opcode handler

Parameters:
tk A reference to the BStreamFileToolkit object.
handler A pointer to the opcode handler object. Passed by reference.
Returns:
The result of the function call.

Reimplemented from BBaseOpcodeHandler.

Reimplemented in HTK_Circle.

float const* TK_Circle::GetCenter (  )  const [inline]

Returns the center point of the arc as the address of a float triplet, null if not present

References TKO_Circular_Center.

float const* TK_Circle::GetEnd (  )  const [inline]

Returns the end point of the arc as the address of a float triplet

float const* TK_Circle::GetMiddle (  )  const [inline]

Returns the intermediate point of the arc as the address of a float triplet

float const* TK_Circle::GetStart (  )  const [inline]

Returns the start point of the arc as the address of a float triplet

TK_Status TK_Circle::Read ( BStreamFileToolkit tk  )  [virtual]

Reads data from the toolkit buffer, decodes/decompresses it, and maps it to the opcode handlers data members. User-defined classes which need to write out custom data should utilize one of the available GetData() methods.

Parameters:
tk A reference to the BStreamFileToolkit object.
Returns:
The result of the function call.

Implements BBaseOpcodeHandler.

void TK_Circle::Reset (  )  [virtual]

Resets the current opcode handler. This is called by the toolkit when it is done processing an opcode. This method reinitializes any opcode handler variables and frees up temporary data.

Reimplemented from BBaseOpcodeHandler.

void TK_Circle::SetCenter ( float const *  c  )  [inline]

Sets the end point of the arc using a float triplet

void TK_Circle::SetCenter ( float  x,
float  y,
float  z 
) [inline]

Sets the end point of the arc using discrete float values

References TKO_Circular_Center.

void TK_Circle::SetEnd ( float const *  e  )  [inline]

Sets the end point of the arc using a float triplet

void TK_Circle::SetEnd ( float  x,
float  y,
float  z 
) [inline]

Sets the end point of the arc using discrete float values

void TK_Circle::SetMiddle ( float const *  m  )  [inline]

Sets the intermediate point of the arc using a float triplet

void TK_Circle::SetMiddle ( float  x,
float  y,
float  z 
) [inline]

Sets the intermediate point of the arc using discrete float values

void TK_Circle::SetPoints ( float const *  s,
float const *  m,
float const *  e,
float const *  c = 0 
) [inline]

Sets the three points describing the arc using discrete point triplets

void TK_Circle::SetStart ( float const *  s  )  [inline]

Sets the start point of the arc using a float triplet

void TK_Circle::SetStart ( float  x,
float  y,
float  z 
) [inline]

Sets the start point of the arc using discrete float values

TK_Status TK_Circle::Write ( BStreamFileToolkit tk  )  [virtual]

Encodes/compresses data and writes data to the toolkit buffer. User-defined classes which need to write out custom data should utilize one of the available PutData() methods, and first write out the opcode associated with the group of binary data followed by the data itself.

Parameters:
tk A reference to the BStreamFileToolkit object.
Returns:
The result of the function call.

Implements BBaseOpcodeHandler.


Member Data Documentation

float TK_Circle::m_center[3] [protected]

internal use; explicit Center point

float TK_Circle::m_end[3] [protected]

internal use; End point

unsigned char TK_Circle::m_flags [protected]

internal use; flag if Center point is specified

float TK_Circle::m_middle[3] [protected]

internal use; Middle point

float TK_Circle::m_start[3] [protected]

internal use; Starting point


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