<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
    xmlns:admin="http://webns.net/mvcb/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:content="http://purl.org/rss/1.0/modules/content/">
    
    <channel>
    
    <title>Open Source Interface</title>
    <link>http://nuigroup.com/forums/</link>
    <description>Open Source Interface</description>
    <dc:language>en</dc:language>
    <dc:rights>Copyright 2008</dc:rights>
    <dc:date>2008-11-22T07:48:46-05:00</dc:date>
    <admin:generatorAgent rdf:resource="http://www.pmachine.com/" />
    

    <item>
      <title>Processing sketches</title>
      <link>http://nuigroup.com/forums/viewthread/3634/</link>
      <guid>http://nuigroup.com/forums/viewthread/3634/#When:11:43:51Z</guid>
      <description>&lt;p&gt;here goes a few sketches of my learning process.
&lt;br /&gt;
i hope they will be usefull for a starting point .
&lt;br /&gt;
Launch osc.exe, then the sketches in Processing.
&lt;br /&gt;
I tried to comment the codes in a helpful way ...
&lt;/p&gt;
&lt;p&gt;
For now all the sketches only managed direct inputs from TUIO.
&lt;br /&gt;
TODO :&amp;nbsp; implement a class that handles the inputs ( distance between points, dynamic objects ...)
&lt;/p&gt;
&lt;p&gt;
the Paint is still buggy , there is opengl bug when opening it  that i still don&#8217;t fix so
&lt;br /&gt;
if you find a solution ,let me know !
&lt;/p&gt;
&lt;p&gt;
[vimeo]2300781[/vimeo]
&lt;/p&gt;
&lt;p&gt;
I failed in uploading the .rar archive here,but meanwhile you can get the sketches  &lt;a href=&quot;http://sassexperience.org/multitouch/inprogress.html&quot;&gt;here&lt;/a&gt;
&lt;/p&gt;</description>
      <dc:date>2008-11-21T11:43:51-05:00</dc:date>
    </item>

    <item>
      <title>Java and OpenCv</title>
      <link>http://nuigroup.com/forums/viewthread/3531/</link>
      <guid>http://nuigroup.com/forums/viewthread/3531/#When:13:00:38Z</guid>
      <description>&lt;p&gt;Hi, i&#8217;ve a problem to running open cv in java.
&lt;br /&gt;
i downloaded all necessary following this guide: &lt;a href=&quot;http://ubaa.net/shared/processing/opencv/&quot;&gt;http://ubaa.net/shared/processing/opencv/&lt;/a&gt;
&lt;br /&gt;
and under processing it works (but installing opencv 1.0 instead the latest version).
&lt;br /&gt;
Now i want to use it in pure java environment, so i created a project under netbeans, i took the processing.core library, copied opencv.dll in OpenCv/bin directory and run the two examples with no error.
&lt;br /&gt;
The problem is that i obtain a frame with black screen (webcam led is however on) and nothing is showed.
&lt;/p&gt;
&lt;p&gt;
do you have any idea?
&lt;/p&gt;
&lt;p&gt;
thanks in advance
&lt;/p&gt;</description>
      <dc:date>2008-11-13T13:00:38-05:00</dc:date>
    </item>

    <item>
      <title>Mac Mouse Driver</title>
      <link>http://nuigroup.com/forums/viewthread/3261/</link>
      <guid>http://nuigroup.com/forums/viewthread/3261/#When:20:19:02Z</guid>
      <description>&lt;p&gt;I don&#8217;t really program in java, but I decided to throw a tuio mouse driver for mac os x based on the reactivision tuio demo java app. It works, but I am sure that the coding style isn&#8217;t really great, and there is probably a lot of extra stuff that doesn&#8217;t really need to be there. If anyone who actually knows java would like to clean it up for me, I would greatly appreciate it.
&lt;/p&gt;</description>
      <dc:date>2008-10-16T20:19:02-05:00</dc:date>
    </item>

    <item>
      <title>Processing and OSCP5 library</title>
      <link>http://nuigroup.com/forums/viewthread/3495/</link>
      <guid>http://nuigroup.com/forums/viewthread/3495/#When:14:48:12Z</guid>
      <description>&lt;p&gt;I&#8217;ve been fooling around with processing lately and I&#8217;m trying to get build18er&#8217;s work to run:
&lt;/p&gt;
&lt;p&gt;
&lt;a href=&quot;http://nuigroup.com/forums/viewthread/161/&quot;&gt;http://nuigroup.com/forums/viewthread/161/&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
I keep getting a missing library error. 
&lt;/p&gt;
&lt;p&gt;
Maybe I&#8217;m confused where to put the library exactly? 
&lt;/p&gt;
&lt;p&gt;
In my preferences my sketchbook location is ~/Documents/Processing, so I unzipped oscP5.zip here ~/Documents/Processing/libraries/
&lt;/p&gt;
&lt;p&gt;
leaving me with ~/Documents/Processing/libraries/oscP5
&lt;/p&gt;
&lt;p&gt;
Is this right? Is it possible that this library doesn&#8217;t work with Processing 154 or 155? Or am I just putting these in the wrong place?
&lt;/p&gt;</description>
      <dc:date>2008-11-09T14:48:12-05:00</dc:date>
    </item>

    <item>
      <title>how to play the flash examples from touchlib&#63;&amp;nbsp;</title>
      <link>http://nuigroup.com/forums/viewthread/3086/</link>
      <guid>http://nuigroup.com/forums/viewthread/3086/#When:09:56:56Z</guid>
      <description>&lt;p&gt;yeah, so how to play the flash examples from touchlib?
&lt;br /&gt;
i managed to play the smoke demo 
&lt;br /&gt;
but not the flash one 
&lt;br /&gt;
cannot open them 
&lt;br /&gt;
i have the flash player installed 
&lt;br /&gt;
&lt;a href=&quot;http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash&quot;&gt;http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
what else do i have to do ? 
&lt;br /&gt;
cheers
&lt;/p&gt;</description>
      <dc:date>2008-09-25T09:56:56-05:00</dc:date>
    </item>

    <item>
      <title>TUIO Simulator</title>
      <link>http://nuigroup.com/forums/viewthread/2920/</link>
      <guid>http://nuigroup.com/forums/viewthread/2920/#When:14:58:56Z</guid>
      <description>&lt;p&gt;i think i&#8217;m missing something 
&lt;/p&gt;
&lt;p&gt;
it does not work, does not sent any events 
&lt;br /&gt;
did anybody tried it ? 
&lt;br /&gt;
cheers
&lt;/p&gt;</description>
      <dc:date>2008-09-03T14:58:56-05:00</dc:date>
    </item>

    <item>
      <title>wxWidgets and registerListener</title>
      <link>http://nuigroup.com/forums/viewthread/2792/</link>
      <guid>http://nuigroup.com/forums/viewthread/2792/#When:02:49:48Z</guid>
      <description>&lt;p&gt;Hi,
&lt;/p&gt;
&lt;p&gt;
Anyone tried to pass a wxGLCanvas window to the registerListener?
&lt;br /&gt;
I can pass a wxFrame and that works, but what I don&#8217;t know yet is how to catch correctly the events on the GLcanvas.
&lt;/p&gt;
&lt;p&gt;
If anyone is interested, I can provide an example on how to create the listener on a wxFrame and on how to create touch events (still on the wxFrame)
&lt;br /&gt;
Of course the interesting part would be the wxGLCanvas....
&lt;/p&gt;
&lt;p&gt;
So any help is welcome!
&lt;/p&gt;
&lt;p&gt;
Thx
&lt;br /&gt;
Greg
&lt;/p&gt;</description>
      <dc:date>2008-08-21T02:49:48-05:00</dc:date>
    </item>

    <item>
      <title>Anyone using (or used) Java for multitouch&#63;&amp;nbsp;</title>
      <link>http://nuigroup.com/forums/viewthread/2298/</link>
      <guid>http://nuigroup.com/forums/viewthread/2298/#When:17:05:21Z</guid>
      <description>&lt;p&gt;Is anyone using or has anyone used Java for a multitouch app? Particularly using the open&#45;table.org software?
&lt;/p&gt;</description>
      <dc:date>2008-06-27T17:05:21-05:00</dc:date>
    </item>

    <item>
      <title>Processing + Java + blobDetection = Question&#63;XD</title>
      <link>http://nuigroup.com/forums/viewthread/2382/</link>
      <guid>http://nuigroup.com/forums/viewthread/2382/#When:18:19:46Z</guid>
      <description>&lt;p&gt;Hi there, i&#8217;m new on this forum and also new to the MT technology. Its been 4 days that I do nothing more than just watch movies, pdf, tutorials, etc.. and today i&#8217;ve started coding with Java and I got this question.. I&#8217;m using processing libs and a lib called blobDetection from &lt;a href=&quot;http://www.v3ga.net/processing/BlobDetection/&quot;&gt;http://www.v3ga.net/processing/BlobDetection/&lt;/a&gt;, there is a project called lowres that makes blob tracking and also creates osc messages...I&#8217;ve been studying that code and ended up making one of my for tracking blobs&#8230; and the question is how can i send the x and y infos for multikey for example...i know that it works with touchlib and so i thought if i create a osc message equal to the ones created in touchlib than the flash app multikey would work too...am I thinking correctly? if you like i can post all the code here but it&#8217;s still at the begining....
&lt;/p&gt;
&lt;p&gt;
Thanks all and I really LOVE all the work you all do here with all the projects!!! :D
&lt;/p&gt;</description>
      <dc:date>2008-07-06T18:19:46-05:00</dc:date>
    </item>

    <item>
      <title>TUIO Processing: Accessing x, y pos from the CursorList</title>
      <link>http://nuigroup.com/forums/viewthread/2068/</link>
      <guid>http://nuigroup.com/forums/viewthread/2068/#When:03:27:14Z</guid>
      <description>&lt;p&gt;So I am hoping to use a multi&#45;touch table I built with a classmate in a show on Wednesday. I have the great examples from picturetunes as well as the Demo from the TUIO website. They both run perfectly.&amp;nbsp; My question is: How can I access the array of x and y positions of all the cursors from the main draw() function? If i have to create a whole program inside of the draw function of the TuioCursor class I guess I will...but Id rather not =P. Thanks a lot! Any suggestions would be helpful as I am a beginner at dealing with reading TUIO in Processing. 
&lt;/p&gt;
&lt;p&gt;
import processing.opengl.*;
&lt;br /&gt;
import tuio.*; 
&lt;br /&gt;
TuioClient client; 
&lt;br /&gt;
TuiCursorList cursorList;
&lt;br /&gt;
void setup()
&lt;br /&gt;
&#123;
&lt;br /&gt;
  size(1024,768, OPENGL);
&lt;br /&gt;
  client  = new TuioClient(this); // the TuioClient receives the information from Touchlib
&lt;br /&gt;
  cursorList = new TuiCursorList(); //this is your little helper who handles all the cursors for you
&lt;br /&gt;
  frameRate(30);
&lt;br /&gt;
&#125;
&lt;/p&gt;
&lt;p&gt;
void draw()
&lt;br /&gt;
&#123;
&lt;br /&gt;
  cursorList.draw(); //draw the cursors
&lt;br /&gt;
  smooth();
&lt;br /&gt;
  noStroke();
&lt;br /&gt;
&#125;
&lt;/p&gt;
&lt;p&gt;
/*
&lt;br /&gt;
based on:::::::::::::::::::::::::::::::::::::::::::::::
&lt;br /&gt;
TUIO processing demo &#45; part of the reacTIVision project
&lt;br /&gt;
&lt;a href=&quot;http://mtg.upf.es/reactable&quot;&gt;http://mtg.upf.es/reactable&lt;/a&gt;
&lt;br /&gt;
by Martin Kaltenbrunner &lt;mkalten@iua.upf.es&gt;
&lt;br /&gt;
(see bottom of page for details)
&lt;br /&gt;
modified by::::::::::::::::::::::::::::::::::::::::::::
&lt;br /&gt;
picturetunes (&lt;a href=&quot;http://christoph.picturetunes.at&quot;&gt;http://christoph.picturetunes.at&lt;/a&gt;)
&lt;br /&gt;
*/
&lt;/p&gt;
&lt;p&gt;
 //***************************//
&lt;br /&gt;
 // PREDEFINED TUIO FUNCTIONS //
&lt;br /&gt;
 //***************************//
&lt;/p&gt;
&lt;p&gt;
////the redraw functions are no longer needed because we use a constant framerate
&lt;br /&gt;
// called after each message bundle
&lt;br /&gt;
void refresh() &#123; 
&lt;br /&gt;
  //redraw(); 
&lt;br /&gt;
&#125;
&lt;br /&gt;
// called when a cursor appears the scene
&lt;br /&gt;
void addTuiCursor(Integer s_id) &#123;
&lt;br /&gt;
  System.out.println(&quot;add cursor &#8220;+s_id);
&lt;br /&gt;
  cursorList.add(s_id);
&lt;br /&gt;
  //redraw();
&lt;br /&gt;
&#125;
&lt;/p&gt;
&lt;p&gt;
// called when a cursor is removed from the scene
&lt;br /&gt;
void removeTuiCursor(Integer s_id) &#123;
&lt;br /&gt;
  System.out.println(&quot;remove cursor &#8220;+s_id);
&lt;br /&gt;
  cursorList.remove(s_id);
&lt;br /&gt;
  //redraw();
&lt;br /&gt;
&#125;
&lt;/p&gt;
&lt;p&gt;
// called when a cursor is moved
&lt;br /&gt;
void updateTuiCursor (Integer s_id, Float xpos, Float ypos) &#123;
&lt;br /&gt;
  //System.out.println(&quot;update cursor &#8220;+s_id+&#8221; &#8220;+xpos+&#8221; &#8220;+ypos);
&lt;br /&gt;
  float xsize =width;
&lt;br /&gt;
  float ysize =height;
&lt;br /&gt;
  //the following lines of code could be probably improved 
&lt;br /&gt;
  // the position values are read and casted to float
&lt;br /&gt;
  // the values should (but strangely do not precicesly) start at 0 and end at 1 so you have to multiply them by the screensize to map them to the screen
&lt;br /&gt;
  // the calculated values are subtracted from the screensize to mirror the coordinates
&lt;br /&gt;
  cursorList.update(s_id,(float)xsize&#45;((xsize*xpos.floatValue())),ysize&#45;((float)(ysize*ypos.floatValue())));
&lt;br /&gt;
  //redraw();
&lt;br /&gt;
&#125;
&lt;br /&gt;
 //****************//
&lt;br /&gt;
 // LITTLE HELPERS //
&lt;br /&gt;
 //****************//
&lt;br /&gt;
 
&lt;br /&gt;
 //this class stores all the cursors&#8230;
&lt;br /&gt;
 class TuiCursorList &#123;
&lt;br /&gt;
  java.util.Hashtable cursorList;
&lt;/p&gt;
&lt;p&gt;
  TuiCursorList() &#123;
&lt;br /&gt;
    //...in this java hastable
&lt;br /&gt;
    cursorList = new Hashtable();
&lt;br /&gt;
  &#125;
&lt;br /&gt;
  //call the draw method of the cursors (just for testing to see what is happening)
&lt;br /&gt;
  void draw() &#123;
&lt;br /&gt;
    Enumeration e = cursorList.elements();
&lt;br /&gt;
    while (e.hasMoreElements()) &#123;
&lt;br /&gt;
      TuioCursor cursorPoint = (TuioCursor)e.nextElement();
&lt;br /&gt;
      cursorPoint.draw();
&lt;br /&gt;
    &#125;
&lt;br /&gt;
  &#125;
&lt;br /&gt;
  //create new cursor instance
&lt;br /&gt;
  void add(Integer s_id) &#123; 
&lt;br /&gt;
    //Vector pointList = new Vector();
&lt;br /&gt;
    TuioCursor cursorPoint = new TuioCursor();
&lt;br /&gt;
    cursorList.put(s_id,cursorPoint);
&lt;br /&gt;
  &#125;
&lt;br /&gt;
  //remove cursor
&lt;br /&gt;
  void remove(Integer s_id) &#123;
&lt;br /&gt;
    cursorList.remove(s_id);
&lt;br /&gt;
  &#125;
&lt;br /&gt;
  //update cursor position
&lt;br /&gt;
  void update(Integer s_id, float xpos, float ypos) &#123;
&lt;br /&gt;
   // println(&quot;number of cursors in cursor list:&quot;+cursorList.size());
&lt;br /&gt;
    // that is a nasty little detail: for some reason updateTuiCursor() is called before add addTuiCursor() 
&lt;br /&gt;
    // which causes the programm to behave strangly. to avoid that you want to check if the object you want ot update is already there
&lt;br /&gt;
    if(cursorList.containsKey(s_id))&#123;
&lt;br /&gt;
      TuioCursor cursorPoint = (TuioCursor)cursorList.get(s_id);
&lt;br /&gt;
      cursorPoint.update(xpos,ypos);
&lt;br /&gt;
    &#125;
&lt;br /&gt;
  &#125;
&lt;br /&gt;
&#125;
&lt;br /&gt;
// this is the class for the cursors. it doesn`t do pretty much yet but of course you can extend it!
&lt;br /&gt;
class TuioCursor&#123;
&lt;br /&gt;
  public float x,y;
&lt;br /&gt;
 
&lt;br /&gt;
  TuioCursor()&#123;
&lt;br /&gt;
    //println(&quot;hello i am a tuio cursor&quot;);
&lt;br /&gt;
    
&lt;br /&gt;
  &#125;
&lt;br /&gt;
  
&lt;br /&gt;
  void update(float px, float py)&#123;
&lt;br /&gt;
   // println(&quot;hurray somebody updates my position x:&quot;+px+&quot; y&quot;+y);
&lt;br /&gt;
    this.x=px;
&lt;br /&gt;
    this.y=py; 
&lt;br /&gt;
  &#125;
&lt;br /&gt;
  
&lt;br /&gt;
  void draw()&#123;
&lt;br /&gt;
    
&lt;br /&gt;
    //this comes handy for testing &#45; you get visual response from your cursors
&lt;br /&gt;
    //println(&quot;hurray somebody draws me&quot;);
&lt;br /&gt;
    fill(0,50);
&lt;br /&gt;
   ellipse(x, y, 16, 16);
&lt;br /&gt;
    fill(250,50);
&lt;br /&gt;
    rect(0,0,width, height);
&lt;br /&gt;
  &#125;
&lt;br /&gt;
  
&lt;br /&gt;
&#125;
&lt;/p&gt;</description>
      <dc:date>2008-06-01T03:27:14-05:00</dc:date>
    </item>

    
    </channel>
</rss>