Re: [osg-users] Safe downcast

2012-08-21 Thread Robert Osfield
Hi Peterakos,

You should always check that the node set by the dynamic_cast<> is not
NULL before doing any operation on it, this is a very basic
programming practice, you shouldn't assume that the root node will
always be a Group or a subclass from Group.

Robert.

On 20 August 2012 18:15, Peterakos  wrote:
> Hello.
> Thank you for your answer.
> Using an InfoVisitorNode, i can see there is not any group node as a parent.
> Even though that happens, i can still use addChild method in something that
> is not Group and has been passed through dynamic_cast.
>
> osg::ref_ptr node =
> dynamic_cast(osgDB::readNodeFile("astroboy_walk.dae"));
> node->addChild(createAxis());
>
>
> I send the dae file too.
>
> thank you for your time.
>
> ___
> 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


Re: [osg-users] [forum] robotic arm problem

2012-08-21 Thread jules Guilain Kenfack
Hi,

I am trying to implement a robotic functionality in my application but it 
doesn´t work as expected.
i have some 3D Model (stl) in form of cross and i need to add additional 
objects add each end of my crossed object.
Futhermore i have to rotate each object from eahc end of the cross.

Can someone explain me how i can do that?


Thank you!

Cheers,
jules

--
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=49342#49342




Attachments: 
http://forum.openscenegraph.org//files/cross_object_116.png


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


Re: [osg-users] [forum] robotic arm problem

2012-08-21 Thread Vincent Bourdier
Hi,

Please have a look in osg example, there is one about robot using transforms if 
I'm not wrong.


Thank you!

Cheers,
Vincent

--
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=49375#49375





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


Re: [osg-users] [3rdparty] osg and collada

2012-08-21 Thread Nikos Patsiouras
Hi,

Well in the time it has taken for the approval i managed to solve this.so sorry 
about this.

If i can change this subject to loading a .dae file in OSG.I have to export 
this skinned and animated character in a .dae file and test if it's exported 
correctly.
Yesterday I managed to load up the first .dae file but i get all these kinds of 
messages like:
RigSoftware Bone l_shoulder:sth cannot be loaded and will be skipped.
Which is wierd because I have exported standard joints.


Thank you!

Cheers,
Nikos

--
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=49343#49343





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


Re: [osg-users] [FIXED] osgDB::readNodeFile returning null after an excessive amount of calls

2012-08-21 Thread Zach Lenker
Hello,

I am having a image/node loading problem that I really hope someone can help me 
with. I am using "osgDB::readNodeFile" and "osgDB::readImageFile" a LOT of 
times during the life time of the program I am working in.  Along side those I 
setup a "osgDB::ReaderWriter::Options" and set it to cache everything, and I 
pass that as the second param for the read file calls. I always store returned 
nodes as a "ref_ptr".

Now, the problem is after a certain amount of reads I get this error in the 
console window ... "PNGwriter::readfromfile - ERROR **: Too many open files" 
... that followed by more errors saying it can't open the file. After I start 
getting that error the readNodeFile/readImageFile calls all return NULL.

How do if fix this? Has anyone come across this error? Is there any more 
information that would be useful to help figure this out? I am afraid I can't 
share the source code.

Thanks for the reading this, and thanks for any help.

--
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=49321#49321





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


Re: [osg-users] OSG Serialization - changes on custom Classes

2012-08-21 Thread Peter Bako
Hi mr. Wang Rui.

Thank you for your response. I am actually an owner of your OSG book :-).
I tried your suggestion, it works, but the limitation is that we can have only 
2 versions of osgb files (old format - with the schema) and the new (actual 
format).
Does this mean that there is no way to make more versions readable for my 
application? For example, could we generate schema for every version and try to 
load the file with the schema from the oldest version, if not succeed, then 
with the newer version, then with newer and so on until the load is successful 
(loaded component is not NULL).
I don't see under the hood of binary serialization, I couldn't find the correct 
file.

I need this functionality because I know, that my application will grow after 
release and maybe we will need to change the serialization after the release to 
the customers.
Do you have any other idea to make this possible?

Thank you once more!

Cheers,
Peter

--
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=49376#49376





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


Re: [osg-users] Extensions/State Update Question

2012-08-21 Thread Sergey Polischuk
Hi

did you call viewer.realize() before attempting to get contextID from it?

Cheers.

20.08.2012, 20:27, "Jeremy Moles" :
> Hello everyone! I have a bit of a strange question here, so please bear
> with me. I'll try to be as descriptive as I possibly can, though I'm
> certain I will misuse some terminology.
>
> I am adding support for the NV_path_rendering extension to
> OpenSceneGraph. This extension adds a number of new functions to OpenGL
> when using an NVidia card which take on the form:
>
> glPath{_function_}NV
>
> http://osgnvpr.googlecode.com
>
> In order to create pointers to these new extension functions, I create
> an Extensions object in OSG using the contextID given to me during the
> compileGLObjects method of my overridden Drawable class. This works
> fine, and the code is running as I expect.
>
> https://code.google.com/p/osgnvpr/source/browse/trunk/src/PathCommands.cpp#45
>
> HOWEVER, this paradigm really only works when I need to call extension
> functions associated with an instance (or instances) of my Drawable.
> There are other functions in the NV_path_rendering API that simply set
> global state, and it is with these functions that I'm having difficulty.
>
> The biggest problem here is that in order to get a pointer to the
> Extensions static object, I need a valid GraphicsContext contextID.
> However, I've tried a number of methods to obtain one of these, but
> every attempt I make actually breaks the entire codebase. I wish I could
> explain it better than that...
>
> For example, if I try to use some code like the following:
>
> 
>
> Windows windows;
>
> viewer.getWindows(window);
>
> cID = windows[0]->getState()->getContextID();
>
> osgNVPR::getNVPRExtensions(cID);
>
> -
>
> ...then I seem to get an invalid contextID and all subsequent attempts
> to use that contextID (even by OSG itself) won't work. The entire
> rendering process seems to be broken in this manner.
>
> If instead I create a Camera::DrawCallback object and use the RenderInfo
> there instead, then everything works fine. However, I feel like I'm
> grossly misusing a Camera::DrawCallback just to set and unset state...
>
> My question is: if I need to set global state like this once, somewhere
> high in the scenegraph, what is the best way--keeping in mind that I
> also need a valid contextID in order to access my Extensions functions
> per-context?
>
> Thanks!
>
> ___
> 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


Re: [osg-users] OSG Serialization - changes on custom Classes

2012-08-21 Thread Wang Rui
Hi Peter,

Oh there is another feature of the osgb plugin that I almost forget. :-) It
supports serializer control using the version number. You may read about it
at this page:
http://lists.openscenegraph.org/pipermail/osg-submissions-openscenegraph.org/2010-November/007273.html


Unfortunately the version number mentioned above will automatically be set
to OPENSCENEGRAPH_SOVERSION, so unless the OSG soversion changed, all your
modifications to your own serializers will not be separated. I guess we may
have to modify the plugin source code slightly to add an option to allow
setting the version number (or just an auxiliary version number) manually
when writing/reading files to achieve your goal.

Regards,

Wang Rui


2012/8/21 Peter Bako 

> Hi mr. Wang Rui.
>
> Thank you for your response. I am actually an owner of your OSG book :-).
> I tried your suggestion, it works, but the limitation is that we can have
> only 2 versions of osgb files (old format - with the schema) and the new
> (actual format).
> Does this mean that there is no way to make more versions readable for my
> application? For example, could we generate schema for every version and
> try to load the file with the schema from the oldest version, if not
> succeed, then with the newer version, then with newer and so on until the
> load is successful (loaded component is not NULL).
> I don't see under the hood of binary serialization, I couldn't find the
> correct file.
>
> I need this functionality because I know, that my application will grow
> after release and maybe we will need to change the serialization after the
> release to the customers.
> Do you have any other idea to make this possible?
>
> Thank you once more!
>
> Cheers,
> Peter
>
> --
> Read this topic online here:
> http://forum.openscenegraph.org/viewtopic.php?p=49376#49376
>
>
>
>
>
> ___
> 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


Re: [osg-users] osg(terrain) krasches on a double delete

2012-08-21 Thread Ola Nilsson
Interesting. Did you notice any slowdown? In my experience, even if the  
crash doesn't happen for a long time, a significant slowdown is almost  
immediate.


Ola

On Tue, 21 Aug 2012 07:41:27 +0200, Christiansen, Brad  
 wrote:



Hi,

As another data point for you, I tried to reproduce the crash on a Win 7  
machine (VS2010) using a trunk build from a few weeks ago, and couldn't  
reproduce the crash. I left the example running for about 10 minutes  
with the camera spinning.


Cheers,
Brad

-Original Message-
From: osg-users-boun...@lists.openscenegraph.org  
[mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Ola  
Nilsson

Sent: Thursday, 9 August 2012 11:41 PM
To: OpenSceneGraph Users
Subject: Re: [osg-users] osg(terrain) krasches on a double delete

Here is some more info on how to reproduce our crash.

1. Compile the attached osgterrain program by overwriting  
examples/osgterrain/osgterrain.cpp and recompile.

2. Run the program with
http://www.openscenegraph.org/data/earth_bayarea/earth.ive as input.
3. Wait (no further input is necessary). However, camera movement (tile
loading) produces earlier crashes. The attached image shows performance  
of a typical run (without user input) where the frame time cyclically  
increases until the program crashes.


Cheers,

Ola

ps. The output from the program is: iteration sample_ratio frame_time



On Tue, 07 Aug 2012 11:59:00 +0200, Ola Nilsson   
wrote:



Hi,

We have been looking for a hard-to-reproduce crash in our software
that seems to originate from a double delete inside osg. I have
(finally) been able to reproduce the crash using a version of the
osgterrain-example that _exaggerates_ the usage pattern that crashes
our application.

In examples/osgterrain.cpp remove "return viwer.run();" an exchange it
with:

   while(!viewer.done())
 {
  osg::Timer_t start_tick = osg::Timer::instance()->tick();
  float sr = rand() * 1.0 / RAND_MAX ;
  std::cerr << sr;

  viewer.getCamera()->setLODScale(sr*10);
  terrain->setSampleRatio( sr );

  osg::Timer_t middle_tick = osg::Timer::instance()->tick();

  std::cerr << osg::Timer::instance()->delta_m(start_tick,  
middle_tick)

<< std::flush;

  viewer.frame();
  std::cerr << ' ' << osg::Timer::instance()->delta_m(middle_tick,
osg::Timer::instance()->tick()) << std::endl;
 }
   return 0;

When run (tested on ive earth models generated with osgdem) the frame
time slowly increases, and, after a while, it warns about deleting a
still referenced object and then (after arbitrary time) crashes with a
glibc error.

Is this usage (setLODScale + setSampleRatio) safe? If not how should
these functions be called?

If it's a bug, we would be _very_ happy to have it fixed or pointers
about where to look in the code. We've previously submitted a patch
that switched to a ReentrantMutex in osgTerrain/Terrain.cpp (changeset
12904), could this be a similar issue?

My system is running Centos 6.3 (x86_64) and I compiled osg in debug
mode with gcc 4.4.6. I have tested both against the 3.0.1 tag and
trunk (r13106).

Since I suspect a threading issue; OpenThreads/Config looks like this:
#define _OPENTHREADS_ATOMIC_USE_GCC_BUILTINS
/* #undef _OPENTHREADS_ATOMIC_USE_MIPOSPRO_BUILTINS */
/* #undef _OPENTHREADS_ATOMIC_USE_SUN */
/* #undef _OPENTHREADS_ATOMIC_USE_WIN32_INTERLOCKED */
/* #undef _OPENTHREADS_ATOMIC_USE_BSD_ATOMIC */
/* #undef _OPENTHREADS_ATOMIC_USE_MUTEX */
/* #undef OT_LIBRARY_STATIC */

If I set a break point in the warning for deleting still referenced I
get the following stack trace (using the osg 3.0.1 tag):

Breakpoint 1, osg::Referenced::~Referenced (this=0xaec2160,
__in_chrg=) at
/home/ola/src/OpenSceneGraph-3.0.1/src/osg/Referenced.cpp:236
236 OSG_WARN<<"Warning: deleting still referenced object
"<) at
/home/ola/src/OpenSceneGraph-3.0.1/src/osg/Referenced.cpp:236
#1  0x779e467c in osg::Object::~Object (this=0xaec2160,
__in_chrg=) at
/home/ola/src/OpenSceneGraph-3.0.1/src/osg/Object.cpp:45
#2  0x779dd71d in osg::Node::~Node (this=0xaec2160,
__in_chrg=) at
/home/ola/src/OpenSceneGraph-3.0.1/src/osg/Node.cpp:94
#3  0x77993953 in osg::Group::~Group (this=0xaec2160,
__in_chrg=) at
/home/ola/src/OpenSceneGraph-3.0.1/src/osg/Group.cpp:53
#4  0x75df4ae8 in osgTerrain::TerrainTile::~TerrainTile
(this=0xaec2160, __in_chrg=) at
/home/ola/src/OpenSceneGraph-3.0.1/src/osgTerrain/TerrainTile.cpp:95
#5  0x75df4b1e in osgTerrain::TerrainTile::~TerrainTile
(this=0xaec2160, __in_chrg=) at
/home/ola/src/OpenSceneGraph-3.0.1/src/osgTerrain/TerrainTile.cpp:95
#6  0x77a131a6 in osg::Referenced::signalObserversAndDelete
(this=0xaec2160, signalDelete=true, doDelete=true) at
/home/ola/src/OpenSceneGraph-3.0.1/src/osg/Referenced.cpp:323
#7  0x0040b07d in osg::Referenced::unref (this=0xaec2160) at
/home/ola/src/OpenSceneGraph-3.0.1/include/osg/Referenced:198
#8  0x0040cd3b in osg::ref_ptr::~ref_ptr
(thi

Re: [osg-users] [forum] robotic arm problem

2012-08-21 Thread jules Guilain Kenfack

Vincent.B wrote:
> Hi,
> 
> Please have a look in osg example, there is one about robot using transforms 
> if I'm not wrong.
> 
> 
> Thank you!
> 
> Cheers,
> Vincent


you are rigth,
i have already used it .but the problem is that when i tried add new object at 
each end and then rotate it i have some offset error.see picture.

--
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=49379#49379




Attachments: 
http://forum.openscenegraph.org//files/second_cross_195.png


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


Re: [osg-users] robotic arm problem

2012-08-21 Thread Vincent Bourdier
Topic moved to General forum, OSG [Forum] section is to talk about the forum, 
not technical questions about OSG.


Hi,

I don't understand what I'm supposed to see on your picture.
If the rotation is not good, mabe check the rotation center : the center 0,0,0 
in he object coordinate frame.

Thank you!

Cheers,
Vincent

--
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=49381#49381





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


Re: [osg-users] post-rendering warping and off-axis projection

2012-08-21 Thread Torben Dannhauer
Hi Shayne,



> 
> On the distortion correction, is there really any need for pixel level 
> distortion? That would seem very expensive. I would think that
> textureCoodinate distortion is more than sufficient with a reasonable mesh 
> resolution. I haven't seen the need for pixel level distortion in a
> spherical dome display.
> 


distortionNG supports vertex distortion and  texCoord distortion, pixel wise 
distortion is planned but not yet realized because we do not have a use case 
for pixel wise distortion.
Theoretically it is the most flexible distortion but it thwarts a lot of 
OpenGLs image quality enhancements like anti-aliasing and makes the image 
noisy, so you need to apply a filter at a post rendering stage.
It could be realized in shaders as it is done in the current( old) osgVisual 
distortion module, its perfomance is aceptable.

With vertex(mesh)  distortion and texCoord-distortion you can achieve identical 
results but I personmally prefere the vertex distortion for the follow reason:
If you configure distortionNG to display the distortion Mesh, you can use thes 
mesh to setup/control each channels correct alignment, whereas with textCoord 
you cannot do that.


> 
> Does osgVisual support an interface for providing asymmetric viewing frustums 
> for each channel? What I mean by this is can I specify the
> clipping bounds (i.e. rotation, widening or shrinking) for each channel 
> frustum so that I can effectively tile the channels in a dome display
> optimally?
> 


You can apply any projectionmatrix OSG/OpenGL allows, it does not introduice 
any restrictions.


> 
> How does osgVisual deal with edge blending of the channels or do you rely on 
> the projectors to do this? 
> 


The blending is performed in the distortion Modules, the projectors are COTS 
devices, only a better color management could be useful to ensure an identical 
color temperature on each channel.


-- So why is distortionNG still marked as experimental if it works like a 
charm?!
Maybe I should explain the current situation:

The above mentioned 6 channel helicopter simulator uses a proprietary 
commercial setup system: It is camera based and its output is the blendmap, the 
projection matrix and the distortion matrix used by distortionNG. It works like 
a charm, but it is very expensive.

For the academic usage osgVisual aims for, a cheaper solutions should be 
available: 
Therefore I'm also working on a mouse based setup method. This is very easy for 
vertex/texCoord distortion setup, but it is not so easy for the projection 
Matrix or the blend map. The manual setup mode is still unter construction.

The manual setup should be done in the following order (not yet finishend, it 
may contain errors)

* Position the projectors to cover every desired sqare inch of the screen, 
ensure that there is a reasonable overlaping of the projectors to use for 
blending purposes.
* In each channel display the distortion mesh and align it with the mouse and 
setup a regular mesh structure across all channels on the whole screen. ensure 
that each distorted channel covers a regular, ideally rectangular area from the 
simulator eye point perspective, this simplyfies the design of the projection 
matrix.
* Not yet solved because problematic: The blendmaps must be "designed" 
interactively with the mouse. The blend function between black and wite must 
not necessarily be linear, but maybe it can be simplyfied be regarding it as 
linear. The black blending edges are simple, they are the edge of the channel 
projector (blending maps are not distorted!) . The inner (white) blending edges 
have to be defined by mouse. If required the non-linear blend function must be 
definable.
* Not yet solved because problematic:  the projection Matrix has to be defined. 
To set it up correctly, the position of each channel relative to the simulators 
eye point must be determined. A cheap theodolith may be required. Finally the 
projection matrix has to be defined by this measured angels relative to 
eypoint. How to do this interactively I have no clue (yet) :)

The distortionSet itself is a container which can by saved and restored (like a 
path file of the animation manipulator) once it is configured by one of the 
above methods.

Finally one thing to mention: Lots of this tasks may be easy - I simply do not 
know because my time is limited due to my PhD and my daily work (both not in 
this area) and it is hard to get free hours and anough power to work on 
distortionNG. I hope this changes dramatically after my PhD is finished. Once 
distortionNG  is functional I'll try to submit it to core OSG.


Thank you!

Cheers,
Torben[/b]

--
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=49382#49382





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


Re: [osg-users] OSG Serialization - changes on custom Classes

2012-08-21 Thread Peter Bako
Hi mr. Rui Wang.

Thank you for your help.
It would be nice if we can set an auxiliary version number manually, when 
writing or reading files.
This mechanism would be perfect!
Can I assume that this modification will be implemented in the next month?
Or what do you suggest to me to do? It is not time critical in the next month, 
but then it will be :-).


This is a little off-topic, but why is the osg web page inaccessible?
Trac detected an internal error: 
OperationalError: database is locked



Thank you!

Cheers,
Peter

--
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=49384#49384





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


Re: [osg-users] osg(terrain) krasches on a double delete

2012-08-21 Thread Christiansen, Brad
Hi,

I didn't notice a slowdown either. I will leave it running overnight with the 
FPS showing.

Cheers,
Brad

-Original Message-
From: osg-users-boun...@lists.openscenegraph.org 
[mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Ola Nilsson
Sent: Tuesday, 21 August 2012 5:36 PM
To: OpenSceneGraph Users
Subject: Re: [osg-users] osg(terrain) krasches on a double delete

Interesting. Did you notice any slowdown? In my experience, even if the crash 
doesn't happen for a long time, a significant slowdown is almost immediate.

Ola

On Tue, 21 Aug 2012 07:41:27 +0200, Christiansen, Brad
 wrote:

> Hi,
>
> As another data point for you, I tried to reproduce the crash on a Win 7
> machine (VS2010) using a trunk build from a few weeks ago, and couldn't
> reproduce the crash. I left the example running for about 10 minutes
> with the camera spinning.
>
> Cheers,
> Brad
>
> -Original Message-
> From: osg-users-boun...@lists.openscenegraph.org
> [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Ola
> Nilsson
> Sent: Thursday, 9 August 2012 11:41 PM
> To: OpenSceneGraph Users
> Subject: Re: [osg-users] osg(terrain) krasches on a double delete
>
> Here is some more info on how to reproduce our crash.
>
> 1. Compile the attached osgterrain program by overwriting
> examples/osgterrain/osgterrain.cpp and recompile.
> 2. Run the program with
> http://www.openscenegraph.org/data/earth_bayarea/earth.ive as input.
> 3. Wait (no further input is necessary). However, camera movement (tile
> loading) produces earlier crashes. The attached image shows performance
> of a typical run (without user input) where the frame time cyclically
> increases until the program crashes.
>
> Cheers,
>
> Ola
>
> ps. The output from the program is: iteration sample_ratio frame_time
>
>
>
> On Tue, 07 Aug 2012 11:59:00 +0200, Ola Nilsson 
> wrote:
>
>> Hi,
>>
>> We have been looking for a hard-to-reproduce crash in our software
>> that seems to originate from a double delete inside osg. I have
>> (finally) been able to reproduce the crash using a version of the
>> osgterrain-example that _exaggerates_ the usage pattern that crashes
>> our application.
>>
>> In examples/osgterrain.cpp remove "return viwer.run();" an exchange it
>> with:
>>
>>while(!viewer.done())
>>  {
>>   osg::Timer_t start_tick = osg::Timer::instance()->tick();
>>   float sr = rand() * 1.0 / RAND_MAX ;
>>   std::cerr << sr;
>>
>>   viewer.getCamera()->setLODScale(sr*10);
>>   terrain->setSampleRatio( sr );
>>
>>   osg::Timer_t middle_tick = osg::Timer::instance()->tick();
>>
>>   std::cerr << osg::Timer::instance()->delta_m(start_tick,
>> middle_tick)
>> << std::flush;
>>
>>   viewer.frame();
>>   std::cerr << ' ' << osg::Timer::instance()->delta_m(middle_tick,
>> osg::Timer::instance()->tick()) << std::endl;
>>  }
>>return 0;
>>
>> When run (tested on ive earth models generated with osgdem) the frame
>> time slowly increases, and, after a while, it warns about deleting a
>> still referenced object and then (after arbitrary time) crashes with a
>> glibc error.
>>
>> Is this usage (setLODScale + setSampleRatio) safe? If not how should
>> these functions be called?
>>
>> If it's a bug, we would be _very_ happy to have it fixed or pointers
>> about where to look in the code. We've previously submitted a patch
>> that switched to a ReentrantMutex in osgTerrain/Terrain.cpp (changeset
>> 12904), could this be a similar issue?
>>
>> My system is running Centos 6.3 (x86_64) and I compiled osg in debug
>> mode with gcc 4.4.6. I have tested both against the 3.0.1 tag and
>> trunk (r13106).
>>
>> Since I suspect a threading issue; OpenThreads/Config looks like this:
>> #define _OPENTHREADS_ATOMIC_USE_GCC_BUILTINS
>> /* #undef _OPENTHREADS_ATOMIC_USE_MIPOSPRO_BUILTINS */
>> /* #undef _OPENTHREADS_ATOMIC_USE_SUN */
>> /* #undef _OPENTHREADS_ATOMIC_USE_WIN32_INTERLOCKED */
>> /* #undef _OPENTHREADS_ATOMIC_USE_BSD_ATOMIC */
>> /* #undef _OPENTHREADS_ATOMIC_USE_MUTEX */
>> /* #undef OT_LIBRARY_STATIC */
>>
>> If I set a break point in the warning for deleting still referenced I
>> get the following stack trace (using the osg 3.0.1 tag):
>>
>> Breakpoint 1, osg::Referenced::~Referenced (this=0xaec2160,
>> __in_chrg=) at
>> /home/ola/src/OpenSceneGraph-3.0.1/src/osg/Referenced.cpp:236
>> 236 OSG_WARN<<"Warning: deleting still referenced object
>> "<> (gdb) bt
>> #0  osg::Referenced::~Referenced (this=0xaec2160, __in_chrg=> optimized out>) at
>> /home/ola/src/OpenSceneGraph-3.0.1/src/osg/Referenced.cpp:236
>> #1  0x779e467c in osg::Object::~Object (this=0xaec2160,
>> __in_chrg=) at
>> /home/ola/src/OpenSceneGraph-3.0.1/src/osg/Object.cpp:45
>> #2  0x779dd71d in osg::Node::~Node (this=0xaec2160,
>> __in_chrg=) at
>> /home/ola/src/OpenSceneGraph-3.0.1/src/osg/Node.cpp:94
>> #3  0x77993953 in osg::Group::~Group (this=0xaec2160,
>> __in_chrg=) at
>> /home/ola/src/OpenSce

Re: [osg-users] Extensions/State Update Question

2012-08-21 Thread Jeremy Moles
On Mon, 2012-08-20 at 17:55 -0400, Jean-Sébastien Guay wrote:
> Hi Jeremy, nice to see you back writing graphics code!

I finally have the time again! 

> In the past, when I've needed to have a contextID in a custom Drawable, 
> I've always gotten it from inside my drawable's drawImplementation. IIRC 
> it gets a State pointer and this contains a valid contextID. Same when 
> I've needed to create a custom StateAttribute or something, in its 
> apply() method it gets a State pointer with a valid contextID or 
> something like that.
> 
> So you can have a scheme where you defer doing any initialization until 
> your first Drawable / StateAttribute needs to be traversed for actual 
> rendering, and then you get a valid contextID, do your initialization 
> and further ones will use that since initialization has been done already.
> 
> You need to make sure you consider the case where your Drawable / 
> StateAttribute will be used in multiple contexts. IIRC OSG uses the 
> BufferedValue to store resources associated with a context, and I used 
> the same pattern. Again IIRC, there were some order of initialization 
> issues where I assumed some initialization had been done for a context 
> before drawing but it hadn't, but that just involved a bit of pretty 
> simple debugging to get fixed.
> 
> Hope this helps,

It does. Your use of the word "deferred" is really helpful in this, as
it was a "deferred" approach I was taking and was looking for some
assurance this was an acceptable approach. :)

> J-S
> 
> 
> On 20/08/2012 12:48 PM, Jeremy Moles wrote:
> > On Mon, 2012-08-20 at 10:44 -0600, Paul Martz wrote:
> >> What you seem to be saying is that you want to set some OpenGL state once 
> >> that
> >> applies to all contexts, and not have to set it every frame. AND, you 
> >> don't want
> >> to have to add, then remove, a Camera draw callback just to make this 
> >> happen).
> >> Is that a good synopsis of the issue?
> > It's close; I don't actually mind using a Camera draw callback for this
> > purpose if it's appropriate.
> >
> > A real summarizing question is: under what conditions is it "safe" to
> > query for support of a particular extension? And what is the preferred
> > API for either fetching or being provided the contextID with which to do
> > this?
> >
> >> You could keep a bool buffered_value that tells you whether or not you've 
> >> set
> >> the initial/global state for that particular context. Initially false, 
> >> then set
> >> the global state for a context and flip it to true. Would something like 
> >> that help?
> >>  -Paul
> > Certainly, but I'm still stuck on actually SETTING the state in the
> > first place. :)
> >
> >> On 8/20/2012 10:27 AM, Jeremy Moles wrote:
> >>> Hello everyone! I have a bit of a strange question here, so please bear
> >>> with me. I'll try to be as descriptive as I possibly can, though I'm
> >>> certain I will misuse some terminology.
> >>>
> >>> I am adding support for the NV_path_rendering extension to
> >>> OpenSceneGraph. This extension adds a number of new functions to OpenGL
> >>> when using an NVidia card which take on the form:
> >>>
> >>>   glPath{_function_}NV
> >>>
> >>> http://osgnvpr.googlecode.com
> >>>
> >>> In order to create pointers to these new extension functions, I create
> >>> an Extensions object in OSG using the contextID given to me during the
> >>> compileGLObjects method of my overridden Drawable class. This works
> >>> fine, and the code is running as I expect.
> >>>
> >>> https://code.google.com/p/osgnvpr/source/browse/trunk/src/PathCommands.cpp#45
> >>>
> >>> HOWEVER, this paradigm really only works when I need to call extension
> >>> functions associated with an instance (or instances) of my Drawable.
> >>> There are other functions in the NV_path_rendering API that simply set
> >>> global state, and it is with these functions that I'm having difficulty.
> >>>
> >>> The biggest problem here is that in order to get a pointer to the
> >>> Extensions static object, I need a valid GraphicsContext contextID.
> >>> However, I've tried a number of methods to obtain one of these, but
> >>> every attempt I make actually breaks the entire codebase. I wish I could
> >>> explain it better than that...
> >>>
> >>> For example, if I try to use some code like the following:
> >>>
> >>> 
> >>>
> >>> Windows windows;
> >>>
> >>> viewer.getWindows(window);
> >>>
> >>> cID = windows[0]->getState()->getContextID();
> >>>
> >>> osgNVPR::getNVPRExtensions(cID);
> >>>
> >>> -
> >>>
> >>> ...then I seem to get an invalid contextID and all subsequent attempts
> >>> to use that contextID (even by OSG itself) won't work. The entire
> >>> rendering process seems to be broken in this manner.
> >>>
> >>> If instead I create a Camera::DrawCallback object and use the RenderInfo
> >>> there instead, then everything works fine. However, I feel like I'm
> >>> grossly misusing a Camera::DrawCallback just to set and un

Re: [osg-users] osg(terrain) krasches on a double delete

2012-08-21 Thread Robert Osfield
Hi Ola,

On 21 August 2012 10:36, Ola Nilsson  wrote:
> Interesting. Did you notice any slowdown? In my experience, even if the
> crash doesn't happen for a long time, a significant slowdown is almost
> immediate.

The slow down is simply down to all the tiles that have been loaded
and tessellated having to be thrown away and rebuilt from scratch at
the new resolution.  So it's perfectly normal, there isn't any way to
do the rebuild at the new resolution without a big frame hit.

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


Re: [osg-users] osg(terrain) krasches on a double delete

2012-08-21 Thread Robert Osfield
Hi Ola et. al,

I've looked at the problem Terrain containers and they present an
interesting issue - the std::set that is used can't
easily be converted into an std::set< osg::observer_ptr >
as the observer_ptr<> can have it's value changed to NULL by another
thread when destructing the observed TerrainTile and std::set<>
require their values to be const.

What will be required is a custom container of osg::oberserver_ptr<>
along the lines of osg::OberservedNodePath but written to manage it's
contents in a similar way to a std::set.

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


Re: [osg-users] Maps & DTED data

2012-08-21 Thread Michael Hall
Yes, I have heard of it and have actually downloaded it.  I don't think I have 
installed it on my new Laptop I am using.  I am not sure exactly its purpose.  
I 
know it says something about terrains.  Is it library like OSG?  I will have to 
look at it this evening.  Any more info would be great.

Thanks,
Michael





From: Chris Hanson 
To: OpenSceneGraph Users 
Sent: Sat, August 18, 2012 7:25:56 PM
Subject: Re: [osg-users] Maps & DTED data


On Fri, Aug 17, 2012 at 3:59 PM, Michael Hall  wrote:

I have a little alpplication I am doing to learn OSG.  I have also read the OSG 
3.0 for Beginners book.  It has been helpful in learning more about how OSG 
works.
>I have generated an earth.ive database from the BMNG east and west tifs.  I 
>can 
>display this database in my application.  I would like to now associate DTED 
>data on that and then overlay maps.  What is the best way to do this? Would 
>also 
>like to display the lat/long of where the mouse is in the status bar of my 
>application.  Any tips or suggestions are appreciated.
>
>
>
  You're getting into the realm (multiple data layers) where osgEarth 
significantly makes your life easier. Have you considered using it?

-- 

Chris 'Xenon' Hanson, omo sanza lettere. xe...@alphapixel.com 
http://www.alphapixel.com/
Training • Consulting • Contracting
3D • Scene Graphs (Open Scene Graph/OSG) • OpenGL 2 • OpenGL 3 • OpenGL 4 • 
GLSL 
• OpenGL ES 1 • OpenGL ES 2 • OpenCL
Digital Imaging • GIS • GPS • Telemetry • Cryptography • Digital Audio • LIDAR 
• 
Kinect • Embedded • Mobile • iPhone/iPad/iOS • Android
___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


Re: [osg-users] Maps & DTED data

2012-08-21 Thread Glenn Waldron
Michael,

osgEarth is a C++ terrain rendering SDK. It is built on top of OSG. It
renders 3D terrains from elevation, imagery, and vector data sources, and
it provides a ton of other geospatial tools and functionality as well.

  Main site: http://osgearth.org
  Source code: 
http://github.com/gwaldron/osgearth
  Forums: http://forum.osgearth.org/

Glenn Waldron / Pelican Mapping / @glennwaldron


On Tue, Aug 21, 2012 at 3:13 PM, Michael Hall  wrote:

> Yes, I have heard of it and have actually downloaded it.  I don't
> think I have installed it on my new Laptop I am using.  I am not sure
> exactly its purpose.  I know it says something about terrains.  Is it
> library like OSG?  I will have to look at it this evening.  Any more info
> would be great.
>
> Thanks,
> Michael
>
>  --
> *From:* Chris Hanson 
> *To:* OpenSceneGraph Users 
> *Sent:* Sat, August 18, 2012 7:25:56 PM
> *Subject:* Re: [osg-users] Maps & DTED data
>
> On Fri, Aug 17, 2012 at 3:59 PM, Michael Hall  wrote:
>
>>  I have a little alpplication I am doing to learn OSG.  I have also read
>> the OSG 3.0 for Beginners book.  It has been helpful in learning more about
>> how OSG works.
>> I have generated an earth.ive database from the BMNG east and west tifs.
>> I can display this database in my application.  I would like to now
>> associate DTED data on that and then overlay maps.  What is the best way to
>> do this? Would also like to display the lat/long of where the mouse is in
>> the status bar of my application.  Any tips or suggestions are appreciated.
>>
>>   You're getting into the realm (multiple data layers) where osgEarth
> significantly makes your life easier. Have you considered using it?
>
>
> --
> Chris 'Xenon' Hanson, omo sanza lettere. xe...@alphapixel.com
> http://www.alphapixel.com/
> Training • Consulting • Contracting
> 3D • Scene Graphs (Open Scene Graph/OSG) • OpenGL 2 • OpenGL 3 • OpenGL 4
> • GLSL • OpenGL ES 1 • OpenGL ES 2 • OpenCL
> Digital Imaging • GIS • GPS • Telemetry • Cryptography • Digital Audio •
> LIDAR • Kinect • Embedded • Mobile • iPhone/iPad/iOS • Android
>
>
> ___
> 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


Re: [osg-users] Safe downcast

2012-08-21 Thread Peterakos
Hello.

I forgot to mention that i check it. That's why i posted it. Cause it is
very strange to run even though there is no group as root..

osg::ref_ptr node =
dynamic_cast(osgDB::readNodeFile( "astroboy_walk.dae" ));
if(!node) {
   std::cout << "Model could not be loaded " << std::endl;
   return 1;
}

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


Re: [osg-users] [forum] Site web down

2012-08-21 Thread Philip Lamb
Hi,

The main OSG web is down again. The error reported is "Trac database locked".

Regards,
Phil.

--
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=49392#49392





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


Re: [osg-users] post-rendering warping and off-axis projection

2012-08-21 Thread Tueller, Shayne R Civ USAF AFMC 519 SMXS/MXDEC
Torben,

Thanks for addressing my questions and providing that information.

We've relied on the projectors and associated software (Mersive) to do
the distortion correction and edge blending but a cheaper
(monetary-wise) approach is always worth investigating...

Thanks,
-Shayne

-Original Message-
From: osg-users-boun...@lists.openscenegraph.org
[mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Torben
Dannhauer
Sent: Tuesday, August 21, 2012 4:15 AM
To: osg-users@lists.openscenegraph.org
Subject: Re: [osg-users] post-rendering warping and off-axis projection

Hi Shayne,



> 
> On the distortion correction, is there really any need for pixel level

> distortion? That would seem very expensive. I would think that 
> textureCoodinate distortion is more than sufficient with a reasonable
mesh resolution. I haven't seen the need for pixel level distortion in a
spherical dome display.
> 


distortionNG supports vertex distortion and  texCoord distortion, pixel
wise distortion is planned but not yet realized because we do not have a
use case for pixel wise distortion.
Theoretically it is the most flexible distortion but it thwarts a lot of
OpenGLs image quality enhancements like anti-aliasing and makes the
image noisy, so you need to apply a filter at a post rendering stage.
It could be realized in shaders as it is done in the current( old)
osgVisual distortion module, its perfomance is aceptable.

With vertex(mesh)  distortion and texCoord-distortion you can achieve
identical results but I personmally prefere the vertex distortion for
the follow reason:
If you configure distortionNG to display the distortion Mesh, you can
use thes mesh to setup/control each channels correct alignment, whereas
with textCoord you cannot do that.


> 
> Does osgVisual support an interface for providing asymmetric viewing 
> frustums for each channel? What I mean by this is can I specify the 
> clipping bounds (i.e. rotation, widening or shrinking) for each
channel frustum so that I can effectively tile the channels in a dome
display optimally?
> 


You can apply any projectionmatrix OSG/OpenGL allows, it does not
introduice any restrictions.


> 
> How does osgVisual deal with edge blending of the channels or do you
rely on the projectors to do this? 
> 


The blending is performed in the distortion Modules, the projectors are
COTS devices, only a better color management could be useful to ensure
an identical color temperature on each channel.


-- So why is distortionNG still marked as experimental if it works like
a charm?!
Maybe I should explain the current situation:

The above mentioned 6 channel helicopter simulator uses a proprietary
commercial setup system: It is camera based and its output is the
blendmap, the projection matrix and the distortion matrix used by
distortionNG. It works like a charm, but it is very expensive.

For the academic usage osgVisual aims for, a cheaper solutions should be
available: 
Therefore I'm also working on a mouse based setup method. This is very
easy for vertex/texCoord distortion setup, but it is not so easy for the
projection Matrix or the blend map. The manual setup mode is still unter
construction.

The manual setup should be done in the following order (not yet
finishend, it may contain errors)

* Position the projectors to cover every desired sqare inch of the
screen, ensure that there is a reasonable overlaping of the projectors
to use for blending purposes.
* In each channel display the distortion mesh and align it with the
mouse and setup a regular mesh structure across all channels on the
whole screen. ensure that each distorted channel covers a regular,
ideally rectangular area from the simulator eye point perspective, this
simplyfies the design of the projection matrix.
* Not yet solved because problematic: The blendmaps must be "designed"
interactively with the mouse. The blend function between black and wite
must not necessarily be linear, but maybe it can be simplyfied be
regarding it as linear. The black blending edges are simple, they are
the edge of the channel projector (blending maps are not distorted!) .
The inner (white) blending edges have to be defined by mouse. If
required the non-linear blend function must be definable.
* Not yet solved because problematic:  the projection Matrix has to be
defined. To set it up correctly, the position of each channel relative
to the simulators eye point must be determined. A cheap theodolith may
be required. Finally the projection matrix has to be defined by this
measured angels relative to eypoint. How to do this interactively I have
no clue (yet) :)

The distortionSet itself is a container which can by saved and restored
(like a path file of the animation manipulator) once it is configured by
one of the above methods.

Finally one thing to mention: Lots of this tasks may be easy - I simply
do not know because my time is limited due to my PhD and my daily work
(both not in this area) and it is hard to get f

Re: [osg-users] osg(terrain) krasches on a double delete

2012-08-21 Thread Christiansen, Brad
Hi,

I have managed to reproduce the crash during the overnight run. The stack trace 
looks the very similar.

Cheers,
Brad

-Original Message-
From: osg-users-boun...@lists.openscenegraph.org 
[mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield
Sent: Wednesday, 22 August 2012 2:44 AM
To: OpenSceneGraph Users
Subject: Re: [osg-users] osg(terrain) krasches on a double delete

Hi Ola et. al,

I've looked at the problem Terrain containers and they present an interesting 
issue - the std::set that is used can't easily be converted into 
an std::set< osg::observer_ptr > as the observer_ptr<> can have 
it's value changed to NULL by another thread when destructing the observed 
TerrainTile and std::set<> require their values to be const.

What will be required is a custom container of osg::oberserver_ptr<> along the 
lines of osg::OberservedNodePath but written to manage it's contents in a 
similar way to a std::set.

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


-
DISCLAIMER: This e-mail transmission and any documents, files and 
previous e-mail messages attached to it are private and confidential.  
They may contain proprietary or copyright material or information that 
is subject to legal professional privilege.  They are for the use of 
the intended recipient only.  Any unauthorised viewing, use, disclosure, 
copying, alteration, storage or distribution of, or reliance on, this 
message is strictly prohibited.  No part may be reproduced, adapted or 
transmitted without the written permission of the owner.  If you have 
received this transmission in error, or are not an authorised recipient, 
please immediately notify the sender by return email, delete this 
message and all copies from your e-mail system, and destroy any printed 
copies.  Receipt by anyone other than the intended recipient should not 
be deemed a waiver of any privilege or protection.  Thales Australia 
does not warrant or represent that this e-mail or any documents, files 
and previous e-mail messages attached are error or virus free.  

-

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


Re: [osg-users] osg(terrain) krasches on a double delete

2012-08-21 Thread Christiansen, Brad
Hi,

I forgot to mention my interest in this:
While I don't change the sample ratio in our application, I do rebuild the tile 
meshes in a similar way when the user changes the elevation data being used on 
the fly. This issue could explain a very rare crash in our application  I have 
seen but have never been able to reproduce.

Cheers,
Brad

-Original Message-
From: osg-users-boun...@lists.openscenegraph.org 
[mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, 
Brad
Sent: Wednesday, 22 August 2012 11:05 AM
To: OpenSceneGraph Users
Subject: Re: [osg-users] osg(terrain) krasches on a double delete

Hi,

I have managed to reproduce the crash during the overnight run. The stack trace 
looks the very similar.

Cheers,
Brad

-Original Message-
From: osg-users-boun...@lists.openscenegraph.org 
[mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield
Sent: Wednesday, 22 August 2012 2:44 AM
To: OpenSceneGraph Users
Subject: Re: [osg-users] osg(terrain) krasches on a double delete

Hi Ola et. al,

I've looked at the problem Terrain containers and they present an interesting 
issue - the std::set that is used can't easily be converted into 
an std::set< osg::observer_ptr > as the observer_ptr<> can have 
it's value changed to NULL by another thread when destructing the observed 
TerrainTile and std::set<> require their values to be const.

What will be required is a custom container of osg::oberserver_ptr<> along the 
lines of osg::OberservedNodePath but written to manage it's contents in a 
similar way to a std::set.

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


-
DISCLAIMER: This e-mail transmission and any documents, files and previous 
e-mail messages attached to it are private and confidential.  
They may contain proprietary or copyright material or information that is 
subject to legal professional privilege.  They are for the use of the intended 
recipient only.  Any unauthorised viewing, use, disclosure, copying, 
alteration, storage or distribution of, or reliance on, this message is 
strictly prohibited.  No part may be reproduced, adapted or transmitted without 
the written permission of the owner.  If you have received this transmission in 
error, or are not an authorised recipient, please immediately notify the sender 
by return email, delete this message and all copies from your e-mail system, 
and destroy any printed copies.  Receipt by anyone other than the intended 
recipient should not be deemed a waiver of any privilege or protection.  Thales 
Australia does not warrant or represent that this e-mail or any documents, 
files and previous e-mail messages attached are error or virus free.  

-

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


-
DISCLAIMER: This e-mail transmission and any documents, files and 
previous e-mail messages attached to it are private and confidential.  
They may contain proprietary or copyright material or information that 
is subject to legal professional privilege.  They are for the use of 
the intended recipient only.  Any unauthorised viewing, use, disclosure, 
copying, alteration, storage or distribution of, or reliance on, this 
message is strictly prohibited.  No part may be reproduced, adapted or 
transmitted without the written permission of the owner.  If you have 
received this transmission in error, or are not an authorised recipient, 
please immediately notify the sender by return email, delete this 
message and all copies from your e-mail system, and destroy any printed 
copies.  Receipt by anyone other than the intended recipient should not 
be deemed a waiver of any privilege or protection.  Thales Australia 
does not warrant or represent that this e-mail or any documents, files 
and previous e-mail messages attached are error or virus free.  

-

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