00001
00013
00014
00015 #ifndef MDITransparentH
00016 #define MDITransparentH
00017
00018 #include "MDIEdit.h"
00019 #include <Classes.hpp>
00020 #include <Controls.hpp>
00021 #include <StdCtrls.hpp>
00022 #include <Forms.hpp>
00023 #include <ComCtrls.hpp>
00024 #include <Menus.hpp>
00025 #include <Dialogs.hpp>
00026 #include <Printers.hpp>
00027 #include <Clipbrd.hpp>
00028 #include <ExtCtrls.hpp>
00029 #include <ActnCtrls.hpp>
00030 #include <ActnMan.hpp>
00031 #include <CustomizeDlg.hpp>
00032 #include <ToolWin.hpp>
00033 #include <gl\gl.h>
00034 #include <gl\glu.h>
00035
00036 class TTransparentForm : public TForm
00037 {
00038 __published:
00039 TPanel *Hauptpanel;
00040 TBevel *Bevel;
00041 TGroupBox *GroupBox2;
00042 TLabel *Label4;
00043 TEdit *txrot;
00044 TEdit *tyrot;
00045 TEdit *tzrot;
00046 TGroupBox *GroupBox;
00047 TLabel *Label2;
00048 TLabel *textx;
00049 TLabel *texty;
00050 TBevel *Bevel4;
00051 TCheckBox *autores;
00052 TTrackBar *ResTrackBar;
00053 TCheckBox *arepaint;
00054 TGroupBox *GroupBox1;
00055 TBevel *Bevel3;
00056 TCheckBox *trilinear;
00057 TCheckBox *highlights;
00058 void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
00059 void __fastcall FormCreate(TObject *Sender);
00060 void __fastcall FormResize(TObject *Sender);
00061 void __fastcall FormPaint(TObject *Sender);
00062 void __fastcall FormActivate(TObject *Sender);
00063 void __fastcall FormMouseDown(TObject *Sender, TMouseButton Button,
00064 TShiftState Shift, int X, int Y);
00065 void __fastcall FormMouseMove(TObject *Sender, TShiftState Shift,
00066 int X, int Y);
00067 void __fastcall FormMouseUp(TObject *Sender, TMouseButton Button,
00068 TShiftState Shift, int X, int Y);
00069 void __fastcall autoresClick(TObject *Sender);
00070 void __fastcall trilinearClick(TObject *Sender);
00071 void __fastcall ResTrackBarChange(TObject *Sender);
00072 private:
00073 HDC hdc;
00074 HGLRC hrc;
00075 int PixelFormat, xres,yres, thresh;
00076
00077 float w, h, wh;
00078 vertex o, dx,dy,dz, ppos, pos;
00079 float xratio, yratio;
00085 void __fastcall PaintGL();
00091 void __fastcall PrepareGLWindow();
00097 void __fastcall RayCast();
00098 public:
00099 __fastcall TTransparentForm(TComponent* Owner);
00100 void __fastcall SetPixelFormatDescriptor();
00101 };
00102
00103 extern PACKAGE TTransparentForm *TransparentForm;
00104
00105 #endif