Line 1: |
Line 1: |
− | The {{Forge|mapping|mapping package}} is part of the octave-forge project. | + | The {{Forge|mapping|mapping package}} is part of the Octave Forge project. |
| | | |
| == Development == | | == Development == |
| + | === Roadmap === |
| | | |
| + | Targets for next mapping package releases: |
| + | * Add rasterwrite.m (complementary to rasterread). Please contact package maintainer, there's already a C++ skeleton. |
| + | * Maybe add wrapper functions around rasterread and rasterwrite (for e.g., geotiff, ASCII grid, etc.). |
| + | * Add more options to mapshow. |
| + | * Implement support for projections. I (current mapping pkg maintainer) have little need nor much experience with this subject => help welcome! BTW there's an OF proj package that offers some of the functionality. |
| + | * Add geodesy functions. Patches have been submitted but not yet integrated (marked [7] in list below). A suggested roadmap would be to integrate Felipe Nievinsky's geodesy toolbox as an upstream dependency but that toolbox needs documentation work. |
| + | |
| + | Several functions in the current mapping package release (1.2.1) haven't had much testing. Please try them out and report issues in the bug tracker with "[octave forge] (mapping)" tag in the title. |
| + | |
| + | === Missing functions === |
| Follows an incomplete list of stuff missing in the mapping package to be matlab compatible. Bugs are not listed here, [https://savannah.gnu.org/bugs/?func=search&group=octave search] and [https://savannah.gnu.org/bugs/?func=additem&group=octave report] them on the bug tracker instead. | | Follows an incomplete list of stuff missing in the mapping package to be matlab compatible. Bugs are not listed here, [https://savannah.gnu.org/bugs/?func=search&group=octave search] and [https://savannah.gnu.org/bugs/?func=additem&group=octave report] them on the bug tracker instead. |
| | | |
− | {{Note|this entire section is about the current development version. If a Matlab function is missing from the list and does not appear on the current release of the package, confirm that is also missing in the [https://sourceforge.net/p/octave/mapping/ development sources] before adding it.}} | + | As a number of polygon functions in the mapping package relate to geometry stuff, chances are that some of that lacking functionality is already present in the [http://wiki.octave.org/Geometry_package geometry package]. In fact there is a discussion about which functions belong where. Matlab compatibility suggests the mapping package, but based on similar functionality the geometry package might also be a good home. |
| + | |
| + | Recent mapping toolbox versions are classdef-based. It is unclear yet if we need to follow this route as classdef support in Octave is still experimental and has no file I/O. |
| + | |
| + | {{Note|this entire section is about current version 1.2.1; see notes below the list for dev version. If a Matlab function is missing from the list and does not appear on the current release of the package, confirm that is also missing in the [http://hg.code.sf.net/p/octave/mapping/file sources], see esp. the INDEX file, before adding it.}} |
| | | |
− | === Missing functions ===
| |
| ==== Alphabetical list ==== | | ==== Alphabetical list ==== |
| <div style="column-count:4;-moz-column-count:4;-webkit-column-count:4"> | | <div style="column-count:4;-moz-column-count:4;-webkit-column-count:4"> |
− | * aer2ecef | + | * aer2ecef '''[7]''' |
− | * aer2enu | + | * aer2enu '''[7]''' |
− | * aer2geodetic | + | * aer2geodetic '''[7]''' |
− | * aer2ned | + | * aer2ned '''[7]''' |
| * angl2str | | * angl2str |
− | * antipode
| |
| * arcgridread '''[1]''' | | * arcgridread '''[1]''' |
| * areaint | | * areaint |
Line 22: |
Line 35: |
| * avhrrgoode | | * avhrrgoode |
| * avhrrlambert | | * avhrrlambert |
− | * axes2ecc | + | * axes2ecc '''*''' |
| * axesm | | * axesm |
| * axesmui | | * axesmui |
Line 50: |
Line 63: |
| * dted | | * dted |
| * dteds | | * dteds |
− | * earthRadius | + | * earthRadius '''*''' |
− | * ecc2flat | + | * ecc2flat '''*''' |
− | * ecc2n | + | * ecc2n '''*''' |
| * ecef2aer | | * ecef2aer |
| * ecef2enu | | * ecef2enu |
| * ecef2enuv | | * ecef2enuv |
− | * ecef2geodetic | + | * ecef2geodetic '''*''' |
| * ecef2lv | | * ecef2lv |
| * ecef2ned | | * ecef2ned |
Line 66: |
Line 79: |
| * enu2ecefv | | * enu2ecefv |
| * enu2geodetic | | * enu2geodetic |
| + | * enu2uvw '''[7]''' |
| * etopo | | * etopo |
| * etopo5 | | * etopo5 |
− | * flat2ecc | + | * flat2ecc '''*''' |
| * flatearthpoly | | * flatearthpoly |
| * framem | | * framem |
Line 76: |
Line 90: |
| * gcxgc | | * gcxgc |
| * gcxsc | | * gcxsc |
− | * geocentricLatitude | + | * geocentricLatitude '''*''' |
| * geodetic2aer | | * geodetic2aer |
− | * geodetic2ecef | + | * geodetic2ecef '''*''' |
| * geodetic2enu | | * geodetic2enu |
| * geodetic2ned | | * geodetic2ned |
− | * geodeticLatitudeFromGeocentric | + | * geodeticLatitudeFromGeocentric '''*''' |
− | * geodeticLatitudeFromParametric | + | * geodeticLatitudeFromParametric '''*''' |
| * geoloc2grid | | * geoloc2grid |
| * geopoint | | * geopoint |
Line 98: |
Line 112: |
| * globedem | | * globedem |
| * globedems | | * globedems |
− | * gpxread | + | * gpxread '''[6]''' |
| * gradientm | | * gradientm |
| * grid2image | | * grid2image |
Line 115: |
Line 129: |
| * intrplon | | * intrplon |
| * ismap | | * ismap |
− | * ispolycw | + | * ispolycw '''*''' |
− | * isShapeMultipart | |
| * kmlwrite | | * kmlwrite |
| * kmlwriteline | | * kmlwriteline |
Line 127: |
Line 140: |
| * ltln2val | | * ltln2val |
| * lv2ecef | | * lv2ecef |
− | * majaxis | + | * majaxis '''*''' |
| * makeattribspec | | * makeattribspec |
| * makedbfspec | | * makedbfspec |
Line 158: |
Line 171: |
| * meshm | | * meshm |
| * mfwdtran | | * mfwdtran |
− | * minaxis | + | * minaxis '''*''' |
| * minvtran | | * minvtran |
| * mlabel | | * mlabel |
| * mlabelzero22pi | | * mlabelzero22pi |
− | * n2ecc | + | * n2ecc '''*''' |
| * ned2aer | | * ned2aer |
| * ned2ecef | | * ned2ecef |
Line 175: |
Line 188: |
| * panzoom | | * panzoom |
| * parallelui | | * parallelui |
− | * parametricLatitude | + | * parametricLatitude '''*''' |
| * pcolorm | | * pcolorm |
| * plabel | | * plabel |
Line 185: |
Line 198: |
| * poly2fv | | * poly2fv |
| * polybool '''[4]''' | | * polybool '''[4]''' |
− | * polyjoin | + | * polyjoin '''*''' |
| * polymerge | | * polymerge |
| * polysplit | | * polysplit |
Line 195: |
Line 208: |
| * quiver3m | | * quiver3m |
| * quiverm | | * quiverm |
− | * rad2km
| |
| * rad2nm | | * rad2nm |
| * rad2sm | | * rad2sm |
− | * rcurve | + | * rcurve '''*''' |
| * reducem | | * reducem |
− | * referenceEllipsoid | + | * referenceEllipsoid '''*''' |
| * referenceSphere | | * referenceSphere |
| * refmatToGeoRasterReference | | * refmatToGeoRasterReference |
Line 261: |
Line 273: |
| * webmap | | * webmap |
| * WebMapServer | | * WebMapServer |
− | * wgs84Ellipsoid | + | * wgs84Ellipsoid '''*''' |
| * wmcenter | | * wmcenter |
| * wmclose | | * wmclose |
Line 284: |
Line 296: |
| </div> | | </div> |
| | | |
− | * [1] In mapping-1.2.1, rasterread can read any raster file that the GDAL library supports; see http://www.gdal.org/frmt_various.html. No separate functions for individual file format are required. There's some work to do on unifying output formats. | + | * [1] ''In mapping-1.2.1, rasterread can read any raster file that the GDAL library supports; see http://www.gdal.org/frmt_various.html. No separate functions for individual file format are required. There's some work to do on unifying output formats.'' |
− | * [2] As [1], rasterinfo does the job. | + | * [2] ''As [1], rasterinfo does the job.'' |
− | * [3] As of mapping-1.2.0, there's a basic mapshow. | + | * [3] ''As of mapping-1.2.0, there's a basic mapshow.'' |
− | * [4] See oc_polybool in the OF octclip package. | + | * [4] ''See oc_polybool in the OF octclip package. polybool has been implemented in soon-to-be-released OF geometry-4.0.0'' |
− | * [5] See OF image package | + | * [5] ''See OF image package'' |
| + | * [6] ''There's a basic gpxread in the 1.4.0 version (to be released)'' |
| + | * [7] ''Patches submitted and in progress'' |
| + | * * ''Implemented in dev version'' |
| | | |
| ==== Grouped list ==== | | ==== Grouped list ==== |
| (see numbered notes above) | | (see numbered notes above) |
− | {| {{table}} | + | {| class="wikitable" |
| | arcgridread '''[1]'''||File Import and Export||Standard File Formats | | | arcgridread '''[1]'''||File Import and Export||Standard File Formats |
| |- | | |- |
Line 353: |
Line 368: |
| | usgs24kdem||File Import and Export||Gridded Terrain and Bathymetry Products | | | usgs24kdem||File Import and Export||Gridded Terrain and Bathymetry Products |
| |- | | |- |
− | | usgsdem||File Import and Export||Gridded Terrain and Bathymetry Products | + | | usgsdem '''[1]'''||File Import and Export||Gridded Terrain and Bathymetry Products |
| |- | | |- |
− | | usgsdems||File Import and Export||Gridded Terrain and Bathymetry Products | + | | usgsdems '''[1]'''||File Import and Export||Gridded Terrain and Bathymetry Products |
| |- | | |- |
| | avhrrgoode||File Import and Export||Specific Vector and Gridded Data Products | | | avhrrgoode||File Import and Export||Specific Vector and Gridded Data Products |
Line 560: |
Line 575: |
| |- | | |- |
| | intrplon||Data Analysis||Vector Data | | | intrplon||Data Analysis||Vector Data |
− | |-
| |
− | | isShapeMultipart||Data Analysis||Vector Data
| |
| |- | | |- |
| | linecirc||Data Analysis||Vector Data | | | linecirc||Data Analysis||Vector Data |
Line 682: |
Line 695: |
| |- | | |- |
| | map.geodesy.RectifyingLatitudeConverter||Coordinates, Geodesy, and Projections||Modeling the Earth | | | map.geodesy.RectifyingLatitudeConverter||Coordinates, Geodesy, and Projections||Modeling the Earth |
− | |-
| |
− | | degrees2dm||Coordinates, Geodesy, and Projections||Lengths and Angles
| |
− | |-
| |
− | | degrees2dms||Coordinates, Geodesy, and Projections||Lengths and Angles
| |
− | |-
| |
− | | dm2degrees||Coordinates, Geodesy, and Projections||Lengths and Angles
| |
− | |-
| |
− | | dms2degrees||Coordinates, Geodesy, and Projections||Lengths and Angles
| |
− | |-
| |
− | | fromDegrees||Coordinates, Geodesy, and Projections||Lengths and Angles
| |
− | |-
| |
− | | fromRadians||Coordinates, Geodesy, and Projections||Lengths and Angles
| |
| |- | | |- |
| | str2angle||Coordinates, Geodesy, and Projections||Lengths and Angles | | | str2angle||Coordinates, Geodesy, and Projections||Lengths and Angles |
− | |-
| |
− | | toDegrees||Coordinates, Geodesy, and Projections||Lengths and Angles
| |
− | |-
| |
− | | toRadians||Coordinates, Geodesy, and Projections||Lengths and Angles
| |
− | |-
| |
− | | unitsratio||Coordinates, Geodesy, and Projections||Lengths and Angles
| |
− | |-
| |
− | | km2nm||Coordinates, Geodesy, and Projections||Lengths and Angles
| |
− | |-
| |
− | | km2sm||Coordinates, Geodesy, and Projections||Lengths and Angles
| |
− | |-
| |
− | | nm2km||Coordinates, Geodesy, and Projections||Lengths and Angles
| |
− | |-
| |
− | | nm2sm||Coordinates, Geodesy, and Projections||Lengths and Angles
| |
− | |-
| |
− | | sm2km||Coordinates, Geodesy, and Projections||Lengths and Angles
| |
− | |-
| |
− | | sm2nm||Coordinates, Geodesy, and Projections||Lengths and Angles
| |
| |- | | |- |
| | unwrapMultipart||Coordinates, Geodesy, and Projections||Lengths and Angles | | | unwrapMultipart||Coordinates, Geodesy, and Projections||Lengths and Angles |
| |- | | |- |
| | map.geodesy.isdegree||Coordinates, Geodesy, and Projections||Lengths and Angles | | | map.geodesy.isdegree||Coordinates, Geodesy, and Projections||Lengths and Angles |
− | |-
| |
− | | validateLengthUnit||Coordinates, Geodesy, and Projections||Lengths and Angles
| |
| |- | | |- |
| | azimuth||Coordinates, Geodesy, and Projections||Great Circles, Geodesics, and Rhumb Lines | | | azimuth||Coordinates, Geodesy, and Projections||Great Circles, Geodesics, and Rhumb Lines |
Line 758: |
Line 739: |
| |- | | |- |
| | gcxsc||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance | | | gcxsc||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance |
− | |-
| |
− | | km2deg||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
| |
− | |-
| |
− | | km2rad||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
| |
− | |-
| |
− | | nm2deg||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
| |
− | |-
| |
− | | nm2rad||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
| |
− | |-
| |
− | | rad2km||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
| |
| |- | | |- |
| | rad2nm||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance | | | rad2nm||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance |
Line 784: |
Line 755: |
| |- | | |- |
| | sectorg||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance | | | sectorg||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance |
− | |-
| |
− | | sm2deg||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
| |
− | |-
| |
− | | sm2rad||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
| |
| |- | | |- |
| | areaint||Coordinates, Geodesy, and Projections||Zones, Lunes, Quadrangles, and Other Areas | | | areaint||Coordinates, Geodesy, and Projections||Zones, Lunes, Quadrangles, and Other Areas |
Line 911: |
Line 878: |
| | ned2ecefv||Coordinates, Geodesy, and Projections||Coordinate Systems | | | ned2ecefv||Coordinates, Geodesy, and Projections||Coordinate Systems |
| |- | | |- |
− | |
| |
| |} | | |} |
| | | |
Line 919: |
Line 885: |
| === Contributing === | | === Contributing === |
| * See for example [[User:Sandeepmv#Y:_Your_task]] | | * See for example [[User:Sandeepmv#Y:_Your_task]] |
− | * geod toolbox [https://drive.google.com/file/d/0B-I95wETyqQidnZWbm5TbzZRcHc/edit?usp=sharing] (BSD-licensed, available by the author outside of File Exchange) | + | * geod toolbox [https://drive.google.com/file/d/0B-I95wETyqQidnZWbm5TbzZRcHc/edit?usp=sharing] (BSD-licensed, available from its author outside of File Exchange) |
| | | |
− | [[Category:Octave-Forge]] | + | [[Category:Octave Forge]] |
| + | [[Category:Missing functions]] |