Luxophia

Форк
0
/
LUX.GPU.OpenGL.Atom.Imager.D2.pas 
141 строка · 4.8 Кб
1
unit LUX.GPU.OpenGL.Atom.Imager.D2;
2

3
interface //#################################################################### ■
4

5
uses Winapi.OpenGL, Winapi.OpenGLext,
6
     LUX,
7
     LUX.Data.Grid.T2,
8
     LUX.GPU.OpenGL.Atom.Buffer.PixBuf.D2,
9
     LUX.GPU.OpenGL.Atom.Imager;
10

11
type //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【型】
12

13
     //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【レコード】
14

15
     //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【クラス】
16

17
     //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLImager2D<_TItem_,_TIter_,_TGrid_>
18

19
     IGLImager2D = interface( IGLImager )
20
     ['{69B48023-273B-46B0-A8E4-AD79BABB51FD}']
21
     {protected}
22
     {public}
23
     end;
24

25
     //-------------------------------------------------------------------------
26

27
     TGLImager2D<_TItem_:record;
28
                 _TIter_:TGLPixBufIter2D<_TItem_>,constructor;
29
                 _TGrid_:TGLPixBuf2D<_TItem_,_TIter_>,constructor> = class( TGLImager<_TItem_,_TIter_,_TGrid_>, IGLImager2D )
30
     private
31
     protected
32
     public
33
       constructor Create;
34
       destructor Destroy; override;
35
       ///// メソッド
36
       procedure SendPixBuf; override;
37
     end;
38

39
     //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLPoiIma2D<_TItem_>
40

41
     IGLPoiIma2D = interface( IGLImager2D )
42
     ['{655EF4B2-51B3-4B2F-A9A6-25DBDC399981}']
43
     {protected}
44
     {public}
45
     end;
46

47
     //-------------------------------------------------------------------------
48

49
     TGLPoiIma2D<_TItem_:record> = class( TGLImager2D<_TItem_,TGLPoiPixIter2D<_TItem_>,TGLPoiPix2D<_TItem_>>, IGLPoiIma2D )
50
     private
51
     protected
52
     public
53
     end;
54

55
     //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLCelIma2D<_TItem_>
56

57
     IGLCelIma2D = interface( IGLImager2D )
58
     ['{1088510C-E25B-47B9-8756-924DBB06BD03}']
59
     {protected}
60
     {public}
61
     end;
62

63
     //-------------------------------------------------------------------------
64

65
     TGLCelIma2D<_TItem_:record> = class( TGLImager2D<_TItem_,TGLCelPixIter2D<_TItem_>,TGLCelPix2D<_TItem_>>, IGLCelIma2D )
66
     private
67
     protected
68
     public
69
     end;
70

71
//const //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【定数】
72

73
//var //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【変数】
74

75
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【ルーチン】
76

77
implementation //############################################################### ■
78

79
uses System.Math;
80

81
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【レコード】
82

83
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【クラス】
84

85
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLImager2D<_TItem_,_TIter_,_TGrid_>
86

87
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& private
88

89
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& protected
90

91
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& public
92

93
constructor TGLImager2D<_TItem_,_TIter_,_TGrid_>.Create;
94
begin
95
     inherited Create( GL_TEXTURE_2D );
96

97
end;
98

99
destructor TGLImager2D<_TItem_,_TIter_,_TGrid_>.Destroy;
100
begin
101

102
     inherited;
103
end;
104

105
/////////////////////////////////////////////////////////////////////// メソッド
106

107
procedure TGLImager2D<_TItem_,_TIter_,_TGrid_>.SendPixBuf;
108
begin
109
     Bind;
110
       glTexImage2D( _Kind, 0, _TexelF, _Grid.ElemsX,
111
                                        _Grid.ElemsY, 0,
112
                               _PixelF,
113
                               _PixelT, nil );
114
     Unbind;
115
end;
116

117
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLPoiIma2D<_TItem_>
118

119
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& private
120

121
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& protected
122

123
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& public
124

125
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLCelIma2D<_TItem_>
126

127
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& private
128

129
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& protected
130

131
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& public
132

133
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【ルーチン】
134

135
//############################################################################## □
136

137
initialization //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ 初期化
138

139
finalization //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ 最終化
140

141
end. //######################################################################### ■

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.