Determine the scale factor on the maps

Given only a set of coordinates, is there a way to find the zoom factor used? Then it will be used to calculate the distances between the coordinates.

Consider this:

On a scale map: (This is the only preset value)

  • pointA (33.511615, -86.778809)
  • pointB (34.398558, -87.669116)

Real world:

  • Distance between two points = unknown

We can decide the distance between two points. What conversion factor can be used to convert distance to real or real scale? How to get the conversion rate?

The indicated coordinates are based on actual points constructed in a smaller model. The format may look familiar to you. Maybe the default units are miles? I have no idea how they came up with the coordinates, any thoughts?

I'm not sure what the basic concepts are (Geocoding or Geolocation?) Involved, and if I made sense, when I try to point out things. Please, help.

+3
source share
4 answers

They look like latitude and longitude coordinates (for example, 33.511615 degrees north latitude, 86.778809 west longitude for the first), which place them in Alabama.

Are you sure that these are some coordinates for the map, not Lat / Lon?

: Lat/Lon, , , . , /, .

+1

:

Point1, lat1 long1 Point2, lat2 long2

, haversine (, Python):

lat1=radians(lat1)
long1=radians(long1)
lat2=radians(lat2)
long2=radians(long2)

gradius=6378.137        # greatest earth radius (equator)
sradius=6356.7523142    # smallest earth radius (pole)

R=(gradius*sradius)/sqrt((gradius*cos(lat1))**2 + (sradius*sin(lat1))**2)

d_lat = lat2 - lat1
d_long = long2 - long1

a = sin(d_lat/2)**2 + cos(lat1) * cos(lat2) * sin(d_long/2)**2
c = 2 * atan2(sqrt(a), sqrt(1-a))
distance = maior * c

# and if you want bearing:
x = sin(d_long) * cos(lat2)
y = cos(lat2) * sin(lat1) - sin(lat2) * cos (lat1) * cos(d_long)
bearing = 90-(degrees(atan2(y, -x)))

, . , .

+1

, , . .

0

, , .

, WGS 84, , gps .

, , . , ( , - ), , . , "" , ( " " - ) , x/y .

? , .

0

Source: https://habr.com/ru/post/1770846/


All Articles