I've been thinking about this problem as well, as there is currently no generic multi touch capable camera manipulator. In my application I would need something like the terrain manipulator, but capable of handling two touch points.
Multitouch dragging/rotation could be implemented by alternating processing of both touch points. Alternate between those two checks If touch point 2 moved, rotate around point 2, using point 1 as a fixed rotational center. If touch point 1 moved, rotate around point 1, using point 2 as a fixed rotational center. If only one touch point is detected, keep using the old trackball algorithm with the default rotation center More than two touch points? -> kernel panic ;) Christian 2012/6/13 Nav Joseph <[email protected]>: > Sounds more like an algorithm solution than an osg solution. > The below algo isn't perfect, but it'll give you an idea. > > finger1=false; > finger2=false; > > while(checkForFingerPressRelease) > { > if (finger1pressed) finger1=true; > if (finger2pressed) finger2=true; > if (finger1released) finger1=false; > if (finger2released) finger2=false; > > if (finger1 && finger2) > { > check for dragging of finger2 and rotate > else > check for dragging of finger1 and rotate > } > > }//while > > ------------------ > Read this topic online here: > http://forum.openscenegraph.org/viewtopic.php?p=48265#48265 > > > > > > _______________________________________________ > osg-users mailing list > [email protected] > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

