亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? tri.pas

?? Delphi高級程序開發(fā)配書源代碼,可以循序漸進(jìn)的學(xué)習(xí)Delphi.
?? PAS
字號:
unit Tri;

interface

uses
  OpenGL,Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs,StdCtrls,ExtCtrls,ComCtrls;

type
  TForm1 = class(TForm)
    Timer1: TTimer;
    procedure FormCreate(Sender: TObject);
    procedure FormPaint(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private declarations }
    angle:single;
    procedure Draw;//Draws an OpenGL scene on request
  public
    { Public declarations }
  end;

var
  Form1: TForm1;


implementation

{$R *.dfm}

function getNormal(p1,p2,p3:TGLArrayf3):TGLArrayf3;
var a,b:TGLArrayf3;
begin
 a[0]:=p2[0]-p1[0]; a[1]:=p2[1]-p1[1]; a[2]:=p2[2]-p1[2];
 b[0]:=p3[0]-p1[0]; b[1]:=p3[1]-p1[1]; b[2]:=p3[2]-p1[2];
 result[0]:=a[1]*b[2]-a[2]*b[1];
 result[1]:=a[2]*b[0]-a[0]*b[2];
 result[2]:=a[0]*b[1]-a[1]*b[0];
end;


procedure setupPixelFormat(DC:HDC);
const
 pfd:TPIXELFORMATDESCRIPTOR = (
	nSize:sizeof(TPIXELFORMATDESCRIPTOR);	// size
	nVersion:1;				// version
	dwFlags:PFD_SUPPORT_OPENGL or PFD_DRAW_TO_WINDOW or
                PFD_DOUBLEBUFFER;		// support double-buffering
	iPixelType:PFD_TYPE_RGBA;		// color type
	cColorBits:24;				// prefered color depth
	cRedBits:0; cRedShift:0;		// color bits (ignored)
        cGreenBits:0;  cGreenShift:0;
        cBlueBits:0; cBlueShift:0;
        cAlphaBits:0;  cAlphaShift:0;   // no alpha buffer
        cAccumBits: 0;
        cAccumRedBits: 0;  		// no accumulation buffer,
        cAccumGreenBits: 0;             // accum bits (ignored)
        cAccumBlueBits: 0;
        cAccumAlphaBits: 0;
	cDepthBits:16;				// depth buffer
	cStencilBits:0;				// no stencil buffer
	cAuxBuffers:0;				// no auxiliary buffers
	iLayerType:PFD_MAIN_PLANE;              // main layer
        bReserved: 0;
    dwLayerMask: 0;
    dwVisibleMask: 0;
    dwDamageMask: 0;                    // no layer, visible, damage masks */
    );
var pixelFormat:integer;
begin
  pixelFormat := ChoosePixelFormat(DC, @pfd);
  if (pixelFormat = 0) then begin
	MessageBox(WindowFromDC(DC), 'ChoosePixelFormat failed.', 'Error',
		MB_ICONERROR or MB_OK);
	exit;
  end;
  if (SetPixelFormat(DC, pixelFormat, @pfd) <> TRUE) then begin
	MessageBox(WindowFromDC(DC), 'SetPixelFormat failed.', 'Error',
		MB_ICONERROR or MB_OK);
	exit;
  end;
end;


procedure GLInit;
const
  light0_position:TGLArrayf4=( -8.0, 8.0, -16.0, 0.0);
  ambient:  TGLArrayf4=( 0.3, 0.3, 0.3, 0.3);
begin
   // set viewing projection */
   glMatrixMode(GL_PROJECTION);
   glFrustum(-0.1, 0.1, -0.1, 0.1, 0.3, 25.0);
   // position viewer */
   glMatrixMode(GL_MODELVIEW);
   glEnable(GL_DEPTH_TEST);
   glEnable(GL_LIGHTING);

    glLightfv(GL_LIGHT0, GL_POSITION, @light0_position);
    glLightfv(GL_LIGHT0, GL_AMBIENT, @ambient);
    glEnable(GL_LIGHT0);
end;


procedure TForm1.FormCreate(Sender: TObject);
var DC:HDC;
    RC:HGLRC;
    i:integer;
begin
 DC:=GetDC(Handle); //Actually, you can use any widowed control here
 SetupPixelFormat(DC);
 RC:=wglCreateContext(DC); //mache das DC als OpenGL Fenster
 wglMakeCurrent(DC, RC); //aktiviere OpenGL Fenster
 GLInit;
end;



procedure TForm1.FormPaint(Sender: TObject);
begin
   Draw;
end;

procedure TForm1.Draw;
const D=1.5;
      H1=D/1.732;
      H2=D*1.732-H1; // D/H = tg(30) = 1/sqrt(3)
      HY=3.0;
const //vertexes
      a1:TGLArrayf3=(-D, 0, -H1);
      a2:TGLArrayf3=(D, 0, -H1);
      a3:TGLArrayf3=(0, 0, H2);
      a4:TGLArrayf3=(0, HY, 0);
var   n1, n2, n3, n4: TGLArrayf3;   //normals
begin
 n1 := getNormal(a1,a3,a2);
 n2 := getNormal(a1,a2,a4);
 n3 := getNormal(a2,a3,a4);
 n4 := getNormal(a3,a1,a4);
 glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
 glEnable(GL_NORMALIZE);
 glShadeModel(GL_FLAT);
 glCullFace(GL_BACK);
 glLoadIdentity;
 glTranslatef(0.0, 0.0, -12.0);
 glRotatef(angle, 0.0, 1.0, 0.0);
 glBegin(GL_TRIANGLES);
  glNormal3fv(@n1);
  glVertex3fv(@a1); glVertex3fv(@a2); glVertex3fv(@a3);
  glNormal3fv(@n2);
  glVertex3fv(@a1); glVertex3fv(@a2); glVertex3fv(@a4);
  glNormal3fv(@n3);
  glVertex3fv(@a2); glVertex3fv(@a3); glVertex3fv(@a4);
  glNormal3fv(@n4);
  glVertex3fv(@a3); glVertex3fv(@a1); glVertex3fv(@a4);
 glEnd;
 SwapBuffers(wglGetCurrentDC);
end;



procedure TForm1.Timer1Timer(Sender: TObject);
begin
    angle:=angle+1.0;
    Draw;

end;

end.

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩写真欧美这视频| 99久久免费视频.com| 日韩欧美国产精品| 国产中文字幕精品| 国产亚洲视频系列| 成人精品视频一区二区三区| 亚洲精品va在线观看| 欧美撒尿777hd撒尿| 三级精品在线观看| 精品国产91久久久久久久妲己| 九九精品视频在线看| 日本一区二区成人在线| 日本韩国一区二区三区| 青青国产91久久久久久| 2023国产精品| 色欲综合视频天天天| 天堂一区二区在线免费观看| 久久综合九色综合97婷婷| av中文字幕不卡| 美日韩一级片在线观看| 中文字幕va一区二区三区| 欧美日韩精品一区视频| 国产传媒一区在线| 亚洲成人动漫一区| 中文字幕av一区 二区| 欧美日韩另类一区| 成人动漫在线一区| 日本美女视频一区二区| 成人欧美一区二区三区视频网页| 欧美综合欧美视频| 国产成人综合亚洲网站| 日韩影院精彩在线| 国产精品久久久久久久蜜臀 | 亚洲精选视频免费看| 欧美高清视频在线高清观看mv色露露十八 | 蜜臀va亚洲va欧美va天堂| 欧美激情资源网| 欧美一区二区三区四区高清| 91在线云播放| 国产很黄免费观看久久| 日韩电影在线免费看| 亚洲视频一区在线观看| 欧美videossexotv100| 欧美在线短视频| 国产999精品久久久久久绿帽| 喷白浆一区二区| 亚洲制服欧美中文字幕中文字幕| 久久久精品免费网站| 欧美日本一区二区在线观看| 99精品视频中文字幕| 狠狠色丁香久久婷婷综合丁香| 无吗不卡中文字幕| 亚洲黄色av一区| 亚洲欧洲日韩av| 欧美极品xxx| 欧美精品一区二区三区蜜桃视频| 欧美巨大另类极品videosbest| 色综合久久久网| 成人午夜精品一区二区三区| 国内精品视频一区二区三区八戒| 日本女人一区二区三区| 午夜欧美大尺度福利影院在线看 | 欧美中文字幕一区| 91蝌蚪porny九色| 99国产精品久| 不卡在线视频中文字幕| 粉嫩aⅴ一区二区三区四区五区 | 日韩电影免费在线看| 亚洲电影在线免费观看| 亚洲精品国产一区二区精华液 | 日韩女优电影在线观看| 91麻豆精品国产91久久久久久| 欧美专区亚洲专区| 欧美午夜寂寞影院| 欧美色视频在线| 欧美日本一区二区在线观看| 7777精品伊人久久久大香线蕉经典版下载| 色诱亚洲精品久久久久久| 一本久道中文字幕精品亚洲嫩| 91视频精品在这里| 欧美性xxxxxxxx| 欧美日韩一本到| 日韩一卡二卡三卡国产欧美| 欧美videos大乳护士334| 精品国产乱码久久久久久久久| 日韩精品中文字幕一区 | 国产精品久久久久aaaa樱花| 国产精品毛片无遮挡高清| 成人免费视频在线观看| 亚洲黄色录像片| 日本欧美一区二区三区乱码 | 午夜伦理一区二区| 日韩精品一二三四| 美国毛片一区二区三区| 国产一区在线精品| 99久久伊人精品| 欧美日韩一区中文字幕| 日韩一区二区三区视频在线| 久久亚洲影视婷婷| 亚洲青青青在线视频| 日本在线不卡一区| 国产在线精品一区二区| 91免费版在线| 91精品国产综合久久香蕉麻豆 | 成人动漫视频在线| 欧洲视频一区二区| 欧美成人午夜电影| 国产精品伦理在线| 日韩精品五月天| 国产一区二区三区在线观看免费视频| 成人app在线| 欧美男人的天堂一二区| 国产亚洲1区2区3区| 一二三四区精品视频| 精品一区二区三区视频| 色88888久久久久久影院按摩| 日韩一区二区三区在线| 最新热久久免费视频| 日本中文字幕一区二区视频| 岛国精品一区二区| 欧美一区二区视频观看视频| 综合久久给合久久狠狠狠97色| 日本免费新一区视频| 99re这里只有精品首页| 欧美一区二区日韩一区二区| 一区在线观看免费| 韩国三级在线一区| 欧美美女视频在线观看| 中文字幕第一区第二区| 老司机精品视频在线| 欧美性猛片aaaaaaa做受| 欧美经典一区二区| 蜜桃精品视频在线观看| 欧美在线免费观看视频| 国产精品第一页第二页第三页| 男男gaygay亚洲| 欧美日免费三级在线| 亚洲欧美在线视频观看| 国产一区二区三区免费| 4438成人网| 亚洲国产视频网站| 色综合久久久久综合体| 国产精品久久看| 国产91精品入口| 久久色在线观看| 久久99久久99| 日韩精品专区在线| 日韩高清一区在线| 欧美乱妇20p| 亚洲大型综合色站| 91黄色在线观看| 亚洲欧美另类图片小说| 成人一级黄色片| 欧美高清在线一区| 懂色av一区二区三区免费看| 26uuu国产日韩综合| 久久91精品国产91久久小草| 制服丝袜av成人在线看| 亚洲国产日韩综合久久精品| 一本到不卡精品视频在线观看| 中文无字幕一区二区三区| 国产美女精品一区二区三区| 久久色在线视频| 国产精品一区二区在线看| 久久综合色天天久久综合图片| 精品综合免费视频观看| 精品日产卡一卡二卡麻豆| 激情欧美日韩一区二区| 欧美精品一区二区三区视频| 国产在线精品一区二区三区不卡| 久久亚洲捆绑美女| 国产a视频精品免费观看| 国产精品欧美久久久久无广告 | 国产在线精品免费| 久久亚洲捆绑美女| 成人福利视频在线看| 综合av第一页| 欧美日韩一区二区三区在线 | 亚洲精品国产a| 欧美日本免费一区二区三区| 日韩不卡在线观看日韩不卡视频| 在线不卡一区二区| 乱中年女人伦av一区二区| www一区二区| 波多野结衣亚洲| 亚洲国产精品麻豆| 日韩一区二区在线看| 国产精品18久久久久| 亚洲男人的天堂在线观看| 色哟哟国产精品| 欧美bbbbb| 中文字幕乱码日本亚洲一区二区| 91老师片黄在线观看| 日韩成人精品在线观看| 久久久噜噜噜久噜久久综合| 成人蜜臀av电影| 五月天激情小说综合| 国产欧美视频一区二区三区| 91久久精品网| 捆绑调教一区二区三区|