fdCube.pas 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. unit fdCube;
  2. interface
  3. uses
  4. System.SysUtils,
  5. System.Types,
  6. System.UITypes,
  7. System.Classes,
  8. System.Variants,
  9. FMX.Types,
  10. FMX.Controls,
  11. FMX.Forms,
  12. FMX.Graphics,
  13. FMX.Dialogs,
  14. System.Math.Vectors,
  15. FMX.Controls3D,
  16. FMX.Objects3D,
  17. FMX.Viewport3D,
  18. FMX.Controls.Presentation,
  19. FMX.StdCtrls,
  20. FMX.Layouts,
  21. FMX.Types3D,
  22. FMX.MaterialSources,
  23. FMX.Ani,
  24. FMX.Objects,
  25. GBE.CubeExtend;
  26. type
  27. TFormCube = class(TForm)
  28. Viewport3D1: TViewport3D;
  29. Layout1: TLayout;
  30. CheckBoxFront: TCheckBox;
  31. CheckBoxRight: TCheckBox;
  32. CheckBoxBack: TCheckBox;
  33. CheckBoxLeft: TCheckBox;
  34. CheckBoxTop: TCheckBox;
  35. CheckBoxBottom: TCheckBox;
  36. Light1: TLight;
  37. LightMaterialSource1: TLightMaterialSource;
  38. LightMaterialSource2: TLightMaterialSource;
  39. LightMaterialSource3: TLightMaterialSource;
  40. LightMaterialSource4: TLightMaterialSource;
  41. LightMaterialSource5: TLightMaterialSource;
  42. LightMaterialSource6: TLightMaterialSource;
  43. Light2: TLight;
  44. Light3: TLight;
  45. GBECubeExtend1: TGBECubeExtend;
  46. FloatAnimation1: TFloatAnimation;
  47. Rectangle1: TRectangle;
  48. procedure FloatAnimation1Process(Sender: TObject);
  49. procedure CheckBoxFrontChange(Sender: TObject);
  50. procedure CheckBoxRightChange(Sender: TObject);
  51. procedure CheckBoxBackChange(Sender: TObject);
  52. procedure CheckBoxLeftChange(Sender: TObject);
  53. procedure CheckBoxTopChange(Sender: TObject);
  54. procedure CheckBoxBottomChange(Sender: TObject);
  55. private
  56. public
  57. end;
  58. var
  59. FormCube: TFormCube;
  60. implementation
  61. {$R *.fmx}
  62. procedure TFormCube.FloatAnimation1Process(Sender: TObject);
  63. begin
  64. GBECubeExtend1.RotationAngle.X := GBECubeExtend1.RotationAngle.X + 1;
  65. GBECubeExtend1.RotationAngle.Z := GBECubeExtend1.RotationAngle.Z + 2;
  66. end;
  67. procedure TFormCube.CheckBoxFrontChange(Sender: TObject);
  68. begin
  69. GBECubeExtend1.FaceFrontVisible := CheckBoxFront.IsChecked;
  70. end;
  71. procedure TFormCube.CheckBoxRightChange(Sender: TObject);
  72. begin
  73. GBECubeExtend1.FaceRightVisible := CheckBoxRight.IsChecked;
  74. end;
  75. procedure TFormCube.CheckBoxBackChange(Sender: TObject);
  76. begin
  77. GBECubeExtend1.FaceBackVisible := CheckBoxBack.IsChecked;
  78. end;
  79. procedure TFormCube.CheckBoxLeftChange(Sender: TObject);
  80. begin
  81. GBECubeExtend1.FaceLeftVisible := CheckBoxLeft.IsChecked;
  82. end;
  83. procedure TFormCube.CheckBoxTopChange(Sender: TObject);
  84. begin
  85. GBECubeExtend1.FaceTopVisible := CheckBoxTop.IsChecked;
  86. end;
  87. procedure TFormCube.CheckBoxBottomChange(Sender: TObject);
  88. begin
  89. GBECubeExtend1.FaceBottomVisible := CheckBoxBottom.IsChecked;
  90. end;
  91. end.