[osg-tds] osgTDS with coordinatesystemnode and large geocentric Databases
Don Burns
don at andesengineering.com
Sat May 23 07:15:57 PDT 2009
I wonder if the terrain is in some geometry primitive that osgTDS doesn't
understand, or something of the kind. I would suggest walking through some
code with the debugger. Specifically, look at
TerrainProcessor::_processGeode and TerrainProcessor::_processGeometry in
TerrainProcessor.cpp.
-don
On Sat, May 23, 2009 at 7:01 AM, Torben Dannhauer <torben at dannhauer.info>wrote:
> Hi Don,
>
>
>
> Ok, regarding osgEarth I got it, so lets refocus only on osgTDS.
>
>
>
> My scene graph logic is a CoordinateSystemNode as root node, and as childs
> my geocentric earthmodel and my other models.
>
>
>
> But for easier learning a used a simple setup with the standart osgviewer
> program, just to verify that osgTDS works with databases generated by
> VirtualPlanetBuilder.
>
>
>
> I have a flat database which I generated with VirtualPlanetBuilder. (The
> Puget example dataset)
>
>
>
> Additional I use the house.osg from the osgTDS examples. I modified the
> transform matrix at the beginning of the house.osg file, so the house
> appears not on the corner of my scene, but inside my scene. Translation
> works because the house is visible in my scene. I suppose it is far enough
> away from the edges.
>
>
>
> Now there is no warning like I mentioned below, but on the other hand there
> is also no terrain modification, as if osgTDS wouldn’t be there.
>
> The debug-Messages at OSG_NOTIFY_LEVEL = INFO tells me he is triangulating
> something, but I can’t see any effects..
>
> Du you have an idea what could be the problem?
>
>
>
> Thank you for your help,
>
>
>
> Torben
>
>
>
> *Von:* burns.don at gmail.com [mailto:burns.don at gmail.com] *Im Auftrag von *Don
> Burns
> *Gesendet:* Freitag, 22. Mai 2009 18:44
> *An:* Torben Dannhauer
> *Cc:* osg-tds at andesengineering.com
> *Betreff:* Re: [osg-tds] osgTDS with coordinatesystemnode and large
> geocentric Databases
>
>
>
> Hi Torben,
>
> On Fri, May 22, 2009 at 7:39 AM, Torben Dannhauer <torben at dannhauer.info>
> wrote:
>
> Hello,
>
>
>
> I discovered osgTDS for terrain modification and have some trouble to get
> it working.
>
>
>
> I got the source, compiled it and integrated the files into my OSG
> installation.
>
> osgTDS with the example data works great and has an impressive output.
>
>
>
> Unfortunalety osgTDS seems not to work with my geocentric database (WGS84)
> which I build with VirtualPlanetBuilder.
>
> During the application startup a message is displayed, that the model is
> not or not completely over Terrain: “Terrain Deformation Software: ERROR
> in Target Database Base definition: at least one target is not completely
> over terrain.”
>
>
> SO you understand the historical implications, VPB is a newer product than
> osgTDS, and osgTDS has not been kept up with advances in osg, which would
> explain the difficulty you've had with integration. osgTDS is a community
> supported project by design, so your work with it could be valuable in
> keeping it up to snuff.
>
> The message you are getting is undoubtedly (I haven't looked at the code
> for about two years), the result of your models being in a different
> coordinate space than the terrain over which they are positioned. I would
> guess that the solution is to use the same sort of coordinate node provided
> by OSG to position your models.
>
> There may be another consideration, in that osgTDS makes some assumptions
> about "which way is up", or more specifically, "which is the bottom of the
> models", and may require some transformations to get things right.... (I'm
> not sure here, just guessing).
>
> I have read the Documentation but there are still some beginner
> questions:
>
> 1. The osgTDS loader seems to load all targets mentioned in the .tds
> file by himself. Is it possible to relocate this models in my scenery to
> their right place and the terrain will always be corrected the right way?
>
> I believe that we are on the same page here regarding my first
> paragraph. You probably need to group your models under a coordinate system
> node. However, you may also need to build the support for the coordinate
> system node into the osgTDS traversers, as this node did not exist when
> osgTDS was written.
>
> 2. How is the loading logic build? Which model/target is
> parent/child of which other node, and at the end of the loading process,
> which node is passed back to the application as “loaded model” ?
>
>
> There is nothing unique about osgTDS in the file loading. it works like
> any other osg viewer in that all objects listed on the command line are
> grouped under a group node which is then formed as part of the main scene
> graph. This is not unique to osgTDS. The tds loader accepts a file named
> *.tds, then uses the information therein to find the other components, which
> need to preceed it on the command line. It then divides the scene graph
> into "Terrain" and "Targets", manipulates the coordinates of the terrain
> according to the position of the targets.
>
> 3. Is there any maximum or minimum distance up to which the terrain
> will be corrected to “touch” the target?
>
> The software is designed to always connect to the target's "bottom",
> which is assumed to be coordinates of the "bottom hull", formed by the
> coords with lowest "z" value. If you want to alter the behavior, you can
> insert targets that are used for manipulating the terrain, but not drawn.
>
> 4. Is it possible to use osgTDS for loading highdetail
> terrainmodels into larger low-detail, and osgTDS will adapt the low-level
> model that there is no z-fighting or things like that? Or is it better to
> use osgEarth for that purpose?
>
> I have no idea what osgEarth is. But yes, osgTDS does, in fact, adapt
> the lower level model to the new set of coordinates. This allows you to
> shape the surface of the terrain to your liking.
>
> 5. Is it possible to use osgTDS in combination with osgEarth? Both
> projects seem to use a loader-plugin over osgDB.
>
>
> Again, I have no idea what osgEarth is. osgDB and "loader-plugin" however
> are not mutually exclusive. osgDB is the framework by which osgTDS and
> other plugins work.
>
> -don
>
>
>
> Thanks for your help,
>
>
>
> Torben
>
>
>
>
> _______________________________________________
> osg-tds mailing list
> osg-tds at andesengineering.com
> http://andesengineering.com/mailman/listinfo/osg-tds
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://andesengineering.com/pipermail/osg-tds/attachments/20090523/c307b01d/attachment-0001.htm
More information about the osg-tds
mailing list