Mapping package: Difference between revisions

Jump to navigation Jump to search
10 bytes removed ,  30 December 2020
(35 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 ==
Line 5: Line 5:


Targets for next mapping package releases:
Targets for next mapping package releases:
* Add rasterwrite.m (complementary to rasterread).
* 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!
* 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.
* 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 "[OF] mapping pkg:" tag in the title.
Several functions in the current mapping package release (1.4.0) and upcoming (1.4.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 ===
=== 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 current version 1.2.1. 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.1 (released late fall 2020). 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
* 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 44: Line 42:
* clipdata
* clipdata
* clma
* clma
* closePolygonParts
* clrmenu
* clrmenu
* contour3m
* contour3m
Line 52: 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 108: Line 77:
* globedem
* globedem
* globedems
* globedems
* gpxread
* gradientm
* gradientm
* grid2image
* grid2image
Line 125: Line 93:
* intrplon
* intrplon
* ismap
* ismap
* ispolycw
* ispolycw '''4'''
* isShapeMultipart
* ispolyccw '''[4]'''
* kmlwrite
* kmlwrite
* kmlwriteline
* kmlwriteline
Line 137: Line 105:
* ltln2val
* ltln2val
* lv2ecef
* lv2ecef
* majaxis
* makeattribspec
* makeattribspec
* makedbfspec
* makedbfspec
Line 163: 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 185: Line 145:
* panzoom
* panzoom
* parallelui
* parallelui
* parametricLatitude
* pcolorm
* pcolorm
* plabel
* plabel
Line 191: 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 205: Line 164:
* quiver3m
* quiver3m
* quiverm
* quiverm
* rad2km
* rad2nm
* rad2sm
* rcurve
* reducem
* reducem
* referenceEllipsoid
* referenceSphere '''*'''
* referenceSphere
* refmatToGeoRasterReference
* refmatToGeoRasterReference
* refmatToMapRasterReference
* refmatToMapRasterReference
Line 228: Line 182:
* scircleg
* scircleg
* scirclui
* scirclui
* scxsc
* sdtsdemread '''[1]'''
* sdtsdemread '''[1]'''
* sdtsinfo '''[2]'''
* sdtsinfo '''[2]'''
Line 235: Line 188:
* shaderel
* shaderel
* showaxes
* showaxes
* sm2deg
* sm2km
* sm2nm
* sm2rad
* stem3m
* stem3m
* str2angle
* surfacem
* surfacem
* surflm
* surflm
Line 259: Line 207:
* usgsdems
* usgsdems
* utmgeoid
* utmgeoid
* utmzone
* utmzoneui
* utmzoneui
* vec2mtx
* vec2mtx
Line 271: Line 218:
* webmap
* webmap
* WebMapServer
* WebMapServer
* wgs84Ellipsoid
* wmcenter
* wmcenter
* wmclose
* wmclose
Line 294: Line 240:
</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''
*  *  ''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 570: Line 518:
|-
|-
| 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 683: Line 629:
| referenceEllipsoid||Coordinates, Geodesy, and Projections||Modeling the Earth
| referenceEllipsoid||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
|-
| referenceSphere||Coordinates, Geodesy, and Projections||Modeling the Earth
| referenceSphere '''*'''||Coordinates, Geodesy, and Projections||Modeling the Earth
|-
|-
| map.geodesy.AuthalicLatitudeConverter||Coordinates, Geodesy, and Projections||Modeling the Earth
| map.geodesy.AuthalicLatitudeConverter||Coordinates, Geodesy, and Projections||Modeling the Earth
Line 704: Line 650:
|-
|-
| 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
| meridianarc||Coordinates, Geodesy, and Projections||Great Circles, Geodesics, and Rhumb Lines
Line 734: Line 674:
|-
|-
| deg2sm||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
| rad2nm||Coordinates, Geodesy, and Projections||Small Circles, Ellipses, and Spherical Distance
Line 748: Line 686:
|-
|-
| 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 757: Line 693:
| 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
| 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 875: Line 811:
| ned2ecefv||Coordinates, Geodesy, and Projections||Coordinate Systems
| ned2ecefv||Coordinates, Geodesy, and Projections||Coordinate Systems
|-
|-
|
|}
|}


Line 883: Line 818:
=== 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