Hallo,
ich bekomme es einfach nicht hin das ich mit der rechten Maustaste das
Bild in GLScene verschieben kann, also den Null Punkt nach links oder rechts o/u verschieben kann.
Mit GLSceneViewer1MouseWheel kann ich Zoomen
Mit GLSceneViewer1MouseMove kann ich überall hin drehen.
Aber verschieben, das bekomme ich nicht hin.
Kann mir jmd von euch einen Tipp geben ?
Mfg Schuby
Delphi-Quellcode:
//================================================
procedure TForm1.GLSceneViewer1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
mx:= x;
my:= y;
end;
//================================================
procedure TForm1.GLSceneViewer1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if Shift=[ssLeft] then
Begin
GLCamera1.MoveAroundTarget(my-y,mx-x);
end;
{ if Shift=[ssRight] then
Begin
?????????????
end; }
mx:= x;
my:= y;
end;
//================================================
procedure TForm1.GLSceneViewer1MouseWheel(Sender: TObject; Shift: TShiftState;
WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
var step: Double;
begin
if GLCamera1.FocalLength >= 20 then
begin
xx:= (WheelDelta / 20);
GLCamera1.FocalLength:= GLCamera1.FocalLength + (step); //
Edit1.Text:= FloatToStr(GLCamera1.FocalLength);
end else
begin
GLCamera1.FocalLength:= 21;
end;
end;