Shape functions and few utility functions...

This commit is contained in:
Ognjen Milan Robovic 2024-04-05 07:15:54 -04:00
parent 345ff1de07
commit 027dd77c92
2 changed files with 176 additions and 77 deletions

View File

@ -2093,25 +2093,40 @@ package Raylib is
Convention => C, Convention => C,
External_Name => "UpdateCamera"; External_Name => "UpdateCamera";
--~procedure UpdateCameraPro (Camera *camera, Vector3 movement, Vector3 rotation, float zoom) with procedure Update_Camera_Pro (
--~Import => True, Data : access Camera_3D := null;
--~Convention => C, Movement : Vector_3D := (0.0, 0.0, 0.0);
--~External_Name => ""; Rotation : Vector_3D := (0.0, 0.0, 0.0);
Zoom : Float := 0.0
) with
Import => True,
Convention => C,
External_Name => "UpdateCameraPro";
--~procedure SetShapesTexture (Texture2D texture, Rectangle source) with procedure Set_Shapes_Texture (
--~Import => True, Data : Texture := No_Texture;
--~Convention => C, Source : Rectangle := No_Rectangle
--~External_Name => ""; ) with
Import => True,
Convention => C,
External_Name => "SetShapesTexture";
--~procedure DrawPixel (int posX, int posY, Color color) with procedure Draw_Pixel (
--~Import => True, X : Integer := 0;
--~Convention => C, Y : Integer := 0;
--~External_Name => ""; Tint : Color := White
) with
Import => True,
Convention => C,
External_Name => "DrawPixel";
--~procedure DrawPixelV (Vector2 position, Color color) with procedure Draw_Pixel_V (
--~Import => True, Position : Vector_2D := (0.0, 0.0);
--~Convention => C, Tint : Color := White
--~External_Name => ""; ) with
Import => True,
Convention => C,
External_Name => "DrawPixelV";
procedure Draw_Line ( procedure Draw_Line (
X0 : Integer := 0; X0 : Integer := 0;
@ -2124,80 +2139,164 @@ package Raylib is
Convention => C, Convention => C,
External_Name => "DrawLine"; External_Name => "DrawLine";
--~procedure DrawLineV (Vector2 startPos, Vector2 endPos, Color color) with procedure Draw_Line_V (
--~Import => True, From : Vector_2D := (0.0, 0.0);
--~Convention => C, To : Vector_2D := (0.0, 0.0);
--~External_Name => ""; Tint : Color := Black
) with
Import => True,
Convention => C,
External_Name => "DrawLineV";
--~procedure DrawLineEx (Vector2 startPos, Vector2 endPos, float thick, Color color) with procedure Draw_Line_Ex (
--~Import => True, From : Vector_2D := (0.0, 0.0);
--~Convention => C, To : Vector_2D := (0.0, 0.0);
--~External_Name => ""; Thick : Float := 0.0;
Tint : Color := Black
) with
Import => True,
Convention => C,
External_Name => "DrawLineEx";
--~procedure DrawLineStrip (Vector2 *points, int pointCount, Color color) with procedure Draw_Line_Strip (
--~Import => True, Points : access Vector_2D := null;
--~Convention => C, Point_Count : Natural := 0;
--~External_Name => ""; Tint : Color := Black
) with
Import => True,
Convention => C,
External_Name => "DrawLineStrip";
--~procedure DrawLineBezier (Vector2 startPos, Vector2 endPos, float thick, Color color) with procedure Draw_Line_Bezier (
--~Import => True, From : Vector_2D := (0.0, 0.0);
--~Convention => C, To : Vector_2D := (0.0, 0.0);
--~External_Name => ""; Thick : Float := 0.0;
Tint : Color := Black
) with
Import => True,
Convention => C,
External_Name => "DrawLineBezier";
--~procedure DrawCircle (int centerX, int centerY, float radius, Color color) with procedure Draw_Circle (
--~Import => True, X : Integer := 0;
--~Convention => C, Y : Integer := 0;
--~External_Name => ""; Radius : Float := 0.0;
Tint : Color := Black
) with
Import => True,
Convention => C,
External_Name => "DrawCircle";
--~procedure DrawCircleSector (Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color) with procedure Draw_Circle_Sector (
--~Import => True, Center : Vector_2D := (0.0, 0.0);
--~Convention => C, Radius : Float := 0.0;
--~External_Name => ""; From : Float := 0.0;
To : Float := 0.0;
Segments : Integer := 0;
Tint : Color := Black
) with
Import => True,
Convention => C,
External_Name => "DrawCircleSector";
--~procedure DrawCircleSectorLines (Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color) with procedure Draw_Circle_Sector_Lines (
--~Import => True, Center : Vector_2D := (0.0, 0.0);
--~Convention => C, Radius : Float := 0.0;
--~External_Name => ""; From : Float := 0.0;
To : Float := 0.0;
Segments : Integer := 0;
Tint : Color := Black
) with
Import => True,
Convention => C,
External_Name => "DrawCircleSectorLines";
--~procedure DrawCircleGradient (int centerX, int centerY, float radius, Color color1, Color color2) with procedure Draw_Circle_Gradient (
--~Import => True, X : Integer := 0;
--~Convention => C, Y : Integer := 0;
--~External_Name => ""; Radius : Float := 0.0;
Tint_1 : Color := Black;
Tint_2 : Color := White
) with
Import => True,
Convention => C,
External_Name => "DrawCircleGradient";
--~procedure DrawCircleV (Vector2 center, float radius, Color color) with procedure Draw_Circle_V (
--~Import => True, Center : Vector_2D := (0.0, 0.0);
--~Convention => C, Radius : Float := 0.0;
--~External_Name => ""; Tint : Color := Black
) with
Import => True,
Convention => C,
External_Name => "DrawCircleV";
--~procedure DrawCircleLines (int centerX, int centerY, float radius, Color color) with procedure Draw_Circle_Lines (
--~Import => True, X : Integer := 0;
--~Convention => C, Y : Integer := 0;
--~External_Name => ""; Radius : Float := 0.0;
Tint : Color := Black
) with
Import => True,
Convention => C,
External_Name => "DrawCircleLines";
--~procedure DrawCircleLinesV (Vector2 center, float radius, Color color) with procedure Draw_Circle_Lines_V (
--~Import => True, Center : Vector_2D := (0.0, 0.0);
--~Convention => C, Radius : Float := 0.0;
--~External_Name => ""; Tint : Color := Black
) with
Import => True,
Convention => C,
External_Name => "DrawCircleLinesV";
--~procedure DrawEllipse (int centerX, int centerY, float radiusH, float radiusV, Color color) with procedure Draw_Ellipse (
--~Import => True, X : Integer := 0;
--~Convention => C, Y : Integer := 0;
--~External_Name => ""; Horizontal : Float := 0.0;
Vertical : Float := 0.0;
Tint : Color := Black
) with
Import => True,
Convention => C,
External_Name => "DrawEllipse";
--~procedure DrawEllipseLines (int centerX, int centerY, float radiusH, float radiusV, Color color) with procedure Draw_Ellipse_Lines (
--~Import => True, X : Integer := 0;
--~Convention => C, Y : Integer := 0;
--~External_Name => ""; Horizontal : Float := 0.0;
Vertical : Float := 0.0;
Tint : Color := Black
) with
Import => True,
Convention => C,
External_Name => "DrawEllipseLines";
--~procedure DrawRing (Vector2 center, float innerRadius, float outerRadius, float startAngle, float endAngle, int segments, Color color) with procedure Draw_Ring (
--~Import => True, Center : Vector_2D := (0.0, 0.0);
--~Convention => C, Inner_Radius : Float := 0.0;
--~External_Name => ""; Outer_Radius : Float := 0.0;
From : Float := 0.0;
To : Float := 0.0;
Segments : Integer := 0;
Tint : Color := Black
) with
Import => True,
Convention => C,
External_Name => "DrawRing";
--~procedure DrawRingLines (Vector2 center, float innerRadius, float outerRadius, float startAngle, float endAngle, int segments, Color color) with procedure Draw_Ring_Lines (
--~Import => True, Center : Vector_2D := (0.0, 0.0);
--~Convention => C, Inner_Radius : Float := 0.0;
--~External_Name => ""; Outer_Radius : Float := 0.0;
From : Float := 0.0;
To : Float := 0.0;
Segments : Integer := 0;
Tint : Color := Black
) with
Import => True,
Convention => C,
External_Name => "DrawRingLines";
procedure Draw_Rectangle ( procedure Draw_Rectangle (
X : Integer := 0; X : Integer := 0;

View File

@ -31,7 +31,7 @@ begin
-- --
Clear_Background (Sky_Blue); Clear_Background (Sky_Blue);
Draw_Texture (Dragdown, 100, 100, White); Draw_Texture (Dragdown, 100, 100, White);
Draw_Text_Pro (Get_Font_Default, Text, (90.0, 90.0), (9.0, 9.0), 0.0, 32.0, 4.0, Red); Draw_Text (Text, 90, 90);
Draw_FPS (X, Y); Draw_FPS (X, Y);
Draw_Line (0, 0, 300, 300, Black); Draw_Line (0, 0, 300, 300, Black);
Draw_Rectangle (120, 120, 30, 60, Blue); Draw_Rectangle (120, 120, 30, 60, Blue);