Re: [osg-users] any help would be appreciated - updating a groupofcameras (UNCLASSIFIED)

2009-04-15 Thread Jean-Sébastien Guay

Hello Danny,


thanks for the insight into OSG.
i'm looking through the fixed example now.

thanks for the help.


My pleasure.

J-S
--
__
Jean-Sebastien Guayjean-sebastien.g...@cm-labs.com
   http://www.cm-labs.com/
http://whitestar02.webhop.org/
___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


Re: [osg-users] any help would be appreciated - updating a groupofcameras (UNCLASSIFIED)

2009-04-15 Thread Konkle, Daniel T AMRDEC/Dynetics
Classification:  UNCLASSIFIED 
Caveats: NONE

> 
> Hello Danny,
> 
> > i didn't send it twice because i wanted more help or faster help.
> > i sent it twice because i was having problem with email and i didn't
> think the message went out.
> > i check the list server and it wasn't there.
> > i was obviously mistaken and i apologize.
> 
> OK, apology accepted, but look below and check my message, I attached
a
> fixed example that should help you out and gave a few explanatory
> comments. (I have the habit of placing quotes inline with my reply)
>

Hello Jean-Sebastien,

thanks for the insight into OSG.
i'm looking through the fixed example now.

thanks for the help.

Danny
Classification:  UNCLASSIFIED 
Caveats: NONE

___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


Re: [osg-users] any help would be appreciated - updating a groupofcameras (UNCLASSIFIED)

2009-04-15 Thread Jean-Sébastien Guay

Hello Danny,


i didn't send it twice because i wanted more help or faster help.
i sent it twice because i was having problem with email and i didn't think the 
message went out.
i check the list server and it wasn't there. 
i was obviously mistaken and i apologize.


OK, apology accepted, but look below and check my message, I attached a 
fixed example that should help you out and gave a few explanatory 
comments. (I have the habit of placing quotes inline with my reply)


J-S
--
__
Jean-Sebastien Guayjean-sebastien.g...@cm-labs.com
   http://www.cm-labs.com/
http://whitestar02.webhop.org/
___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


Re: [osg-users] any help would be appreciated - updating a groupofcameras (UNCLASSIFIED)

2009-04-15 Thread Konkle, Daniel T AMRDEC/Dynetics
Classification:  UNCLASSIFIED 
Caveats: NONE

i didn't send it twice because i wanted more help or faster help.

i sent it twice because i was having problem with email and i didn't think the 
message went out.

i check the list server and it wasn't there. 

i was obviously mistaken and i apologize.

> -Original Message-
> From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-
> boun...@lists.openscenegraph.org] On Behalf Of Jean-Sébastien Guay
> Sent: Wednesday, April 15, 2009 9:48 AM
> To: OpenSceneGraph Users
> Subject: Re: [osg-users] any help would be appreciated - updating a
> groupofcameras (UNCLASSIFIED)
> 
> Hello Danny,
> 
> Sending your message twice will not get you help faster. Good etiquette
> would be to wait a little, and if you don't get any response after a
> few
> days then you can send a reminder, like "no one has any idea what I'm
> doing wrong?" or something like that. We all have day jobs and sending
> the same message multiple times makes it look like you expect us to
> stop
> everything we're doing to help you...
> 
> > i can't get the camera's children to update and can't find an example
> > that works.
> 
> Your callbacks weren't actually doing anything to the text or the
> geometry. I've modified it to show you one example of what you can do.
> Basically, just changing the variable with which you calculated the
> vertices and which was in the text (factor) will not change them. You
> need to update the text in your callback (using text->setText(string) )
> and you need to update your osg::Geometry objects in the other callback
> (creating new vertex arrays, or perhaps looping through the existing
> vertices and modifying those you need to).
> 
> In my modifications, I used std::stringstream instead of boost::format
> because I don't have boost on this machine. When you send example code,
> it's preferable to send code that has no dependencies other than OSG
> (and its own dependencies). It makes it more likely that others will be
> able to help.
> 
> Note also that you had a memory leak in your code:
> 
> osg::Geometry* geom = new osg::Geometry;
> geom = drawLines(...);
> 
> since drawLines creates a new osg::Geometry and returns it, the
> original
> one was never freed. You could change that in two ways to remove the
> leak:
> 
> // still wasteful, but at least there's no leak
> osg::ref_ptr geom = new osg::Geometry;
> geom = drawLines(...);
> 
> or simply
> 
> osg::Geometry* geom = drawLines(...);
> 
> Also, I've set the geometry and text objects to DYNAMIC data variance.
> If you're modifying drawables (osg::Geometry and osgText::Text are in
> this category) or statesets in update callbacks, you need to set them
> to
> DYNAMIC or else you'll get crashes in multithreaded mode.
> 
> Do a diff between the file you sent and the one that's attached to this
> message to see the changes. Now that I've shown you how to update text
> and geometry in the callbacks, it's up to you to make changes to get
> the
> result you want.
> 
> Style comment: it works, but I think you'd be able to understand
> yourself more if your code was cleaner and better indented.
> 
> Hope this helps,
> 
> J-S
> --
> __
> Jean-Sebastien Guayjean-sebastien.g...@cm-labs.com
> http://www.cm-labs.com/
>  http://whitestar02.webhop.org/
Classification:  UNCLASSIFIED 
Caveats: NONE

___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


Re: [osg-users] any help would be appreciated - updating a groupofcameras (UNCLASSIFIED)

2009-04-15 Thread Jean-Sébastien Guay

Hello Danny,

Sending your message twice will not get you help faster. Good etiquette 
would be to wait a little, and if you don't get any response after a few 
days then you can send a reminder, like "no one has any idea what I'm 
doing wrong?" or something like that. We all have day jobs and sending 
the same message multiple times makes it look like you expect us to stop 
everything we're doing to help you...



i can't get the camera's children to update and can't find an example
that works.


Your callbacks weren't actually doing anything to the text or the 
geometry. I've modified it to show you one example of what you can do. 
Basically, just changing the variable with which you calculated the 
vertices and which was in the text (factor) will not change them. You 
need to update the text in your callback (using text->setText(string) ) 
and you need to update your osg::Geometry objects in the other callback 
(creating new vertex arrays, or perhaps looping through the existing 
vertices and modifying those you need to).


In my modifications, I used std::stringstream instead of boost::format 
because I don't have boost on this machine. When you send example code, 
it's preferable to send code that has no dependencies other than OSG 
(and its own dependencies). It makes it more likely that others will be 
able to help.


Note also that you had a memory leak in your code:

osg::Geometry* geom = new osg::Geometry;
geom = drawLines(...);

since drawLines creates a new osg::Geometry and returns it, the original 
one was never freed. You could change that in two ways to remove the leak:


// still wasteful, but at least there's no leak
osg::ref_ptr geom = new osg::Geometry;
geom = drawLines(...);

or simply

osg::Geometry* geom = drawLines(...);

Also, I've set the geometry and text objects to DYNAMIC data variance. 
If you're modifying drawables (osg::Geometry and osgText::Text are in 
this category) or statesets in update callbacks, you need to set them to 
DYNAMIC or else you'll get crashes in multithreaded mode.


Do a diff between the file you sent and the one that's attached to this 
message to see the changes. Now that I've shown you how to update text 
and geometry in the callbacks, it's up to you to make changes to get the 
result you want.


Style comment: it works, but I think you'd be able to understand 
yourself more if your code was cleaner and better indented.


Hope this helps,

J-S
--
__
Jean-Sebastien Guayjean-sebastien.g...@cm-labs.com
   http://www.cm-labs.com/
http://whitestar02.webhop.org/
/* OpenSceneGraph example, osghud.
*
*  Permission is hereby granted, free of charge, to any person obtaining a copy
*  of this software and associated documentation files (the "Software"), to deal
*  in the Software without restriction, including without limitation the rights
*  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
*  copies of the Software, and to permit persons to whom the Software is
*  furnished to do so, subject to the following conditions:
*
*  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
*  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
*  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
*  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
*  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
*  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
*  THE SOFTWARE.
*/

//#include 
#include 
#include 
#include 

#include 
#include 

#include 

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

#include 

#include 

osg::Vec4 colorVec[] = {
osg::Vec4(0.0f, 0.99f, 0.0f, 1.0f),
osg::Vec4(0.85f, 0.00f, 0.0f, 1.0f),
osg::Vec4(0.0f, 0.00f, 0.0f, 1.0f),
osg::Vec4(1.0f, 1.00f, 1.0f, 1.0f),
osg::Vec4(0.0f, 0.00f, 1.0f, 1.0f),
osg::Vec4(0.3f, 0.30f, 0.3f, 1.0f),
osg::Vec4(0.9f, 0.90f, 0.0f, 1.0f)
};
// create LINES
osg::Geometry * drawLines(osg::Vec3Array * vertices, int colorIndex, 
osg::PrimitiveSet::Mode lineType)
{
// create Geometry object to store all the vertices and lines primitive.
osg::Geometry* linesGeom = new osg::Geometry();
// Set dynamic data variance since the geometry will be updated in a 
callback.
linesGeom->setDataVariance(osg::Object::DYNAMIC);
// Use vertex buffers so display lists won't need to be updated.
linesGeom->setUseDisplayList(false);

// pass the created vertex array to the points geometry object.
linesGeom->setVertexArray(vertices);

// set the colors as before, plus using the above
osg::Vec4Array* colors = new osg::Vec4Array;
colors->push_back(colorVec[colorIndex]);

linesGeom->setColorArray(colors);
linesGeom->setColorBinding(osg::Geometry::BIND_OVERALL);


// set t

Re: [osg-users] any help would be appreciated - updating a groupofcameras (UNCLASSIFIED)

2009-04-15 Thread Konkle, Daniel T AMRDEC/Dynetics
Classification:  UNCLASSIFIED 
Caveats: NONE


So from helpful comments, I believe I know what I'm doing wrong.
I am creating a group and adding cameras to the group.
in the cameras I have various drawables that I'd like to update with my
program.

i can't get the camera's children to update and can't find an example
that works.

for an example of what i'm trying to do, 
i took the osghud example and created a few geometries on it.

i added a callback that should change a scale factor for the triangles
that i'm adding 
and update the text in one of the screens.

i tried to versions.  one that had the callback on the camera and one
that has the callback on one of the geodes.

I appreciate any help anyone might be able to give.

Danny

> -Original Message-
> From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-
> boun...@lists.openscenegraph.org] On Behalf Of Paul Martz
> Sent: Tuesday, April 14, 2009 12:30 PM
> To: 'OpenSceneGraph Users'
> Subject: Re: [osg-users] any help would be appreciated - updating a
> groupofcameras (UNCLASSIFIED)
> 
> Hi Danny -- There really isn't much info to go on here. You don't
> describe
> the mechanism that is doing the drawing. Cameras don't draw, they only
> set
> the matrices.
> 
> Assuming you are changing a Drawable in your scene graph... One thing
> to
> check would be to make sure that you have setUseDisplayLists( false ).
> You
> don't want to use display lists for dynamic geometry.
> 
> If your code is too large to debug, then write a small piece of code
to
> reproduce the problem outside of your larger app, making it as small
> and
> simple as possible. This will increase the odds that someone on the
> list
> will take the time to look at it.
> 
> Paul Martz
> Skew Matrix Software LLC
> http://www.skew-matrix.com
> +1 303 859 9466
> 
> -Original Message-
> From: osg-users-boun...@lists.openscenegraph.org
> [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of
> Konkle,
> Daniel T AMRDEC/Dynetics
> Sent: Tuesday, April 14, 2009 9:32 AM
> To: OpenSceneGraph Users
> Subject: [osg-users] any help would be appreciated - updating a group
> ofcameras (UNCLASSIFIED)
> 
> Classification:  UNCLASSIFIED
> Caveats: NONE
> 
> I am new to OSG and I am stuck and need help/insight.
> 
> I'm created a Heads up display by extending the group class.
> 
> My Hud is an osg::Group and has several cameras in it.
> 
> The Hud displays fine.
> 
> The Hud class has several variables that control how information is
> displayed such as the heading.
> 
> I've written a callback and attached it to my Hud.
> 
> After attaching my Hud to my scene, I want to the callback for the Hud
> to
> change its variables but the cameras in my Hud don't use the updated
> variables to redraw themselves.
> 
> I've used osg::notify to show that the callback is getting executed
and
> to
> print out the value of the heading variable I am changing.
> 
> I realize I'm not showing any code only because there is so much of
it.
> 
> Can anyone give me an idea of where to look to figure out why all the
> children in my HUD class aren't updating?
> 
> My HUD (an osg::Group) class constructor creates several cameras that
> draw a
> variety of elements on the screen.
> 
> 
> I've looked through most of the examples but I'm not sure what I'm
> looking
> for.
> 
> Any help would be greatly appreciated.
> 
> Danny Konkle
> Classification:  UNCLASSIFIED
> Caveats: NONE
> 
> ___
> osg-users mailing list
> osg-users@lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-
> openscenegraph.org
> 
> ___
> osg-users mailing list
> osg-users@lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-
> openscenegraph.org
  Classification:  UNCLASSIFIED 
Caveats: NONE



osghud.cpp
Description: osghud.cpp
___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


Re: [osg-users] any help would be appreciated - updating a groupofcameras (UNCLASSIFIED)

2009-04-14 Thread Konkle, Daniel T AMRDEC/Dynetics
Classification:  UNCLASSIFIED 
Caveats: NONE

thanks. that helps.

so if my camera in my group have drawables attached to them how would i
get them to be updated?

i'm taking your approach and trying to make a useful example that is
small.

> -Original Message-
> From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-
> boun...@lists.openscenegraph.org] On Behalf Of Paul Martz
> Sent: Tuesday, April 14, 2009 12:30 PM
> To: 'OpenSceneGraph Users'
> Subject: Re: [osg-users] any help would be appreciated - updating a
> groupofcameras (UNCLASSIFIED)
> 
> Hi Danny -- There really isn't much info to go on here. You don't
> describe
> the mechanism that is doing the drawing. Cameras don't draw, they only
> set
> the matrices.
> 
> Assuming you are changing a Drawable in your scene graph... One thing
> to
> check would be to make sure that you have setUseDisplayLists( false ).
> You
> don't want to use display lists for dynamic geometry.
> 
> If your code is too large to debug, then write a small piece of code
to
> reproduce the problem outside of your larger app, making it as small
> and
> simple as possible. This will increase the odds that someone on the
> list
> will take the time to look at it.
> 
> Paul Martz
> Skew Matrix Software LLC
> http://www.skew-matrix.com
> +1 303 859 9466
> 
> -Original Message-
> From: osg-users-boun...@lists.openscenegraph.org
> [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of
> Konkle,
> Daniel T AMRDEC/Dynetics
> Sent: Tuesday, April 14, 2009 9:32 AM
> To: OpenSceneGraph Users
> Subject: [osg-users] any help would be appreciated - updating a group
> ofcameras (UNCLASSIFIED)
> 
> Classification:  UNCLASSIFIED
> Caveats: NONE
> 
> I am new to OSG and I am stuck and need help/insight.
> 
> I'm created a Heads up display by extending the group class.
> 
> My Hud is an osg::Group and has several cameras in it.
> 
> The Hud displays fine.
> 
> The Hud class has several variables that control how information is
> displayed such as the heading.
> 
> I've written a callback and attached it to my Hud.
> 
> After attaching my Hud to my scene, I want to the callback for the Hud
> to
> change its variables but the cameras in my Hud don't use the updated
> variables to redraw themselves.
> 
> I've used osg::notify to show that the callback is getting executed
and
> to
> print out the value of the heading variable I am changing.
> 
> I realize I'm not showing any code only because there is so much of
it.
> 
> Can anyone give me an idea of where to look to figure out why all the
> children in my HUD class aren't updating?
> 
> My HUD (an osg::Group) class constructor creates several cameras that
> draw a
> variety of elements on the screen.
> 
> 
> I've looked through most of the examples but I'm not sure what I'm
> looking
> for.
> 
> Any help would be greatly appreciated.
> 
> Danny Konkle
> Classification:  UNCLASSIFIED
> Caveats: NONE
> 
> ___
> osg-users mailing list
> osg-users@lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-
> openscenegraph.org
> 
> ___
> osg-users mailing list
> osg-users@lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-
> openscenegraph.org
Classification:  UNCLASSIFIED 
Caveats: NONE

___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org