GLGraph - z:=f(x,y) test application
disclaimer
For the code of GLGraph lookup glgraph
beside the code below :
camera1.position:=(0,0,10);
camera1.direction:=(0,0,-1);
add a dummycube (dummycube1)
the code for the test application
unit Graphtest1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Geometry,GLTexture, GLGraph, GLScene, GLMisc, StdCtrls, GLObjects, ComCtrls;
type
TForm1 = class(TForm)
GLScene1: TGLScene;
GLSceneViewer1: TGLSceneViewer;
GLCamera1: TGLCamera;
create: TButton;
DummyCube1: TDummyCube;
x: TButton;
y: TButton;
z: TButton;
focal: TTrackBar;
mx: TButton;
my: TButton;
mz: TButton;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormResize(Sender: TObject);
procedure createClick(Sender: TObject);
procedure xClick(Sender: TObject);
procedure yClick(Sender: TObject);
procedure zClick(Sender: TObject);
procedure focalChange(Sender: TObject);
procedure mxClick(Sender: TObject);
procedure myClick(Sender: TObject);
procedure mzClick(Sender: TObject);
private
{ Private declarations }
public
MyGraph:TGLGraph;
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
function just_a_graph(x,y:single):single;
begin
result:=sin(2*pi*x)*cos(2*pi*y);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
//
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
//
end;
procedure TForm1.FormResize(Sender: TObject);
begin
GLSceneViewer1.top:=60;
GLSceneViewer1.height:=ClientHeight-80;
end;
procedure TForm1.createClick(Sender: TObject);
var c:TCube;
begin
mygraph:=TGLGraph(Dummycube1.addNewchild((TGLGraph)));
mygraph.callback:=just_a_graph;
mygraph.xlow:=0; mygraph.ylow:=0;
mygraph.xhigh:=5; mygraph.yhigh:=5;
mygraph.dx:=0.01; mygraph.dy:=0.01;
mygraph.showaxes:=true;
mygraph.lowcolor:=clrBlack;
mygraph.highcolor:=clrYellow;
mygraph.getvalues;
mygraph.transformationmode:=tmParentNoPos;
end;
procedure TForm1.xClick(Sender: TObject);
begin
mygraph.PitchAngle:=mygraph.PitchAngle+10;
end;
procedure TForm1.mxClick(Sender: TObject);
begin
mygraph.PitchAngle:=mygraph.PitchAngle-10;
end;
procedure TForm1.yClick(Sender: TObject);
begin
mygraph.turnAngle:=mygraph.turnAngle+10;
end;
procedure TForm1.myClick(Sender: TObject);
begin
mygraph.turnAngle:=mygraph.turnAngle-10;
end;
procedure TForm1.zClick(Sender: TObject);
begin
mygraph.rollAngle:=mygraph.rollAngle+10;
end;
procedure TForm1.mzClick(Sender: TObject);
begin
mygraph.rollAngle:=mygraph.rollAngle-10;
end;
procedure TForm1.focalChange(Sender: TObject);
begin
GLCamera1.focallength:=focal.position;
end;
end.
OpenGL
home
last updated: 11.aug.00
Copyright (99,2000) Ing.Büro R.Tschaggelar