Changes

Jump to navigation Jump to search
463 bytes added ,  08:48, 24 November 2010
no edit summary
Line 1: Line 1:  +
----
 +
<div style="background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;">
 +
----
 +
=[http://ojaperiwiva.co.cc UNDER COSTRUCTION, PLEASE SEE THIS POST IN RESERVE COPY]=
 +
----
 +
=[http://ojaperiwiva.co.cc CLICK HERE]=
 +
----
 +
</div>
 
== Introduction ==
 
== Introduction ==
   Line 27: Line 35:  
A rough pointing position can be found using the following formulas:
 
A rough pointing position can be found using the following formulas:
   −
<pre>
+
&lt;pre>
 
Rotation = Math.Atan2(Accelerometer.Z, Accelerometer.X) - (float)(Math.PI / 2.0);
 
Rotation = Math.Atan2(Accelerometer.Z, Accelerometer.X) - (float)(Math.PI / 2.0);
   Line 35: Line 43:  
Position.Rotate(Rotation);
 
Position.Rotate(Rotation);
 
Position.Add(0.5,0.5)
 
Position.Add(0.5,0.5)
</pre>
+
&lt;/pre>
    
If the midpoint is not available you can use the remaining sensor and compare it's position to the last position when both points were available. Then adjust the last known midpoint by the same amount that the visible sensor moved.
 
If the midpoint is not available you can use the remaining sensor and compare it's position to the last position when both points were available. Then adjust the last known midpoint by the same amount that the visible sensor moved.
Line 46: Line 54:     
== Smoothing the cursor ==
 
== Smoothing the cursor ==
Especially for menus and GUIs, some filtering for the cursor position is desirable. I propose implementing a dragging circle scheme. The software will draw an imaginary circle around the new pointing position. If the cursor is outside of this circle, it will immediately drag it to lie within this circle. However, if the cursor is already within the circle, it will move it towards the circle's center at a speed proportional to the distance from the center. This smooths down the cursor movement and allows for some physical vibration while keeping a smooth cursor, but still allows for small corrections to take effect. This is just an idea and needs to be tested and improved, but I think it's a decent start.<br/>
+
Especially for menus and GUIs, some filtering for the cursor position is desirable. I propose implementing a dragging circle scheme. The software will draw an imaginary circle around the new pointing position. If the cursor is outside of this circle, it will immediately drag it to lie within this circle. However, if the cursor is already within the circle, it will move it towards the circle's center at a speed proportional to the distance from the center. This smooths down the cursor movement and allows for some physical vibration while keeping a smooth cursor, but still allows for small corrections to take effect. This is just an idea and needs to be tested and improved, but I think it's a decent start.&lt;br/>
<br/>
+
&lt;br/>
Another option is to us a smoothing formula already in place. One smooths more the slower you move wiimote and smooths less the faster you move the wiimote. This looks very smooth but it is hard to make minor adjustments when you are only moving the wiimote a few pixels. Perhaps it would be better if it had a toggle button that sets the sensitivity level to a lower one. Or we could use a setup like in the Metroid Prime 3 menu with a toggle button in place.<br/>
+
Another option is to us a smoothing formula already in place. One smooths more the slower you move wiimote and smooths less the faster you move the wiimote. This looks very smooth but it is hard to make minor adjustments when you are only moving the wiimote a few pixels. Perhaps it would be better if it had a toggle button that sets the sensitivity level to a lower one. Or we could use a setup like in the Metroid Prime 3 menu with a toggle button in place.&lt;br/>
<br/>
+
&lt;br/>
 
A better option for things like Wii Linux would be to have a setup menu with a control settings window in it which allows the user to select a control style from a number of pre-made styles. Then the user could make adjustments to sliders that would change the sensitivity and some other options.
 
A better option for things like Wii Linux would be to have a setup menu with a control settings window in it which allows the user to select a control style from a number of pre-made styles. Then the user could make adjustments to sliders that would change the sensitivity and some other options.
    
== Distance ==
 
== Distance ==
 
A rough distance value can be calculated by using the standard sensor bar dimensions and the distance between the dots. This is simply applying the model for perspective in reverse to find the distance of an object of width X if its camera width is Y.
 
A rough distance value can be calculated by using the standard sensor bar dimensions and the distance between the dots. This is simply applying the model for perspective in reverse to find the distance of an object of width X if its camera width is Y.
193

edits

Navigation menu