From fe4f03db45247d406d33ef01b5bdb4406a5add4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?IOhannes=20m=20zm=C3=B6lnig?= Date: Tue, 6 Oct 2009 18:05:48 +0000 Subject: abstractions to handle rotatio as reported by motionplus svn path=/trunk/externals/hardware/wiimote/; revision=12547 --- motionplus_rate2angle.pd | 120 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 motionplus_rate2angle.pd (limited to 'motionplus_rate2angle.pd') diff --git a/motionplus_rate2angle.pd b/motionplus_rate2angle.pd new file mode 100644 index 0000000..cb4d87d --- /dev/null +++ b/motionplus_rate2angle.pd @@ -0,0 +1,120 @@ +#N canvas 0 0 450 357 10; +#N canvas 0 0 704 467 anglespeed 0; +#X obj 149 57 loadbang; +#X obj 95 108 t l l; +#X msg 95 85 \$2 \$1; +#X obj 127 151 route 1; +#X obj 95 232 unpack; +#X obj 95 255 pack; +#X obj 95 277 route 0 1; +#X obj 95 299 / 4; +#X obj 95 321 t f; +#X obj 125 299 / 20; +#X obj 149 78 t b b; +#X obj 149 100 f 8063; +#X obj 134 254 - 8063; +#X msg 149 122 set \$1; +#X obj 95 36 inlet ; +#X obj 95 393 outlet; +#X obj 127 173 mavg 1000; +#X obj 346 58 r \$0-reset; +#X obj 173 223 t f f; +#X obj 173 201 f 8063; +#X connect 0 0 10 0; +#X connect 1 0 4 0; +#X connect 1 1 3 0; +#X connect 2 0 1 0; +#X connect 3 0 16 0; +#X connect 4 0 5 0; +#X connect 4 1 12 0; +#X connect 5 0 6 0; +#X connect 6 0 7 0; +#X connect 6 1 9 0; +#X connect 7 0 8 0; +#X connect 8 0 15 0; +#X connect 9 0 8 0; +#X connect 10 0 11 0; +#X connect 10 1 19 0; +#X connect 11 0 13 0; +#X connect 12 0 5 1; +#X connect 13 0 16 0; +#X connect 14 0 2 0; +#X connect 16 0 19 1; +#X connect 17 0 10 0; +#X connect 18 0 12 1; +#X connect 18 1 11 1; +#X connect 19 0 18 0; +#X restore 51 155 pd anglespeed; +#N canvas 0 0 450 300 deadzone 0; +#X obj 90 101 t f; +#X obj 90 123 moses -0.5; +#X obj 157 144 moses 0.5; +#X msg 157 166 0; +#X obj 158 104 * -1; +#X obj 157 188 t f; +#X obj 157 210 outlet; +#X obj 158 82 t f f; +#X obj 90 46 inlet dphi; +#X obj 225 45 r \$0-deadzone; +#X connect 0 0 1 0; +#X connect 1 0 5 0; +#X connect 1 1 2 0; +#X connect 2 0 3 0; +#X connect 2 1 5 0; +#X connect 3 0 5 0; +#X connect 4 0 1 1; +#X connect 5 0 6 0; +#X connect 7 0 4 0; +#X connect 7 1 2 1; +#X connect 8 0 0 0; +#X connect 9 0 7 0; +#X restore 51 202 pd deadzone; +#N canvas 0 0 450 300 accumulate 0; +#X obj 95 179 t f; +#X obj 95 201 +; +#X obj 95 223 t f f; +#X msg 143 180 0; +#X obj 95 156 inlet; +#X obj 95 245 outlet; +#X obj 143 161 r \$0-reset; +#X connect 0 0 1 0; +#X connect 1 0 2 0; +#X connect 2 0 5 0; +#X connect 2 1 1 1; +#X connect 3 0 1 1; +#X connect 4 0 0 0; +#X connect 6 0 3 0; +#X restore 51 257 pd accumulate; +#N canvas 0 0 1087 300 pertime 0; +#X obj 83 53 inlet; +#X obj 83 75 t f; +#X obj 83 97 / 100; +#X obj 83 119 outlet; +#X text 137 96 <-- currently hardcoded to 10 fps \; LATER make use +of the timetags in the cwiid message and see whether this helps; +#X connect 0 0 1 0; +#X connect 1 0 2 0; +#X connect 2 0 3 0; +#X restore 51 177 pd pertime; +#X obj 268 137 route reset deadzone; +#X obj 268 159 t b; +#X obj 268 181 s \$0-reset; +#X obj 268 115 inlet control; +#X obj 51 128 inlet angle_rate; +#X obj 51 279 outlet angle; +#X obj 336 212 t f; +#X obj 336 234 s \$0-deadzone; +#X obj 183 279 outlet dAngle; +#X obj 51 229 t f f; +#X connect 0 0 3 0; +#X connect 1 0 13 0; +#X connect 2 0 9 0; +#X connect 3 0 1 0; +#X connect 4 0 5 0; +#X connect 4 1 10 0; +#X connect 5 0 6 0; +#X connect 7 0 4 0; +#X connect 8 0 0 0; +#X connect 10 0 11 0; +#X connect 13 0 2 0; +#X connect 13 1 12 0; -- cgit v1.2.1