 AShen » 08.11.2011 08:41:35
 AShen » 08.11.2011 08:41:35 
			
			Спасибо за наводку. Получились следующие патчи:
--- /home/ashen/work/pascal/lazarus/lazarus/components/glscene/Source/GLSimpleNavigation.pas    2011-11-07 09:12:48.000000000 +0200
+++ /home/ashen/work/pascal/experementals/lazarus/components/glscene/Source/GLSimpleNavigation.pas      2011-11-08 06:46:00.000000000 +0200
@@ -262,10 +262,10 @@
   begin
     if lCamera.CameraStyle = csOrthogonal then
       lCamera.FocalLength := FGLSceneViewer.Camera.FocalLength
-        / Power(FZoomSpeed, Sign * WheelDelta div Abs(WheelDelta))
+        / Power(FZoomSpeed, Integer(Sign * WheelDelta div Abs(WheelDelta)))
     else
       lCamera.AdjustDistanceToTarget(
-        Power(FZoomSpeed, Sign * WheelDelta div Abs(WheelDelta)));
+        Power(FZoomSpeed, Integer (Sign * WheelDelta div Abs(WheelDelta))));
   end;
   if snoMouseWheelHandled in FOptions then
--- /home/ashen/work/pascal/lazarus/lazarus/components/glscene/Source/Base/CurvesAndSurfaces.pas        2011-11-07 09:12:48.000000000 +0200
+++ /home/ashen/work/pascal/experementals/lazarus/components/glscene/Source/Base/CurvesAndSurfaces.pas  2011-11-08 07:29:34.000000000 +0200
@@ -66,7 +66,8 @@
   ti, tni : Single;
 begin
   if (t=0) and (i=0) then ti:=1 else ti:=Power(t,i);
-  if (n=i) and (t=1) then tni:=1 else tni:=Power(1-t,n-i);
+//  if (n=i) and (t=1) then tni:=1 else tni:=Power(1-t,n-i);
+  if (n=i) and (t=1) then tni:=1 else tni:=Power(1-t,Integer(n-i));
   Result:=(Factorial(n)/(Factorial(i)*Factorial(n-i)))*ti*tni;
 end;
на x86_64 всё скомпилировалось.