From: Vikram H. <har...@op...> - 2003-10-27 16:04:12
|
Hi there, In a previous email I mentioned that I was working on developing a C++ Client GUI for Player that would display the following the information (amongst others): distance to obstacle (using LaserProxy) speed (using PositionProxy) I would like to know what would be the best way to go about doing this? I tried to do it using QT library but ran into some issues. Would it be better for me to use the Xlib rather than a widget library such as QT or GTK ? Thankyou for you help. Vikram |
From: Richard V. <va...@hr...> - 2003-10-27 17:38:41
|
Could you modify playerv to suit your needs? It already displays distance, so you may just need to add a speed indicator. It uses librtk2, the toolkit written by Andrew Howard as a wrapper over GTK+. If you want to start from scratch you should seriously consider GNOMECanvas, GTK+ or QT. Xlib is fast (and I'm quite fond of it for historical reasons) but the learning curve is steep and the abstraction level is low. That's 1980s style coding. You'll spend a lot of time re-doing things that GTK+ would give you. These days I would think very carefully about doing any GUI work in C++, when things like Python/GTK+ or WxPython would probably save you time and headaches. Guys like Andrew and Boyoon Jung get a lot done using these high-level tools. Spend your real hacker time on robot controllers and get that degree faster! Richard. On Tue, 28 Oct 2003, Vikram Harinath wrote: > Hi there, > > In a previous email I mentioned that I was working on developing a C++ > Client GUI for Player that would display the following the information > (amongst others): > > distance to obstacle (using LaserProxy) > speed (using PositionProxy) > > I would like to know what would be the best way to go about doing this? > I tried to do it using QT library but ran into some issues. > > Would it be better for me to use the Xlib rather than a widget library > such as QT or GTK ? > > Thankyou for you help. > > Vikram > > > > ------------------------------------------------------- > This SF.net email is sponsored by: The SF.net Donation Program. > Do you like what SourceForge.net is doing for the Open > Source Community? Make a contribution, and help us add new > features and functionality. Click here: http://sourceforge.net/donate/ > _______________________________________________ > Playerstage-developers mailing list > Pla...@li... > https://lists.sourceforge.net/lists/listinfo/playerstage-developers > > -- Richard Vaughan / HRL Laboratories / va...@hr... / +1 310.317.5689 |
From: brian g. <ge...@ro...> - 2003-10-27 18:39:21
|
On Mon, 27 Oct 2003, Richard Vaughan wrote: > These days I would think very carefully about doing any GUI work in C++, > when things like Python/GTK+ or WxPython would probably save you time and > headaches. Indeed. I've had a great experience with Python over the last week. I'm building a map-based GUI that displays the performance of multiple robots engaged in a cooperative task, a bit like coverage. Using PyGTK and Andrew's pyplayerc client library, I was able to get something working in just a couple of days. When I discovered that it would only run at about 1/20 of real time, I recoded the computationally intense parts (I'm doing a fair bit of wavefront propagation) in C as Python extension modules and voila: it runs fine in real time. My only complaint is that the documentation for PyGTK is subpar, to say the least. The biggest problem is that as a newbie, it can be unnecessarily difficult to figure out which widget to use for what, and how to do simple things, like get a GdkWindow handle from a GTK widget. Once you've got your head round the basics, the API reference online is ok, but use the newest one you can find; I've found at least 3 inconsistent versions of this documentation. brian. |
From: Vikram H. <har...@op...> - 2003-10-28 02:02:17
|
Hi Richard, Thankyou for the reply. I ran playerv - tested it out by starting up stage with simple.world, then started up randomwalk to get the robot moving. playerv does part of what I want already - it shows the in graphical form what the walker is seeing at every laser range. However, I was wondering if it would be possible to modify playerv - i.e. the window itself - and add a left (or right) panel to it that would display in numerical form say, for example, the distance to an obstacle at a certain laser angle (constantly updating this value of course). Does the librtk2 handle this or would I have to make calls to GTK+ (guess another problem here is the fact that I am using KDE at the moment) ? I am using PlayerStage 1.3.1 and librtk-2.1.1 . I am doing the GUI work in C++ because its part of my requirement for my project so I don't have a choice really. I tried to create a gui using QT but ran into problems when I tried to interface with player. Thanks Vikram Richard Vaughan wrote: > Could you modify playerv to suit your needs? It already displays distance, > so you may just need to add a speed indicator. It uses librtk2, the > toolkit written by Andrew Howard as a wrapper over GTK+. > > If you want to start from scratch you should seriously consider > GNOMECanvas, GTK+ or QT. Xlib is fast (and I'm quite fond of it for > historical reasons) but the learning curve is steep and the abstraction > level is low. That's 1980s style coding. You'll spend a lot of time > re-doing things that GTK+ would give you. These days I would think very > carefully about doing any GUI work in C++, when things like Python/GTK+ or > WxPython would probably save you time and headaches. Guys like Andrew and > Boyoon Jung get a lot done using these high-level tools. Spend your real > hacker time on robot controllers and get that degree faster! > > Richard. > > On Tue, 28 Oct 2003, Vikram Harinath wrote: > > > Hi there, > > > > In a previous email I mentioned that I was working on developing a C++ > > Client GUI for Player that would display the following the information > > (amongst others): > > > > distance to obstacle (using LaserProxy) > > speed (using PositionProxy) > > > > I would like to know what would be the best way to go about doing this? > > I tried to do it using QT library but ran into some issues. > > > > Would it be better for me to use the Xlib rather than a widget library > > such as QT or GTK ? > > > > Thankyou for you help. > > > > Vikram > > > > > > > > ------------------------------------------------------- > > This SF.net email is sponsored by: The SF.net Donation Program. > > Do you like what SourceForge.net is doing for the Open > > Source Community? Make a contribution, and help us add new > > features and functionality. Click here: http://sourceforge.net/donate/ > > _______________________________________________ > > Playerstage-developers mailing list > > Pla...@li... > > https://lists.sourceforge.net/lists/listinfo/playerstage-developers > > > > > > -- > Richard Vaughan / HRL Laboratories / va...@hr... / +1 310.317.5689 |