使用Delphi中的常量组件在画布上绘图

时间:2014-01-11 09:48:48

标签: delphi canvas delphi-xe

有没有办法在布局中绘制画布。我的意思是我有一个移动和恒定轴的对象。每个人都知道当物体从A点移动到B点时,我们应该用某种颜色填充矩形。一个细心的用户可能会注意到图像闪烁。

一种方法:如果我有一个常量画布,其中包含一组对象,如轴,网格等......以及另一个具有移动对象的画布。  我可以把它们组合起来像

SumCanvas.Pixels[i, j] = ConstCanvas.Pixels[i, j] + MovingCanvas.Pixels[i, j]

仅填充MovingCanvas。 也许有另一种方式?

UPD

一段代码: 自我继承自。

// ...
Canvas.Rectangle(-1, -1, Self.Width, Self.Height);
// Fill all area of canvas by
// clWhite. This is a reason of an image blinking.

// ...
Shape.position := position; // the coordinate of permanently moving object;
// ...
{The constant part}
AddGrid; // drawing a constantCanvas (axis and grids);
for Shape in FListOfShapes do // TListOfShapes = TList<IShape>
  shape.draw; // a set of another shape with constant coordinates.
// ...

0 个答案:

没有答案