
Author: Vsevolod L1433
I’ve got a task of cloning FireMonkey objects. Let it be “chess”. An object is created as an aggregate in design-time. Look at the picture in the Structure pane. I have made the composite pawn model and start thinking of make 15 more.

If you’re thinking of a similar method, please, try Clone method. It will help you clone any FireMonkey object, not necessarily pawns, 3D primitives, but also controls. The only hint you need to know is that the only property “Parent” is not cloned, not to trigger rebuilding of the scene. Very often cloning should be done “purely-in-memory” with no consequences to the visual interface and corresponding times to draw.

The code shows how to do clones:
1 2 3 4 5 6 7 8 9 10 11 |
var tmp : TDummy; begin // cloning without visual effects tmp := TDummy(duPawn.Clone(self)); // setting Parent property to see the clone tmp.Parent := self; // Dummy1 or any typically parental object // don't forget to change Position (x, y and z) end; |
Once again, Clone is implemented in TFmxObject (FMX.Types).
Thanks to Eugene Kryukov, FireMonkey architect and my good adviser.
Design. Code. Compile. Deploy.
Start Free Trial Upgrade Today
Free Delphi Community Edition Free C++Builder Community Edition
code area above shows some markup
Fixed. Thanks for letting us know about it.