Add initial prototype.
This commit is contained in:
73
4-high/gel/source/gel-conversions.adb
Normal file
73
4-high/gel/source/gel-conversions.adb
Normal file
@@ -0,0 +1,73 @@
|
||||
package body gel.Conversions
|
||||
is
|
||||
use Math;
|
||||
|
||||
|
||||
function to_GL (Self : in geometry_3d.bounding_Box) return openGL.Bounds
|
||||
is
|
||||
the_Bounds : opengl.Bounds := (Ball => <>,
|
||||
Box => (Lower => to_GL (Self.Lower),
|
||||
Upper => to_GL (Self.Upper)));
|
||||
begin
|
||||
openGL.set_Ball_from_Box (the_Bounds);
|
||||
return the_Bounds;
|
||||
end to_GL;
|
||||
|
||||
|
||||
|
||||
function to_GL (Self : in Real) return opengl.Real
|
||||
is
|
||||
begin
|
||||
return opengl.Real (Self);
|
||||
|
||||
exception
|
||||
when constraint_Error =>
|
||||
if Self > 0.0
|
||||
then return opengl.Real'Last;
|
||||
else return opengl.Real'First;
|
||||
end if;
|
||||
end to_GL;
|
||||
|
||||
|
||||
|
||||
function to_GL (Self : in Vector_3) return opengl.Vector_3
|
||||
is
|
||||
begin
|
||||
return [to_GL (Self (1)),
|
||||
to_GL (Self (2)),
|
||||
to_GL (Self (3))];
|
||||
end to_GL;
|
||||
|
||||
|
||||
|
||||
function to_GL (Self : in Matrix_3x3) return opengl.Matrix_3x3
|
||||
is
|
||||
begin
|
||||
return [[to_gl (Self (1, 1)), to_gl (Self (1, 2)), to_gl (Self (1, 3))],
|
||||
[to_gl (Self (2, 1)), to_gl (Self (2, 2)), to_gl (Self (2, 3))],
|
||||
[to_gl (Self (3, 1)), to_gl (Self (3, 2)), to_gl (Self (3, 3))]];
|
||||
end to_GL;
|
||||
|
||||
|
||||
|
||||
function to_GL (Self : in Matrix_4x4) return opengl.Matrix_4x4
|
||||
is
|
||||
begin
|
||||
return [[to_gl (Self (1, 1)), to_gl (Self (1, 2)), to_gl (Self (1, 3)), to_gl (Self (1, 4))],
|
||||
[to_gl (Self (2, 1)), to_gl (Self (2, 2)), to_gl (Self (2, 3)), to_gl (Self (2, 4))],
|
||||
[to_gl (Self (3, 1)), to_gl (Self (3, 2)), to_gl (Self (3, 3)), to_gl (Self (3, 4))],
|
||||
[to_gl (Self (4, 1)), to_gl (Self (4, 2)), to_gl (Self (4, 3)), to_gl (Self (4, 4))]];
|
||||
end to_GL;
|
||||
|
||||
|
||||
|
||||
function to_Math (Self : in opengl.Vector_3) return math.Vector_3
|
||||
is
|
||||
begin
|
||||
return [Self (1),
|
||||
Self (2),
|
||||
Self (3)];
|
||||
end to_Math;
|
||||
|
||||
|
||||
end gel.Conversions;
|
||||
Reference in New Issue
Block a user