Page 1 of 2

Multitouch?

Posted: Thu Oct 02, 2014 12:44 am
by Peregrine
Does anyone here have experience with multitouch monitors + LC? I mean the kind of touch systems that can accommodate as many as 10 simultaneous touches / fingers / hands, such as might be used in an airport, mall or exhibit.
I am wondering about LC's performance when tracking so many touch points... and about any existing techniques or scripts for dealing with all of those points....
Cheers,
- C

Re: Multitouch?

Posted: Thu Oct 02, 2014 1:18 am
by FourthWorld
Multitouch is supported on Android and iOS, but not yet on the desktop. Some time ago I submitted a request for that - feel free to add your comments there:
http://quality.runrev.com/show_bug.cgi?id=8446

Re: Multitouch?

Posted: Thu Oct 02, 2014 2:25 am
by Peregrine
OK, comments added. Thanks for the reference.
Sure would be nice to have for a couple of upcoming museum projects... In fact, it's showstopper for at least one of those projects. Darn.

Re: Multitouch?

Posted: Mon Feb 22, 2016 6:55 pm
by Peregrine
Just a bump (or poke or whatever they call it) for this subject... It's been a couple of years, and I have lost track of all the latest innovations in LC 8....

Touch interfaces are even more common then they were in 2014, and I'd still like to be able to use LC when we build museum interactives that require multitouch. Has there been any progress on this? I've seen this old post: http://forums.livecode.com/viewtopic.ph ... multitouch but it's not very clear to me... It looks like maybe I can manage multitouch if I write my own handlers?

I've also checked here: http://quality.runrev.com/show_bug.cgi?id=8446 , where there does not appear to be an update, either.

Is it on the roadmap? If not, why not? As others have pointed out, multitouch is the de facto modern standard for interaction.

The issue for me is that it looks like I would have to commit significant time just to build and test these capabilities. And then if they are not responsive enough, I'll have to move to a different dev tool that does provide native, or at least fast and responsive, multitouch....

(The follow up question is: would it be even possible to commission an [s]external[/s] widget to deal with multitouch via C++ or some other lower level system?)

Re: Multitouch?

Posted: Mon Feb 22, 2016 9:22 pm
by FourthWorld
Peregrine wrote:As others have pointed out, multitouch is the de facto modern standard for interaction.
Mostly on Windows, where the most frequent gestures are translated to keyboard sequences, which can be handled in LC.

Of course there are exceptions, like pinch-to-zoom, and it would be nice to support those as well. I think the only reason we haven't seen those added in yet is that the team has had some big goals to address (Unicode was a massive undertaking, the port to Cocoa and more recently 64-bit for OS X not things that could be postponded, and along the way another thousand or so enhancements and fixes over the last year).

Once v8.0 ships I think we'll see more movement on other outstanding goals like the new multimedia player control and others, and once those obligations are met the team will be in a good position to consider the best path for implementing multi-touch gesture support across the desktop OSes that support it.

Re: Multitouch?

Posted: Tue Feb 23, 2016 8:08 pm
by Peregrine
Thanks for the reply, Richard. I'll keep an eye on these aspects of the next steps.

Re: Multitouch?

Posted: Tue Feb 23, 2016 9:35 pm
by FourthWorld
Peregrine wrote:Thanks for the reply, Richard. I'll keep an eye on these aspects of the next steps.
In the meantime, if you have a multi-touch display running Win 10 try seeing if you can capture some of the gestures with the keysDown function. I don't use Windows often myself, but I have a Logitech trackpad designed for Win 10 and use it in Ubuntu, and have been delighted to find how nicely the Microsoft spec apparently translates many common gestures to key shortcuts, which make it easy to trap them in both Ubuntu's keyboard shortcut utility and in LiveCode.

Re: Multitouch?

Posted: Wed Feb 24, 2016 9:08 pm
by Peregrine
Cool.
I'll run some tests in the coming weeks and report back here, and share some code if I can.
I'd like to have pinch/spread to zoom in/out, but if that's not possible and other common gestures are, then it could still work for us.
Thanks for pointing me in that direction!

Re: Multitouch?

Posted: Fri Mar 11, 2016 8:08 pm
by Peregrine
I have yet to try LC on Windows 10.

I did recently revisit this: http://gestureworks.com These folks have a number of different bindings to different languages, including C++, Python and Java. Ideum, who created and promote Gestureworks, work in Flash and have a number of examples of that work posted on the Gestureworks site. Could any of these Gestureworks materials be used to create a multitouch / gestural library for LC?

(I ask, because my understanding of the possible connections between LC8 and other stuff is rather limited. And it seems to make sense to connect to some existing multitouch stuff, instead of trying to create it from scratch....)

Re: Multitouch?

Posted: Sat Oct 14, 2017 10:14 am
by sphere
I'm bumping this old tread.

I did some tests on a 4K 75" touch screen with a infra-red multi-touchsystem. It is native supported in Windows without driver.
So i chose to do without driver so i could see what windows itself does with livecode (at least that where my thoughts).

Maybe this post should be moved to feature requests?

But anyway, all the pinch-motion and multitouch lessons do not work in windows, just tested to make sure.
Also the KeysDown Function does not return any command or characters, i tried to capture them in a field and wanted to save it to a simple text file.

But only a single touch is possible in windows.
This needs to change and supported asap! I see many great possibilities.
These big multi-touch screens are already around since 2010/2011.

So any help on this would be fantastic!

Re: Multitouch?

Posted: Sat Oct 14, 2017 4:15 pm
by FourthWorld
Beyond the gestures we can capture with rawKeyDown (apparently Windows does that with a good many of the most common ones), I submitted this request to the queue a while back:
http://quality.livecode.com/show_bug.cgi?id=8446

Re: Multitouch?

Posted: Sun Oct 15, 2017 9:01 am
by sphere
i've seen your link Richard in a few other treads indeed.
I wonder why this is not been picked up in those 8 years (although touch is already present since 15 or 20 years back)
But the last few years it is really more common. These days many laptops have a built in touch screen.
So it would be great if support will be added.

I just used keyDown, so i will test again with rawkeyDown and see what it brings.

The screens use different touch modules of different manufacturers most are infra red, but newest is In Glass, which uses the distortion of the light which is send through the glass layer these can detect a pointer size of 2mm whereas IR needs at least 6mm to detect it.
All are HID compatible when used without driver, but with driver then mostly there is also TUIO support which is an opensource touch protocol, developed in the audio industry for a special synthesizer (Music was my first love....)

Re: Multitouch?

Posted: Mon Oct 16, 2017 2:13 pm
by sphere
I did some tests again.
I did not get any useful info and only got the message rawkeydown or up
and only when my full hand was on the screen tapping
i also did test with and without the if then else structure, to see if something else came up, but none
this is just with win10 and a touch screen
Please give any suggestions if i did something wrong or should do different, thanks
nb. put theKey into Fld"Field"does not work

This is what came in the field
capture.PNG
and this is the card script:

Code: Select all

on keyDown theKey
   --if theKey is a number then
   put "***keyDown***" after fld"Field"
   put it after fld"Field"
   put cr after fld"Field"
   pass keyDown
--end if
end keyDown

on rawKeyDown theKeyNumber
--  if theKeyNumber is a number then
  put "***rawkeyDown***" after fld"Field"
   put it after fld"Field"
   put cr after fld"Field"
   pass rawkeyDown
   --end if
end rawKeyDown

on keyUp theUpKey
   --if theUpKey is a number then
   put "***keyUp***" after fld"Field"
   put it after fld"Field"
   put cr after fld"Field"
   pass keyUp
--end if
end keyUp

on rawKeyUp theKeyUpNumber
--  if theKeyUpNumber is a number then
  put "***rawkeyUp***" after fld"Field"
   put it after fld"Field"
   put cr after fld"Field"
   pass rawkeyUp
 --  end if
end rawKeyUp
did a quick other test with all the mouse commands in an image then got this:
Capture2.PNG
So no keys or raw keys for touch and no multi-touch...

Re: Multitouch?

Posted: Mon Oct 16, 2017 2:43 pm
by sphere

Re: Multitouch?

Posted: Tue Oct 17, 2017 7:33 am
by sphere
Or perhaps this is better or easier to implement with LC9 LCB?
TUIO open source multitouch protocol with JAVA API

https://www.tuio.org/?java

but it think to difficult for me :oops: but maybe i give it a try as there are classes given on the website


This is interesting for MacOS users and could also be used with TUIO:
hci.rwth-aachen.de/multitouchframework