From 4164926e7d273ddf86a00a1025f6d39e92b7695c Mon Sep 17 00:00:00 2001 From: Fred Emmott Date: Sat, 30 Jan 2021 10:12:27 -0600 Subject: [PATCH] Add executable for rendering axis deadzones/curves --- render.cpp | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 render.cpp diff --git a/render.cpp b/render.cpp new file mode 100644 index 0000000..967310c --- /dev/null +++ b/render.cpp @@ -0,0 +1,28 @@ +/* + * Copyright (c) 2020-present, Fred Emmott + * All rights reserved. + * + * This source code is licensed under the ISC license found in the LICENSE file + * in the root directory of this source tree. + */ + +// This file is an executable, intended to generate illustrative diagrams +// of some basic axis mapping operations + +#include "lib/easymode.h" +#include "lib/render_axis.h" + +using fredemmott::inputmapping::render_axis; +using fredemmott::inputmapping::AxisEventHandler; + +int main() { + render_axis("linear.bmp", [](auto next) { return next; }); + render_axis("curve_0.bmp", [](auto next) { return AxixCurve { 0, next }; }); + render_axis("curve_0.5.bmp", [](auto next) { return AxixCurve { 0.5, next }; }); + render_axis("curve_neg0.5.bmp", [](auto next) { return AxixCurve { -0.5, next }; }); + render_axis("curve_0.99.bmp", [](auto next) { return AxixCurve { 0.99, next }; }); + render_axis("dead_10.bmp", [](auto next) { return SquareDeadzone { 10, next }; }); + render_axis("dead_curve.bmp", [](auto next) { return SquareDeadzone { 50, AxisCurve { 0.5, next } }; }); + render_axis("curve_dead.bmp", [](auto next) { return AxisCurve { 0.5, SquareDeadzone { 50, next } }; }); + return 0; +}