Main Page | Modules | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

Arak::CN94Proposal::InteriorTriangleBirth Class Reference

#include <cn94.hpp>

Inheritance diagram for Arak::CN94Proposal::InteriorTriangleBirth:

Inheritance graph
[legend]
Collaboration diagram for Arak::CN94Proposal::InteriorTriangleBirth:

Collaboration graph
[legend]
List of all members.

Detailed Description

Adds a triangle to the interior of the colored region; all points inside the triangle are recolored.

Definition at line 68 of file cn94.hpp.

Public Member Functions

 InteriorTriangleBirth ()
void reset (const Point &u, const Point &v, const Point &w)
 Resets this move with the new values.

virtual void execute (Coloring &c)
 Updates the supplied coloring according to this move.

virtual void undo (Coloring &c)
 Updates the supplied Coloring so that the effects of performing this move are undone.


Protected Attributes

Point u
 The vertices of the triangle.

Point v
 The vertices of the triangle.

Point w
 The vertices of the triangle.

Coloring::VertexHandle vh
 A handle on a vertex of the triangle created by the move.


Friends

class CN94Proposal


Constructor & Destructor Documentation

Arak::CN94Proposal::InteriorTriangleBirth::InteriorTriangleBirth  )  [inline]
 

Definition at line 88 of file cn94.hpp.


Member Function Documentation

void CN94Proposal::InteriorTriangleBirth::execute Coloring c  )  [virtual]
 

Updates the supplied coloring according to this move.

It is an error to call this method if the move is not valid for the supplied coloring.

Parameters:
c a coloring to be updated

Implements Arak::ColoringMove.

Definition at line 50 of file cn94.cpp.

References Arak::Coloring::newInteriorTriangle(), u, v, PointerHandle< T >::valid(), vh, and w.

void CN94Proposal::InteriorTriangleBirth::reset const Point u,
const Point v,
const Point w
 

Resets this move with the new values.

Parameters:
u the first vertex of the new triangle
v the second vertex of the new triangle
w the third vertex of the new triangle

Definition at line 43 of file cn94.cpp.

References Arak::Geometry::Point, Arak::Coloring::VertexHandle, and vh.

Referenced by Arak::CN94Proposal::sampleInteriorTriangleBirth().

void CN94Proposal::InteriorTriangleBirth::undo Coloring c  )  [virtual]
 

Updates the supplied Coloring so that the effects of performing this move are undone.

The semantics of this method ensure that applying execute(Coloring&) and then undo(Coloring&) to the same coloring leaves the coloring invariant. It is an error to call this method if this undo is not valid for the supplied coloring.

Parameters:
c a coloring to be updated

Implements Arak::ColoringMove.

Definition at line 55 of file cn94.cpp.

References Arak::Coloring::deleteIntTriangle(), and vh.


Friends And Related Function Documentation

friend class CN94Proposal [friend]
 

Definition at line 70 of file cn94.hpp.


Member Data Documentation

Point Arak::CN94Proposal::InteriorTriangleBirth::u [protected]
 

The vertices of the triangle.

Definition at line 77 of file cn94.hpp.

Referenced by execute().

Point Arak::CN94Proposal::InteriorTriangleBirth::v [protected]
 

The vertices of the triangle.

Definition at line 77 of file cn94.hpp.

Referenced by execute(), and Arak::CN94Proposal::ll().

Coloring::VertexHandle Arak::CN94Proposal::InteriorTriangleBirth::vh [protected]
 

A handle on a vertex of the triangle created by the move.

This is invalid unless the move has been executed; it is invalidated if the move is undone.

Definition at line 84 of file cn94.hpp.

Referenced by execute(), reset(), and undo().

Point Arak::CN94Proposal::InteriorTriangleBirth::w [protected]
 

The vertices of the triangle.

Definition at line 77 of file cn94.hpp.

Referenced by execute(), and Arak::CN94Proposal::ll().


The documentation for this class was generated from the following files:
Generated on Wed May 25 14:40:35 2005 for Arak by doxygen 1.3.6