Unit1.cpp 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. //---------------------------------------------------------------------------
  2. #include <vcl.h>
  3. #pragma hdrstop
  4. #include "Unit1.h"
  5. //---------------------------------------------------------------------------
  6. #pragma package(smart_init)
  7. #pragma link "GLBaseClasses"
  8. #pragma link "GLCoordinates"
  9. #pragma link "GLCrossPlatform"
  10. #pragma link "GLGeomObjects"
  11. #pragma link "GLHiddenLineShader"
  12. #pragma link "GLMaterial"
  13. #pragma link "GLObjects"
  14. #pragma link "GLOutlineShader"
  15. #pragma link "GLScene"
  16. #pragma link "GLWin32Viewer"
  17. #pragma resource "*.dfm"
  18. TForm1 *Form1;
  19. //---------------------------------------------------------------------------
  20. __fastcall TForm1::TForm1(TComponent* Owner)
  21. : TForm(Owner)
  22. {
  23. }
  24. //---------------------------------------------------------------------------
  25. void __fastcall TForm1::GLSceneViewer1MouseDown(TObject *Sender, TMouseButton Button,
  26. TShiftState Shift, int X, int Y)
  27. {
  28. mx = X; my = Y;
  29. }
  30. //---------------------------------------------------------------------------
  31. void __fastcall TForm1::GLSceneViewer1MouseMove(TObject *Sender, TShiftState Shift,
  32. int X, int Y)
  33. {
  34. if (Shift.Contains(ssLeft))
  35. GLCamera1->MoveAroundTarget(my-Y, mx-X);
  36. else
  37. if (Shift.Contains(ssRight))
  38. GLCamera1->RotateTarget(my-Y, mx-X);
  39. mx = X; my = Y;
  40. }
  41. //---------------------------------------------------------------------------
  42. void __fastcall TForm1::CheckBox1Click(TObject *Sender)
  43. {
  44. GLOutlineShader1->Enabled = CheckBox1->Checked;
  45. }
  46. //---------------------------------------------------------------------------
  47. void __fastcall TForm1::CheckBox2Click(TObject *Sender)
  48. {
  49. GLHiddenLineShader2->Enabled = CheckBox2->Checked;
  50. }
  51. //---------------------------------------------------------------------------
  52. void __fastcall TForm1::CheckBox3Click(TObject *Sender)
  53. {
  54. GLHiddenLineShader2->Solid = CheckBox3->Checked;
  55. }
  56. //---------------------------------------------------------------------------
  57. void __fastcall TForm1::CheckBox4Click(TObject *Sender)
  58. {
  59. if (CheckBox4->Checked)
  60. GLHiddenLineShader2->BackLine->Pattern = 0xFF00; // bit pattern
  61. else
  62. GLHiddenLineShader2->BackLine->Pattern = 0xFFFF;
  63. }
  64. //---------------------------------------------------------------------------
  65. void __fastcall TForm1::CheckBox5Click(TObject *Sender)
  66. {
  67. GLHiddenLineShader2->SurfaceLit = CheckBox5->Checked;
  68. }
  69. //---------------------------------------------------------------------------
  70. void __fastcall TForm1::CheckBox6Click(TObject *Sender)
  71. {
  72. if (CheckBox6->Checked)
  73. GLHiddenLineShader2->ShadeModel = smFlat;
  74. else
  75. GLHiddenLineShader2->ShadeModel = smSmooth;
  76. }
  77. //---------------------------------------------------------------------------