fcPanoViewer.h 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. //---------------------------------------------------------------------------
  2. #ifndef fcPanoViewerH
  3. #define fcPanoViewerH
  4. //---------------------------------------------------------------------------
  5. #include <Classes.hpp>
  6. #include <Controls.hpp>
  7. #include <StdCtrls.hpp>
  8. #include <ExtCtrls.hpp>
  9. #include <ExtDlgs.hpp>
  10. #include <ComCtrls.hpp>
  11. #include <Dialogs.hpp>
  12. #include <Forms.hpp>
  13. #include <Vcl.Imaging.jpeg.hpp>
  14. #include "GLS.Cadencer.hpp"
  15. #include "GLS.Objects.hpp"
  16. #include "GLS.Scene.hpp"
  17. #include "GLS.Texture.hpp"
  18. #include "GLS.SceneViewer.hpp"
  19. #include "GLS.BaseClasses.hpp"
  20. #include "GLS.Coordinates.hpp"
  21. #include "GLS.Material.hpp"
  22. #include "Stage.Keyboard.hpp"
  23. #include "GLS.FileJPEG.hpp"
  24. #include "Stage.Utils.hpp"
  25. //---------------------------------------------------------------------------
  26. class TFormPanorama : public TForm
  27. {
  28. __published: // IDE-managed Components
  29. TGLSceneViewer *GLSceneViewer;
  30. TPanel* Panel1;
  31. TLabel* LabelYaw;
  32. TLabel* LabelPitch;
  33. TLabel* Label1;
  34. TLabel* Label2;
  35. TButton* BtnLoad;
  36. TTrackBar *TrackBarFocal;
  37. TGLScene *GLScene;
  38. TGLSphere* Sphere1;
  39. TGLCamera *Camera;
  40. TOpenPictureDialog *OpenPictureDialog;
  41. TGLMaterialLibrary *GLMaterialLibrary;
  42. TGLCadencer *GLCadencer;
  43. void __fastcall GLSceneViewerMouseDown(
  44. TObject* Sender, TMouseButton Button, TShiftState Shift, int X, int Y);
  45. void __fastcall GLSceneViewerMouseMove(
  46. TObject* Sender, TShiftState Shift, int X, int Y);
  47. void __fastcall BtnLoadClick(TObject* Sender);
  48. void __fastcall TrackBarFocalChange(TObject* Sender);
  49. void __fastcall GLCadencerProgress(
  50. TObject* Sender, const double deltaTime, const double newTime);
  51. void __fastcall FormKeyDown(TObject* Sender, WORD &Key, TShiftState Shift);
  52. void __fastcall FormMouseWheel(TObject* Sender, TShiftState Shift,
  53. int WheelDelta, TPoint &MousePos, bool &Handled);
  54. void __fastcall FormCreate(TObject *Sender);
  55. private:
  56. int mx, my;
  57. float pitch, yaw; // in degrees
  58. void PanCameraAround(float dx, float dy);
  59. public:
  60. TFileName Path;
  61. __fastcall TFormPanorama(TComponent* Owner);
  62. };
  63. //---------------------------------------------------------------------------
  64. extern PACKAGE TFormPanorama* FormPanorama;
  65. //---------------------------------------------------------------------------
  66. #endif