Track::EditAssist::SegmentConnectionHandle Class Reference

#include <SegmentConnectionHandle.h>

Inheritance diagram for Track::EditAssist::SegmentConnectionHandle:

Track::EditAssist::ControlPoint Track::EditAssist::Dragable Track::EditAssist::Selectable List of all members.

Public Member Functions

 SegmentConnectionHandle (const Track &track, std::size_t vertex_name, std::size_t connection_index, const SegmentConnection *segment_connection)
virtual ~SegmentConnectionHandle ()
virtual void draw () const
 Draw the control point for the editor.
virtual void snap (btVector3 &position, btVector3 normal) const
 Adjust a position the object was dragged to to the nearest valid location.
virtual boost::shared_ptr<
Document::DocumentDelta
make_delta (btVector3 position) const
 Make a DocumentDelta that moves the object to a new position.

Protected Attributes

const Tracktrack
 The track this applies to.
const std::size_t vertex_name
 The name of the vertex the handle is on.
const std::size_t connection_index
 The index Track::Segment gives for the SegmentConnection the handle is on.
const SegmentConnectionsegment_connection
 Pointer to the segment_connection used for this vertex.

Detailed Description

Definition at line 24 of file SegmentConnectionHandle.h.


Constructor & Destructor Documentation

Track::EditAssist::SegmentConnectionHandle::SegmentConnectionHandle ( const Track track,
std::size_t  vertex_name,
std::size_t  connection_index,
const SegmentConnection segment_connection 
)

Definition at line 27 of file SegmentConnectionHandle.cpp.

Track::EditAssist::SegmentConnectionHandle::~SegmentConnectionHandle (  )  [virtual]

Definition at line 36 of file SegmentConnectionHandle.cpp.


Member Function Documentation

void Track::EditAssist::SegmentConnectionHandle::draw (  )  const [virtual]

Draw the control point for the editor.

May draw additional lines to show bounds or to indicate what it relates to.

Uses OpenGL commands. It expects the modelview matrix to translate points from world space. Point and line primitives may be drawn. After calling, the current OpenGL colour could be anything.

Implements Track::EditAssist::ControlPoint.

Definition at line 41 of file SegmentConnectionHandle.cpp.

boost::shared_ptr< Document::DocumentDelta > Track::EditAssist::SegmentConnectionHandle::make_delta ( btVector3  position  )  const [virtual]

Make a DocumentDelta that moves the object to a new position.

Parameters:
position the desired position of the Selectable after the DocumentDelta is applied.
Returns:
A shared pointer to a DocumentDelta which moves the selectable from its current position to the requested position.

Implements Track::EditAssist::Dragable.

Definition at line 59 of file SegmentConnectionHandle.cpp.

void Track::EditAssist::SegmentConnectionHandle::snap ( btVector3 &  position,
btVector3  normal 
) const [virtual]

Adjust a position the object was dragged to to the nearest valid location.

Parameters:
position to adjust.
normal direction which the user cannot see as their view is looking down it.

Reimplemented from Track::EditAssist::Dragable.

Definition at line 49 of file SegmentConnectionHandle.cpp.


Member Data Documentation

const std::size_t Track::EditAssist::SegmentConnectionHandle::connection_index [protected]

The index Track::Segment gives for the SegmentConnection the handle is on.

Definition at line 49 of file SegmentConnectionHandle.h.

const SegmentConnection* Track::EditAssist::SegmentConnectionHandle::segment_connection [protected]

Pointer to the segment_connection used for this vertex.

Definition at line 51 of file SegmentConnectionHandle.h.

const Track& Track::EditAssist::SegmentConnectionHandle::track [protected]

The track this applies to.

Definition at line 45 of file SegmentConnectionHandle.h.

const std::size_t Track::EditAssist::SegmentConnectionHandle::vertex_name [protected]

The name of the vertex the handle is on.

Definition at line 47 of file SegmentConnectionHandle.h.


The documentation for this class was generated from the following files:
Get Racer at SourceForge.net. Fast, secure and Free Open Source software downloads

Generated at Mon Sep 6 00:41:19 2010 by Doxygen version 1.4.7 for Racer version svn335.