Commit Graph

152 Commits

Author SHA1 Message Date
Robert Osfield
51e07f1e66 Added traverse method implementation into GeometryTechnique. 2007-07-17 17:36:44 +00:00
Robert Osfield
03749d5e34 Removed redundent TerrainGeometry classes, and adding double buffer of
internal data within GeometryTechinque in prep for support multi-threaded
set up and rendering of terrain.
2007-07-12 20:12:38 +00:00
Robert Osfield
ecf0b58a19 Renamed include/osg/OperationsThread to OperationThread.
Created a new GraphicsThread subclass from OperationThread which allows the
GraphicsContext specific calls to be moved out of the base OperationThread class.

Updated the rest of the OSG to respect these changes.
2007-07-12 15:54:45 +00:00
Robert Osfield
691a49d0fa From Paul Melis, fixes to spelling mistakes/typos. 2007-07-11 15:51:17 +00:00
Robert Osfield
2b84aa7760 Added dirty count support to osgTerrain::Layer clases.
Added LayerHandler to osgterrain example that modifies the layers in 
response to pressing the 's' and 'q' keys
2007-07-06 16:47:08 +00:00
Robert Osfield
601217025f Improved the mapping of update and cull traversal 2007-07-05 18:30:20 +00:00
Robert Osfield
eac3dc1963 From Paul Melis, "Here is a list of fixes to misspelled APIs. Unfortunately, more than one
of these are public APIs and therefore will break linkage to existing
shared libraries."

Note from Robert Osfield, updated wrappers.
2007-06-27 20:36:16 +00:00
Robert Osfield
9f72c9392e Added code of support for contouring shaders 2007-06-20 12:00:29 +00:00
Robert Osfield
d4309ce69a Added use of GLSL filters 2007-06-18 12:10:46 +00:00
Robert Osfield
b92ebca928 From Maria Ten, "The constructor method of the EllipsoidLocator of osgTerrain assumes
that the terrain is always the Earth planet. I changed the constructor
method to accept the Equator radius and the Polar radius like
parameters. By default, it assumes the Earth radius for the
EllipsoidLocator. I added a setEllipsoidModel method, too.

Now, we are developing some libraries for a GIS applicacion, and our
libraries can visualize terrains of planets like Mars. I think that is
a interesting change."
2007-06-01 21:33:29 +00:00
Robert Osfield
8f87e14416 From Mike Wittman, "Just found another issue building the C# wrappers: the osgTerrain ValidDataOperator file uses osg::Vec2, osg::Vec3, and osg::Vec4, but does not include their headers. The file with the relevant includes is attached.
"
2007-06-01 19:10:59 +00:00
Robert Osfield
b97d8c0fe0 Added TerrainNode::init() and s/getTreatBoundariesToValidDataAsDefaultValue flag. 2007-05-13 09:54:51 +00:00
Robert Osfield
91ddcdf531 Added include 2007-05-11 20:16:52 +00:00
Robert Osfield
acb2ed177c Added ValidDataOperator base class and NoDataValue and ValidRange subclasses, and
support for it in osgTerrain::Layer and GeometryTechniqnue.
2007-05-11 18:25:06 +00:00
Robert Osfield
8c7b5b5865 Added supoort for transforming layers by an offset and scale 2007-05-10 18:07:54 +00:00
Robert Osfield
af5b6aa43e Added CartizianLocator 2007-05-03 16:23:19 +00:00
Robert Osfield
368f9b0034 Added return *this to operator = 2007-05-03 14:51:02 +00:00
Robert Osfield
65811d0233 Added virtual orientationOpenGL() method into osgTerrain::Locator. 2007-05-03 11:11:03 +00:00
Robert Osfield
efb52dfab9 Added TerrainNode::setColorFilter(layerNum,Filter) to allow developers to set
what type of texture filter to use, either LINEAER and NEAREST.
2007-04-30 09:47:35 +00:00
Robert Osfield
aa56bddefc Added a MatrixTransform set up to provide a local origin for better precision. 2007-04-29 20:10:43 +00:00
Robert Osfield
47598ce1a9 Added back in osg::Geometry path 2007-04-27 17:03:06 +00:00
Robert Osfield
835e315494 Implement basic TerrainGeometry code 2007-04-16 19:34:25 +00:00
Robert Osfield
73f980bd49 Prep work on new TerrainGeometry Drawable which supports selective display list/VBO's usage.
Updated wrappers
2007-04-11 17:39:13 +00:00
Robert Osfield
557fdacba2 Added support for multiple colour layers, and fixed handling of elevation
and colour layers having different locator
2007-04-11 11:20:04 +00:00
Robert Osfield
d434ee0db8 Added support for reading values from an ImageLayer, and building of the
elevation data in GeometryTechnique.
2007-03-30 14:57:57 +00:00
Robert Osfield
a2ecb93c2b Converted osg::HeightField across to using a osg::FloatArray internally to enable
it to be assigned as a vertex attribute array to an osg::Geometry.

Removed the osgTerrain::ArrayLayer as its no longer required thanks to the above change
which makes the osgTerrain::HeightFieldLayer more flexible.  

Updated wrappers
2007-03-29 19:42:07 +00:00
Robert Osfield
cb811aa7cd Added support for compute the extents on local NDC coordiantes of the
elevation and colour layers
2007-03-28 16:28:20 +00:00
Robert Osfield
78ed8f9219 Add computeBound support to TerrainNode and Layer. 2007-03-27 19:27:36 +00:00
Robert Osfield
4688d5ae8e Rearranged the traversal and initialization of TerrainTechnique 2007-03-27 16:01:01 +00:00
Robert Osfield
e76e4e82db Added EllipsoidLocator. 2007-03-27 11:23:57 +00:00
Robert Osfield
404d583b3e Added return false; to default implementations of convert functions 2007-03-26 19:24:18 +00:00
Robert Osfield
1cdda0654f Added Locator and layer setting to osgterrain example 2007-03-26 15:52:22 +00:00
Robert Osfield
56a1808794 Added ImageLayer, ArrayLayer and HeightFieldLayer classes 2007-03-21 17:18:53 +00:00
Robert Osfield
541c3f13e9 Added GeometryTechinque to osgTerrain. Added usage of GeometryTechnique into osgterrain example
Added --width and --height command line options to osgdistortion to allow users
to control the window size.
2007-03-21 16:34:04 +00:00
Robert Osfield
32166ca631 Build fixes 2007-03-19 10:54:39 +00:00
Robert Osfield
2fae221f2d Added class shells for osgTerrain::Locator and osgTerrain::Layer classes 2007-03-14 12:00:54 +00:00
Robert Osfield
c489b0af2c Renamed HeightFieldNode and HeightFieldRenderer to TerrainNode and TerrainTechnique respectively 2007-03-14 11:24:04 +00:00
Robert Osfield
b00cbe5a17 Moved include/osgTerrain/DataSet/.cpp, gdal plugin and osgdem out into the VirtualPlaneBuilder project.
Updated examples to remove DataSet/GDAL dependency.

Updated wrappers
2007-02-27 21:12:48 +00:00
Robert Osfield
292eee4c1e From Mike Weiblen, added missing export to fix osgTerrain wrapper linking under VS 2006-09-07 10:41:38 +00:00
Robert Osfield
5c1b0f1bbd Added support for imagery and DEM's that wrap around the dateline, this required
two passes over the copying of imagery and DEM's to the destination graphs, once for
the original position, and once for the wrap around 360 degrees on or before.

Also fixed the GeospationExtents constructor that was setting the _max to DBL_MIN rather
than -DBL_MAX.  This bug causesd the y axis to be computed incorrectly.
2006-09-04 20:43:07 +00:00
Robert Osfield
5c4446dd5e From Jason Beverage,
"I've attached fixes to DataSet that should fix the problems that Maya was seeing yesterday.  The issue was that the new interpolation code I submitted didn't use the SourceData's georef, it was assuming that the GDALDataSet had a proper geo-ref.  I've made the getInterpolatedValue method a member of SourceData and now it uses the georef the SourceData's georef.

I also forward declared the GDALRasterBand class in the DataSet header."
2006-07-31 20:56:22 +00:00
Robert Osfield
f1c2694c17 Updated copyright years. 2006-07-18 15:21:48 +00:00
Robert Osfield
ad18b88848 From Antoine Hue,
"There was a typo in "int setNotifyOffset()", appear to be a getter =>
"int getNotifyOffset()".

Then I have added a switch to create GDALTermProgress only when the
current notify level + local offset permit message display. In fact, if
the offset is set to 0 and the notify level is at the default, DataSet
is quiet but for the GDALTermProgress. That is quite disturbing since
you think the progress is related to the complete processing but it is
actually only related to the GDAL Warp."
2006-07-11 10:34:41 +00:00
Robert Osfield
2e0865d0c9 From Jason Baverage, A
dded GeospatialExtents bounding box class which used doubles
in place of the original usage of osg::BoundingBox.

Added path for computing interpolation elevation data being read from GDAL.
2006-05-15 13:12:55 +00:00
Robert Osfield
72554ca27e From Jason Beverage, added option to control whether simplification of
tiles is done during osgdem builds.
2005-12-15 16:30:31 +00:00
Robert Osfield
b835ec9ee9 Changed s/getGdalDataset() methods to use void* to avoid introspeciton wrapping problems. 2005-12-08 10:03:39 +00:00
Robert Osfield
73cc97f0e1 From Antonoine Hue, a small modification to the osgTerrain::DataSet
to be able to pass an already opened GDAL Dataset to the
osgTerrain::DataSet::Source
2005-12-07 15:26:45 +00:00
Robert Osfield
9c93332c03 From Rodger James, changed the Win32 static library compilation support to use
OSG_LIBRARY_STATIC to avoid problems with building libs when not required.
2005-11-18 09:52:24 +00:00
Robert Osfield
35fcaf7bde Convert tabs to spaces. 2005-11-17 17:44:48 +00:00
Robert Osfield
26c911acf3 Added a s/getState() to osgTerrain::DataSet to allow better integration with applications. 2005-11-09 20:24:47 +00:00
Robert Osfield
258425d649 Bumped the version numbers up to 1.0 in preparation for 1.0-rc1. 2005-11-09 10:49:56 +00:00
Robert Osfield
d2487e73e5 Added support for tracking the directory of the output file whilst still maintaining
local file references within this directory.
2005-10-27 10:48:44 +00:00
Robert Osfield
f26c3da074 From Chris Hanson, "The following files are drop-in replacements for the include/*/Export files to permit
building statically linked osg libraries under Win32."
2005-09-28 14:05:05 +00:00
Robert Osfield
e404b95dc3 Added support in osgTerrain/osgdem for setting the image format to use when writing tiles out to disk 2005-09-04 06:36:52 +00:00
Robert Osfield
72488d274f Added support for equalizing the normals along tile boundaries. 2005-07-02 08:11:55 +00:00
Robert Osfield
cf06b40891 Added pragma to remove warnings under VS.8.0 2005-05-24 18:57:13 +00:00
Robert Osfield
e229a8cb67 Updates to clean up wrapper generation, and to update wrappers 2005-05-24 15:34:23 +00:00
Robert Osfield
ad5e2d45f1 From Marco Jez, added export symbols. 2005-05-14 18:57:47 +00:00
Robert Osfield
015c9a9765 Added support for generating RGBA, RGBA-16 and RGBA-compressed texture databases 2005-05-02 14:16:25 +00:00
Robert Osfield
991feca6cc Added support for reading from RGBA source textures 2005-05-02 13:00:17 +00:00
Robert Osfield
678b22ce83 Updated Copyright notices to 1998-2005. 2005-04-14 21:41:28 +00:00
Robert Osfield
6a103aa413 Added osgFX::MultiTextureControl node for managing blending between
different texture layers.
2005-03-09 16:54:10 +00:00
Robert Osfield
8dc1be6707 Added basic multiple texture layer support into osgTerrain::DataSet. 2005-03-08 16:51:48 +00:00
Robert Osfield
d155caf2a4 First steps to adding support for multiple texture layers. 2005-03-07 22:02:44 +00:00
Robert Osfield
c3fd271dc4 Addd high level introductory docs for all the libs 2004-11-26 16:01:04 +00:00
Robert Osfield
564869487a Added support of archiving into osgTerrain::DataSet and osgdem. 2004-11-09 14:18:29 +00:00
Robert Osfield
8dfea424c5 Removed gdal_priv.h from include/osgTerrain/DataSet to remove the external dependency on
GDAL.
2004-10-28 07:00:55 +00:00
Robert Osfield
df9c7e5031 From Tree, fixes for Java bindings 2004-10-25 19:16:57 +00:00
Robert Osfield
3b8abfa875 Added ability to alter the verbosity of the notify messages with the
running of osgTerrain::DataSet via a static s/getNotifyOffset(int) method.
2004-10-05 15:08:54 +00:00
Robert Osfield
b664c20c74 Improved the handling of building/writing generated databases, and
the fixed transition distances on the lower levels of geocentric databases.
2004-09-13 13:53:45 +00:00
Robert Osfield
e5ea972cff Added convinience methods. 2004-09-10 13:31:37 +00:00
Robert Osfield
e004dbe58e From Bruce Clay, Build fixes for Win32 VS6.0 2004-08-06 05:25:21 +00:00
Robert Osfield
7126ca44e9 Better macro support for switching on/off use of mutex 2004-08-03 11:01:39 +00:00
Robert Osfield
0fb5733f13 Added support for --tile-image-size <size>, --tile-terrain-size <size> and --comment <string>
command line options into osgTerrain::DataSet + osgdem.
2004-07-19 09:03:50 +00:00
Robert Osfield
ae3b1454e8 Completed support for "--levels min max" option where the levels that a
source imager or DEM contributes to.
2004-06-30 14:37:06 +00:00
Robert Osfield
656762edbb Changed const int to #define for VS6.0 build 2004-06-30 07:26:02 +00:00
Robert Osfield
63aa9b857d Added first stage of support for "--levels min max" in osgdem/osgTerrain where
this option controls which levels that an associated imager or DEM contributes
to the final model.
2004-06-17 14:39:16 +00:00
Robert Osfield
8b2ba07653 Compile fix w.r.t new CoordinateSystemNode. 2004-06-09 20:18:58 +00:00
Robert Osfield
65d0293778 Added options for controlling mipmapping and aniso-tropic filtering. 2004-06-08 13:58:36 +00:00
Robert Osfield
b5366cbda6 Added DataSet::s/getSkirtRatio() method to allow control of how deep to
make the skirts around tiles.
2004-06-02 14:15:08 +00:00
Robert Osfield
1a09763515 Removed Terrain.cpp and header from CVS repository.
Added support for setting the maximum visiable distance of top level
to osgTerrain::DataSet, and debugging code which insert a axes.osg
above each tile.
2004-05-06 10:59:08 +00:00
Robert Osfield
9db6e84d3d Cleaned up osgTerrain, renaming the Terrain and Renderer class to
HeightFieldNode and HeightFieldRender to better reflect their function.
Removed the GeoMipMapRenderer.cpp stub as the implemention will be left
to a plugin.  Added Version functions.
2004-05-03 20:42:58 +00:00
Robert Osfield
04798b4e63 Fixed compile error 2004-05-03 07:42:30 +00:00
Robert Osfield
fced94fab3 Added support for decoration of the osgTerrain::DataSet generated databases
with a CoordinateSystemNode which reflect the coordinate system of the
database.

Added support for reading and writing CoordianteSystemNode into the .osg
and .ive formats.
2004-05-02 21:50:15 +00:00
Robert Osfield
0ba2d26b1a Added Support for cluster culling.
Removed osgTerrain::CoordinateSystem which is now replaced by
osg::CoordinateSystemNode.
2004-04-29 22:22:22 +00:00
Robert Osfield
9ef61d83e0 Added extra parameter policy enum 2004-04-23 14:47:54 +00:00
Robert Osfield
6e854d04c7 Fixes from Per Månsson for Win32 build 2004-04-06 16:01:05 +00:00
Robert Osfield
01cbfd6715 Added local transform support. Fixed skirt generation to work during geocentric
transformations. Fixed output of image files so that compressed textures are
turned off when external image files are required.
2004-04-05 15:39:33 +00:00
Robert Osfield
398fa56bb4 Prelimary work on adding support for local tile transforms 2004-04-04 15:33:26 +00:00
Robert Osfield
dbc3dbc5fa Added scaling of the PagedLOD range to be relative to the radius of children. 2004-04-01 13:09:05 +00:00
Robert Osfield
9d2002f3c4 Added preliminary support for converting datasets into geocentric coords 2004-03-31 22:31:46 +00:00
Robert Osfield
b67858f388 Added osgTerrain::EllipsodeTransform helper class for converting to and from
lat, long, height to geocentric X,Y,Z and back.
2004-03-31 15:50:30 +00:00
Robert Osfield
663801c0c8 Clean up freeing of no longer required tiles 2004-03-31 09:20:46 +00:00
Robert Osfield
2f2030aba4 Fixed the boundary equalization 2004-03-30 21:13:08 +00:00
Robert Osfield
a1b46de936 Added normal generation in polygonal tile generation, and add --wtk option
for setting coord systems in osgdem
2004-03-29 22:26:51 +00:00
Robert Osfield
cad1e2a075 Groundwork for adding support for polygonal tiles 2004-03-29 10:45:58 +00:00
Robert Osfield
ec1fd733b8 Added TextureType and GeometryType parameters to DataSet. These will be used
to control what type of database is generated.
2004-03-21 12:17:44 +00:00
Robert Osfield
88bbdb325d Implemented support for overriding the coordinate system and geo transform
using in generate of databases.
2004-03-20 18:32:49 +00:00
Robert Osfield
e2e779bed7 Added support for generation of PagedLOD databases in osgTerrain::DataSet 2004-03-16 16:54:08 +00:00
Robert Osfield
84562208d0 Added support for controlling the type of destiation database to create into
osgTerrain::DataSet.
2004-03-15 15:47:22 +00:00