summaryrefslogtreecommitdiff
path: root/sys/src/libgeometry/fmt.c
diff options
context:
space:
mode:
authorrodri <rgl@antares-labs.eu>2023-01-29 23:11:05 +0000
committerrodri <rgl@antares-labs.eu>2023-01-29 23:11:05 +0000
commita5c6374b77610cb2bcb794551475e092d990ef8b (patch)
tree9fc77cf42281a02fbc545afead9be30206b2bd32 /sys/src/libgeometry/fmt.c
parent08a080e8c2c775eda149d3e830bd4fad2c35f249 (diff)
libgeometry revamp
Diffstat (limited to 'sys/src/libgeometry/fmt.c')
-rw-r--r--sys/src/libgeometry/fmt.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/sys/src/libgeometry/fmt.c b/sys/src/libgeometry/fmt.c
new file mode 100644
index 000000000..359b4ba60
--- /dev/null
+++ b/sys/src/libgeometry/fmt.c
@@ -0,0 +1,28 @@
+#include <u.h>
+#include <libc.h>
+#include <geometry.h>
+
+int
+vfmt(Fmt *f)
+{
+ Point2 p;
+
+ p = va_arg(f->args, Point2);
+ return fmtprint(f, "[%g %g %g]", p.x, p.y, p.w);
+}
+
+int
+Vfmt(Fmt *f)
+{
+ Point3 p;
+
+ p = va_arg(f->args, Point3);
+ return fmtprint(f, "[%g %g %g %g]", p.x, p.y, p.z, p.w);
+}
+
+void
+GEOMfmtinstall(void)
+{
+ fmtinstall('v', vfmt);
+ fmtinstall('V', Vfmt);
+}