Giter VIP home page Giter VIP logo

metoceanviewer's Introduction

MetOceanViewer

Build Status Codacy Badge

Multipurpose tool for viewing hydrodynamic model data, such as ADCIRC, with a gui interface. The code is written in Qt C++ and is designed to run on Windows, Mac, and Linux systems.

Works with Windows, Mac, and Linux

Feature List

  • Access and view NOAA station data
  • Access and view USGS station data
  • Access and view NDBC archive station data
  • Create tide predictions using XTide
  • Access the CRMS database
  • Read ADCIRC fort.61 files (when accompanied by station file)
  • Read ADCIRC netCDF formatted files
  • Read/write IMEDS formatted data
  • Read/write generic netcdf formatted data
  • Read HWM comparisons, plot to map, and calculate statistics

Screenshots

Screenshot 1 Screenshot 2 Screenshot 3

Compiling

To compile this program, please use the Qt suite of tools. The MetOcean.pro file has been tested using QtCreator and Qt version 5.14.1 on Windows 10, Mac OSX 10.15.3 and Ubuntu Linux 18.04. It is expected that other versions and flavors of Linux should not pose an issue. Mac OSX is expected to work, however, some tweaks may be required. I don't currently have a development environment for Mac, so assistance with this would be appreciated.

Other versions of Qt that include the QtCharts library should work, but have not been tested.

netCDF

You will need to have netCDF version 4+ installed on your system with acccess to the headers and libraries. You may need to edit the netCDF path in MetOceanViewer.pro to correctly locate these files. When compiling for Windows, these libraries are already included in the package. However, Unix/Mac users will need to ensure they are in their LD_LIBRARY_PATH variable or configure the .pro file accordingly.

MapBox

An interface to using MapBox based maps is provided. Use the Options menu to enter your MapBox API key, which can be obtained for free from their website.

CRMS

Louisiana's Coastwide Reference Monitoring System provides an excellent resource for water level and water quality data. This data is processed weekly from a provided text file into netCDF and posted here. The processed database can be re-downloaded each week when it is updated.

Credits

The following external libraries/APIs are used in this software

Package Source
Qt http://www.qt.io
NOAA CO-OPS API http://tidesandcurrents.noaa.gov
USGS Waterdata API http://waterdata.usgs.gov
XTide http://www.flaterco.com/xtide/
CRMS https://lacoast.gov/crms/
NDBC https://www.ndbc.noaa.gov/
MapBox https://www.mapbox.com/
netCDF v4.3.3 http://www.unidata.ucar.edu/software/netcdf)
zlib v1.2.8 http://www.zlib.net
OpenSSL v1.1.1d https://www.openssl.org/
EzProj http://github.com/zcobell/EzProj

License

This program conforms to the GNU GPL, Version 3.

metoceanviewer's People

Contributors

zcobell avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  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

metoceanviewer's Issues

Add proj4 library

Add the proj4 library so locations can be displayed for models not run in geographic coordinates

Add NEFIS library

Add the NEFIS library to the code so that it can use Delft3D model output directly

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.