Mapping package: Difference between revisions

Jump to navigation Jump to search
3,321 bytes removed ,  7 June 2022
 
(39 intermediate revisions by 6 users not shown)
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.). Matlab has arcgridread
* Add more options to mapshow.
* 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 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.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 ===
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 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 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 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.}}


=== 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
* aer2enu
* aer2geodetic
* aer2ned
* angl2str
* antipode
* arcgridread '''[1]'''
* arcgridread '''[1]'''
* areaint
* areaint
* areamat
* areamat
* areaquad
* areaquad '''*'''
* avhrrgoode
* avhrrgoode
* avhrrlambert
* avhrrlambert
* axes2ecc
* axesm
* axesm
* axesmui
* axesmui
Line 34: Line 42:
* clipdata
* clipdata
* clma
* clma
* closePolygonParts
* clrmenu
* clrmenu
* contour3m
* contour3m
Line 42: 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
* 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 98: Line 77:
* globedem
* globedem
* globedems
* globedems
* gpxread
* gradientm
* gradientm
* grid2image
* grid2image
Line 115: Line 93:
* intrplon
* intrplon
* ismap
* ismap
* ispolycw
* ispolycw '''4'''
* isShapeMultipart
* ispolyccw '''[4]'''
* kmlwrite
* kmlwrite
* kmlwriteline
* kmlwriteline
Line 127: 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 153: 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 175: Line 145:
* panzoom
* panzoom
* parallelui
* parallelui
* parametricLatitude
* pcolorm
* pcolorm
* plabel
* plabel
Line 181: 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 195: Line 164:
* quiver3m
* quiver3m
* quiverm
* quiverm
* rad2km
* rad2nm
* rad2sm
* rcurve
* reducem
* reducem
* referenceEllipsoid
* referenceSphere
* refmatToGeoRasterReference
* refmatToGeoRasterReference
* refmatToMapRasterReference
* refmatToMapRasterReference
Line 218: Line 181:
* scircleg
* scircleg
* scirclui
* scirclui
* scxsc
* sdtsdemread '''[1]'''
* sdtsdemread '''[1]'''
* sdtsinfo '''[2]'''
* sdtsinfo '''[2]'''
Line 225: Line 187:
* shaderel
* shaderel
* showaxes
* showaxes
* sm2deg
* sm2km
* sm2nm
* sm2rad
* stem3m
* stem3m
* str2angle
* surfacem
* surfacem
* surflm
* surflm
Line 249: Line 206:
* usgsdems
* usgsdems
* utmgeoid
* utmgeoid
* utmzone
* utmzoneui
* utmzoneui
* vec2mtx
* vec2mtx
Line 261: Line 217:
* webmap
* webmap
* WebMapServer
* WebMapServer
* wgs84Ellipsoid
* wmcenter
* wmcenter
* wmclose
* wmclose
Line 284: 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] ''Replacement function implemented''
*  *  ''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)
{| {{table}}
{| class="wikitable"
| arcgridread '''[1]'''||File Import and Export||Standard File Formats
| arcgridread '''[1]'''||File Import and Export||Standard File Formats
|-
|-
Line 312: 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 360: 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 560: Line 514:
|-
|-
| 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 638: 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 [6]
|-
|-
| map.geodesy.ConformalLatitudeConverter||Coordinates, Geodesy, and Projections||Modeling the Earth
| map.geodesy.IsometricLatitudeConverter||Coordinates, Geodesy, and Projections||Modeling the Earth [6]
|-
|-
| map.geodesy.IsometricLatitudeConverter||Coordinates, Geodesy, and Projections||Modeling the Earth
| map.geodesy.RectifyingLatitudeConverter||Coordinates, Geodesy, and Projections||Modeling the Earth [6]
|-
| map.geodesy.RectifyingLatitudeConverter||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
| 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 690: 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 718: 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 738: 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 746: 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 816: 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
|-
|
|}
|}


Line 873: Line 718:
=== 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]]
99

edits

Navigation menu