Tag Info

Hot answers tagged

8

If you're home-brewing in the browser, you can get a "circle" (it will not be round on the screen due to your projection; rather approximated by a polygon w/ as many points as you care to draw), use a the direct form of geodesic calculations: given a point, a direction (azimuth), and a distance it gives you the resulting point. Gory details: ...


6

It seems to be a straight line in whatever projection system pertains when it is created. After that, it is recalculated in each new projection, and the software trys to make it 'stratght'. this is quite noticeable near the poles: a square drawn round the pole in a polar azimuthal projection will invariably turn into a circle (that is, the formerly stratight ...


6

The question concerns what kinds of curves deserve an implicitly exact representation rather than a discretized approximation. The crux of the matter is this: to be successful, the class of curves you support in this manner must be closed under the class of curve- and polygon-creation operations supported in the GIS. These operations include: ...


4

I am afraid that the answer is no: what you mean to do is correct but it will not work like this in ArcGIS with Near. From the help, you can read that : The distances calculated by this tool are in the unit of the coordinate system of the input features. If your input is in a geographic coordinate system and you want output distances to be ...


4

Dan, You may be interested in some of the work I've been doing on geodesics. This is described in this preprint. In particular, note: The direct and inverse geodesics problems may be solved to machine precision. This means about 15 nm for double precision. I can switch to long doubles, add an extra term in the series, and get accuracy of 6 pm. Note in ...


3

OpenLayers only allows for drawing circles using planar distances To get a geodesic circle, you could use the buffer operation in ESRI's geometry service. ...if unit is linear such as feet or meters, geodesic buffering is performed A freely accessible one is available here.


3

The pe.dll available with the free download of ArcGIS Explorer can be used to do this. See Exploiting the ESRI Projection Engine (second edition) for discussion.


3

if you use PostGIS Geography Type for your table, you can calculate your area as you calculate on the plane surface. The geography type provides native support for spatial features represented on "geographic" coordinates (sometimes called "geodetic" coordinates, or "lat/lon", or "lon/lat"). Geographic coordinates are spherical coordinates expressed ...


3

The problem of computing the area of a polygon on an ellipsoid of revolution where the polygon edges are geodesics is solved in Section 6 of C. F. F. Karney, Algorithms for geodesics, J. Geodesy (2012); DOI: http://dx.doi.org/10.1007/s00190-012-0578-z; Addenda: http://geographiclib.sf.net/geod-addenda.html Code (C++, Python, Javascript, and Matlab) ...


2

First, be careful with phrasing. Your "the angle between two locations" is unclear. Keeping things to a simple sphere, the azimuth of any oblique great circle route depends entirely on where you measure it. It can range all the way from 0 to 360 and be correct. You probably seek the starting azimuth of a great circle route from a certain point to another ...


2

This is the answer to @Dan's question about using the auxiliary sphere to solve intersection problems. No, the auxiliary sphere doesn't let you solve for intersections directly. The problem is that the mapping from the ellipsoid to the sphere depends on the geodesic (e.g., its azimuth at the equator). Thus the auxiliary sphere is good for solving for a ...


2

Here is the result I derived for the rhumb line area. This is the more interesting result. The great ellipse formula is more complex and is very similar to that for geodesics. Consider a rhumb line from (φ1,λ1) to (φ2,λ2). Determine the area of the ellipsoidal quadrilateral whose sides are this rhumb line segment, two meridional ...


2

If you look at the source for getGeodesicArea, which is actually in the LinearRing class, you will will see from the comments (and the code) that this calculates an approximate area based on a sphere. If you look at GeographicLib, which includes a Javascript port of the C++ library, you will see that they use ellipsoidal calculations, which will be more ...


2

The geodesic area for your example is 19518154994956.3 m² (using GeographicLib). E.g.: var points = [ {lat: 0, lon: 50}, {lat: -5, lon: -60}, {lat: -30, lon: -30} ]; var p = GeographicLib.PolygonArea; var result = p.Area(GeographicLib.Geodesic.WGS84, points, false); var area = result.area; // 19518154994956.285 Here are multiple ...


1

In addition to an answer over in SO, the inverse geodetic solution is not easy with near-antipodal points, as your question has. The inverse geodetic problem is solved iteratively using Vincenty's 1975 algorithm, which fails to converge for near antipodal points. However, the problem is still solvable using a different approach. See page 40 of Rapp RH ...


1

On the surface of a sphere, all lines are "horizontal lines" by definition. But you mean something else! If you refer to lines parallel to the equator (parallels of latitude), then they are all oriented E-W, i.e., have 0 or 270 azimuths. Any line, including those parallels, whose azimuth is unchanged at all points along it, is called a loxodrome (or rhumb ...


1

There are some methods to calculate geodesic distances such as the haversine formula and Vincenty's formulae. These formulae are commonly used. The inverse Vincenty distance formula is the more accurate method to calculate the geodesic distance and is used in Google Maps, but it is slow.


1

No, if using the ArcGIS "Near" tool because, even if the coordinate system is geographic/geodetic, it does not calculate geodesic distances; it merely treats those geographic coordinates as though they were projected and thus gives results that cannot be compared across the US. Yes, if you correctly calculate geodesic distances using geographic ...


1

Another option is to simply transform to an equal-area projection and compute the geometric area.


1

A somewhat higher-level view of Aragon's answer is as follows. In this paper: Robert Chamberlain & William Duquette, “Some algorithms for polygons on a sphere”. Proc. Association of American Geographers, 2007. (PDF) there is a formula for computing area of a polygon on a sphere. Here's two different versions copied from the paper; one or the other ...


1

A few resources for different languages (except C#) are listed here: http://trac.osgeo.org/proj/wiki/GeodesicCalculations One of them is a PROJ.4 utility geod, which probably has some underlying API. Check out Proj4Net, but I've never used it, and I'm not sure how mature or complete it is.


1

I'm not sure about KML, but in a shapefile the lines joining vertices are indeed straight line segments. From the ArcGIS help file under About editing shapefiles: Creating features with curves in shapefiles Shapefiles do not support true parametric curves, including circular arcs, ellipses, and Bézier curves, so these shapes are stored as straight ...


1

There is no information on this in the shapefile specification. How to connect two vertices is strictly up to the software displaying or otherwise processing the shapefile. You could add information into an attribute field which could then be used by the software, but it would affect the entire feature. Esri has been working a bit on this, so there are ...



Only top voted, non community-wiki answers of a minimum length are eligible