[Interest] on plugins and qtuiotouch

Casimiro, Daniel C CIV NUWC NWPT daniel.casimiro at navy.mil
Thu Sep 19 14:32:46 CEST 2013


> > I'm not sure about the spec. I've had this happening using Martin
> > Kaltenbrunner's Java TUIO Simulator, although it doesn't seem to
> > happen with TUIOPad for iOS. This shouldn't be a problem though, it's
> > just that I took a day off and now I don't have access to my actual
> > hardware :) I ended up having to use an Evoluce screen (essentially a
> > huge screen with a PQ Labs overlay, as far as I can tell) because the
> > other contraption proved quite unreliable when it came to touches, so
> > for now I've lost fiducials, but I really appreciate your branch, I'll
> > give it a go as soon as I can.
> 
> About this, I've just tested a bit with the Evoluce screen, both using QML and plain old Qt/C++. I can confirm I get this failed assert all
> the time. On the other hand, I tried to comment the asserts and the whole thing is hardly reliable now. For example I tried a very
> simple QML Flickable thing with a big picture, like the one in the docs, and most of the times I couldn't get it to move, whereas I could
> make it work 100% of the times using the mouse.

I just reread the specification and it looks like duplicate session IDs are allowed:

The Session ID is a unique identifier for each individual TUIO object, cursor or blob, which is maintained during its individual presence during a session. This unique ID allows to distinguish various objects with the same class ID or to identify individual unmarked blobs or cursors. The session ID usually is unique for all profiles, although using the same session ID within the cursor and blob profile for example indicates a reference to the same individual instance. This allows the additional transmission of the cursor or object geometry using the blob profile if desired. 

So, tuio_impl::add_touch_point needs an updated. Could you try this:

void
tuio_impl::add_touch_point(const tuio::touch_point& tp)
{
        if (!points.contains(tp.session_id)) {
            QWindowSystemInterface::TouchPoint touch = make_qws_touch_point(tp);
            points.insert(touch.id, touch);
        } else {
           update_qws_touch_point(tp, points[tp.session_id]);
       }
}

~Dan

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 13417 bytes
Desc: not available
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20130919/fc2cdeff/attachment.bin>


More information about the Interest mailing list