TIAUniChart2D
Common Info
Installation
Examples
Auto Editing Options
Classes hierarchy
Classes descrption
TIAUniChart2D
Properties
Events
Methods
IAChartBaseTextClassData(wrapper IAChartBaseTextClass)
Properties
IAChartBaseLinesClassData(wrapper IAChartBaseLinesClass)
Properties
IAChartBaseAxisClassData(wrapper IAChartBaseAxisClass)
Properties
Methods
IAChartBaseMovingClass
Properties
IAChartBaseLineArray
Properties
IAChartDataArrayArr
IAChartBaseLine
Properties
License




[Main] [Next]

Common Info

TIAUniChart2D- 2D Scientific Chart Component for representation of any number
of graphs at wide kinds of X/Y, X/Y/Y2 dependities




Component provide next:
·1. Any position and combination of X/Y/Y2 axises (visible or not)  
·2. Next Captions - Main,X,Y,Y2,Lines Info,User info field at any position  
·3. Auto editing, auto positioning, auto ticks number defining, auto scaling  
·4. All text fields is fully customized (even at run time if you need)- any text any font, tags at text any lines number, 7 border style, gaps inner and outer, switched on/off the auto sizing, TImagelist bitmaps could be included at text field.  
·5. Different kinds of points- size,color,type;lines - color, splines, error bars,- all switchable and undependently  
·6. Auto Editor forms included (text fields,axis,lines,back)- could be used at run time - or switched off.  
·7. Design editor included  
·8. Bitmap custom ticks/arrows avaible  
·9. Smart resizing functinionality  
·10. Transparence/opaque for any field  
·11... This is not all...  
madewithhm.gif



[Previous] [Main] [Next]

Installation

Delphi 4 -
Open Unichart2D.DPK file - and click on INSTALL button - this is All.

Delphi 5 -
Do it as at Delphi 4 case, except you will asked for updationg on new format - so agree with it.

Builder 4,5 - not tested (try do it by your own risk)



[Previous] [Main] [Next]

Examples

unichart01r.png
example02.png
example03.png



[Previous] [Main] [Next]

Auto Editing Options

Also, You could Construct and Edit text Fields, Points, Axies, Lines at run time :
linesproperties.png
textfields.png
axies.png



[Previous] [Main] [Next]

Classes hierarchy

The next hierarchy used for this component:

 
TIAUniChart2D->  
use (TIAChartInnerPanel,IAChartBaseLinesClassData,IAChartBaseAxisClassData,IAChartBaseTextClassData)  
 
IAChartBaseLinesClassData wrapper for IAChartBaseLinesClass - class of (IAChartBaseMovingClass) ->  
use IAChartBaseLineArray  
 
IAChartBaseAxisClassData wrapper for IAChartBaseAxisClass  
 
IAChartBaseTextClassData wrapper for IAChartBaseAxisClass - class of (IAChartBaseMovingClass)  





[Previous] [Main] [Next]

Classes descrption





[Previous] [Main] [Next]

TIAUniChart2D

- base class - including ALL other classes



[Previous] [Main] [Next]

Properties

property MainField : IAChartBaseLinesClassData read FMainField write SetMainField;
//->place for lines drawing

property BevelInner : TIAChartBevel read FBevelInner write SetBevelInner default iacbDown;
//->type if inner bevel

property BevelOuter : TIAChartBevel read FBevelOuter write SetBevelOuter default iacbUp;
//->type of outer bevel

property Color : TColor read GetColor write SetColor default clGray;
//-> back color

property BevelInnerWidth : byte read FBevelInnerWidth write SetBevelInnerWidth default 2;
//-> width of inner bevel

property BevelOuterWidth : byte read FBevelOuterWidth write SetBevelOuterWidth default 2;
//-> width of outer bevel

property GapInner : byte read FGapInner write SetGapInner default 2;
//-> width of inner Gap

property GapOuter : byte read FGapOuter write SetGapOuter default 2;
//-> width of outer Gap

property GapInOut : byte read FGapInOut write SetGapInOut default 0;
//-> width of Gap between inner and outer bevel

property XCaption : IAChartBaseTextClassData read FXCaption write SetXCaption;
//->X Caption

property YCaption : IAChartBaseTextClassData read FYCaption write SetYCaption;
//->Y Caption

property YCaption2 : IAChartBaseTextClassData read FYCaption2 write SetYCaption2;
//->Y2 Caption

property XAxis : IAChartBaseAxisClassData read FXAxis write SetXAxis;
//-> X Axis

property YAxis : IAChartBaseAxisClassData read FYAxis write SetYAxis;
//-> Y Axis

property YAxis2 : IAChartBaseAxisClassData read FYAxis2 write SetYAxis2;
//-> Y2 Axis

property BevelColor : TColor read FBevelColor write SetBevelColor default clSilver;
//-> Color of Bevel(s)

property ResizeReaction :TIAChartResizeReaction read FResizeReaction write SetResizeReaction default iacrrStandart;
//-> Reaction at control resize

property MainCaption : IAChartBaseTextClassData read FMainCaption write SetMainCaption;
// -> Main Captio of Chart

property UserTextField : IAChartBaseTextClassData read FUserTextField write SetUserTextField;
//-> User info field

property LinesField : IAChartBaseTextClassData read FLinesField write SetLinesField;
//-> info field about lines

property BackLineDrawBitmap : TBitmap read FBackLineDrawBitmap write SetBackLineDrawBitmap;
//-> Bitmap on which we draw the line representation

property BackLineBitmapTransparent : Boolean read FBackLineBitmapTransparent write SetBackLineBitmapTransparent;
// -> this bitmap transparent? (at mask color)



[Previous] [Main] [Next]

Events

property OnXAxisDblClick : TNotifyEvent read FOnXAxisDblClick write SetOnXAxisDblClick;
property OnYAxisDblClick : TNotifyEvent read FOnYAxisDblClick write SetOnYAxisDblClick;
property OnYAxis2DblClick : TNotifyEvent read FOnYAxis2DblClick write SetOnYAxis2DblClick;
property OnXAxisCaptionDblClick : TNotifyEvent read FOnXAxisCaptionDblClick write SetOnXAxisCaptionDblClick;
property OnYAxisCaptionDblClick : TNotifyEvent read FOnYAxisCaptionDblClick write SetOnYAxisCaptionDblClick;
property OnYAxis2CaptionDblClick : TNotifyEvent read FOnYAxis2CaptionDblClick write SetOnYAxis2CaptionDblClick;
property OnMainCaptionDblClick : TNotifyEvent read FOnMainCaptionDblClick write SetOnMainCaptionDblClick;
property OnLinesInfoFieldDblClick : TNotifyEvent read FOnLinesInfoFieldDblClick write SetOnLinesInfoFieldDblClick;
property OnUserInfoFieldDblClick : TNotifyEvent read FOnUserInfoFieldDblClick write SetOnUserInfoFieldDblClick;
property OnMainFieldDblClick : TNotifyEvent read FOnMainFieldDblClick write SetOnMainFieldDblClick;

//-> on double click at coordinated object :) - use it for edit of object

property OnResize;
//-> on resize of class;



[Previous] [Main] [Next]

Methods

procedure AutoRecalibrate(AReservePercent : double = 10);
//->recalibrate the image of lines that must inlines the axises diapason

procedure Reasseble;
//->to auto reposition of inner objects if needed

function GetChartBitmap: TBitmap;
//-> gets the chart bitmap

procedure SaveAsBitmapAT(AFileName : String);
//-> recieves and saves bitmap of chart at file

procedure CopyChartToClipBoard;
//->recieves and moves bitmap to clipboard;

function GetInnerWidth: integer;
//->width of active region (without bevels)

function GetInnerHeight : Integer;
//->height of active region (without bevels)



[Previous] [Main] [Next]

IAChartBaseTextClassData(wrapper IAChartBaseTextClass)

defines any Text Fields (supports orientation/multyline/sizing/images/upper,under cases)



[Previous] [Main] [Next]

Properties

property Text: TCaption read GetText write SetText;
//-> ALL text at field

property Font: TFont read GetFont write SetFont;
//-> main Font of Field

property Transparent : Boolean read GetTransparent write SetTransparent;
//->Transparence of field

property Color : TColor read GetColor write SetColor;
//->Back Color of Field

property StringsArray : TStringList read GetStringsArray write SetStringsArray;
//->Lines of field (text :=StringsArray.text)

property AutoSize : Boolean read GetAutoSize write SetAutoSize;
//->Control auto defines the inner sizes to fit the text

property Width : integer read GetWidth write SetWidth;
//-> width of field

property Height : integer read GetHeight write SetHeight;
//->height of Field

property Top : integer read GetTop write SetTop;
//->top position of field

property Left : Integer read GetLeft write SetLeft;
//->left position of field

property TextOrientation : IAChartBaseTextOrientation read GetTextOrientation write SetTextOrientation;
//-> text orientation - 0,90,180,270 degrees

property BorderStyle : IAChartBaseBorderStyle read GetBorderStyle write SetBorderStyle default iacbbsSimple;
//-> border style

property InnerGap : integer read GetInnerGap write SetInnerGap default 5;
//-> inner gap width

property OuterGap : integer read GetOuterGap write SetOuterGap default 5;
//-> outer gap width

property CurrImageList : TImageList read GetCurrImageList write SetCurrImageList;
//->connected image list from witch we get the images for inserting to text

property Visible : Boolean read GetVisible write SetVisible;
//-> visibility

property AutoEditable : Boolean read GetAutoEditable write SetAutoEditable;
//-> use or no the standart text field editor from author of component



[Previous] [Main] [Next]

IAChartBaseLinesClassData(wrapper IAChartBaseLinesClass)

Main lines field



[Previous] [Main] [Next]

Properties

property MainDataArray : IAChartBaseLineArray read GetMainDataArray write SetMainDataArray;
//-> Array of data for lines

property LastDoubleClickedPointLineNumber : Integer read GetLastDoubleClickedPointLineNumber;
//-> :) from name - use at double click event

property LastDoubleClickedPointDataNumber : Integer read GetLastDoubleClickedPointDataNumber;
//-> :) from name - use at double click event

property Width : integer read GetWidth write SetWidth;
property Height : integer read GetHeight write SetHeight;
property Top : integer read GetTop write SetTop;
property Left : Integer read GetLeft write SetLeft;
//-> Width,height,left top of control.

property Color: TColor read GetColor write SetColor;
//-> Back Color of control

property Transparent : Boolean read GetTransparent write SetTransparent;
//-> is Back Transparent?

property SizeAble : Boolen read GetSizeAble write SetSizeAble;
//-> User could use mouse for resizing

property MoveAble : Boolean read GetMoveAble write SetMoveAble;
//-> User could use mouse for move

property Selectable : Boolean read GetSelectable write SetSelectable;
//-> User could select field by mouse

property ShowGrid : boolean read GetShowGrid write SetShowGrid;
//-> Show Grid or no

property ColorGridX : TColor read GetColorGridX write SetColorGridX;
//-> Color of X Grid

property ColorGridY : TColor read GetColorGridY write SetColorGridY;
//->Color of Y Grid

property ColorGridY2 : TColor read GetColorGridY2 write SetColorGridY2;
//-> Color of Y2 Grid if avaible

property ColorGridBorder : TColor read GetColorGridBorder write SetColorGridBorder;
//-> color of grid border

property AutoEditable : Boolean read GetAutoEditable write SetAutoEditable;
//-> //-> use or no the standart text field editor from author of component


property AutoEditMinDistance : Integer read GetAutoEditMinDistance write SetAutoEditMinDistance;
//-> use to define shortest distance for line auto selecting for edit



[Previous] [Main] [Next]

IAChartBaseAxisClassData(wrapper IAChartBaseAxisClass)

- Just the Axis - All(connected with lines field at main class TIAUniChart2D)



[Previous] [Main] [Next]

Properties

property AxisType : IAChartBaseAxisType read GetAxisType write SetAxisType;
//-> Type of axis - Horizontal or Vertical

property Width : integer read GetWidth write SetWidth;
property Height : integer read GetHeight write SetHeight;
property Top : integer read GetTop write SetTop;
property Left : integer read GetLeft write SetLeft;
//->//-> Width,height,left top of control.

property CenterPointLeft : integer read GetCenterPointLeft write SetCenterPointLeft;
property CenterPointTop : Integer read GetCenterPointTop write SetCenterPointTop;
//-> Left and top of coordinates center - this is BASE value for axis- basis

property BeginShift : Integer read GetBeginShift write SetBeginShift;
property EndShift : Integer read GetEndShift write SetEndShift;
//-> begin and end shift (at points) for begin and end of ticks representation

property Font : TFont read GetFont write SetFont;
//-> Font :)

property ScaleStyle : IAChartBaseAxisStyle read GetScaleStyle write SetScaleStyle;
//-> style of axis - (Linear only now)

property BeginValue : Double read GetBeginValue write SetBeginValue;
property EndValue : Double read GetEndValue write SetEndValue;
//-> begin and end value for axis

property WantedTicks : byte read GetWantedTicks write SetWantedTicks;
//-> set the wanna number of ticks - this value are NOT Guaranted (control will use most friendly number at standart scale types)

property MinorTicks : byte read GetMinorTicks write SetMinorTicks;
//->minor ticks number - accurate

property CurrImageList : TImageList read GetCurrImageList write SetCurrImageList;
//-> Image list for Ticks (Index 0),Minor Ticks (index 1), and Arrow (index 2) representation

property Color : TColor read GetColor write SetColor;
//-> color of axis

property Visible : Boolean read GetVisible write SetVisible;
//- > ;) do you unrerstand this value


property AutoEditable : Boolean read GetAutoEditable write SetAutoEditable;
//-> use or no the standart text field editor from author of component



[Previous] [Main] [Next]

Methods

procedure SetLength(AValue : integer);
//->sets the length of axis - auto include the orientation info

function GetCurrStep: Double;
//-> Current tick step

function GetRealBeginValue: Double;
function GetRealEndvalue : Double;
//-> current real begin and end values (could differ from begin and user end values)




[Previous] [Main] [Next]

IAChartBaseMovingClass

_>Base Class - supports mouse moving / resizing



[Previous] [Main] [Next]

Properties

property Transparence : Boolean read FTransparence write SetTransparence;
property SizeAble : Boolean read FSizeAble write SetSizeAble;
property MoveAble : Boolean read FMoveAble write SetMoveAble;
//-> - by name

property CanMultySelect : Boolean read FCanMultySelect write SetCanMultySelect;
//-> if false - only one this class could be chosen by mouse aganist number of others IAChartBaseMovingClass objects with CanMultySelect
false

property Selectable : Boolean read FSelectable write SetSelectable;
//-> user could select this object



[Previous] [Main] [Next]

IAChartBaseLineArray

Main class for user lines info settings/editing/representation



[Previous] [Main] [Next]

Properties

property Lines : IAChartDataArrayArr read FLines write SetLines;
//-> Lines Array with lines data/description/info

property LinesNumber : Integer read FLinesNumber write SetLinesNumber;
property DataNumber : Integer read FDataNumber write SetDataNumber;
//->number of lines, data at each line

property CommonInfo : string read FCommonInfo write SetCommonInfo;
//->Common String about lines - will printed at lines field first



[Previous] [Main] [Next]

IAChartDataArrayArr

IAChartDataArrayArr = array of IAChartBaseLine;



[Previous] [Main] [Next]

IAChartBaseLine

One of Line



[Previous] [Main] [Next]

Properties

property Data : IAChartDataArray read FData write SetData;
IAChartDataArray = array of Double;
//->Data Array

property Number : Integer read FNumber write SetNumber;
//-> number of Data

property LineType : IAChartBaseLineType read FLineType write SetLineType;
//-> Line type - X,Y,Y2 axis connection of Error Bars defning

property XLine : Integer read FXLine write SetXLine;
//->index of connected X Line (-1 = no line connected)

property XaddLine : Integer read FXaddLine write SetXaddLine;
property XsubLine : Integer read FXsubLine write SetXsubLine;
property YaddLine : Integer read FYaddLine write SetYaddLine;
property YsubLine : Integer read FYsubLine write SetYsubLine;
//->index of connected error bars lines (-1 - no such line)

property PointType : IAChartBaseLinePointType read FPointType write SetPointType;
//-> type of point (by form)

property PointSize : Byte read FPointSize write SetPointSize;
//- > point size

property PointColor : TColor read FPointColor write SetPointColor;
//->:)

property LineStyle : IAChartBaseLineStyle read FLineStyle write SetLineStyle;
//-> line style (None,Lines,Spline)

property LineColor : TColor read FLineColor write SetLineColor;
//->:)

property DiapasonType : IAChartBaseLineDiapasonType read FDiapasonType write SetDiapasonType;
//-> Error Bar style (none,Cross,Rect)

property DiapasonColor : TColor read FDiapasonColor write SetDiapasonColor;
//->Error Bars color

property InfoString : string read FInfoString write SetInfoString;
//-> Information about this line



[Previous] [Main]

License

This component is free for any uncommercial using, at other case
you need to ask the author

andronovin@au.ru
www.geocities.com/andronovin
www.andronovin.boom.ru