DelphiXe3 FireMonkey 怎么画图

DelphiXe3 FireMonkey 如何画图

DelphiXe3 FireMonkey  如何画图

         在Delphi的老版本中,我们使用TCanvas画布类来实现画图操作,如画线、画圆、画矩形等。在DelphiXe3中的FireMonkey,HD以及3D应用程序中,如何通过自己编写代码来实现画图操作呢。

 

      先来一睹为快

DelphiXe3 FireMonkey 怎么画图

 

画布类TCanvas

DelphiXe3 FireMonkey 怎么画图

画布类是FMX.Types.TCanvas,这是一个抽象类,不能直接实例化而使用。所以在上面的演示程序中,我们使用了TImage类,我们在TImage.Bitmap.Canvas这个画布上实现了画图操作。

 

1.TCanvas提供了如下画图方法

FMX.Types.TCanvas.DrawBitmap   画位图

FMX.Types.TCanvas.DrawArc       画弧形

FMX.Types.TCanvas.DrawEllipse    画椭圆

FMX.Types.TCanvas.DrawLine       画线

FMX.Types.TCanvas.DrawPath       画路径

FMX.Types.TCanvas.DrawPolygon    画多边形

FMX.Types.TCanvas.DrawRectSides 画矩形区域

 

2.TCanvas的禁制刷新方法

FMX.Types.TCanvas.BeginScene

FMX.Types.TCanvas.EndScene

这个类似于Delphi早期版本中的BeginUpdate,EndUpdate

 

3.画笔画刷

 DelphiXe3 FireMonkey 怎么画图

画布使用的画笔画刷对象是FMX.Types.TCanvas.Stroke,它是类FMX.Types.TStrokeBrush,他提供了一些属性来改变图形的表现形式。

 

4.画笔的宽度

 FMX.Types.TStrokeBrush.Thickness

 

 

效果如下图

DelphiXe3 FireMonkey 怎么画图

 

5.画笔的线形

FMX.Types.TStrokeBrush.Dash 

取值如下:

TStrokeDash = (sdSolid,sdDash, sdDot, sdDashDot, sdDashDotDot, sdCustom);

 

具体含义:

sdSolid

实线.         DelphiXe3 FireMonkey 怎么画图

sdDash

虚线.         DelphiXe3 FireMonkey 怎么画图

sdDot

点线.         DelphiXe3 FireMonkey 怎么画图

sdDashDot 

点划线.      DelphiXe3 FireMonkey 怎么画图

sdDashDotDot 

点点划线.   DelphiXe3 FireMonkey 怎么画图

sdCustom

自定义线性.

 

效果如下图

DelphiXe3 FireMonkey 怎么画图

 

6.线端点现状

FMX.Types.TStrokeBrush.Cap

 

取值如下:

TStrokeCap = (scFlat, scRound);

 

具体含义:

scFlat

线端点是方形. DelphiXe3 FireMonkey 怎么画图

scRound

线端点是圆形. DelphiXe3 FireMonkey 怎么画图

 

效果如下图:

DelphiXe3 FireMonkey 怎么画图

 

7.线连接形式

FMX.Types.TStrokeBrush.Join

 

取值如下:

TStrokeJoin = (sjMiter, sjRound, sjBevel);

 

具体含义:

sjMiter

斜接.   DelphiXe3 FireMonkey 怎么画图   

sjRound

圆接.   DelphiXe3 FireMonkey 怎么画图

sjBevel

坡接.   DelphiXe3 FireMonkey 怎么画图

 

效果如下图:

 DelphiXe3 FireMonkey 怎么画图DelphiXe3 FireMonkey 怎么画图

 

DelphiXe3 FireMonkey 怎么画图