Giter Club home page Giter Club logo

sci-wms's Introduction

#SCI-WMS

###Python Web Mapping Service (WMS) for visualizing geospatial data

SCI-WMS has moved to a GitHub community organziation

https://github.com/sci-wms/sci-wms

this repo is only online for the GitHub pages gh-pages referencing the comt branch

sci-wms's People

Contributors

acrosby avatar bolkhovsky avatar brandonmayer avatar brianmckenna avatar daf avatar dstuebe avatar kwilcox avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sci-wms's Issues

Add available GFI output formats to GetCapabilities

Current:

<GetFeatureInfo>
  <Format>image/png</Format>
  <DCPType>
    <HTTP>
      <Get>
        <OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://wms.glos.us/wms/ontario_fcfmrc_2d/?" xlink:type="simple"/>
      </Get>
    </HTTP>
  </DCPType>
</GetFeatureInfo>

pseudocolor plot is being masked weirdly for cell values

pseudocolor plot is being masked weirdly for cell values since there is no ability to specify the topology. masking is based on a shapely dissolve of the grid/topology but there are some problems with islands/ inner rings and similar features.

Better handling of automated topology updating,

so clients and users don't notice that something is happening behind the scenes. Using a separate (parallelpython) process to update the topology netcdf file at the moment, but it happens on wms request, so if the file is out of date, and the user is requesting the dataset that is being updated there is some time to wait untill the response returns.

Problems rendering global datasets

  1. There is a problem when a request crosses both the 0 and 180 lines for a given single image (only half is rendered to the response image)

  2. There is a problem when an image is requested that goes all the way around the world and overlaps on the other side. (This may not be solveable elegantly, temp solution is to limit the width that a user can browse in a client.)

kick your jsonp gfi responses up a notch by making them geojson(p)

Stuff what you are already shipping into the the 'properties' attr, and you should be set.

FREDSFUNCTION(
  { "type": "Feature",
    "geometry": {
      "type": "Point",
      "coordinates": [100.0, 0.0]
     },
    "properties": {
      { "vc": { "units": "m/s", "values": [ NaN ] }, "uc": { "units": "m/s", "values": [ NaN ] }, "time": { "units": "iso", "values": [ "20120906T000000Z" ] } }
     }
  .}
)

See here for an example, http://www.geojson.org/geojson-spec.html#id2.

contours are convex hulls for cell values

contours are convex hulls for cell values since we are not able to specify the topology in those plots for cell positioned values. will want to mask with whatever the final solution is pcolor too..

add elevation to getcaps

The elevation info should look a lot like the time info you are already passing. Here is a sample from the OGC spec.

   <Layer> …
   <!-- Specify extent of Layer. Extents are inherited by enclosed Layers. -->
   <Extent name="time" default="2000-10-17">1996-01-01/2000-10-17/P1D</Extent>
   <Extent name="elevation" default="0">0/10000/100</Extent>
   <Extent name="temperature" default="300">230,300,400</Extent>
   </Layer>

serve out getfeatureinfo as jsonp

I'm jotting this issue down so that I don't forget. In theory, if you spit out GFI's in jsonp, I wouldn't have to proxy the request from the javascript client. This would help for the standalone (NHC inundation) viewer.

My homework is to make sure that jsonp would work. Then we can figure out the optimal format.

add units to getcaps (layer level)

Not having this is not a deal-breaker, but it would be nice.

The optional element is used in Capabilities XML to declare that one or more dimensional parameters are relevant to the information holdings of that server. The Dimension element does not provide valid values for a Dimension; that is the role of the Extent element described below. A Dimension element includes a required name, a required measurement units specifier, and an optional unitSymbol.

EXAMPLES: The following are some examples of server-defined dimensions:

<Dimension name="wavelength" units="Angstrom" unitSymbol="Ao" />
<Dimension name="temperature" units="Kelvin" unitSymbol="K" />
<Dimension name="pressure_scale_height" units="millibar" unitSymbol="km" />

Dimension elements shall comply with the following rules:

  • Dimension name values shall be case-insensitively unique within a service instance and should contain no whitespace.
  • Unit names and abbreviations are from the Unified Code for Units of Measure [UCUM]. The required units attribute is from the UCUM "name" column. The optional (but recommended) unitSymbol is from the UCUM "c/s" column (casesensitive abbreviation). Prefix names and symbols may be present as well.

Exception Value: database is locked

I'm trying to set up wms on different computer, but I keep getting this error. I'm not sure how to fix this error.

try to use: (not working)
$ chmod 666 wms.db

settings.py

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
'NAME': os.path.join(os.path.dirname(file),"../",'wms.db'), # Or path to database file if using sqlite3.
'USER': '', # Not used with sqlite3.
'PASSWORD': '', # Not used with sqlite3.
'HOST': '', # Set to empty string for localhost. Not used with sqlite3.
'PORT': '', # Set to empty string for default. Not used with sqlite3.
'OPTIONS': { #I add here
'timeout': 20, # and here
} # and here
}
}

Issue with edges of images

The bottom row and right column of pixels in the images (noticed in tiles) are gone (and transparent) in the images being served from the UMASSD SMAST instance (but not the dev instance at ASA).

May be a basemap/matplotlib issue? Will upgrade dev matplotlib/basemap and see if anything changes.

Web interface to configuration/datasets

Use the django built-in admin interface and database for web configuration of wms server and datasets. (Replace or work in conjunction with the "server_local_config.py" file.

This portion:

# Please edit the following parameters to setup your pywms
# server.
# 
# Example:
#
#  localhostip = "mydomain.org:8080"
# 
#  datasetpath = {
#                  'fvcom', "http://dapserver/thredds/dodsC/my_fvcom",
#                  'adcirc', "http://dapserver/thredds/dodsC/my_adcirc",
#                  'ike', "http://dapserver/thredds/dodsC/inundation_ike",
#                }
#---------------------------------------------------------

localhostip = "192.168.100.146:7000" # the ip or domain and port
                                     # that you are trying to bind
                                     # the service to
                                     # this is used for the "wmstest" page

# Where are the datasets that you want to serve?
datasetpath = {
    '30yr_gom3':"http://www.smast.umassd.edu:8080/thredds/dodsC/fvcom/hindcasts/30yr_gom3",

    # "dataset_id":"path or OpenDAP endpoint",
    # "dataset_id2":"path or OpenDAP endpoint",
    # "dataset_id3":"path or OpenDAP endpoint",
    }

#---------------------------------------------------------

getLegendGraphic color limits problems

Issue setting color limits with certain combinations for min/max values. Perhaps something to do with the scale of the colorbargraphic and the size of the axes we are stuffing it into....

Vector styles not working with GLERL POM

[2012-12-14 09:01:30,441] - <> - |Status 500 Error: ['Traceback (most recent call last):\n', ' File "/home/wms/sci-wms/src/pywms/wms/views.py", line 121, in wms\n response = fvDo(action_request, dataset, logger)\n', ' File "/home/wms/sci-wms/src/pywms/wms/views.py", line 1106, in fvDo\n cmap = colormap)\n', ' File "/home/wms/sci-wms/src/pywms/wms/cgrid.py", line 98, in plot\n vectors(lon, lat, var1, var2, mag, ax, norm, cmap, magnitude)\n', ' File "/home/wms/sci-wms/src/pywms/wms/cgrid.py", line 141, in vectors\n scale_units='inches',\n', ' File "/home/wms/.virtualenvs/sciwms/lib/python2.7/site-packages/matplotlib/axes.py", line 6299, in quiver\n q = mquiver.Quiver(self, _args, *_kw)\n', ' File "/home/wms/.virtualenvs/sciwms/lib/python2.7/site-packages/matplotlib/quiver.py", line 393, in init\n X, Y, U, V, C = _parse_args(*args)\n', ' File "/home/wms/.virtualenvs/sciwms/lib/python2.7/site-packages/matplotlib/quiver.py", line 356, in _parse_args\n nr, nc = U.shape\n', 'ValueError: too many values to unpack\n']

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.