Luxophia

Форк
0
/
LUX.GPU.OpenGL.Atom.Buffer.PixBuf.D3.pas 
562 строки · 17.2 Кб
1
unit LUX.GPU.OpenGL.Atom.Buffer.PixBuf.D3;
2

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

5
uses System.Classes,
6
     Winapi.OpenGL, Winapi.OpenGLext,
7
     LUX, LUX.D3,
8
     LUX.GPU.OpenGL.Atom,
9
     LUX.GPU.OpenGL.Atom.Buffer,
10
     LUX.GPU.OpenGL.Atom.Textur,
11
     LUX.GPU.OpenGL.Atom.Buffer.PixBuf,
12
     LUX.GPU.OpenGL.Atom.Buffer.PixBuf.D2;
13

14
type //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【型】
15

16
     IGLPixBuf3D   = interface;
17
       IGLPoiPix3D = interface;
18
       IGLCelPix3D = interface;
19

20
     //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【レコード】
21

22
     //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【クラス】
23

24
     //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLPixBufIter3D<_TItem_>
25

26
     TGLPixBufIter3D<_TItem_:record> = class( TGLPixBufIter2D<_TItem_> )
27
     public type
28
       _PItem_ = TGLPixBufIter2D<_TItem_>._PItem_;
29
     protected
30
       ///// アクセス
31
       function GetParen :IGLPixBuf3D;
32
       function GetElemsZ :Integer;
33
       function GetItemsZ :Integer;
34
       function GetMargsZ :Integer;
35
       function GetPoinsZ :Integer;
36
       function GetCellsZ :Integer;
37
       ///// メソッド
38
       function ItemsI( const X_,Y_,Z_:Integer ) :Integer;
39
     public
40
       ///// プロパティ
41
       property Paren  :IGLPixBuf3D read GetParen ;
42
       property ElemsZ :Integer     read GetElemsZ;
43
       property ItemsZ :Integer     read GetItemsZ;
44
       property MargsZ :Integer     read GetMargsZ;
45
       property PoinsZ :Integer     read GetPoinsZ;
46
       property CellsZ :Integer     read GetCellsZ;
47
     end;
48

49
     //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLPixBuf3D<_TItem_,_TIter_>
50

51
     IGLPixBuf3D = interface( IGLPixBuf2D )
52
     ['{68D24B25-0598-466A-BD4D-BBAFC369B5CD}']
53
     {protected}
54
       ///// アクセス
55
       function GetElemsZ :Integer;
56
       function GetItemsZ :Integer;
57
       procedure SetItemsZ( const ItemsZ_:Integer );
58
       function GetMargsZ :Integer;
59
       procedure SetMargsZ( const MargsZ_:Integer );
60
       function GetPoinsZ :Integer;
61
       procedure SetPoinsZ( const PoinsZ_:Integer );
62
       function GetCellsZ :Integer;
63
       procedure SetCellsZ( const CellsZ_:Integer );
64
     {public}
65
       ///// プロパティ
66
       property ElemsZ :Integer read GetElemsZ                ;
67
       property ItemsZ :Integer read GetItemsZ write SetItemsZ;
68
       property MargsZ :Integer read GetMargsZ write SetMargsZ;
69
       property PoinsZ :Integer read GetPoinsZ write SetPoinsZ;
70
       property CellsZ :Integer read GetCellsZ write SetCellsZ;
71
     end;
72

73
     //-------------------------------------------------------------------------
74

75
     TGLPixBuf3D<_TItem_:record;
76
                 _TIter_:TGLPixBufIter3D<_TItem_>,constructor> = class( TGLPixBuf2D<_TItem_,_TIter_>, IGLPixBuf3D )
77
     private
78
     protected
79
       _ItemsZ :Integer;
80
       _MargsZ :Integer;
81
       ///// アクセス
82
       function GetElemsN :Integer; override;
83
       function GetPoinsN :Integer; override;
84
       function GetCellsN :Integer; override;
85
       function GetElemsZ :Integer;
86
       function GetItemsZ :Integer;
87
       procedure SetItemsZ( const ItemsZ_:Integer );
88
       function GetMargsZ :Integer;
89
       procedure SetMargsZ( const MargsZ_:Integer );
90
       function GetPoinsZ :Integer; virtual; abstract;
91
       procedure SetPoinsZ( const PoinsZ_:Integer ); virtual; abstract;
92
       function GetCellsZ :Integer; virtual; abstract;
93
       procedure SetCellsZ( const CellsZ_:Integer ); virtual; abstract;
94
     public
95
       constructor Create( const Usage_:GLenum ); override;
96
       ///// プロパティ
97
       property ElemsZ :Integer read GetElemsZ                ;
98
       property ItemsZ :Integer read GetItemsZ write SetItemsZ;
99
       property MargsZ :Integer read GetMargsZ write SetMargsZ;
100
       property PoinsZ :Integer read GetPoinsZ write SetPoinsZ;
101
       property CellsZ :Integer read GetCellsZ write SetCellsZ;
102
       ///// メソッド
103
       procedure Read( const Stream_:TStream );
104
       procedure Write( const Stream_:TStream );
105
     end;
106

107
     //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLPoiPixIter3D<_TItem_>
108

109
     TGLPoiPixIter3D<_TItem_:record> = class( TGLPixBufIter3D<_TItem_> )
110
     public type
111
       _PItem_ = TGLPixBufIter3D<_TItem_>._PItem_;
112
     protected
113
       ///// アクセス
114
       function GetPoins( const X_,Y_,Z_:Integer ) :_TItem_;
115
       procedure SetPoins( const X_,Y_,Z_:Integer; const Item_:_TItem_ );
116
       function GetPoinsP( const X_,Y_,Z_:Integer ) :_PItem_;
117
     public
118
       ///// プロパティ
119
       property Poins [ const X_,Y_,Z_:Integer ] :_TItem_ read GetPoins  write SetPoins; default;
120
       property PoinsP[ const X_,Y_,Z_:Integer ] :_PItem_ read GetPoinsP               ;
121
     end;
122

123
     //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLPoiPix3D<_TItem_>
124

125
     IGLPoiPix3D = interface( IGLPixBuf3D )
126
     ['{97C18089-90B8-4E43-9C6D-59737D6D555E}']
127
     {protected}
128
     {public}
129
     end;
130

131
     //-------------------------------------------------------------------------
132

133
     TGLPoiPix3D<_TItem_:record> = class( TGLPixBuf3D<_TItem_,TGLPoiPixIter3D<_TItem_>>, IGLPoiPix3D )
134
     private
135
     protected
136
       ///// アクセス
137
       function GetPoinsX :Integer; override;
138
       procedure SetPoinsX( const PoinsX_:Integer ); override;
139
       function GetPoinsY :Integer; override;
140
       procedure SetPoinsY( const PoinsY_:Integer ); override;
141
       function GetPoinsZ :Integer; override;
142
       procedure SetPoinsZ( const PoinsZ_:Integer ); override;
143
       function GetCellsX :Integer; override;
144
       procedure SetCellsX( const CellsX_:Integer ); override;
145
       function GetCellsY :Integer; override;
146
       procedure SetCellsY( const CellsY_:Integer ); override;
147
       function GetCellsZ :Integer; override;
148
       procedure SetCellsZ( const CellsZ_:Integer ); override;
149
     public
150
     end;
151

152
     //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLCelPixIter3D<_TItem_>
153

154
     TGLCelPixIter3D<_TItem_:record> = class( TGLPixBufIter3D<_TItem_> )
155
     public type
156
       _PItem_ = TGLPixBufIter3D<_TItem_>._PItem_;
157
     protected
158
       ///// アクセス
159
       function GetCells( const X_,Y_,Z_:Integer ) :_TItem_;
160
       procedure SetCells( const X_,Y_,Z_:Integer; const Item_:_TItem_ );
161
       function GetCellsP( const X_,Y_,Z_:Integer ) :_PItem_;
162
     public
163
       ///// プロパティ
164
       property Cells [ const X_,Y_,Z_:Integer ] :_TItem_ read GetCells  write SetCells; default;
165
       property CellsP[ const X_,Y_,Z_:Integer ] :_PItem_ read GetCellsP               ;
166
     end;
167

168
     //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLCelPix3D<_TItem_>
169

170
     IGLCelPix3D = interface( IGLPixBuf3D )
171
     ['{4ED06E66-A90B-4FE4-B8D9-742FAF6025FB}']
172
     {protected}
173
     {public}
174
     end;
175

176
     //-------------------------------------------------------------------------
177

178
     TGLCelPix3D<_TItem_:record> = class( TGLPixBuf3D<_TItem_,TGLCelPixIter3D<_TItem_>>, IGLCelPix3D )
179
     private
180
     protected
181
       ///// アクセス
182
       function GetPoinsX :Integer; override;
183
       procedure SetPoinsX( const PoinsX_:Integer ); override;
184
       function GetPoinsY :Integer; override;
185
       procedure SetPoinsY( const PoinsY_:Integer ); override;
186
       function GetPoinsZ :Integer; override;
187
       procedure SetPoinsZ( const PoinsZ_:Integer ); override;
188
       function GetCellsX :Integer; override;
189
       procedure SetCellsX( const CellsX_:Integer ); override;
190
       function GetCellsY :Integer; override;
191
       procedure SetCellsY( const CellsY_:Integer ); override;
192
       function GetCellsZ :Integer; override;
193
       procedure SetCellsZ( const CellsZ_:Integer ); override;
194
     public
195
     end;
196

197
//const //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【定数】
198

199
//var //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【変数】
200

201
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【ルーチン】
202

203
implementation //############################################################### ■
204

205
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【レコード】
206

207
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【クラス】
208

209
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLPixBufIter3D<_TItem_>
210

211
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& private
212

213
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& protected
214

215
/////////////////////////////////////////////////////////////////////// アクセス
216

217
function TGLPixBufIter3D<_TItem_>.GetParen :IGLPixBuf3D;
218
begin
219
     Result := _Paren as IGLPixBuf3D;
220
end;
221

222
function TGLPixBufIter3D<_TItem_>.GetElemsZ :Integer;
223
begin
224
     Result := Paren.ElemsZ;
225
end;
226

227
function TGLPixBufIter3D<_TItem_>.GetItemsZ :Integer;
228
begin
229
     Result := Paren.ItemsZ;
230
end;
231

232
function TGLPixBufIter3D<_TItem_>.GetMargsZ :Integer;
233
begin
234
     Result := Paren.MargsZ;
235
end;
236

237
function TGLPixBufIter3D<_TItem_>.GetPoinsZ :Integer;
238
begin
239
     Result := Paren.PoinsZ;
240
end;
241

242
function TGLPixBufIter3D<_TItem_>.GetCellsZ :Integer;
243
begin
244
     Result := Paren.CellsZ;
245
end;
246

247
/////////////////////////////////////////////////////////////////////// メソッド
248

249
function TGLPixBufIter3D<_TItem_>.ItemsI( const X_,Y_,Z_:Integer ) :Integer;
250
begin
251
     Result := ( ( MargsZ + Z_ ) * ElemsY + ( MargsY + Y_ ) ) * ElemsX + ( MargsX + X_ );
252
end;
253

254
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& public
255

256
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLPixBuf3D<_TItem_,_TIter_>
257

258
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& private
259

260
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& protected
261

262
/////////////////////////////////////////////////////////////////////// アクセス
263

264
function TGLPixBuf3D<_TItem_,_TIter_>.GetElemsN :Integer;
265
begin
266
     Result := ElemsZ * ElemsY * ElemsX;
267
end;
268

269
function TGLPixBuf3D<_TItem_,_TIter_>.GetPoinsN :Integer;
270
begin
271
     Result := PoinsZ * PoinsY * PoinsX;
272
end;
273

274
function TGLPixBuf3D<_TItem_,_TIter_>.GetCellsN :Integer;
275
begin
276
     Result := CellsZ * CellsY * CellsX;
277
end;
278

279
function TGLPixBuf3D<_TItem_,_TIter_>.GetElemsZ :Integer;
280
begin
281
     Result := _MargsZ + _ItemsZ + _MargsZ;
282
end;
283

284
//------------------------------------------------------------------------------
285

286
function TGLPixBuf3D<_TItem_,_TIter_>.GetItemsZ :Integer;
287
begin
288
     Result := _ItemsZ;
289
end;
290

291
procedure TGLPixBuf3D<_TItem_,_TIter_>.SetItemsZ( const ItemsZ_:Integer );
292
begin
293
     _ItemsZ := ItemsZ_;  MakeBuffer;
294
end;
295

296
//------------------------------------------------------------------------------
297

298
function TGLPixBuf3D<_TItem_,_TIter_>.GetMargsZ :Integer;
299
begin
300
     Result := _MargsZ;
301
end;
302

303
procedure TGLPixBuf3D<_TItem_,_TIter_>.SetMargsZ( const MargsZ_:Integer );
304
begin
305
     _MargsZ := MargsZ_;  MakeBuffer;
306
end;
307

308
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& public
309

310
constructor TGLPixBuf3D<_TItem_,_TIter_>.Create( const Usage_:GLenum );
311
begin
312
     inherited;
313

314
     _ItemsZ := 1;
315
     _MargsZ := 0;
316
end;
317

318
/////////////////////////////////////////////////////////////////////// メソッド
319

320
procedure TGLPixBuf3D<_TItem_,_TIter_>.Read( const Stream_:TStream );
321
var
322
   C, M :TCardinal3D;
323
begin
324
     with Stream_ do
325
     begin
326
          Read( C, SizeOf( TCardinal3D ) );
327
          Read( M, SizeOf( TCardinal3D ) );
328
     end;
329

330
     CellsX := C.X;
331
     CellsY := C.Y;
332
     CellsZ := C.Z;
333

334
     MargsX := M.X;
335
     MargsY := M.Y;
336
     MargsZ := M.Z;
337

338
     inherited;
339
end;
340

341
procedure TGLPixBuf3D<_TItem_,_TIter_>.Write( const Stream_:TStream );
342
var
343
   C, M :TCardinal3D;
344
begin
345
     with C do
346
     begin
347
          X := CellsX;
348
          Y := CellsY;
349
          Z := CellsZ;
350
     end;
351

352
     with M do
353
     begin
354
          X := MargsX;
355
          Y := MargsY;
356
          Z := MargsZ;
357
     end;
358

359
     with Stream_ do
360
     begin
361
          Write( C, SizeOf( TCardinal3D ) );
362
          Write( M, SizeOf( TCardinal3D ) );
363
     end;
364

365
     inherited;
366
end;
367

368
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLPoiPixIter3D<_TItem_>
369

370
/////////////////////////////////////////////////////////////////////// アクセス
371

372
function TGLPoiPixIter3D<_TItem_>.GetPoins( const X_,Y_,Z_:Integer ) :_TItem_;
373
begin
374
     Result := inherited Items[ ItemsI( X_, Y_, Z_ ) ];
375
end;
376

377
procedure TGLPoiPixIter3D<_TItem_>.SetPoins( const X_,Y_,Z_:Integer; const Item_:_TItem_ );
378
begin
379
     inherited Items[ ItemsI( X_, Y_, Z_ ) ] := Item_;
380
end;
381

382
//------------------------------------------------------------------------------
383

384
function TGLPoiPixIter3D<_TItem_>.GetPoinsP( const X_,Y_,Z_:Integer ) :_PItem_;
385
begin
386
     Result := inherited ItemsP[ ItemsI( X_, Y_, Z_ ) ];
387
end;
388

389
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLPoiPix3D<_TItem_>
390

391
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& private
392

393
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& protected
394

395
/////////////////////////////////////////////////////////////////////// アクセス
396

397
function TGLPoiPix3D<_TItem_>.GetPoinsX :Integer;
398
begin
399
     Result := ItemsX;
400
end;
401

402
procedure TGLPoiPix3D<_TItem_>.SetPoinsX( const PoinsX_:Integer );
403
begin
404
     ItemsX := PoinsX_;
405
end;
406

407
function TGLPoiPix3D<_TItem_>.GetPoinsY :Integer;
408
begin
409
     Result := ItemsY;
410
end;
411

412
procedure TGLPoiPix3D<_TItem_>.SetPoinsY( const PoinsY_:Integer );
413
begin
414
     ItemsY := PoinsY_;
415
end;
416

417
function TGLPoiPix3D<_TItem_>.GetPoinsZ :Integer;
418
begin
419
     Result := ItemsZ;
420
end;
421

422
procedure TGLPoiPix3D<_TItem_>.SetPoinsZ( const PoinsZ_:Integer );
423
begin
424
     ItemsZ := PoinsZ_;
425
end;
426

427
//------------------------------------------------------------------------------
428

429
function TGLPoiPix3D<_TItem_>.GetCellsX :Integer;
430
begin
431
     Result := ItemsX - 1;
432
end;
433

434
procedure TGLPoiPix3D<_TItem_>.SetCellsX( const CellsX_:Integer );
435
begin
436
     ItemsX := CellsX_ + 1;
437
end;
438

439
function TGLPoiPix3D<_TItem_>.GetCellsY :Integer;
440
begin
441
     Result := ItemsY - 1;
442
end;
443

444
procedure TGLPoiPix3D<_TItem_>.SetCellsY( const CellsY_:Integer );
445
begin
446
     ItemsY := CellsY_ + 1;
447
end;
448

449
function TGLPoiPix3D<_TItem_>.GetCellsZ :Integer;
450
begin
451
     Result := ItemsZ - 1;
452
end;
453

454
procedure TGLPoiPix3D<_TItem_>.SetCellsZ( const CellsZ_:Integer );
455
begin
456
     ItemsZ := CellsZ_ + 1;
457
end;
458

459
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& public
460

461
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLCelPixIter3D<_TItem_>
462

463
/////////////////////////////////////////////////////////////////////// アクセス
464

465
function TGLCelPixIter3D<_TItem_>.GetCells( const X_,Y_,Z_:Integer ) :_TItem_;
466
begin
467
     Result := inherited Items[ ItemsI( X_, Y_, Z_ ) ];
468
end;
469

470
procedure TGLCelPixIter3D<_TItem_>.SetCells( const X_,Y_,Z_:Integer; const Item_:_TItem_ );
471
begin
472
     inherited Items[ ItemsI( X_, Y_, Z_ ) ] := Item_;
473
end;
474

475
//------------------------------------------------------------------------------
476

477
function TGLCelPixIter3D<_TItem_>.GetCellsP( const X_,Y_,Z_:Integer ) :_PItem_;
478
begin
479
     Result := inherited ItemsP[ ItemsI( X_, Y_, Z_ ) ];
480
end;
481

482
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TGLCelPix3D<_TItem_>
483

484
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& private
485

486
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& protected
487

488
/////////////////////////////////////////////////////////////////////// アクセス
489

490
function TGLCelPix3D<_TItem_>.GetPoinsX :Integer;
491
begin
492
     Result := ItemsX + 1;
493
end;
494

495
procedure TGLCelPix3D<_TItem_>.SetPoinsX( const PoinsX_:Integer );
496
begin
497
     ItemsX := PoinsX_ - 1;
498
end;
499

500
function TGLCelPix3D<_TItem_>.GetPoinsY :Integer;
501
begin
502
     Result := ItemsY + 1;
503
end;
504

505
procedure TGLCelPix3D<_TItem_>.SetPoinsY( const PoinsY_:Integer );
506
begin
507
     ItemsY := PoinsY_ - 1;
508
end;
509

510
function TGLCelPix3D<_TItem_>.GetPoinsZ :Integer;
511
begin
512
     Result := ItemsZ + 1;
513
end;
514

515
procedure TGLCelPix3D<_TItem_>.SetPoinsZ( const PoinsZ_:Integer );
516
begin
517
     ItemsZ := PoinsZ_ - 1;
518
end;
519

520
//------------------------------------------------------------------------------
521

522
function TGLCelPix3D<_TItem_>.GetCellsX :Integer;
523
begin
524
     Result := ItemsX;
525
end;
526

527
procedure TGLCelPix3D<_TItem_>.SetCellsX( const CellsX_:Integer );
528
begin
529
     ItemsX := CellsX_;
530
end;
531

532
function TGLCelPix3D<_TItem_>.GetCellsY :Integer;
533
begin
534
     Result := ItemsY;
535
end;
536

537
procedure TGLCelPix3D<_TItem_>.SetCellsY( const CellsY_:Integer );
538
begin
539
     ItemsY := CellsY_;
540
end;
541

542
function TGLCelPix3D<_TItem_>.GetCellsZ :Integer;
543
begin
544
     Result := ItemsZ;
545
end;
546

547
procedure TGLCelPix3D<_TItem_>.SetCellsZ( const CellsZ_:Integer );
548
begin
549
     ItemsZ := CellsZ_;
550
end;
551

552
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& public
553

554
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【ルーチン】
555

556
//############################################################################## □
557

558
initialization //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ 初期化
559

560
finalization //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ 最終化
561

562
end. //######################################################################### ■

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

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

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

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