{ "metadata": { "name": "UGrid" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "code", "collapsed": false, "input": [ "# see also: U groups\n", "# https://groups.google.com/forum/#!forum/ugrid-interoperability\n", "# https://groups.google.com/forum/#!topic/ugrid-interoperability/IIFRDFsKgJM\n", "filename = '/Users/fedorbaart/Documents/checkouts/cases_unstruc/e00_unstruc/f03_advection/c020_Waalgrof/input/WAALGROF_net.nc'\n", "filename = '/Users/fedorbaart/Downloads/wa01/r07e_net.nc'" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, { "cell_type": "code", "collapsed": false, "input": [ "import netCDF4\n", "import numpy as np\n", "import ogr\n", "import osr\n", "from openearthtools.io.dflowfm import UGrid\n", "import vtk\n", "import matplotlib.collections" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 2 }, { "cell_type": "code", "collapsed": false, "input": [ "grid = UGrid.fromfile(filename)\n", "cellcoords = [xy[:,:2] for xy in grid.cellcoords()]" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 3 }, { "cell_type": "code", "collapsed": false, "input": [ "fig, ax = plt.subplots(1,1)\n", "ax.plot(grid.netnodex ,grid.netnodey,'k.')\n", "cells = matplotlib.collections.PolyCollection(cellcoords)\n", "ax.add_collection(cells)\n", "ax.autoscale()\n", "#ax.set_ylim(4185000, 4190000)\n", "#ax.set_xlim(560000, 562000)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "display_data", "png": "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\nBAKBQKAY/w+VNjfsl9C/GAAAAABJRU5ErkJggg==\n" } ], "prompt_number": 13 }, { "cell_type": "code", "collapsed": false, "input": [ "matplotlib.patches.Path(cellcoords[0])" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "pyout", "prompt_number": 12, "text": [ "Path([[ 588382.34579639 4146837.08261736]\n", " [ 588179.10402848 4146946.61715301]\n", " [ 587962.15356973 4146530.43471492]\n", " [ 588167.9561072 4146418.70843193]], None)" ] } ], "prompt_number": 12 }, { "cell_type": "code", "collapsed": false, "input": [ "grid = UGrid.fromfile(filename)\n", "# add the coordinate of the orgin\n", "\n", "# The coordinates are in some local system... Let's shift to RD\n", "rd = osr.SpatialReference()\n", "rd.ImportFromEPSG(28992)\n", "wgs = osr.SpatialReference()\n", "wgs.ImportFromEPSG(4326)\n", "transform = osr.CoordinateTransformation(wgs,rd)\n", "\n", "lat, lon = (51.802458, 5.35)\n", "\n", "x,y,z = transform.TransformPoint(lon,lat)\n", "x0, y0 = grid.netnodex[np.argmin(grid.netnodey)] , grid.netnodey[np.argmin(grid.netnodey)] \n", "xt, yt = x-x0, y-y0\n", "print xt, yt, x0, y0, x,y, np.argmin(grid.netnodey)\n", "\n", "grid.netnodex += xt\n", "grid.netnodey += yt\n", "# transform to latlon\n", "transform = osr.CoordinateTransformation(rd, wgs)\n", "lonlats = np.array(transform.TransformPoints(np.c_[grid.netnodex, grid.netnodey]))\n", "grid.netnodex, grid.netnodey = lonlats[:,:2].T\n", "\n", "grid.cellcoords()\n", "with open('grid.json', 'w') as f:\n", " f.write(grid.export())\n", "#grid.export(drivername='GeoJSON', filename='gridogr.json')\n", "\n" ], "language": "python", "metadata": {}, "outputs": [ { "ename": "KeyboardInterrupt", "evalue": "", "output_type": "pyerr", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 25\u001b[0m \u001b[0mgrid\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcellcoords\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 26\u001b[0m \u001b[0;32mwith\u001b[0m \u001b[0mopen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'grid.json'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'w'\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0mf\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 27\u001b[0;31m \u001b[0mf\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mwrite\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mgrid\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mexport\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 28\u001b[0m \u001b[0;31m#grid.export(drivername='GeoJSON', filename='gridogr.json')\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 29\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/Users/fedorbaart/Documents/checkouts/openearthtools/python/OpenEarthTools/openearthtools/io/dflowfm/__init__.pyc\u001b[0m in \u001b[0;36mexport\u001b[0;34m(self, drivername, filename, epsg)\u001b[0m\n\u001b[1;32m 90\u001b[0m \u001b[0mdatasource\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mSyncToDisk\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 91\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mdrivername\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m'Memory'\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 92\u001b[0;31m \u001b[0mfeaturestr\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m\",\\n\"\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mjoin\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mlayer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mGetFeature\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mExportToJson\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mi\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mrange\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlayer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mGetFeatureCount\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 93\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0;34m'{ \"type\": \"FeatureCollection\",\\n\"features\": [\\n%s\\n] }'\u001b[0m \u001b[0;34m%\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mfeaturestr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 94\u001b[0m \u001b[0mdatasource\u001b[0m\u001b[0;34m=\u001b[0m \u001b[0mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/osgeo/ogr.pyc\u001b[0m in \u001b[0;36mExportToJson\u001b[0;34m(self, as_object, options)\u001b[0m\n\u001b[1;32m 2870\u001b[0m \u001b[0moptions\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2871\u001b[0m \u001b[0mgeom_json_string\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mgeom\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mExportToJson\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0moptions\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0moptions\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2872\u001b[0;31m \u001b[0mgeom_json_object\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0msimplejson\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mloads\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mgeom_json_string\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2873\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2874\u001b[0m \u001b[0mgeom_json_object\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/Users/fedorbaart/.virtualenvs/main/lib/python2.7/site-packages/simplejson/__init__.pyc\u001b[0m in \u001b[0;36mloads\u001b[0;34m(s, encoding, cls, object_hook, parse_float, parse_int, parse_constant, object_pairs_hook, use_decimal, **kw)\u001b[0m\n\u001b[1;32m 383\u001b[0m \u001b[0mparse_constant\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0mNone\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0mobject_pairs_hook\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 384\u001b[0m and not use_decimal and not kw):\n\u001b[0;32m--> 385\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0m_default_decoder\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdecode\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 386\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mcls\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 387\u001b[0m \u001b[0mcls\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mJSONDecoder\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/Users/fedorbaart/.virtualenvs/main/lib/python2.7/site-packages/simplejson/decoder.pyc\u001b[0m in \u001b[0;36mdecode\u001b[0;34m(self, s, _w)\u001b[0m\n\u001b[1;32m 400\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 401\u001b[0m \"\"\"\n\u001b[0;32m--> 402\u001b[0;31m \u001b[0mobj\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mend\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mraw_decode\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0midx\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0m_w\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m0\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mend\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 403\u001b[0m \u001b[0mend\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0m_w\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mend\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mend\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 404\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mend\u001b[0m \u001b[0;34m!=\u001b[0m \u001b[0mlen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/Users/fedorbaart/.virtualenvs/main/lib/python2.7/site-packages/simplejson/decoder.pyc\u001b[0m in \u001b[0;36mraw_decode\u001b[0;34m(self, s, idx)\u001b[0m\n\u001b[1;32m 416\u001b[0m \"\"\"\n\u001b[1;32m 417\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 418\u001b[0;31m \u001b[0mobj\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mend\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mscan_once\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0midx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 419\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mStopIteration\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 420\u001b[0m \u001b[0;32mraise\u001b[0m \u001b[0mJSONDecodeError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"No JSON object could be decoded\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0ms\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0midx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mKeyboardInterrupt\u001b[0m: " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "-373826.25987 -3720574.19302 526260.259795 4144332.78163 152433.999924 423758.588615 63898\n" ] } ], "prompt_number": 8 }, { "cell_type": "code", "collapsed": false, "input": [ "#triang = matplotlib.tri.Triangulation(grid.netnodex, grid.netnodey)\n", "grid.netnodex.shape" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "pyout", "prompt_number": 40, "text": [ "(77521,)" ] } ], "prompt_number": 40 }, { "cell_type": "code", "collapsed": false, "input": [ "fig, ax = plt.subplots(1,1)\n", "ax.add_collection(matplotlib.collections.PolyCollection([xyz[:,:2] for xyz in grid.cellcoords()]))\n", "ax.autoscale()\n", "\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "display_data", "png": "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\nRK5CYII=\n" } ], "prompt_number": 51 }, { "cell_type": "code", "collapsed": false, "input": [ "for i in range(ogr.GetDriverCount()):\n", " driver = ogr.GetDriver(i)\n", " print(driver.GetName())\n", " " ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "ESRI Shapefile\n", "MapInfo File\n", "UK .NTF\n", "SDTS\n", "TIGER\n", "S57\n", "DGN\n", "VRT\n", "REC\n", "Memory\n", "BNA\n", "CSV\n", "GML\n", "GPX\n", "KML\n", "GeoJSON\n", "GMT\n", "PCIDSK\n", "XPlane\n", "AVCBin\n", "AVCE00\n", "DXF\n", "Geoconcept\n", "GeoRSS\n", "GPSTrackMaker\n", "VFK\n", "PGDump\n", "GPSBabel\n", "SUA\n", "OpenAir\n", "PDS\n", "WFS\n", "HTF\n", "AeronavFAA\n", "EDIGEO\n", "GFT\n", "SVG\n", "CouchDB\n", "Idrisi\n", "ARCGEN\n", "SEGUKOOA\n", "SEGY\n" ] } ], "prompt_number": 45 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 138 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }