diff options
author | rodri <rgl@antares-labs.eu> | 2023-01-29 22:27:33 +0000 |
---|---|---|
committer | rodri <rgl@antares-labs.eu> | 2023-01-29 22:27:33 +0000 |
commit | e70ecd9d84578dad435a39b40592f9a7cd1908d3 (patch) | |
tree | 0abadddf4f131a1aa30fed5a3a434805868fa1e6 /fns.h | |
download | qball-e70ecd9d84578dad435a39b40592f9a7cd1908d3.tar.gz qball-e70ecd9d84578dad435a39b40592f9a7cd1908d3.tar.bz2 qball-e70ecd9d84578dad435a39b40592f9a7cd1908d3.zip |
initial public release.
the original qball doesn't seem to work at all. burnzez's qb adaptation has proven to be very close, with some minor modifications, but still doesn't get it.
Diffstat (limited to 'fns.h')
-rw-r--r-- | fns.h | 46 |
1 files changed, 46 insertions, 0 deletions
@@ -0,0 +1,46 @@ +int objread(char *, Triangle3 **); +Triangle Trian(int, int, int, int, int, int); +Triangle Trianpt(Point, Point, Point); +Point centroid(Triangle); +void triangle(Image *, Triangle, int, Image *, Point); +void filltriangle(Image *, Triangle, Image *, Point); +Triangle rotatriangle(Triangle, double, Point); +Vector Vec(double, double); +Vector addvec(Vector, Vector); +Vector subvec(Vector, Vector); +Vector mulvec(Vector, double); +double dotvec(Vector, Vector); +Vector normvec(Vector); +Vector3 Vec3(double, double, double); +Vector3 Vecquat(Quaternion); +Vector3 addvec3(Vector3, Vector3); +Vector3 subvec3(Vector3, Vector3); +Vector3 mulvec3(Vector3, double); +double dotvec3(Vector3, Vector3); +Vector3 crossvec(Vector3, Vector3); +Vector3 normvec3(Vector3); +void addm(Matrix, Matrix); +void subm(Matrix, Matrix); +void mulm(Matrix, Matrix); +void transm(Matrix); +double detm(Matrix); +Vector3 mulvecm(Vector3, Matrix); +Quaternion Quat(double, double, double, double); +Quaternion Quatvec(double, Vector3); +Quaternion addq(Quaternion, Quaternion); +Quaternion subq(Quaternion, Quaternion); +Quaternion mulq(Quaternion, Quaternion); +Quaternion smulq(Quaternion, double); +Quaternion sdivq(Quaternion, double); +double dotq(Quaternion, Quaternion); +Quaternion invq(Quaternion); +double qlen(Quaternion); +Quaternion normq(Quaternion); +Vector3 qrotate(Vector3, Vector3, double); +void qball(Rectangle, Point, Quaternion*, Quaternion*); +void qb(Rectangle, Point, Point, Quaternion*, Quaternion*); +double round(double); +Point rotatept(Point, double, Point); +double hypot3(double, double, double); +void *emalloc(ulong); +void *erealloc(void *, ulong); |