Mapping package: Difference between revisions

Jump to navigation Jump to search
5,266 bytes removed ,  7 June 2022
 
(16 intermediate revisions by 3 users not shown)
Line 6: Line 6:
Targets for next mapping package releases:
Targets for next mapping package releases:
* Add rasterwrite.m (complementary to rasterread). Please contact package maintainer, there's already a C++ skeleton.
* 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.).
* Maybe add wrapper functions around rasterread and rasterwrite (for e.g., geotiff, ASCII grid, etc.). Matlab has arcgridread
* Add more options to mapshow.
* 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.
* Implement support for projections and coordinate transformations. 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.
* Add geodesy functions. Patches have been submitted and integrated. The current roadmap is to further integrate Felipe Nievinsky's geodesy toolbox, updated by M. Hirsch.


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.
Several functions in the current mapping package release (1.4.2) and upcoming (1.4.3?) 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 ===
=== 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.


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.
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 was a discussion about which functions belong where. Matlab compatibility suggests the mapping package, but based on similar functionality the geometry package is probably a better home.
Anyway the mapping package has the geometry package as a required dependency.


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.
Recent matlab 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.}}
{{Note|this entire section is about version 1.4.2 (released early 2022). 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.}}


==== 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 '''[7]'''
* aer2enu '''[7]'''
* aer2geodetic '''[7]'''
* aer2ned '''[7]'''
* angl2str
* arcgridread '''[1]'''
* arcgridread '''[1]'''
* areaint
* areaint
* areamat
* areamat
* areaquad
* areaquad '''*'''
* avhrrgoode
* avhrrgoode
* avhrrlambert
* avhrrlambert
* axes2ecc '''*'''
* axesm
* axesm
* axesmui
* axesmui
Line 47: Line 42:
* clipdata
* clipdata
* clma
* clma
* closePolygonParts
* clrmenu
* clrmenu
* contour3m
* contour3m
Line 55: Line 49:
* contourm
* contourm
* defaultm
* defaultm
* deg2nm
* deg2sm
* demcmap
* demcmap
* demdataui
* demdataui
* departure
* distortcalc
* distortcalc
* dted
* dted
* dteds
* dteds
* earthRadius  '''*'''
* ecc2flat '''*'''
* ecc2n '''*'''
* ecef2aer
* ecef2enu
* ecef2enuv
* ecef2geodetic '''*'''
* ecef2lv
* ecef2lv
* ecef2ned
* ecef2nedv
* egm96geoid
* ellipse1
* ellipse1
* enu2aer
* enu2ecef
* enu2ecefv
* enu2geodetic
* enu2uvw '''[7]'''
* etopo
* etopo
* etopo5
* etopo5
* flat2ecc '''*'''
* flatearthpoly
* flatearthpoly
* framem
* framem
* gc2sc
* gcm
* gcm
* gcpmap
* gcpmap
* gcxgc
* gcxsc
* geocentricLatitude '''*'''
* geodetic2aer
* geodetic2ecef '''*'''
* geodetic2enu
* geodetic2ned
* geodeticLatitudeFromGeocentric '''*'''
* geodeticLatitudeFromParametric '''*'''
* geoloc2grid
* geoloc2grid
* geopoint
* geopoint
Line 112: Line 77:
* globedem
* globedem
* globedems
* globedems
* gpxread '''[6]'''
* gradientm
* gradientm
* grid2image
* grid2image
Line 129: Line 93:
* intrplon
* intrplon
* ismap
* ismap
* ispolycw '''*'''
* ispolycw '''4'''
* ispolyccw '''[4]'''
* kmlwrite
* kmlwrite
* kmlwriteline
* kmlwriteline
Line 140: Line 105:
* ltln2val
* ltln2val
* lv2ecef
* lv2ecef
* majaxis '''*'''
* makeattribspec
* makeattribspec
* makedbfspec
* makedbfspec
* makerefmat
* makerefmat
* map.geodesy.AuthalicLatitudeConverter
* map.geodesy.AuthalicLatitudeConverter [6]
* map.geodesy.ConformalLatitudeConverter
* map.geodesy.ConformalLatitudeConverter [6]
* map.geodesy.IsometricLatitudeConverter
* map.geodesy.IsometricLatitudeConverter [6]
* map.geodesy.RectifyingLatitudeConverter
* map.geodesy.RectifyingLatitudeConverter [6]
* map.geodesy.isdegree
* map.geodesy.isdegree
* map.rasterref.GeographicRasterReference
* map.rasterref.GeographicRasterReference
Line 166: Line 130:
* mapview
* mapview
* mdistort
* mdistort
* meridianarc
* meridianfwd
* meridianfwd
* meshlsrm
* meshlsrm
* meshm
* meshm
* mfwdtran
* mfwdtran
* minaxis '''*'''
* minvtran
* minvtran
* mlabel
* mlabel
* mlabelzero22pi
* mlabelzero22pi
* n2ecc '''*'''
* ned2aer
* ned2ecef
* ned2ecefv
* ned2geodetic
* newpole
* newpole
* northarrow
* northarrow
Line 188: Line 145:
* panzoom
* panzoom
* parallelui
* parallelui
* parametricLatitude '''*'''
* pcolorm
* pcolorm
* plabel
* plabel
Line 194: Line 150:
* plotm
* plotm
* polcmap
* polcmap
* poly2ccw
* poly2ccw '''[4]'''
* poly2cw
* poly2cw '''[4]'''
* poly2fv
* poly2fv
* polybool '''[4]'''
* polybool '''[4]'''
* polyjoin '''*'''
* polyjoin '''[4]'''
* polymerge
* polymerge
* polysplit
* polysplit '''[4]'''
* polyxpoly
* polyxpoly
* projfwd
* projfwd
Line 208: Line 164:
* quiver3m
* quiver3m
* quiverm
* quiverm
* rad2nm
* rad2sm
* rcurve '''*'''
* reducem
* reducem
* referenceEllipsoid '''*'''
* referenceSphere
* refmatToGeoRasterReference
* refmatToGeoRasterReference
* refmatToMapRasterReference
* refmatToMapRasterReference
Line 230: Line 181:
* scircleg
* scircleg
* scirclui
* scirclui
* scxsc
* sdtsdemread '''[1]'''
* sdtsdemread '''[1]'''
* sdtsinfo '''[2]'''
* sdtsinfo '''[2]'''
Line 237: Line 187:
* shaderel
* shaderel
* showaxes
* showaxes
* sm2deg
* sm2km
* sm2nm
* sm2rad
* stem3m
* stem3m
* str2angle
* surfacem
* surfacem
* surflm
* surflm
Line 261: Line 206:
* usgsdems
* usgsdems
* utmgeoid
* utmgeoid
* utmzone
* utmzoneui
* utmzoneui
* vec2mtx
* vec2mtx
Line 273: Line 217:
* webmap
* webmap
* WebMapServer
* WebMapServer
* wgs84Ellipsoid '''*'''
* wmcenter
* wmcenter
* wmclose
* wmclose
Line 296: Line 239:
</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] ''As of 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] ''Implemented in 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)''
* [6] ''Replacement function implemented''
* [7] ''Patches submitted and in progress''
*  *  ''Implemented in dev version''
*  *  ''Implemented in dev version''


==== Grouped list ====
==== Grouped list ====
(needs update relative to table above and newer mapping toolbox releases)
(see numbered notes above)
(see numbered notes above)
{| class="wikitable"
{| class="wikitable"
Line 327: Line 270:
|-
|-
| getworldfilename||File Import and Export||Standard File Formats
| getworldfilename||File Import and Export||Standard File Formats
|-
| gpxread||File Import and Export||Standard File Formats
|-
|-
| kmlwrite||File Import and Export||Standard File Formats
| kmlwrite||File Import and Export||Standard File Formats
Line 375: Line 316:
|-
|-
| avhrrlambert||File Import and Export||Specific Vector and Gridded Data Products
| avhrrlambert||File Import and Export||Specific Vector and Gridded Data Products
|-
| egm96geoid||File Import and Export||Specific Vector and Gridded Data Products
|-
|-
| gshhs||File Import and Export||Specific Vector and Gridded Data Products
| gshhs||File Import and Export||Specific Vector and Gridded Data Products
Line 651: Line 590:
|-
|-
| viewshed||Data Analysis||Terrain Data Analysis
| viewshed||Data Analysis||Terrain Data Analysis
|-
| wgs84Ellipsoid||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
|-
| earthRadius||Coordinates, Geodesy, and Projections||Modeling the Earth
| earthRadius||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
| rcurve||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
|-
| rsphere||Coordinates, Geodesy, and Projections||Modeling the Earth
| rsphere||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
| geocentricLatitude||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
| parametricLatitude||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
| geodeticLatitudeFromGeocentric||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
| geodeticLatitudeFromParametric||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
| axes2ecc||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
| majaxis||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
| minaxis||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
| ecc2flat||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
| flat2ecc||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
| ecc2n||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
| n2ecc||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
|-
| oblateSpheroid||Coordinates, Geodesy, and Projections||Modeling the Earth
| oblateSpheroid||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
|-
| referenceEllipsoid||Coordinates, Geodesy, and Projections||Modeling the Earth
| map.geodesy.AuthalicLatitudeConverter||Coordinates, Geodesy, and Projections||Modeling the Earth [6]
|-
| referenceSphere||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
| map.geodesy.AuthalicLatitudeConverter||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
|-
| map.geodesy.ConformalLatitudeConverter||Coordinates, Geodesy, and Projections||Modeling the Earth
| map.geodesy.ConformalLatitudeConverter||Coordinates, Geodesy, and Projections||Modeling the Earth [6]
|-
|-
| map.geodesy.IsometricLatitudeConverter||Coordinates, Geodesy, and Projections||Modeling the Earth
| map.geodesy.IsometricLatitudeConverter||Coordinates, Geodesy, and Projections||Modeling the Earth [6]
|-
|-
| map.geodesy.RectifyingLatitudeConverter||Coordinates, Geodesy, and Projections||Modeling the Earth
| map.geodesy.RectifyingLatitudeConverter||Coordinates, Geodesy, and Projections||Modeling the Earth [6]
|-
| str2angle||Coordinates, Geodesy, and Projections||Lengths and Angles
|-
|-
| unwrapMultipart||Coordinates, Geodesy, and Projections||Lengths and Angles
| unwrapMultipart||Coordinates, Geodesy, and Projections||Lengths and Angles
Line 703: Line 610:
|-
|-
| azimuth||Coordinates, Geodesy, and Projections||Great Circles, Geodesics, and Rhumb Lines
| azimuth||Coordinates, Geodesy, and Projections||Great Circles, Geodesics, and Rhumb Lines
|-
| departure||Coordinates, Geodesy, and Projections||Great Circles, Geodesics, and Rhumb Lines
|-
|-
| distance||Coordinates, Geodesy, and Projections||Great Circles, Geodesics, and Rhumb Lines
| distance||Coordinates, Geodesy, and Projections||Great Circles, Geodesics, and Rhumb Lines
|-
| gc2sc||Coordinates, Geodesy, and Projections||Great Circles, Geodesics, and Rhumb Lines
|-
| gcxgc||Coordinates, Geodesy, and Projections||Great Circles, Geodesics, and Rhumb Lines
|-
| gcxsc||Coordinates, Geodesy, and Projections||Great Circles, Geodesics, and Rhumb Lines
|-
| meridianarc||Coordinates, Geodesy, and Projections||Great Circles, Geodesics, and Rhumb Lines
|-
|-
| meridianfwd||Coordinates, Geodesy, and Projections||Great Circles, Geodesics, and Rhumb Lines
| meridianfwd||Coordinates, Geodesy, and Projections||Great Circles, Geodesics, and Rhumb Lines
|-
| reckon||Coordinates, Geodesy, and Projections||Great Circles, Geodesics, and Rhumb Lines
|-
|-
| rhxrh||Coordinates, Geodesy, and Projections||Great Circles, Geodesics, and Rhumb Lines
| rhxrh||Coordinates, Geodesy, and Projections||Great Circles, Geodesics, and Rhumb Lines
Line 731: Line 626:
|-
|-
| ellipse1||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
| ellipse1||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
|-
| deg2km||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
|-
| deg2nm||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
|-
| deg2sm||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
|-
| gcxsc||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
|-
| rad2nm||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
|-
| rad2sm||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
|-
|-
| scircle1||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
| scircle1||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
Line 751: Line 634:
|-
|-
| scirclui||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
| scirclui||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
|-
| scxsc||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
|-
|-
| sectorg||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
| sectorg||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
Line 759: Line 640:
|-
|-
| areamat||Coordinates, Geodesy, and Projections||Zones, Lunes, Quadrangles, and Other Areas
| areamat||Coordinates, Geodesy, and Projections||Zones, Lunes, Quadrangles, and Other Areas
|-
| areaquad||Coordinates, Geodesy, and Projections||Zones, Lunes, Quadrangles, and Other Areas
|-
|-
| bufgeoquad||Coordinates, Geodesy, and Projections||Zones, Lunes, Quadrangles, and Other Areas
| bufgeoquad||Coordinates, Geodesy, and Projections||Zones, Lunes, Quadrangles, and Other Areas
Line 829: Line 708:
|-
|-
| utmgeoid||Coordinates, Geodesy, and Projections||Coordinate Systems
| utmgeoid||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| utmzone||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
|-
| utmzoneui||Coordinates, Geodesy, and Projections||Coordinate Systems
| utmzoneui||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| ecef2geodetic||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| geodetic2ecef||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| geodetic2enu||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| geodetic2ned||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| geodetic2aer||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| enu2geodetic||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| ned2geodetic||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| aer2geodetic||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| ecef2enu||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| ecef2ned||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| ecef2aer||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| enu2ecef||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| ned2ecef||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| aer2ecef||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| aer2enu||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| aer2ned||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| enu2aer||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| ned2aer||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| ecef2enuv||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| ecef2nedv||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| enu2ecefv||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
| ned2ecefv||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
|-
|}
|}
99

edits

Navigation menu