Re: A ToonTalk picture touching more than one thing
"Ken Kahn" <[email protected]> Thu, 25 Nov 2004 12:16:25 -0000
| Newsgroups | gmane.education.weblabs.requests |
|---|---|
| Message-ID | <018101c4d2e8$969db4e0$57f34ed5@ESTLAP05> |
------=_NextPart_000_017E_01C4D2E8.9596F340 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi. Good point. If a robot sucks off the remote looks sensor from the T-W sensor for other = reasons then the recent bug fix means that its behavior will change a bit i= f it is colliding with multiple things. If it unconditionally does this (i.= e. wants to change any object it touches then this is new behavior is proba= bly what was intended -- to do it to all things touched). If it matches aga= inst certain pictures then again if the intent was to work on all such pict= ures being touched then the bug fix fits the intent. If it has a behavior f= or touching pictures of type X and another behavior for type Y then if it i= s touching both then both behaviours will run rather than just one. If there is a behaviour for touching type X and the picture is touching X, = Y, Z previously the behaviour would either never run or would run every cyc= le. Now it'll run every third cycle. So my guess is that the bug fix does what is wanted. Best, -ken ----- Original Message -----=20 From: Yishay Mor=20 To: [email protected]=20 Sent: Thursday, November 25, 2004 11:31 AM Subject: Re: [WebLabs-requests] A ToonTalk picture touching more than one= thing Sounds reasonable, although I haven't given it too much thought. The=20 only thing I would worry about is that some programs do need to vacuum=20 the T-W sensor to change the object they're touching. Ken Kahn wrote: >Hi all. > >For domains like eco modelling and physics the ToonTalk sensor "Touching= =20 >Who?" is frequently used. It has long been noted that it doesn't deal=20 >well situations where a picture is touching more than one thing. Looking= =20 >at the code I was surprised to discover that solution had been=20 >implemented about 5 years ago. The solution was buggy but easy to fix=20 >(and fixed in 3.127). The idea is that when you vacuum off what is on=20 >top of the Touching Who sensor you see the next thing that is touching. > >To test this I made a robot that made a sound when a rectangle touched a= =20 >ball and put it on the back the rectangle. I then arranged for the=20 >rectangle to touch a ball among many other things. Depending upon luck=20 >(actually the Z ordering of the objects involved) the sound occurred or= =20 >not. But when I added a robot on the back of the rectangle that did=20 >nothing but vacuum off the top of the Touching Who sensor then the=20 >picture shown on the sensor changed on every cycle and hence the sound=20 >robot ran (but it might have to wait a few cycles to notice that it was= =20 >touching a ball). > >What is nice about this is that old programs should run the same as=20 >before (assuming they don't vacuum off a touch who sensor -- a check of= =20 >the Playground Adventure games showed it still works as before and it is= =20 >probably the most sophisticated program using sensors of this sort. It=20 >is only when a robot that vacuums off the top of the Touching Who sensor= =20 >does the new behaviour kick in. > >I admit this is a bit peculiar that you need to have this robot=20 >vacuuming the Touching Who sensor to deal with multiple collisions but=20 >it is the minimal change to ToonTalk to support multiple collisions. And= =20 >there is a story behind it that kids should be OK with. > >Comments? > >Best, > >-ken > > > > > > >=20 >Yahoo! Groups Links > > > >=20 > > > > >=20=20 > --=20 _________________________________________ | Research Officer, www.WebLabs.eu.com | | [email protected] +44-20-77632160 fax 2138| | Yahoo, Jabber, AIM: yishaym(@jabber.org)| | 23-29 Emerald Street, London WC1N 3QS | |_________________________________________| Yahoo! Groups Sponsor=20 =20=20=20=20=20=20=20=20=20 Get unlimited calls to U.S./Canada =20=20=20=20=20=20=20 =20=20=20=20=20=20=20 ---------------------------------------------------------------------------= --- Yahoo! Groups Links a.. To visit your group on the web, go to: http://groups.yahoo.com/group/WebLabs-requests/ =20=20=20=20=20=20 b.. To unsubscribe from this group, send an email to: [email protected] =20=20=20=20=20=20 c.. Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service= .=20 ------=_NextPart_000_017E_01C4D2E8.9596F340 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD> <META http-equiv=Content-Type content="text/html; charset=iso-8859-1"> <META content="MSHTML 6.00.2900.2523" name=GENERATOR> <STYLE></STYLE> </HEAD> <BODY bgColor=#ffffff> <DIV><FONT face="Comic Sans MS" size=2>Hi.</FONT></DIV> <DIV><FONT face="Comic Sans MS" size=2></FONT> </DIV> <DIV><FONT face="Comic Sans MS" size=2>Good point.</FONT></DIV> <DIV><FONT face="Comic Sans MS" size=2></FONT> </DIV> <DIV><FONT face="Comic Sans MS" size=2>If a robot sucks off the remote looks sensor from the T-W sensor for other reasons then the recent bug fix means that its behavior will change a bit if it is colliding with multiple things. If it unconditionally does this (i.e. wants to change any object it touches then this is new behavior is probably what was intended -- to do it to all things touched). If it matches against certain pictures then again if the intent was to work on all such pictures being touched then the bug fix fits the intent. If it has a behavior for touching pictures of type X and another behavior for type Y then if it is touching both then both behaviours will run rather than just one.</FONT></DIV> <DIV><FONT face="Comic Sans MS" size=2></FONT> </DIV> <DIV><FONT face="Comic Sans MS" size=2>If there is a behaviour for touching type X and the picture is touching X, Y, Z previously the behaviour would either never run or would run every cycle. Now it'll run every third cycle.</FONT></DIV> <DIV><FONT face="Comic Sans MS" size=2></FONT> </DIV> <DIV><FONT face="Comic Sans MS" size=2>So my guess is that the bug fix does what is wanted.</FONT></DIV> <DIV><FONT face="Comic Sans MS" size=2></FONT> </DIV> <DIV><FONT face="Comic Sans MS" size=2>Best,</FONT></DIV> <DIV><FONT face="Comic Sans MS" size=2></FONT> </DIV> <DIV><FONT face="Comic Sans MS" size=2>-ken</FONT></DIV> <BLOCKQUOTE style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px"> <DIV style="FONT: 10pt arial">----- Original Message ----- </DIV> <DIV style="BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: black"><B>From:</B> <A [email protected] href="mailto:[email protected]">Yishay Mor</A> </DIV> <DIV style="FONT: 10pt arial"><B>To:</B> <A [email protected] href="mailto:[email protected]">[email protected]</A> </DIV> <DIV style="FONT: 10pt arial"><B>Sent:</B> Thursday, November 25, 2004 11:31 AM</DIV> <DIV style="FONT: 10pt arial"><B>Subject:</B> Re: [WebLabs-requests] A ToonTalk picture touching more than one thing</DIV> <DIV><BR></DIV><TT>Sounds reasonable, although I haven't given it too much thought. The <BR>only thing I would worry about is that some programs do need to vacuum <BR>the T-W sensor to change the object they're touching.<BR><BR>Ken Kahn wrote:<BR><BR>>Hi all.<BR>><BR>>For domains like eco modelling and physics the ToonTalk sensor "Touching <BR>>Who?" is frequently used. It has long been noted that it doesn't deal <BR>>well situations where a picture is touching more than one thing. Looking <BR>>at the code I was surprised to discover that solution had been <BR>>implemented about 5 years ago. The solution was buggy but easy to fix <BR>>(and fixed in 3.127). The idea is that when you vacuum off what is on <BR>>top of the Touching Who sensor you see the next thing that is touching.<BR>><BR>>To test this I made a robot that made a sound when a rectangle touched a <BR>>ball and put it on the back the rectangle. I then arranged for the <BR>>rectangle to touch a ball among many other things. Depending upon luck <BR>>(actually the Z ordering of the objects involved) the sound occurred or <BR>>not. But when I added a robot on the back of the rectangle that did <BR>>nothing but vacuum off the top of the Touching Who sensor then the <BR>>picture shown on the sensor changed on every cycle and hence the sound <BR>>robot ran (but it might have to wait a few cycles to notice that it was <BR>>touching a ball).<BR>><BR>>What is nice about this is that old programs should run the same as <BR>>before (assuming they don't vacuum off a touch who sensor -- a check of <BR>>the Playground Adventure games showed it still works as before and it is <BR>>probably the most sophisticated program using sensors of this sort. It <BR>>is only when a robot that vacuums off the top of the Touching Who sensor <BR>>does the new behaviour kick in.<BR>><BR>>I admit this is a bit peculiar that you need to have this robot <BR>>vacuuming the Touching Who sensor to deal with multiple collisions but <BR>>it is the minimal change to ToonTalk to support multiple collisions. And <BR>>there is a story behind it that kids should be OK with.<BR>><BR>>Comments?<BR>><BR>>Best,<BR>><BR>>-ken<BR>><BR>><BR>><BR>><BR>><BR>><BR>> <BR>>Yahoo! Groups Links<BR>><BR>><BR>><BR>> <BR>><BR>><BR>><BR>><BR>> <BR>><BR><BR>-- <BR>_________________________________________<BR>| Research Officer, www.WebLabs.eu.com |<BR>| [email protected] +44-20-77632160 fax 2138|<BR>| Yahoo, Jabber, AIM: yishaym(@jabber.org)|<BR>| 23-29 Emerald Street, London WC1N 3QS |<BR>|_________________________________________|<BR><BR><BR></TT><BR> <br> <!-- |**|begin egp html banner|**| --> <br> <tt><hr width="500"> <b>Yahoo! Groups Links</b><br> <ul> <li>To visit your group on the web, go to:<br><a href="http://groups.yahoo.com/group/WebLabs-requests/">http://groups.yahoo.com/group/WebLabs-requests/</a><br> <li>To unsubscribe from this group, send an email to:<br><a href="mailto:[email protected]?subject=Unsubscribe">[email protected]</a><br> <li>Your use of Yahoo! Groups is subject to the <a href="http://docs.yahoo.com/info/terms/">Yahoo! Terms of Service</a>. </ul> </tt> </br> <!-- |**|end egp html banner|**| --> </BODY></HTML> ------=_NextPart_000_017E_01C4D2E8.9596F340--