<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Another approach, and one I’ve personally taken in some of our apps, is to build reusable UI components in HTML5 while keeping the lower-level data transfer
 code platform-specific.  For example the platform-specific code for our Android version uses rosjava just to push data from subscriber callbacks to populate the UI elements in an Android “WebView” component.  All view and business logic (majority of code)
 resides in the HTML5 side.  You lose the “everything runs in a browser”, but still gain some code reuse.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">This said, I still wouldn’t advocate for a “one user interface to rule them all” type of thing.  A multi-touch tablet has different affordances than a desktop-PC
 with a mouse and keyboard.  Desktop UIs don’t work on 8” tablets and vv.  We simply use the common-denominator (using HTML5) approach to save development cycles on similar platforms (iOS, touch-PCs, Android, etc).<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Just some things to consider<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Jeff<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt">
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> ros-users-bounces@code.ros.org [mailto:ros-users-bounces@code.ros.org]
<b>On Behalf Of </b>Dave Hershberger<br>
<b>Sent:</b> Monday, April 23, 2012 5:06 PM<br>
<b>To:</b> User discussions<br>
<b>Subject:</b> Re: [ros-users] RFC: rviz on Android<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I definitely like the idea of rviz-like functionality in a browser, where it is accessible from essentially any device.  One of the big use-cases though is Point Cloud data, which is already very high bandwidth, even in binary format.  If
 we sent that data in JSON format, it would expand about 4 times in size.  If there were support for binary data sent via websockets, rosbridge, etc, I would be thinking more seriously about it.<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">Dave<o:p></o:p></p>
<div>
<p class="MsoNormal">On Mon, Apr 23, 2012 at 11:55 AM, Jeff Rousseau <<a href="mailto:jrousseau@aptima.com">jrousseau@aptima.com</a>> <<a href="mailto:jrousseau@aptima.com">jrousseau@aptima.com</a>> wrote:<o:p></o:p></p>
<p class="MsoNormal">Dariush,<br>
<br>
I think it really depends on what you want in your "android rviz"<br>
<br>
We (at Aptima) have built some nice HTML5 UIs that wrap nicely into Android and iOS devices for controlling multiple robots.  So if you're looking for a replacement for something like the old nav_view functionality, we've found that HTML5 gives you some nice
 portability/code-reuse benefits.<br>
<br>
<a href="http://www.youtube.com/watch?v=JcATNhoJ3gg" target="_blank">http://www.youtube.com/watch?v=JcATNhoJ3gg</a><br>
<br>
I think of rviz as a "visual debugger" as well as an extremely basic navigation interface.  We cared more about building a UI for controlling the nav stack (queing waypoints, etc) so our use case might not be exactly the same.<br>
<br>
Jeff<o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
> -----Original Message-----<br>
> From: <a href="mailto:ros-users-bounces@code.ros.org">ros-users-bounces@code.ros.org</a> [mailto:<a href="mailto:ros-users-">ros-users-</a><br>
> <a href="mailto:bounces@code.ros.org">bounces@code.ros.org</a>] On Behalf Of Dariush Forouher<br>
> Sent: Monday, April 23, 2012 9:50 AM<br>
> To: User discussions<br>
> Subject: Re: [ros-users] RFC: rviz on Android<br>
><br>
> Interesting, thanks for the many answers.<br>
><br>
> I agree, building ROS apps for the browser is generally preferable for<br>
> portability reasons.  I don't know whether a fullfledged rviz is doable inside<br>
> the browser, however. wviz looks nice, though.<br>
><br>
> @Dave: Working together on this sounds like a great idea. I was thinking of<br>
> handing this out as a student project as well. Once I've found someone Ill<br>
> contact you to see where we can contribute.<br>
><br>
> cheers<br>
> Dariush<br>
><br>
> Am <a href="tel:21.04.2012%2004">21.04.2012 04</a>:06, schrieb Michael Carroll:<br>
> > I would certainly be interested in helping out.  I did a somewhat-iOS<br>
> > capable ROS bridge based on a 3rd party app for the iPhone and iPad,<br>
> > but I don't know that it's really a suitable long term solution.<br>
> ><br>
> > I, too, was considering something along the lines of rosbridge for a<br>
> > more fully-featured cross platform "app" (which could support any web<br>
> > enabled device).<br>
> ><br>
> > I think that if a "mobile ROS" is done, it should be with the goal to<br>
> > be as cross platform as possible.  I understand this becomes<br>
> > cumbersome when it comes to Rviz, but for most of the other<br>
> > interesting day-to-day information, widgets and text should cover it.<br>
> ><br>
> > ~mc<br>
> ><br>
> > On Fri, Apr 20, 2012 at 13:00, Dave Hershberger<br>
> > <<a href="mailto:hersh@willowgarage.com">hersh@willowgarage.com</a> <mailto:<a href="mailto:hersh@willowgarage.com">hersh@willowgarage.com</a>>> wrote:<br>
> ><br>
> >     er, I meant he's starting in May and I hope that in *June* we'll be<br>
> >     ready to farm out the Display subclass work.<br>
> ><br>
> >     Dave<br>
> ><br>
> ><br>
> >     On Fri, Apr 20, 2012 at 10:59 AM, Dave Hershberger<br>
> >     <<a href="mailto:hersh@willowgarage.com">hersh@willowgarage.com</a> <mailto:<a href="mailto:hersh@willowgarage.com">hersh@willowgarage.com</a>>> wrote:<br>
> ><br>
> >         That's great, thanks.  The project is supposed to start sometime<br>
> >         in May when my intern arrives.  Hopefully sometime in April<br>
> >         we'll be ready to start writing Display classes, which is the<br>
> >         place that looks easiest (to me) to farm out different pieces of<br>
> >         work.  All Displays are subclasses of the Display class and they<br>
> >         all use the same APIs do their various work, and there are about<br>
> >         20 of them.<br>
> ><br>
> >         It will also be great to have people testing and reporting bugs<br>
> >         in different use cases we might not see in-house.<br>
> ><br>
> >         Dave<br>
><br>
> --<br>
> Institut für Technische Informatik / Universität zu Lübeck <a href="http://www.iti.uni-" target="_blank">
http://www.iti.uni-</a><br>
> <a href="http://luebeck.de/mitarbeiter/dariush-forouher-m-sc.html" target="_blank">
luebeck.de/mitarbeiter/dariush-forouher-m-sc.html</a><br>
<br>
<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal">The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in
 reliance upon this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer.<o:p></o:p></p>
<div>
<div>
<p class="MsoNormal"><br>
_______________________________________________<br>
ros-users mailing list<br>
<a href="mailto:ros-users@code.ros.org">ros-users@code.ros.org</a><br>
<a href="https://code.ros.org/mailman/listinfo/ros-users" target="_blank">https://code.ros.org/mailman/listinfo/ros-users</a><o:p></o:p></p>
</div>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</div>
<font face="monospace"><br>
The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer.</font></body>
</html>