Hi Lionel,

The readsome() returns if data isn't available yet, it doesn't wait
like read.  You could try changing the code across to using read() and
gcount() to find out how many bytes have been read.

What platform are you working on?

Robert.

On Tue, Oct 28, 2008 at 3:00 PM, Lionel Lagarde <[EMAIL PROTECTED]> wrote:
> Curiously, the readsome function fail to read data (return value is 0),
> but fin.eof() returns false.
>
> I've tried to loop until some data are read but it does not work :
>
> do {
>   strm.avail_in = fin.readsome((char*)in, CHUNK);
> while (strm.avail_in == 0 && !fin.eof());
>
> It is an infinite loop.
>
>
> The behavior is the same using a local file. Maybe my zlib doesn't work.
>
>
>
> Lionel Lagarde wrote:
>>
>> The ive plugin is built with zlib support.
>>
>> There is a problem in the uncompress loop. The earth.ive size is 14976
>> bytes.
>> In the loop, the first read:
>>
>> strm.avail_in = fin.readsome((char*)in, CHUNK);
>>
>> reports me 12427 bytes read and the second 0 bytes.
>>
>> Continuing investigation.
>>
>> John Vidar Larring wrote:
>>>
>>> Hi Robert,
>>>
>>> After compiling OSG svn trunk (linux 64bit), the following commands
>>> worked like charm:
>>>
>>> > wget http://www.openscenegraph.org/data/earth_bayarea/bay.path
>>> > osgviewer http://www.openscenegraph.org/data/earth_bayarea/earth.ive -p
>>> > bay.path --file-cache MyFileCache
>>>
>>> The second time I ran the viewer, it was obvious that the file cache was
>>> being used.
>>>
>>> Great features!
>>> / John
>>>
>>> Robert Osfield wrote:
>>>>
>>>> Hi All,
>>>>
>>>> Last night I uploaded a 547Mb paged database to openscenegraph.org.
>>>> The .ive files are all generated using zlib compression that is built
>>>> into the svn/trunk version of the OSG, you won't be able to load them
>>>> with any prior version of the OSG I'm afraid as the compression
>>>> support has just been introduced.  To view the database you can use:
>>>>
>>>>  osgviewer http://www.openscenegraph.org/data/earth_bayarea/earth.ive
>>>>
>>>>
>>>> The database I generated with the svn/trunk version of
>>>> VirtualPlanetBuilder, using options to generate the compressed data,
>>>> to use non power of two textures for the highest res tiles, and
>>>> disabled mipmapping.   These options all work to minimize the tile
>>>> sizes which in turn means that the data is better suited for streaming
>>>> over http.
>>>>
>>>> The data itself is composed of the Nasa blue marble 1km data, with
>>>> high res insert in the bay area of california.  You should be able to
>>>> find the Don Burn's local hang gliding hill that the osghangglide
>>>> example is based on, which in turn was the original inspiration for
>>>> the whole OpenSceneGraph odyssey.  To help find this little insert
>>>> I've uploaded an animation path:
>>>>
>>>>    http://www.openscenegraph.org/data/earth_bayarea/bay.path
>>>>
>>>> Grab this then run osgviewer with the path:
>>>>
>>>>    osgviewer http://www.openscenegraph.org/data/earth_bayarea/earth.ive
>>>> -p bay.path
>>>>
>>>> This will set up an AnimationPathManipulator that zooms you into the
>>>> high res insert, and then around the globe.  Pressing '4' will take
>>>> you to the TerrainManipulator so you can then start exploring
>>>> manually, pressing '5' will take you back to the animation path.
>>>>
>>>> The next little thing your can try is to populate a local file cache,
>>>> so the next time you load up the data you can pick up on locally cache
>>>> files rather than hitting the server.
>>>>
>>>>    osgviewer http://www.openscenegraph.org/data/earth_bayarea/earth.ive
>>>> --file-cache MyFileCache
>>>>
>>>> Or via an env var:
>>>>
>>>>    export OSG_FILE_CACHE = /home/me/Data/MyFileCache  # change to
>>>> setenv or set for your system...
>>>>    osgviewer http://www.openscenegraph.org/data/earth_bayarea/earth.ive
>>>>
>>>> Now this dataset is really a tiny one compared to what
>>>> VirtualPlanetBuilder is capable of building, one I routinely test
>>>> against is 20,000 times bigger, alas the data isn't public so you'll
>>>> just have to find your own data and build your databases for such a
>>>> Terrabyte database.  All the tools are there for you, you just need to
>>>> add the data.  In terms of runtime need to view the bigger datasets
>>>> there are no differences, osgviewer works for all of them equally.
>>>>
>>>> Have fun.
>>>>
>>>> Robert.
>>>> _______________________________________________
>>>> 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
>>
> _______________________________________________
> 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

Reply via email to