Browse Source

print vectors

master
Daniel Ledda 1 month ago
parent
commit
ea2ddf60f3
2 changed files with 45 additions and 0 deletions
  1. +36
    -0
      core.cpp
  2. +9
    -0
      core.h

+ 36
- 0
core.cpp View File

@@ -404,6 +404,42 @@ void print(const char *fmt, ...) {
va_end(argList); va_end(argList);
} }


void print(list<Vector4<real32>> l, StdStream target) {
void (*logFn)(const char *fmt, ...) = target == StdStream_stdout ? &printStdout : &printStderr;
logFn("{ ");
for (size_t i = 0; i < l.length; i++) {
if (i != 0) {
logFn(", ");
}
logFn("{ %.2f, %.2f, %.2f, %.2f }", l.data[i].x, l.data[i].y, l.data[i].z, l.data[i].w);
}
logFn(" } length: %zu, head: %zu\n", l.length, l.head);
}

void print(list<Vector3<real32>> l, StdStream target) {
void (*logFn)(const char *fmt, ...) = target == StdStream_stdout ? &printStdout : &printStderr;
logFn("{ ");
for (size_t i = 0; i < l.length; i++) {
if (i != 0) {
logFn(", ");
}
logFn("{ %.2f, %.2f, %.2f }", l.data[i].x, l.data[i].y, l.data[i].z);
}
logFn(" } length: %zu, head: %zu\n", l.length, l.head);
}

void print(list<Vector2<real32>> l, StdStream target) {
void (*logFn)(const char *fmt, ...) = target == StdStream_stdout ? &printStdout : &printStderr;
logFn("{ ");
for (size_t i = 0; i < l.length; i++) {
if (i != 0) {
logFn(", ");
}
logFn("{ %.2f, %.2f }", l.data[i].x, l.data[i].y);
}
logFn(" } length: %zu, head: %zu\n", l.length, l.head);
}

void print(list<int> l, StdStream target) { void print(list<int> l, StdStream target) {
void (*logFn)(const char *fmt, ...) = target == StdStream_stdout ? &printStdout : &printStderr; void (*logFn)(const char *fmt, ...) = target == StdStream_stdout ? &printStdout : &printStderr;
logFn("{ "); logFn("{ ");


+ 9
- 0
core.h View File

@@ -110,6 +110,12 @@ inline function Vector3<T> vec3(T x, T y, T z) {


template <typename T> template <typename T>
union Vector4 { union Vector4 {
struct {
T r;
T g;
T b;
T a;
};
struct { struct {
T x; T x;
T y; T y;
@@ -255,6 +261,9 @@ enum StdStream {


void print(list<int> l, StdStream target = StdStream_stdout); void print(list<int> l, StdStream target = StdStream_stdout);
void print(list<string> l, StdStream target = StdStream_stdout); void print(list<string> l, StdStream target = StdStream_stdout);
void print(list<Vector2<real32>> l, StdStream target = StdStream_stdout);
void print(list<Vector3<real32>> l, StdStream target = StdStream_stdout);
void print(list<Vector4<real32>> l, StdStream target = StdStream_stdout);
void print(const char *fmt, ...); void print(const char *fmt, ...);
void printErr(const char *fmt, ...); void printErr(const char *fmt, ...);




||||||
x
 
000:0
Loading…
Cancel
Save