Changeset 211 for GraphicTest
- Timestamp:
- Mar 20, 2011, 12:23:08 PM (14 years ago)
- Location:
- GraphicTest
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
GraphicTest/GraphicTest.lpi
r210 r211 30 30 </local> 31 31 </RunParams> 32 <RequiredPackages Count=" 2">32 <RequiredPackages Count="3"> 33 33 <Item1> 34 <PackageName Value="lazopenglcontext"/> 35 </Item1> 36 <Item2> 34 37 <PackageName Value="LCLBase"/> 35 38 <MinVersion Major="1" Release="1" Valid="True"/> 36 </Item 1>37 <Item 2>39 </Item2> 40 <Item3> 38 41 <PackageName Value="LCL"/> 39 </Item 2>42 </Item3> 40 43 </RequiredPackages> 41 <Units Count=" 36">44 <Units Count="47"> 42 45 <Unit0> 43 46 <Filename Value="GraphicTest.lpr"/> 44 47 <IsPartOfProject Value="True"/> 45 48 <UnitName Value="GraphicTest"/> 49 <EditorIndex Value="4"/> 46 50 <WindowIndex Value="0"/> 47 51 <TopLine Value="1"/> 48 <CursorPos X="17" Y="3"/> 49 <UsageCount Value="37"/> 52 <CursorPos X="30" Y="8"/> 53 <UsageCount Value="43"/> 54 <Loaded Value="True"/> 50 55 </Unit0> 51 56 <Unit1> … … 57 62 <EditorIndex Value="0"/> 58 63 <WindowIndex Value="0"/> 59 <TopLine Value=" 109"/>60 <CursorPos X="2 3" Y="126"/>61 <UsageCount Value=" 37"/>64 <TopLine Value="67"/> 65 <CursorPos X="29" Y="71"/> 66 <UsageCount Value="43"/> 62 67 <Loaded Value="True"/> 63 68 <LoadedDesigner Value="True"/> … … 69 74 <TopLine Value="1"/> 70 75 <CursorPos X="42" Y="22"/> 71 <UsageCount Value="1 7"/>76 <UsageCount Value="16"/> 72 77 </Unit2> 73 78 <Unit3> … … 75 80 <IsPartOfProject Value="True"/> 76 81 <UnitName Value="UPlatform"/> 77 <EditorIndex Value=" 7"/>82 <EditorIndex Value="13"/> 78 83 <WindowIndex Value="0"/> 79 84 <TopLine Value="43"/> 80 85 <CursorPos X="1" Y="1"/> 81 <UsageCount Value=" 37"/>86 <UsageCount Value="43"/> 82 87 <Loaded Value="True"/> 83 88 </Unit3> … … 88 93 <TopLine Value="244"/> 89 94 <CursorPos X="49" Y="262"/> 90 <UsageCount Value="1 1"/>95 <UsageCount Value="10"/> 91 96 </Unit4> 92 97 <Unit5> … … 96 101 <TopLine Value="121"/> 97 102 <CursorPos X="57" Y="142"/> 98 <UsageCount Value="1 1"/>103 <UsageCount Value="10"/> 99 104 </Unit5> 100 105 <Unit6> … … 103 108 <TopLine Value="85"/> 104 109 <CursorPos X="10" Y="102"/> 105 <UsageCount Value="1 1"/>110 <UsageCount Value="10"/> 106 111 </Unit6> 107 112 <Unit7> … … 110 115 <TopLine Value="153"/> 111 116 <CursorPos X="1" Y="160"/> 112 <UsageCount Value="1 1"/>117 <UsageCount Value="10"/> 113 118 </Unit7> 114 119 <Unit8> … … 118 123 <TopLine Value="1282"/> 119 124 <CursorPos X="15" Y="1299"/> 120 <UsageCount Value="1 1"/>125 <UsageCount Value="10"/> 121 126 </Unit8> 122 127 <Unit9> … … 125 130 <TopLine Value="546"/> 126 131 <CursorPos X="11" Y="553"/> 127 <UsageCount Value="1 1"/>132 <UsageCount Value="10"/> 128 133 </Unit9> 129 134 <Unit10> … … 132 137 <TopLine Value="389"/> 133 138 <CursorPos X="1" Y="411"/> 134 <UsageCount Value=" 8"/>139 <UsageCount Value="7"/> 135 140 </Unit10> 136 141 <Unit11> … … 139 144 <TopLine Value="444"/> 140 145 <CursorPos X="1" Y="461"/> 141 <UsageCount Value="1 1"/>146 <UsageCount Value="10"/> 142 147 </Unit11> 143 148 <Unit12> … … 146 151 <TopLine Value="14"/> 147 152 <CursorPos X="24" Y="21"/> 148 <UsageCount Value="1 1"/>153 <UsageCount Value="10"/> 149 154 </Unit12> 150 155 <Unit13> … … 153 158 <TopLine Value="313"/> 154 159 <CursorPos X="24" Y="316"/> 155 <UsageCount Value="1 1"/>160 <UsageCount Value="10"/> 156 161 </Unit13> 157 162 <Unit14> … … 160 165 <TopLine Value="149"/> 161 166 <CursorPos X="3" Y="151"/> 162 <UsageCount Value="1 1"/>167 <UsageCount Value="10"/> 163 168 </Unit14> 164 169 <Unit15> … … 168 173 <TopLine Value="171"/> 169 174 <CursorPos X="3" Y="188"/> 170 <UsageCount Value=" 10"/>175 <UsageCount Value="9"/> 171 176 </Unit15> 172 177 <Unit16> 173 178 <Filename Value="/usr/share/fpcsrc/2.4.0/rtl/inc/systemh.inc"/> 174 179 <WindowIndex Value="0"/> 175 <TopLine Value=" 300"/>176 <CursorPos X="3" Y=" 317"/>177 <UsageCount Value=" 8"/>180 <TopLine Value="243"/> 181 <CursorPos X="3" Y="260"/> 182 <UsageCount Value="10"/> 178 183 </Unit16> 179 184 <Unit17> … … 182 187 <UnitName Value="UDrawMethod"/> 183 188 <IsVisibleTab Value="True"/> 184 <EditorIndex Value=" 2"/>185 <WindowIndex Value="0"/> 186 <TopLine Value="1 26"/>187 <CursorPos X=" 57" Y="135"/>188 <UsageCount Value="3 1"/>189 <EditorIndex Value="3"/> 190 <WindowIndex Value="0"/> 191 <TopLine Value="157"/> 192 <CursorPos X="22" Y="168"/> 193 <UsageCount Value="37"/> 189 194 <Loaded Value="True"/> 190 195 </Unit17> … … 193 198 <IsPartOfProject Value="True"/> 194 199 <UnitName Value="UFastBitmap"/> 195 <EditorIndex Value=" 1"/>196 <WindowIndex Value="0"/> 197 <TopLine Value="3 2"/>198 <CursorPos X=" 41" Y="18"/>199 <UsageCount Value="3 1"/>200 <EditorIndex Value="2"/> 201 <WindowIndex Value="0"/> 202 <TopLine Value="33"/> 203 <CursorPos X="37" Y="66"/> 204 <UsageCount Value="37"/> 200 205 <Loaded Value="True"/> 201 206 </Unit18> … … 205 210 <TopLine Value="292"/> 206 211 <CursorPos X="1" Y="308"/> 207 <UsageCount Value="1 4"/>212 <UsageCount Value="13"/> 208 213 </Unit19> 209 214 <Unit20> 210 215 <Filename Value="bgrabitmap/bgradefaultbitmap.pas"/> 211 216 <UnitName Value="BGRADefaultBitmap"/> 212 <EditorIndex Value="3"/>213 217 <WindowIndex Value="0"/> 214 218 <TopLine Value="279"/> 215 219 <CursorPos X="57" Y="292"/> 216 <UsageCount Value="12"/> 217 <Loaded Value="True"/> 220 <UsageCount Value="11"/> 218 221 </Unit20> 219 222 <Unit21> 220 223 <Filename Value="bgrabitmap/bgrawinbitmap.pas"/> 221 224 <UnitName Value="BGRAWinBitmap"/> 222 <EditorIndex Value="5"/>223 225 <WindowIndex Value="0"/> 224 226 <TopLine Value="133"/> 225 227 <CursorPos X="1" Y="146"/> 226 <UsageCount Value="12"/> 227 <Loaded Value="True"/> 228 <UsageCount Value="11"/> 228 229 </Unit21> 229 230 <Unit22> … … 233 234 <TopLine Value="584"/> 234 235 <CursorPos X="3" Y="597"/> 235 <UsageCount Value="1 1"/>236 <UsageCount Value="10"/> 236 237 </Unit22> 237 238 <Unit23> … … 240 241 <TopLine Value="32"/> 241 242 <CursorPos X="10" Y="45"/> 242 <UsageCount Value="1 3"/>243 <UsageCount Value="12"/> 243 244 </Unit23> 244 245 <Unit24> … … 247 248 <TopLine Value="51"/> 248 249 <CursorPos X="3" Y="53"/> 249 <UsageCount Value="1 3"/>250 <UsageCount Value="12"/> 250 251 </Unit24> 251 252 <Unit25> … … 255 256 <TopLine Value="1314"/> 256 257 <CursorPos X="31" Y="1327"/> 257 <UsageCount Value="1 3"/>258 <UsageCount Value="12"/> 258 259 </Unit25> 259 260 <Unit26> … … 262 263 <TopLine Value="1883"/> 263 264 <CursorPos X="10" Y="1896"/> 264 <UsageCount Value="1 3"/>265 <UsageCount Value="12"/> 265 266 </Unit26> 266 267 <Unit27> … … 269 270 <TopLine Value="75"/> 270 271 <CursorPos X="31" Y="88"/> 271 <UsageCount Value="1 1"/>272 <UsageCount Value="10"/> 272 273 </Unit27> 273 274 <Unit28> … … 276 277 <TopLine Value="309"/> 277 278 <CursorPos X="3" Y="311"/> 278 <UsageCount Value=" 10"/>279 <UsageCount Value="9"/> 279 280 </Unit28> 280 281 <Unit29> 281 282 <Filename Value="bgrabitmap/bgrabitmaptypes.pas"/> 282 283 <UnitName Value="BGRABitmapTypes"/> 283 <EditorIndex Value="6"/>284 284 <WindowIndex Value="0"/> 285 285 <TopLine Value="24"/> 286 286 <CursorPos X="3" Y="37"/> 287 <UsageCount Value="12"/> 288 <Loaded Value="True"/> 287 <UsageCount Value="11"/> 289 288 </Unit29> 290 289 <Unit30> … … 294 293 <TopLine Value="271"/> 295 294 <CursorPos X="23" Y="292"/> 296 <UsageCount Value="1 1"/>295 <UsageCount Value="10"/> 297 296 </Unit30> 298 297 <Unit31> … … 302 301 <TopLine Value="1"/> 303 302 <CursorPos X="41" Y="62"/> 304 <UsageCount Value=" 20"/>303 <UsageCount Value="19"/> 305 304 </Unit31> 306 305 <Unit32> … … 310 309 <TopLine Value="23"/> 311 310 <CursorPos X="4" Y="35"/> 312 <UsageCount Value=" 10"/>311 <UsageCount Value="9"/> 313 312 </Unit32> 314 313 <Unit33> … … 317 316 <TopLine Value="1456"/> 318 317 <CursorPos X="1" Y="1471"/> 319 <UsageCount Value=" 10"/>318 <UsageCount Value="9"/> 320 319 </Unit33> 321 320 <Unit34> … … 324 323 <TopLine Value="780"/> 325 324 <CursorPos X="10" Y="793"/> 326 <UsageCount Value=" 10"/>325 <UsageCount Value="9"/> 327 326 </Unit34> 328 327 <Unit35> 329 328 <Filename Value="bgrabitmap/bgrablend.pas"/> 330 329 <UnitName Value="BGRABlend"/> 331 <EditorIndex Value="4"/>332 330 <WindowIndex Value="0"/> 333 331 <TopLine Value="217"/> 334 332 <CursorPos X="3" Y="219"/> 335 <UsageCount Value="10"/> 336 <Loaded Value="True"/> 333 <UsageCount Value="9"/> 337 334 </Unit35> 335 <Unit36> 336 <Filename Value="BGRABitmap/bgrabitmap.pas"/> 337 <UnitName Value="BGRABitmap"/> 338 <EditorIndex Value="9"/> 339 <WindowIndex Value="0"/> 340 <TopLine Value="52"/> 341 <CursorPos X="23" Y="72"/> 342 <UsageCount Value="13"/> 343 <Loaded Value="True"/> 344 </Unit36> 345 <Unit37> 346 <Filename Value="BGRABitmap/bgragtkbitmap.pas"/> 347 <UnitName Value="BGRAGtkBitmap"/> 348 <EditorIndex Value="10"/> 349 <WindowIndex Value="0"/> 350 <TopLine Value="29"/> 351 <CursorPos X="36" Y="36"/> 352 <UsageCount Value="13"/> 353 <Loaded Value="True"/> 354 </Unit37> 355 <Unit38> 356 <Filename Value="BGRABitmap/bgradefaultbitmap.pas"/> 357 <UnitName Value="BGRADefaultBitmap"/> 358 <EditorIndex Value="11"/> 359 <WindowIndex Value="0"/> 360 <TopLine Value="3503"/> 361 <CursorPos X="31" Y="3506"/> 362 <UsageCount Value="13"/> 363 <Loaded Value="True"/> 364 </Unit38> 365 <Unit39> 366 <Filename Value="BGRABitmap/bgraresample.pas"/> 367 <UnitName Value="bgraresample"/> 368 <EditorIndex Value="12"/> 369 <WindowIndex Value="0"/> 370 <TopLine Value="629"/> 371 <CursorPos X="30" Y="638"/> 372 <UsageCount Value="13"/> 373 <Loaded Value="True"/> 374 </Unit39> 375 <Unit40> 376 <Filename Value="../../../lazarus/components/opengl/glqtcontext.pas"/> 377 <UnitName Value="GLQTContext"/> 378 <EditorIndex Value="6"/> 379 <WindowIndex Value="0"/> 380 <TopLine Value="1"/> 381 <CursorPos X="1" Y="1"/> 382 <UsageCount Value="13"/> 383 <Loaded Value="True"/> 384 </Unit40> 385 <Unit41> 386 <Filename Value="../../../lazarus/components/opengl/openglcontext.pas"/> 387 <UnitName Value="OpenGLContext"/> 388 <EditorIndex Value="7"/> 389 <WindowIndex Value="0"/> 390 <TopLine Value="387"/> 391 <CursorPos X="19" Y="389"/> 392 <UsageCount Value="13"/> 393 <Loaded Value="True"/> 394 </Unit41> 395 <Unit42> 396 <Filename Value="../../../lazarus/components/opengl/glgtkglxcontext.pas"/> 397 <UnitName Value="GLGtkGlxContext"/> 398 <EditorIndex Value="8"/> 399 <WindowIndex Value="0"/> 400 <TopLine Value="694"/> 401 <CursorPos X="3" Y="696"/> 402 <UsageCount Value="13"/> 403 <Loaded Value="True"/> 404 </Unit42> 405 <Unit43> 406 <Filename Value="/usr/share/fpcsrc/2.4.0/packages/opengl/src/gl.pp"/> 407 <UnitName Value="GL"/> 408 <EditorIndex Value="1"/> 409 <WindowIndex Value="0"/> 410 <TopLine Value="821"/> 411 <CursorPos X="3" Y="838"/> 412 <UsageCount Value="12"/> 413 <Loaded Value="True"/> 414 </Unit43> 415 <Unit44> 416 <Filename Value="../../../lazarus/lcl/include/customform.inc"/> 417 <EditorIndex Value="5"/> 418 <WindowIndex Value="0"/> 419 <TopLine Value="898"/> 420 <CursorPos X="38" Y="928"/> 421 <UsageCount Value="12"/> 422 <Loaded Value="True"/> 423 </Unit44> 424 <Unit45> 425 <Filename Value="/usr/share/fpcsrc/2.4.0/rtl/inc/heaph.inc"/> 426 <WindowIndex Value="0"/> 427 <TopLine Value="63"/> 428 <CursorPos X="43" Y="80"/> 429 <UsageCount Value="10"/> 430 </Unit45> 431 <Unit46> 432 <Filename Value="../../../lazarus/lcl/include/custombitmap.inc"/> 433 <WindowIndex Value="0"/> 434 <TopLine Value="21"/> 435 <CursorPos X="1" Y="38"/> 436 <UsageCount Value="10"/> 437 </Unit46> 338 438 </Units> 339 <JumpHistory Count="2 2" HistoryIndex="18">439 <JumpHistory Count="29" HistoryIndex="28"> 340 440 <Position1> 341 <Filename Value=" bgrabitmap/bgradefaultbitmap.pas"/>342 <Caret Line=" 3492" Column="1" TopLine="3479"/>441 <Filename Value="UDrawMethod.pas"/> 442 <Caret Line="135" Column="3" TopLine="118"/> 343 443 </Position1> 344 444 <Position2> 345 <Filename Value=" bgrabitmap/bgradefaultbitmap.pas"/>346 <Caret Line=" 3493" Column="1" TopLine="3479"/>445 <Filename Value="UMainForm.pas"/> 446 <Caret Line="48" Column="5" TopLine="31"/> 347 447 </Position2> 348 448 <Position3> 349 <Filename Value=" bgrabitmap/bgradefaultbitmap.pas"/>350 <Caret Line="1 061" Column="1" TopLine="1048"/>449 <Filename Value="UMainForm.pas"/> 450 <Caret Line="196" Column="39" TopLine="176"/> 351 451 </Position3> 352 452 <Position4> 353 <Filename Value=" bgrabitmap/bgrawinbitmap.pas"/>354 <Caret Line="1 35" Column="20" TopLine="119"/>453 <Filename Value="UMainForm.pas"/> 454 <Caret Line="103" Column="23" TopLine="77"/> 355 455 </Position4> 356 456 <Position5> 357 <Filename Value=" bgrabitmap/bgrawinbitmap.pas"/>358 <Caret Line=" 127" Column="1" TopLine="119"/>457 <Filename Value="UMainForm.pas"/> 458 <Caret Line="92" Column="7" TopLine="77"/> 359 459 </Position5> 360 460 <Position6> 361 <Filename Value=" bgrabitmap/bgrawinbitmap.pas"/>362 <Caret Line="1 28" Column="1" TopLine="119"/>461 <Filename Value="UDrawMethod.pas"/> 462 <Caret Line="155" Column="7" TopLine="135"/> 363 463 </Position6> 364 464 <Position7> 365 <Filename Value=" bgrabitmap/bgrawinbitmap.pas"/>366 <Caret Line="1 35" Column="1" TopLine="119"/>465 <Filename Value="UMainForm.pas"/> 466 <Caret Line="177" Column="41" TopLine="167"/> 367 467 </Position7> 368 468 <Position8> 369 <Filename Value=" bgrabitmap/bgrawinbitmap.pas"/>370 <Caret Line=" 136" Column="1" TopLine="128"/>469 <Filename Value="UMainForm.pas"/> 470 <Caret Line="201" Column="25" TopLine="182"/> 371 471 </Position8> 372 472 <Position9> 373 <Filename Value=" bgrabitmap/bgrawinbitmap.pas"/>374 <Caret Line="1 37" Column="1" TopLine="128"/>473 <Filename Value="UDrawMethod.pas"/> 474 <Caret Line="161" Column="72" TopLine="135"/> 375 475 </Position9> 376 476 <Position10> 377 <Filename Value=" bgrabitmap/bgrawinbitmap.pas"/>378 <Caret Line=" 136" Column="12" TopLine="128"/>477 <Filename Value="UDrawMethod.pas"/> 478 <Caret Line="31" Column="23" TopLine="19"/> 379 479 </Position10> 380 480 <Position11> 381 <Filename Value=" bgrabitmap/bgrawinbitmap.pas"/>382 <Caret Line="1 37" Column="7" TopLine="113"/>481 <Filename Value="UDrawMethod.pas"/> 482 <Caret Line="140" Column="1" TopLine="131"/> 383 483 </Position11> 384 484 <Position12> 385 <Filename Value=" bgrabitmap/bgrawinbitmap.pas"/>386 <Caret Line="14 6" Column="1" TopLine="133"/>485 <Filename Value="UDrawMethod.pas"/> 486 <Caret Line="141" Column="3" TopLine="123"/> 387 487 </Position12> 388 488 <Position13> 389 <Filename Value=" bgrabitmap/bgradefaultbitmap.pas"/>390 <Caret Line="1 069" Column="1" TopLine="1048"/>489 <Filename Value="UDrawMethod.pas"/> 490 <Caret Line="179" Column="17" TopLine="153"/> 391 491 </Position13> 392 492 <Position14> 393 <Filename Value=" bgrabitmap/bgradefaultbitmap.pas"/>394 <Caret Line=" 1055" Column="25" TopLine="1048"/>493 <Filename Value="UMainForm.pas"/> 494 <Caret Line="204" Column="26" TopLine="174"/> 395 495 </Position14> 396 496 <Position15> 397 <Filename Value=" bgrabitmap/bgradefaultbitmap.pas"/>398 <Caret Line=" 215" Column="27" TopLine="202"/>497 <Filename Value="UDrawMethod.pas"/> 498 <Caret Line="184" Column="44" TopLine="168"/> 399 499 </Position15> 400 500 <Position16> 401 <Filename Value=" bgrabitmap/bgradefaultbitmap.pas"/>402 <Caret Line="2 99" Column="31" TopLine="281"/>501 <Filename Value="UMainForm.pas"/> 502 <Caret Line="200" Column="88" TopLine="177"/> 403 503 </Position16> 404 504 <Position17> 405 <Filename Value=" bgrabitmap/bgradefaultbitmap.pas"/>406 <Caret Line=" 290" Column="39" TopLine="287"/>505 <Filename Value="UDrawMethod.pas"/> 506 <Caret Line="188" Column="5" TopLine="167"/> 407 507 </Position17> 408 508 <Position18> 409 509 <Filename Value="UDrawMethod.pas"/> 410 <Caret Line="1 46" Column="19" TopLine="133"/>510 <Caret Line="165" Column="29" TopLine="153"/> 411 511 </Position18> 412 512 <Position19> 413 <Filename Value=" UDrawMethod.pas"/>414 <Caret Line=" 133" Column="33" TopLine="121"/>513 <Filename Value="../../../lazarus/lcl/include/customform.inc"/> 514 <Caret Line="914" Column="40" TopLine="898"/> 415 515 </Position19> 416 516 <Position20> 417 <Filename Value=" bgrabitmap/bgradefaultbitmap.pas"/>418 <Caret Line=" 292" Column="57" TopLine="279"/>517 <Filename Value="UDrawMethod.pas"/> 518 <Caret Line="164" Column="31" TopLine="156"/> 419 519 </Position20> 420 520 <Position21> 421 <Filename Value=" bgrabitmap/bgradefaultbitmap.pas"/>422 <Caret Line=" 420" Column="26" TopLine="413"/>521 <Filename Value="UDrawMethod.pas"/> 522 <Caret Line="197" Column="5" TopLine="176"/> 423 523 </Position21> 424 524 <Position22> 425 <Filename Value=" bgrabitmap/bgradefaultbitmap.pas"/>426 <Caret Line=" 407" Column="3" TopLine="405"/>525 <Filename Value="UMainForm.pas"/> 526 <Caret Line="92" Column="8" TopLine="68"/> 427 527 </Position22> 528 <Position23> 529 <Filename Value="UMainForm.pas"/> 530 <Caret Line="96" Column="7" TopLine="68"/> 531 </Position23> 532 <Position24> 533 <Filename Value="UDrawMethod.pas"/> 534 <Caret Line="168" Column="8" TopLine="139"/> 535 </Position24> 536 <Position25> 537 <Filename Value="../../../lazarus/lcl/include/customform.inc"/> 538 <Caret Line="919" Column="30" TopLine="898"/> 539 </Position25> 540 <Position26> 541 <Filename Value="UDrawMethod.pas"/> 542 <Caret Line="162" Column="18" TopLine="147"/> 543 </Position26> 544 <Position27> 545 <Filename Value="UMainForm.pas"/> 546 <Caret Line="96" Column="1" TopLine="78"/> 547 </Position27> 548 <Position28> 549 <Filename Value="UDrawMethod.pas"/> 550 <Caret Line="184" Column="15" TopLine="164"/> 551 </Position28> 552 <Position29> 553 <Filename Value="UDrawMethod.pas"/> 554 <Caret Line="194" Column="23" TopLine="177"/> 555 </Position29> 428 556 </JumpHistory> 429 557 </ProjectOptions> -
GraphicTest/GraphicTest.lpr
r206 r211 8 8 {$ENDIF}{$ENDIF} 9 9 Interfaces, // this includes the LCL widgetset 10 Forms, UMainForm, UPlatform, UDrawMethod, UFastBitmap;10 Forms, lazopenglcontext, UMainForm, UPlatform, UDrawMethod, UFastBitmap; 11 11 12 12 {$R *.res} -
GraphicTest/UDrawMethod.pas
r210 r211 8 8 Classes, SysUtils, StdCtrls, ExtCtrls, UPlatform, UFastBitmap, Graphics, 9 9 LCLType, IntfGraphics, fpImage, GraphType, BGRABitmap, BGRABitmapTypes, 10 LclIntf ;10 LclIntf, GL, OpenGLContext; 11 11 12 12 type … … 27 27 FrameDuration: TDateTime; 28 28 PaintObject: TPaintObject; 29 OpenGLBitmap: Pointer; 30 OpenGLControl: TOpenGLControl; 31 TextureId: GLuint; 29 32 constructor Create; virtual; 30 33 destructor Destroy; override; … … 94 97 end; 95 98 99 { TOpenGLMethod } 100 101 TOpenGLMethod = class(TDrawMethod) 102 procedure SetBitmap(const AValue: TBitmap); override; 103 constructor Create; override; 104 destructor Destroy; override; 105 procedure DrawFrame(FastBitmap: TFastBitmap); override; 106 end; 107 108 96 109 const 97 DrawMethodClasses: array[0.. 6] of TDrawMethodClass = (110 DrawMethodClasses: array[0..7] of TDrawMethodClass = ( 98 111 TCanvasPixels, TCanvasPixelsUpdateLock, TLazIntfImageColorsCopy, 99 112 TLazIntfImageColorsNoCopy, TBitmapRawImageData, TBitmapRawImageDataPaintBox, 100 TBGRABitmapPaintBox );113 TBGRABitmapPaintBox, TOpenGLMethod); 101 114 102 115 implementation 116 117 { TOpenGLMethod } 118 119 procedure TOpenGLMethod.SetBitmap(const AValue: TBitmap); 120 begin 121 inherited SetBitmap(AValue); 122 end; 123 124 constructor TOpenGLMethod.Create; 125 begin 126 inherited Create; 127 Caption := 'OpenGL'; 128 PaintObject := poOpenGL; 129 end; 130 131 destructor TOpenGLMethod.Destroy; 132 begin 133 inherited Destroy; 134 end; 135 136 procedure TOpenGLMethod.DrawFrame(FastBitmap: TFastBitmap); 137 var 138 X, Y: Integer; 139 P: PInteger; 140 R: PInteger; 141 const 142 GL_CLAMP_TO_EDGE = $812F; 143 begin 144 (* glEnable(GL_TEXTURE_2D); // enables 2d textures 145 glClearColor(0.0,0.0,0.0,1.0); // sets background color 146 glClearDepth(1.0); 147 glDepthFunc(GL_LEQUAL); // the type of depth test to do 148 glEnable(GL_DEPTH_TEST); // enables depth testing 149 glShadeModel(GL_SMOOTH); // enables smooth color shading 150 {blending} 151 glColor4f(1.0,1.0,1.0,0.5); // Full Brightness, 50% Alpha ( NEW ) 152 glBlendFunc(GL_SRC_ALPHA, GL_ONE); 153 glLightModeli(GL_LIGHT_MODEL_LOCAL_VIEWER, GL_TRUE); 154 *) 155 156 glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT); 157 //glLoadIdentity; { clear the matrix } 158 //glTranslatef(0.0, 0.0, -3.0); // -2.5); { viewing transformation } 159 160 //glLoadIdentity; { clear the matrix } 161 162 P := OpenGLBitmap; 163 with FastBitmap do 164 for Y := 0 to Size.Y - 1 do begin 165 R := P; 166 for X := 0 to Size.X - 1 do begin 167 //R^ := Round($ff * (Y / Size.Y)) or $ff000000; 168 R^ := NoSwapBRComponent(Pixels[X, Y]) or $ff000000; 169 Inc(R); 170 end; 171 Inc(P, Size.X); 172 end; 173 174 glLoadIdentity; 175 //glRotatef(30.0, 0, 0, 1.0); 176 glTranslatef(-OpenGLControl.Width div 2, -OpenGLControl.Height div 2, 0.0); 177 178 glEnable(GL_TEXTURE_2D); 179 glBindTexture(GL_TEXTURE_2D, TextureId); 180 //glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); 181 //glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); 182 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); 183 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); 184 glTexImage2D(GL_TEXTURE_2D, 0, 4, OpenGLControl.Width, OpenGLControl.Height, 185 0, GL_RGBA, GL_UNSIGNED_BYTE, OpenGLBitmap); 186 //glTexImage2D(GL_TEXTURE_2D, 0, 4, 512, 256, 187 //0, GL_RGBA, GL_UNSIGNED_BYTE, OpenGLBitmap); 188 189 //Define how alpha blending will work and enable alpha blending. 190 //glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); 191 //glEnable(GL_BLEND); 192 193 glBegin(GL_QUADS); 194 //glBegin(GL_POLYGON); 195 glColor3ub(255, 255, 255); 196 glTexCoord2f(0, 0); 197 glVertex3f(0, 0, 0); 198 glTexCoord2f(OpenGLControl.Width div 2, 0); 199 glVertex3f(OpenGLControl.Width, 0, 0); 200 glTexCoord2f(OpenGLControl.Width div 2, OpenGLControl.Height div 2); 201 glVertex3f(OpenGLControl.Width, OpenGLControl.Height, 0); 202 glTexCoord2f(0, OpenGLControl.Height div 2); 203 glVertex3f(0, OpenGLControl.Height, 0); 204 glEnd(); 205 206 OpenGLControl.SwapBuffers; 207 end; 103 208 104 209 { TBGRABitmapPaintBox } -
GraphicTest/UMainForm.lfm
r206 r211 16 16 Top = 16 17 17 Width = 365 18 ActivePage = TabSheet 118 ActivePage = TabSheet3 19 19 Anchors = [akTop, akLeft, akRight, akBottom] 20 TabIndex = 020 TabIndex = 2 21 21 TabOrder = 0 22 22 object TabSheet1: TTabSheet 23 23 Caption = 'TImage' 24 ClientHeight = 29 225 ClientWidth = 3 5724 ClientHeight = 291 25 ClientWidth = 361 26 26 object Image1: TImage 27 27 Left = 6 28 Height = 27 928 Height = 278 29 29 Top = 7 30 Width = 3 4730 Width = 351 31 31 Anchors = [akTop, akLeft, akRight, akBottom] 32 32 end … … 34 34 object TabSheet2: TTabSheet 35 35 Caption = 'TPaintBox' 36 ClientHeight = 40637 ClientWidth = 40836 ClientHeight = 291 37 ClientWidth = 361 38 38 object PaintBox1: TPaintBox 39 39 Left = 6 40 Height = 39440 Height = 279 41 41 Top = 7 42 Width = 3 9742 Width = 350 43 43 Anchors = [akTop, akLeft, akRight, akBottom] 44 44 end 45 end 46 object TabSheet3: TTabSheet 47 Caption = 'OpenGL' 45 48 end 46 49 end … … 58 61 Height = 14 59 62 Top = 95 60 Width = 2 363 Width = 24 61 64 Caption = 'FPS:' 62 65 ParentColor = False … … 84 87 Height = 14 85 88 Top = 112 86 Width = 7489 Width = 83 87 90 Caption = 'Frame duration' 88 91 ParentColor = False … … 113 116 item 114 117 Caption = 'FPS' 115 Width = 60118 Width = 75 116 119 end> 117 120 TabOrder = 3 … … 129 132 object ComboBox1: TComboBox 130 133 Left = 7 131 Height = 2 1134 Height = 25 132 135 Top = 64 133 136 Width = 297 134 ItemHeight = 13137 ItemHeight = 0 135 138 Style = csDropDownList 136 139 TabOrder = 5 … … 140 143 Height = 14 141 144 Top = 47 142 Width = 4 1145 Width = 46 143 146 Caption = 'Method:' 144 147 ParentColor = False -
GraphicTest/UMainForm.pas
r206 r211 8 8 Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ComCtrls, 9 9 ExtCtrls, StdCtrls, DateUtils, UPlatform, LCLType, IntfGraphics, fpImage, 10 Math, GraphType, Contnrs, LclIntf, UFastBitmap, UDrawMethod ;10 Math, GraphType, Contnrs, LclIntf, UFastBitmap, UDrawMethod, GL, OpenGLContext; 11 11 12 12 const … … 34 34 TabSheet1: TTabSheet; 35 35 TabSheet2: TTabSheet; 36 TabSheet3: TTabSheet; 36 37 Timer1: TTimer; 37 38 procedure ButtonBenchmarkClick(Sender: TObject); … … 43 44 procedure Timer1Timer(Sender: TObject); 44 45 private 46 OpenGLControl1: TOpenGLControl; 47 TextureId: GLuint; 48 TextureData: Pointer; 49 procedure OpenGLControl1Resize(Sender: TObject); 50 procedure InitGL; 45 51 public 46 52 DrawMethods: TObjectList; // TObjectList<TDrawMethod> … … 79 85 Bitmap.SetSize(TFastBitmap(Scenes[0]).Size.X, TFastBitmap(Scenes[0]).Size.Y); 80 86 87 OpenGLControl1 := TOpenGLControl.Create(Self); 88 with OpenGLControl1 do begin 89 Name := 'OpenGLControl1'; 90 Parent := TabSheet3; 91 SetBounds(0, 0, 320, 240); 92 InitGL; 93 //OnPaint := OpenGLControl1Paint; 94 OnResize := OpenGLControl1Resize; 95 end; 96 GetMem(TextureData, OpenGLControl1.Width * OpenGLControl1.Height * SizeOf(Integer)); 97 81 98 DrawMethods := TObjectList.Create; 82 99 ComboBox1.Clear; … … 85 102 NewDrawMethod.Bitmap := Image1.Picture.Bitmap; 86 103 NewDrawMethod.PaintBox := PaintBox1; 104 NewDrawMethod.OpenGLBitmap := TextureData; 105 NewDrawMethod.OpenGLControl := OpenGLControl1; 87 106 DrawMethods.Add(NewDrawMethod); 88 107 ComboBox1.Items.Add(NewDrawMethod.Caption); 89 108 end; 90 ComboBox1.ItemIndex := 0;109 ComboBox1.ItemIndex := DrawMethods.Count - 1; 91 110 end; 92 111 … … 148 167 procedure TMainForm.FormDestroy(Sender: TObject); 149 168 begin 169 FreeMem(TextureData, OpenGLControl1.Width * OpenGLControl1.Height); 150 170 DrawMethods.Free; 151 171 Scenes.Free; … … 164 184 end; 165 185 186 procedure TMainForm.OpenGLControl1Resize(Sender: TObject); 187 begin 188 glViewport(0, 0, OpenGLControl1.Width, OpenGLControl1.Height); 189 end; 190 191 procedure TMainForm.InitGL; 192 begin 193 glMatrixMode(GL_PROJECTION); 194 glLoadIdentity; 195 glOrtho(0, OpenGLControl1.Width, OpenGLControl1.Height, 0, 0, 1); 196 glMatrixMode(GL_MODELVIEW); 197 glLoadIdentity(); 198 glDisable(GL_DEPTH_TEST); 199 glViewport(0, 0, OpenGLControl1.Width, OpenGLControl1.Height); 200 //gluPerspective( 45.0, (GLfloat)(OpenGLControl1.Width)/(GLfloat)(OpenGLControl1.Height), 0.1f, 500.0 ); 201 202 //glFrustum (-1.0, 1.0, -1.0, 1.0, 1.5, 20.0); 203 //glTranslatef (0.0, 0.0,-3.0); 204 // glClearColor(0.0, 0.0, 0.0, 1.0); 205 206 glGenTextures(1, @TextureId); 207 glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE); 208 end; 209 166 210 end. 167 211
Note:
See TracChangeset
for help on using the changeset viewer.