From 027e856c0f168b6c8c073de7899c8c5254716181 Mon Sep 17 00:00:00 2001 From: Nguyễn Gia Phong Date: Sun, 26 Mar 2023 00:38:21 +0900 Subject: Convert a few linear algebra functions to Zig --- src/Models.cpp | 116 +++++++++++++-------------------------------------------- 1 file changed, 26 insertions(+), 90 deletions(-) (limited to 'src/Models.cpp') diff --git a/src/Models.cpp b/src/Models.cpp index a414008..acbbaa8 100644 --- a/src/Models.cpp +++ b/src/Models.cpp @@ -117,99 +117,35 @@ void Model::draw(float r, float g, float b) glDrawArrays(GL_TRIANGLES, 0, TriangleNum*3); } -int Model::LineCheck(XYZ p1,XYZ p2, XYZ *p) +int Model::LineCheck(XYZ p1, XYZ p2, XYZ *p) { - int j; - float distance; - float olddistance=9999999.0; - int intersecting=0; - int firstintersecting=-1; - XYZ point; - if (segmentIntersectsSphere(p1, p2, boundingspherecenter, boundingsphereradius)) - for (j=0;jx)*(point.x-p1->x)+(point.y-p1->y)*(point.y-p1->y)+(point.z-p1->z)*(point.z-p1->z); - if((distanceLineCheck(rotate(p1 - move, 0, -deg_y, 0), + rotate(p2 - move, 0, -deg_y, 0), p); + *p = rotate(*p, 0, deg_y, 0) + move; + return result; } -- cgit 1.4.1