Class TRingGauge (unit RinGauge)

Inherits from

TPanel

Written By Tom Lee,Taiwan Ver 0.94 Beta} { Tomm.bbs@[140.113.17.154]

Constructors


Constructor Create(AOwner: TComponent);

Public declarations


Functions

Procedure Paint;

Protected declarations

Procedure WMSize(var Message: TWMSize);


Function DegToRad(inputDeg:Double):Double;


Procedure DrawCanvas;


Procedure DrawGauge(x1,y1,x2,y2,OutR,InR,PieDeg,P1,P2:Integer);


Procedure DrawNeedle(Deg,x1,y1,x2,y2,R:Integer);

Draw Indicator

Function GetArcPointX(Deg:Double;x1,x2,d:integer):Integer;


Function GetArcPointY(Deg:Double;y1,y2,d:integer):Integer;


Function GetNeedleDegree(Min,Max,Progress:LongInt):Integer;


Function GetR(x1,x2:Integer):Integer;


Function GetRx(x1,x2:Integer):Integer;


Function GetRy(y1,y2:Integer):Integer;


Procedure SetColor1(Value:TColor);


Procedure SetColor2(Value:TColor);


Procedure SetColor3(Value:TColor);


Procedure SetIndicationPoint1(Value:LongInt);


Procedure SetIndicationPoint2(Value:LongInt);


Procedure SetInnerRadius(Value:Integer);


Procedure SetMaxValue(Value:LongInt);


Procedure SetMinValue(Value:LongInt);


Procedure SetNeedleRadius(Value:Integer);


Procedure SetNeedleWidth(Value:Integer);


Procedure SetOuterRadius(value:Integer);


Procedure SetPosition(Value:LongInt);


Procedure SetSectorDegree(Value:Integer);


Properties

property Align :

Published declarations

property Alignment :


property BevelInner :


property BevelOuter :


property BevelWidth :


property BorderStyle :


property BorderWidth :


property Caption :


property Color :


property Ctl3D :


property Cursor :


property DragCursor :


property DragMode :


property Enabled :


property FirstIndicationPoint : Longint


property FirstPartColor : TColor


property Font :


property Height :


property HelpContext :


property Hint :


property InnerRadius : Integer


property Left :


property Locked :


property Max : Longint


property Min : Longint


property Name :


property NeedleRadius : Integer


property NeedleWidth : Integer


property OuterRadius : Integer


property ParentColor :


property ParentCtl3D :


property ParentFont :


property ParentShowHint :


property Progress : Longint


property SecondIndicationPoint : Longint


property SecondPartColor : TColor


property SectorDegree : Integer


property ShowHint :


property TabOrder :


property TabStop :


property Tag :


property ThirdPartColor : TColor


property Top :


property Visible :


property Width :


property Canvas :


Events

event OnClick :


event OnDblClick :


event OnDragDrop :


event OnDragOver :


event OnEndDrag :


event OnEnter :


event OnExit :


event OnMouseDown :


event OnMouseMove :


event OnMouseUp :


event OnResize :


Variables

FColor1 : TColor;

Private declarations

FColor2 : TColor;


FColor3 : TColor;


FGaugeHeight : Integer;


FGaugeLeft : Integer;


FGaugeTop : Integer;


FGaugeWidth : Integer;


FIndicationPoint1 : LongInt;


FIndicationPoint2 : LongInt;


FInnerRadius : Integer;


FMax : Longint;


FMin : Longint;


FNeedleDegree : Integer;


FNeedleRadius : Integer;


FNeedleWidth : Integer;


FOuterRadius : Integer;


FProgress : LongInt;


FSectorDegree : Integer;



Constructors


Constructor Create(AOwner: TComponent);

Public declarations


Functions


Procedure Paint;

Protected declarations


Procedure WMSize(var Message: TWMSize);


Function DegToRad(inputDeg:Double):Double;


Procedure DrawCanvas;


Procedure DrawGauge(x1,y1,x2,y2,OutR,InR,PieDeg,P1,P2:Integer);


Procedure DrawNeedle(Deg,x1,y1,x2,y2,R:Integer);

Draw Indicator


Function GetArcPointX(Deg:Double;x1,x2,d:integer):Integer;


Function GetArcPointY(Deg:Double;y1,y2,d:integer):Integer;


Function GetNeedleDegree(Min,Max,Progress:LongInt):Integer;


Function GetR(x1,x2:Integer):Integer;


Function GetRx(x1,x2:Integer):Integer;


Function GetRy(y1,y2:Integer):Integer;


Procedure SetColor1(Value:TColor);


Procedure SetColor2(Value:TColor);


Procedure SetColor3(Value:TColor);


Procedure SetIndicationPoint1(Value:LongInt);


Procedure SetIndicationPoint2(Value:LongInt);


Procedure SetInnerRadius(Value:Integer);


Procedure SetMaxValue(Value:LongInt);


Procedure SetMinValue(Value:LongInt);


Procedure SetNeedleRadius(Value:Integer);


Procedure SetNeedleWidth(Value:Integer);


Procedure SetOuterRadius(value:Integer);


Procedure SetPosition(Value:LongInt);


Procedure SetSectorDegree(Value:Integer);


Properties


property Align :

Published declarations


property Alignment :


property BevelInner :


property BevelOuter :


property BevelWidth :


property BorderStyle :


property BorderWidth :


property Caption :


property Color :


property Ctl3D :


property Cursor :


property DragCursor :


property DragMode :


property Enabled :


property FirstIndicationPoint : Longint


property FirstPartColor : TColor


property Font :


property Height :


property HelpContext :


property Hint :


property InnerRadius : Integer


property Left :


property Locked :


property Max : Longint


property Min : Longint


property Name :


property NeedleRadius : Integer


property NeedleWidth : Integer


property OuterRadius : Integer


property ParentColor :


property ParentCtl3D :


property ParentFont :


property ParentShowHint :


property Progress : Longint


property SecondIndicationPoint : Longint


property SecondPartColor : TColor


property SectorDegree : Integer


property ShowHint :


property TabOrder :


property TabStop :


property Tag :


property ThirdPartColor : TColor


property Top :


property Visible :


property Width :


property Canvas :


Events


event OnClick :


event OnDblClick :


event OnDragDrop :


event OnDragOver :


event OnEndDrag :


event OnEnter :


event OnExit :


event OnMouseDown :


event OnMouseMove :


event OnMouseUp :


event OnResize :


Variables


FColor1 : TColor;

Private declarations


FColor2 : TColor;


FColor3 : TColor;


FGaugeHeight : Integer;


FGaugeLeft : Integer;


FGaugeTop : Integer;


FGaugeWidth : Integer;


FIndicationPoint1 : LongInt;


FIndicationPoint2 : LongInt;


FInnerRadius : Integer;


FMax : Longint;


FMin : Longint;


FNeedleDegree : Integer;


FNeedleRadius : Integer;


FNeedleWidth : Integer;


FOuterRadius : Integer;


FProgress : LongInt;


FSectorDegree : Integer;