How do I connect to a local elevation server?

时间:2023-03-09 16:03:13
How do I connect to a local elevation server?

How do I connect to a local elevation server?

brett
Reply | Threaded | More How do I connect to a local elevation server?   How do I connect to a local elevation server?
Mar 18, 2009; 10:02pm

How do I connect to a local elevation server?

 
Hi,

Since I was having problems using public elevation servers I created one of our own using arcgis. First I generated some tiffs and used gdal to get elevation up and running. This .earth file works and I see elevation just fine. (Elev1.tif is a heightfield).

<map name="test" type="geocentric">

<profile>global-geodetic</profile>
        
    <image name="world1" driver="gdal">
        <url>../../data/Terrain/world/world1.tif</url>
        <tile_size>256</tile_size>
    </image>

<heightfield name="world1" driver="gdal">
        <url>../../data/Terrain/world/Elev1.tif</url>
        <tile_size>16</tile_size>
    </heightfield>
        
</map>

Next, I tried to connect to the server itself but can't seem to get the .earth file right....

<map name="test" type="geocentric">

<heightfield name="world1" driver="wms">
        <url>http://gems2/ArcGIS/services/Elevation/MapServer/WMSServer</url>
        <format>tiff</format>
    </heightfield>
        
</map>

I'm seeing the following errors printed out...

TIFF loader: Error opening file 
TIFF loader: Error opening file 
TIFF loader: Error opening file 
TIFF loader: Error opening file 
Couldn't get tile for 0_0_0 
TIFF loader: Error opening file 
TIFF loader: Error opening file 
TIFF loader: Error opening file 
TIFF loader: Error opening file 
Couldn't get tile for 0_1_0

Thoughts?

Thanks, 
Brett

How do I connect to a local elevation server? jasonbeverage
Reply | Threaded | More How do I connect to a local elevation server?   How do I connect to a local elevation server?
Mar 18, 2009; 10:23pm

Re: How do I connect to a local elevation server?

 
Hi Brett,

For the WMS driver to work, you need to specify the layers from the WMS to query.  So if your elevation layer is called "elevation" then you need to add:
<layers>elevation</layers>
to your heightfield element to work correctly.

You can see an example of this at:  http://wush.net/trac/osgearth/wiki/TileSourcePluginWMS

Let us know how it goes!

Thanks!

Jason

On Wed, Mar 18, 2009 at 10:02 AM, brett (via Nabble) - No Reply <[hidden email]> wrote:

Hi,

Since I was having problems using public elevation servers I created one of our own using arcgis. First I generated some tiffs and used gdal to get elevation up and running. This .earth file works and I see elevation just fine. (Elev1.tif is a heightfield).

<map name="test" type="geocentric">

<profile>global-geodetic</profile> 
        
    <image name="world1" driver="gdal"> 
        <url>../../data/Terrain/world/world1.tif</url> 
        <tile_size>256</tile_size> 
    </image>

<heightfield name="world1" driver="gdal"> 
        <url>../../data/Terrain/world/Elev1.tif</url> 
        <tile_size>16</tile_size> 
    </heightfield> 
        
</map>

Next, I tried to connect to the server itself but can't seem to get the .earth file right....

<map name="test" type="geocentric">

<heightfield name="world1" driver="wms"> 
        <url>http://gems2/ArcGIS/services/Elevation/MapServer/WMSServer</url> 
        <format>tiff</format> 
    </heightfield> 
        
</map>

I'm seeing the following errors printed out...

TIFF loader: Error opening file 
TIFF loader: Error opening file 
TIFF loader: Error opening file 
TIFF loader: Error opening file 
Couldn't get tile for 0_0_0 
TIFF loader: Error opening file 
TIFF loader: Error opening file 
TIFF loader: Error opening file 
TIFF loader: Error opening file 
Couldn't get tile for 0_1_0

Thoughts?

Thanks, 
Brett


View message @ http://n2.nabble.com/How-do-I-connect-to-a-local-elevation-server--tp2497311p2497311.html 
To start a new topic under osgEarth, email [hidden email] 
To unsubscribe from osgEarth, click here.
How do I connect to a local elevation server? jasonbeverage
Reply | Threaded | More How do I connect to a local elevation server?   How do I connect to a local elevation server?
Mar 18, 2009; 10:25pm

Re: How do I connect to a local elevation server?

 
In reply to this post by brett
Hi Brett,

Forgot to mention, for the WMS elevation, you'll probably also want add a <tile_size>16</tile_size> to keep the keep the terrain tile sizes reasonable.

Thanks!

Jason

On Wed, Mar 18, 2009 at 10:23 AM, Jason Beverage <[hidden email]> wrote:

Hi Brett,

For the WMS driver to work, you need to specify the layers from the WMS to query.  So if your elevation layer is called "elevation" then you need to add:
<layers>elevation</layers>
to your heightfield element to work correctly.

You can see an example of this at:  http://wush.net/trac/osgearth/wiki/TileSourcePluginWMS

Let us know how it goes!

Thanks!

Jason

On Wed, Mar 18, 2009 at 10:02 AM, brett (via Nabble) - No Reply <[hidden email]> wrote:

Hi,

Since I was having problems using public elevation servers I created one of our own using arcgis. First I generated some tiffs and used gdal to get elevation up and running. This .earth file works and I see elevation just fine. (Elev1.tif is a heightfield).

<map name="test" type="geocentric">

<profile>global-geodetic</profile> 
        
    <image name="world1" driver="gdal"> 
        <url>../../data/Terrain/world/world1.tif</url> 
        <tile_size>256</tile_size> 
    </image>

<heightfield name="world1" driver="gdal"> 
        <url>../../data/Terrain/world/Elev1.tif</url> 
        <tile_size>16</tile_size> 
    </heightfield> 
        
</map>

Next, I tried to connect to the server itself but can't seem to get the .earth file right....

<map name="test" type="geocentric">

<heightfield name="world1" driver="wms"> 
        <url>http://gems2/ArcGIS/services/Elevation/MapServer/WMSServer</url> 
        <format>tiff</format> 
    </heightfield> 
        
</map>

I'm seeing the following errors printed out...

TIFF loader: Error opening file 
TIFF loader: Error opening file 
TIFF loader: Error opening file 
TIFF loader: Error opening file 
Couldn't get tile for 0_0_0 
TIFF loader: Error opening file 
TIFF loader: Error opening file 
TIFF loader: Error opening file 
TIFF loader: Error opening file 
Couldn't get tile for 0_1_0

Thoughts?

Thanks, 
Brett


View message @ http://n2.nabble.com/How-do-I-connect-to-a-local-elevation-server--tp2497311p2497311.html 
To start a new topic under osgEarth, email [hidden email] 
To unsubscribe from osgEarth, click here.
How do I connect to a local elevation server? brett
Reply | Threaded | More How do I connect to a local elevation server?   How do I connect to a local elevation server?
Mar 19, 2009; 5:26am

Re: How do I connect to a local elevation server?

 
In reply to this post by brett
Jason,

OK, thanks. One step forward... My map file now uses the heightfield as imagery so I can easily find the areas with big elevations.

<map name="test" type="geocentric">

<image name="vmap0" driver="wms">
       <url>http://XXXXX/ArcGIS/services/Elevation/MapServer/WMSServer</url>
       <layers>0</layers>
       <format>png</format>
       <tile_size>256</tile_size>
   </image>

<heightfield name="world1" driver="wms">
        <url>http://XXXXX/ArcGIS/services/Elevation/MapServer/WMSServer</url>    
        <layers>0</layers>  
        <format>tiff</format>
        <tile_size>16</tile_size>
    </heightfield>
        
</map>

When I run this I see no elevation neither with osgviewer. Because I see elevation when I connect to the pelican server (except those rare cases when the nextwork gives me trouble) I believe this to be a configuration problem with my .earth file or wms server.

Anyway to tell?

Thanks, 
Brett

How do I connect to a local elevation server? gwaldron
Reply | Threaded | More How do I connect to a local elevation server?   How do I connect to a local elevation server?
Mar 19, 2009; 5:49am

Re: How do I connect to a local elevation server?

How do I connect to a local elevation server?
Brett, can you post your WMS capabilities XML? thanks

http://XXXXX/ArcGIS/services/Elevation/MapServer/WMSServer?request=GetCapabilities

Glenn Waldron / Pelican Mapping / @glennwaldron
How do I connect to a local elevation server? brett
Reply | Threaded | More How do I connect to a local elevation server?   How do I connect to a local elevation server?
Mar 19, 2009; 8:28pm

Re: How do I connect to a local elevation server?

 
Hey Glenn,

Here are the WMS server capabilities: 
<?xml version="1.0" encoding="UTF-8"?> 
<WMS_Capabilities version="1.3.0" 
xmlns="http://www.opengis.net/wms"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.opengis.net/wms http://schemas.opengis.net/wms/1.3.0/capabilities_1_3_0.xsd">
  <Service>
    <Name>WMS</Name>
    <Title>Elevation</Title>
    <Abstract>WMS</Abstract>
    <KeywordList><Keyword></Keyword></KeywordList>
    <OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:type="simple" xlink:href="http://gems2/ArcGIS/services/Elevation/MapServer/WMSServer"/>

<ContactInformation>
      <ContactPersonPrimary>
        <ContactPerson></ContactPerson>
        <ContactOrganization></ContactOrganization>
      </ContactPersonPrimary>
      <ContactPosition></ContactPosition>
      <ContactAddress>
        <AddressType></AddressType>
        <Address></Address>

<City></City>
        <StateOrProvince></StateOrProvince>
        <PostCode></PostCode>
        <Country></Country>
      </ContactAddress>
      <ContactVoiceTelephone></ContactVoiceTelephone>
      <ContactFacsimileTelephone></ContactFacsimileTelephone>
      <ContactElectronicMailAddress></ContactElectronicMailAddress>
    </ContactInformation>

<Fees></Fees>
    <AccessConstraints></AccessConstraints>
    <MaxWidth>2048</MaxWidth>
    <MaxHeight>2048</MaxHeight>
  </Service>
  <Capability>
    <Request>
      <GetCapabilities>

<Format>application/vnd.ogc.wms_xml</Format>
        <Format>text/xml</Format>
        <DCPType>
          <HTTP><Get><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:type="simple" xlink:href="http://gems2/ArcGIS/services/Elevation/MapServer/WMSServer"/></Get></HTTP>
        </DCPType>
      </GetCapabilities>
      <GetMap>
        <Format>image/bmp</Format>

<Format>image/jpeg</Format>
        <Format>image/tiff</Format>
        <Format>image/png</Format>
        <Format>image/gif</Format>
        <Format>image/svg+xml</Format>
        <DCPType>

<HTTP><Get><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:type="simple" xlink:href="http://gems2/ArcGIS/services/Elevation/MapServer/WMSServer"/></Get></HTTP>
        </DCPType>
      </GetMap>
      <GetFeatureInfo>
        <Format>application/vnd.ogc.wms_xml</Format>
        <Format>text/xml</Format>
        <Format>text/html</Format>

<Format>text/plain</Format>
        <DCPType>
          <HTTP><Get><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:type="simple" xlink:href="http://gems2/ArcGIS/services/Elevation/MapServer/WMSServer"/></Get></HTTP>
        </DCPType>
      </GetFeatureInfo>
    </Request>
    <Exception>
      <Format>application/vnd.ogc.se_xml</Format>

<Format>application/vnd.ogc.se_inimage</Format>
      <Format>application/vnd.ogc.se_blank</Format>
      <Format>text/xml</Format>
      <Format>XML</Format>
    </Exception>
    <Layer>
    <Title>Layers</Title>

<CRS>CRS:84</CRS>
    <CRS>EPSG:4326</CRS>
    <EX_GeographicBoundingBox>
      <westBoundLongitude>-198.000002</westBoundLongitude>
      <eastBoundLongitude>198.000019</eastBoundLongitude>
      <southBoundLatitude>-99.000002</southBoundLatitude>

<northBoundLatitude>99.000009</northBoundLatitude>
    </EX_GeographicBoundingBox>
    <BoundingBox CRS="CRS:84" minx="-198.000002" miny="-99.000002" maxx="198.000019" maxy="99.000009"/>
    <BoundingBox CRS="EPSG:4326" minx="-99.000002" miny="-198.000002" maxx="99.000009" maxy="198.000019"/>
      <Layer>
        <Name>0</Name>
        <Title>con_isnull_g1</Title>

<Abstract>con_isnull_g1</Abstract>
        <CRS>CRS:84</CRS>
        <CRS>EPSG:4326</CRS>
        <EX_GeographicBoundingBox>
          <westBoundLongitude>-180.000001</westBoundLongitude>
          <eastBoundLongitude>180.000018</eastBoundLongitude>

<southBoundLatitude>-90.000001</southBoundLatitude>
          <northBoundLatitude>90.000008</northBoundLatitude>
        </EX_GeographicBoundingBox>
        <BoundingBox CRS="CRS:84" minx="-180.000001" miny="-90.000001" maxx="180.000018" maxy="90.000008"/>
        <BoundingBox CRS="EPSG:4326" minx="-90.000001" miny="-180.000001" maxx="90.000008" maxy="180.000018"/>
        <Style> <Name>default</Name> <Title>con_isnull_g1</Title> <LegendURL width="100" height="97"> <Format>image/png</Format> <OnlineResource xlink:href="http://gems2/arcgisoutput/Elevation_MapServer/wms/default0.png" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink" /> </LegendURL> </Style>      </Layer>
    </Layer>

</Capability>
</WMS_Capabilities>

Does this tell you anything useful?

Thanks, 
Brett

How do I connect to a local elevation server? gwaldron
Reply | Threaded | More How do I connect to a local elevation server?   How do I connect to a local elevation server?
Mar 19, 2009; 8:56pm

Re: How do I connect to a local elevation server?

 
Brett,

This might be an ArcGIS Server issue. I ran a test, adding some 1-channel 32-bit float SRTM data to an MXD and publishing as a Map service. The resulting TIFFs are RGB 3-channel, not 1-channel. In other words, AGS rendered the elevation data to a regular image, making it useless to osgEarth.

(Side note: in MapServer, the open source WMS server, you can explicitly configure the output formats and achieve the desired effect.)

I don't see a way offhand to configure AGS to do this. An alternative would be to publish the layer as a WCS service (which provides raw access to the source data). However ... the osgEarth WCS driver is not mature yet and will probably require some addition work on our end.