MicroImages::GRTOOL_CIRCLE Class Reference

GRTOOL_CIRCLE - Circle tool. More...

#include <mi32/grtool.h>

Inheritance diagram for MicroImages::GRTOOL_CIRCLE:

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual int GenerateRegion (REGION2D &region) const
double GetAngle () const
const DPOINT2DGetCenter () const
double GetRadius () const
 GRTOOL_CIRCLE (GRTOOLVIEW *view)
void SetAngle (double angle)
void SetAngleVisible (bool anglevisible=true)
void SetCenter (const DPOINT2D &center)
void SetMarker (MARKER marker, UINT16 size=0)
void SetRadius (double radius)
void SetRadiusRange (double minradius, double maxradius)
virtual ~GRTOOL_CIRCLE ()

Private Types

enum  ZONE {
  ZONE_NoFunction = 0, ZONE_Outside, ZONE_Inside, ZONE_Perimeter,
  ZONE_SetCenter, ZONE_Rotate
}

Private Member Functions

void AdjustTool (const DPOINT2D &, bool firsttime=false)
void ComputeCursorZone (const DPOINT2D &)
virtual void DoDraw (CDC *)
virtual void DoMove (double dx, double dy, ADJUSTFLAGS flags)
virtual void OnLButtonDown (UINT nFlags, const CPoint &mpoint)
virtual void OnMouseMove (UINT nFlags, const CPoint &mpoint)
void StartTool (const DPOINT2D &)
void UpdateCursor (const DPOINT2D &) const

Private Attributes

double m_angle
bool m_anglevisible
DPOINT2D m_center
ZONE m_CursorZone
MARKER m_marker
UINT16 m_markersize
double m_maxradius
double m_minradius
DPOINT2D m_prevpt
double m_radius

Detailed Description

GRTOOL_CIRCLE - Circle tool.

Definition at line 972 of file grtool.h.


Member Enumeration Documentation

enum MicroImages::GRTOOL_CIRCLE::ZONE [private]
 

Enumeration constants.

Enumeration values:
ZONE_NoFunction 
ZONE_Outside 
ZONE_Inside 
ZONE_Perimeter 
ZONE_SetCenter 
ZONE_Rotate 

Definition at line 1038 of file grtool.h.


Constructor & Destructor Documentation

MicroImages::GRTOOL_CIRCLE::GRTOOL_CIRCLE GRTOOLVIEW view  )  [explicit]
 

Constructor.

virtual MicroImages::GRTOOL_CIRCLE::~GRTOOL_CIRCLE  )  [virtual]
 

Destructor.


Member Function Documentation

void MicroImages::GRTOOL_CIRCLE::AdjustTool const DPOINT2D ,
bool  firsttime = false
[private]
 

Methods.

void MicroImages::GRTOOL_CIRCLE::ComputeCursorZone const DPOINT2D  )  [private]
 

virtual void MicroImages::GRTOOL_CIRCLE::DoDraw CDC *   )  [private, virtual]
 

Methods called by the GRTOOL base class.

Implements MicroImages::GRTOOL.

virtual void MicroImages::GRTOOL_CIRCLE::DoMove double  dx,
double  dy,
ADJUSTFLAGS  flags
[private, virtual]
 

Reimplemented from MicroImages::GRTOOL.

virtual int MicroImages::GRTOOL_CIRCLE::GenerateRegion REGION2D region  )  const [virtual]
 

Generate region from tool boundary.

Returns:
TRUE if region generated, FALSE if not, < 0 if error.

Reimplemented from MicroImages::GRTOOL.

double MicroImages::GRTOOL_CIRCLE::GetAngle  )  const [inline]
 

Get current rotation angle.

Definition at line 990 of file grtool.h.

const DPOINT2D& MicroImages::GRTOOL_CIRCLE::GetCenter  )  const [inline]
 

Get center position.

Definition at line 994 of file grtool.h.

double MicroImages::GRTOOL_CIRCLE::GetRadius  )  const [inline]
 

Get radius.

Definition at line 998 of file grtool.h.

virtual void MicroImages::GRTOOL_CIRCLE::OnLButtonDown UINT  nFlags,
const CPoint &  mpoint
[private, virtual]
 

Methods called directly by the equivalent GRTOOLVIEW method.

Implements MicroImages::GRTOOL.

virtual void MicroImages::GRTOOL_CIRCLE::OnMouseMove UINT  nFlags,
const CPoint &  mpoint
[private, virtual]
 

Implements MicroImages::GRTOOL.

void MicroImages::GRTOOL_CIRCLE::SetAngle double  angle  ) 
 

Set rotation angle.

The rotation will only be visible to the user if SetAngleVisible() has been used.

Parameters:
angle  New rotation angle in RADIANS

void MicroImages::GRTOOL_CIRCLE::SetAngleVisible bool  anglevisible = true  ) 
 

Set whether rotation angle indicator is visible.

The rotation angle is indicated by a line from the center to the boundary.

void MicroImages::GRTOOL_CIRCLE::SetCenter const DPOINT2D center  ) 
 

Set circle center coordinates.

void MicroImages::GRTOOL_CIRCLE::SetMarker MARKER  marker,
UINT16  size = 0
 

Set marker type and size.

The default marker is MARKER_Plus with a size of 9 pixels.

Parameters:
marker  New marker type
size  New marker size, 0 to retain current size

void MicroImages::GRTOOL_CIRCLE::SetRadius double  radius  ) 
 

Set radius.

void MicroImages::GRTOOL_CIRCLE::SetRadiusRange double  minradius,
double  maxradius
 

Set allowed radius range.

Parameters:
minradius  Minimum radius in tool units
maxradius  Maximum radius, <= 0 for no maximum

void MicroImages::GRTOOL_CIRCLE::StartTool const DPOINT2D  )  [private]
 

void MicroImages::GRTOOL_CIRCLE::UpdateCursor const DPOINT2D  )  const [private]
 


Member Data Documentation

double MicroImages::GRTOOL_CIRCLE::m_angle [private]
 

Definition at line 1055 of file grtool.h.

bool MicroImages::GRTOOL_CIRCLE::m_anglevisible [private]
 

Visibility of rotation angle indicator.

Definition at line 1051 of file grtool.h.

DPOINT2D MicroImages::GRTOOL_CIRCLE::m_center [private]
 

Center.

Definition at line 1053 of file grtool.h.

ZONE MicroImages::GRTOOL_CIRCLE::m_CursorZone [private]
 

Current cursor zone.

Definition at line 1057 of file grtool.h.

MARKER MicroImages::GRTOOL_CIRCLE::m_marker [private]
 

Tool settings.

Definition at line 1047 of file grtool.h.

UINT16 MicroImages::GRTOOL_CIRCLE::m_markersize [private]
 

Definition at line 1048 of file grtool.h.

double MicroImages::GRTOOL_CIRCLE::m_maxradius [private]
 

Maximum radius, 0 if no maximum.

Definition at line 1050 of file grtool.h.

double MicroImages::GRTOOL_CIRCLE::m_minradius [private]
 

Minimum radius.

Definition at line 1049 of file grtool.h.

DPOINT2D MicroImages::GRTOOL_CIRCLE::m_prevpt [private]
 

Previous point during button-down.

Definition at line 1058 of file grtool.h.

double MicroImages::GRTOOL_CIRCLE::m_radius [private]
 

Definition at line 1054 of file grtool.h.


The documentation for this class was generated from the following file:
Generated on Tue Dec 14 13:21:04 2004 for TNTsdk by  doxygen 1.3.8-20040913