Commit Graph

159 Commits

Author SHA1 Message Date
Jonathan Bosson
0542e7cef5 Levmarq gives right q values, need to transform them to camera space correctly 2017-04-20 15:22:53 -06:00
Jonathan Bosson
099c343693 levmarq using correct gradient (finite derivative) and using the error to determine next delta step 2017-04-19 18:14:47 -06:00
Jonathan Bosson
0e1b399458 instead of projecting to screen-space the error is now calculated in modelspace (tracing current viewplane pos to surface coordinates) 2017-04-18 16:52:16 -06:00
Jonathan Bosson
58796ca390 func in levmarq now handles the distance between two screen points (one projected from the spheres surface), need to define gradient correctly 2017-04-18 15:57:07 -06:00
Jonathan Bosson
4c19391f63 found potential reasons for why par returns small values, might want to swap to rotate instead of trans on low DOF cases 2017-04-14 17:00:46 -06:00
Jonathan Bosson
9c6ecdc6d3 debugging camera transform for manipulation 2017-04-14 15:24:15 -06:00
Jonathan Bosson
581f29ba95 Using levmarq correctly now, need to double check if grad is the partial derivative of s(xi,q). Added name on credits 2017-04-14 14:58:11 -06:00
Jonathan Bosson
3635bbcefc start testing levmarq use 2017-04-14 12:02:11 -06:00
Jonathan Bosson
626c39b62e fix number of iterations 2017-04-13 16:59:34 -06:00
Jonathan Bosson
99c5956588 merge with feature/planetradius for boundingSphere 2017-04-13 16:56:55 -06:00
Jonathan Bosson
47535e38f9 func and grad should now be defined correctly, needs to be tested 2017-04-13 16:20:20 -06:00
Jonathan Bosson
f2aebcd880 one step closer, need to figure out gradient of func and how to send cam/node/aspectratio with void* fdata 2017-04-12 16:54:13 -06:00
Jonathan Bosson
ab877feaf9 first step for LM algorithm on screen-space points, camera/focusnode causes crashes if not initialized, where do we do this best? 2017-04-12 14:37:28 -06:00
Jonathan Bosson
53f679ae92 crash fix, _camera and _focusNode now have to be declared outside the constructor 2017-04-11 15:15:13 -06:00
Jonathan Bosson
60849e266b small cleanup 2017-04-10 21:03:55 -06:00
Jonathan Bosson
d749d864a1 attempted to make zooming velocities smoother 2017-04-07 16:30:40 -06:00
Jonathan Bosson
2f6fede0ed build fix 2017-04-07 11:30:54 -06:00
Jonathan Bosson
1c1570e854 defined a function to go from modelview to screen space view, comments on step-by-step method for the direct-touch solution 2017-04-07 11:12:02 -06:00
Jonathan Bosson
31e175232a the point on the surface of a body can now be described in spherical coordinates 2017-04-06 15:16:25 -06:00
Jonathan Bosson
cbc8a2cb7e touch is more snappy, nice 2017-04-06 14:06:40 -06:00
Jonathan Bosson
4416707931 find traced rays intersection point on boundingsphere for direct touch interaction 2017-04-04 13:36:35 -06:00
Jonathan Bosson
c6b8917d4b rotation correction when selecting new node 2017-03-31 16:27:06 -06:00
Jonathan Bosson
7b23c17b10 TuioEar can now detect a tap, implemented picking feature. If a selectable node is tapped at that is set as the new focusNode and the camera does a panning to that direction. If not will the camera zoom in towards the focusNode 2017-03-31 14:39:05 -06:00
Jonathan Bosson
a5873c3002 tracing now works correctly with panning, there's an issue when OpenSpace aspect Ratio is not the same as the touch interface aspect ratio 2017-03-30 16:28:51 -06:00
Jonathan Bosson
55157ab429 Cleanup of TouchInteraction, selected can now only have one node per id 2017-03-30 13:05:10 -06:00
Jonathan Bosson
15450d9a9c all contact points are now traced into the scene to find a selection (distance calc still iffy with the rotation quat) 2017-03-29 15:16:05 -06:00
Jonathan Bosson
31f0960c42 improvements to the interpret function so the interaction is more intuitive (now using an immobile finger as the centroid on roll) 2017-03-29 12:38:49 -06:00
Jonathan Bosson
0ea349a70c convert cursor coordinates to ray direction in world space and calculate the distance from planets to the ray to get picking 2017-03-28 14:15:23 -06:00
Jonathan Bosson
bc46190711 invert panning interaction after feedback 2017-03-17 14:43:09 -06:00
Jonathan Bosson
8c9027c6e5 allow for multiple interaction modes (mostly roll and zoom) 2017-03-17 12:11:08 -06:00
Jonathan Bosson
6a6b01096d cleanup of unneeded variables and working version of angle interpretation on roll 2017-03-17 11:29:49 -06:00
Jonathan Bosson
5fc52a3936 trying to use c.getAngles(centroid) for roll feature, not done yet 2017-03-16 17:02:16 -06:00
Jonathan Bosson
6a696bfc5c Cleanup on constructor of TouchInteraction 2017-03-16 15:31:24 -06:00
Jonathan Bosson
6e56862412 Fix on camera issues with it not following rotation/position of focus node. configSensitivites() only done during globebrowsing now 2017-03-16 15:28:46 -06:00
Jonathan Bosson
2e3cd2e599 Touch interaction works decently on globebrowsing and newhorizon scenes. Pause globebrowsing to freeze focus nodes orbit 2017-03-16 13:40:29 -06:00
Jonathan Bosson
6f03e5fe80 Bugfix to losing focus node on fast zooming 2017-03-15 10:22:00 -06:00
Jonathan Bosson
868ac5c6a6 first pass on roll (only uses three finger and x-pos atm), Friction and sensitivities are now part of struct ScaleFactor, sensitivities of zoom and globalRot scales with distance to focus node 2017-03-14 16:27:01 -06:00
Jonathan Bosson
1fa5220e3c minor changes during meeting 2017-03-14 12:44:43 -06:00
Jonathan Bosson
bb050d5056 small modifications to sensitivity and panning 2017-03-13 23:09:17 -06:00
Jonathan Bosson
88db722006 ugly minHeightFromSurface check on focus node (only earth) 2017-03-10 16:18:15 -07:00
Jonathan Bosson
6b0b2070ef panning kinda works 2017-03-10 15:48:44 -07:00
Jonathan Bosson
b1e507ce2b small cleanup and bugfix on gotNewInput() 2017-03-10 14:23:06 -07:00
Jonathan Bosson
7339b7c006 global rotation is now also based on velocity and friction. the input only adds to the specific velocity its interaction corresponds to 2017-03-10 13:45:52 -07:00
Jonathan Bosson
fc2a9b03d2 zooming now uses velocity to move the camera, rotation works with one touch input although currently with a direct new position 2017-03-09 14:43:18 -07:00
Jonathan Bosson
cc269d6aff build fix on touchinteraction header file 2017-03-08 21:09:06 -07:00
Jonathan Bosson
9532e998b0 cleanup with using namespace in header files, start of new interaction class for touch input 2017-03-08 20:43:17 -07:00
Jonathan Bosson
1451d26851 Include right directories on posix files as well 2017-03-07 10:48:22 -07:00
Jonathan Bosson
436da23cd2 Include posix files in lubTUIO if its built on a UNIX unit. Small cleanup in touchmodule 2017-03-07 10:24:07 -07:00
Jonathan Bosson
dbc5f806f4 isMaster no longer exists 2017-03-02 15:57:36 -07:00
Jonathan Bosson
436d573c75 lastList is now a pair of id and the last frames TuioPoint. Makes check to only process if we get new input 2017-03-02 14:35:41 -07:00