Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
Solved

# Mapping

Posted on 2002-07-08
Medium Priority
217 Views
I want to write a GIS application where I have to find a location corresponding a given latitude and longitude.
I have placed the map in a picture box. I know the latitude and longitude of the top/left and bottom/right corner of the map.
0
Question by:Gopakumar
[X]
###### Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

• Help others & share knowledge
• Earn cash & points

LVL 6

Expert Comment

ID: 7137647
And you know the width and the height of the picture box?  Umm.. why not do some quick math on the numbers

I don't know what the lattitude and longitude numbers are, but if you can give me an example I can show you the math.

basically width / (lower right longitude - upper left longitude)

width = 800
ul long = 100
lr long = 105

800/(105-100) = 160  so, you have 1 additional point of longitude for every 160 horizontal pixles

the same math would work for lattitude.

does that help?
0

LVL 28

Accepted Solution

Ark earned 800 total points
ID: 7139421
Hi
First of all it depends on latitude range. On Mercator projection latitude scale isn't proportional. If range isn't large (up to 4 degrees), you may consider it is, so the easiest way is to set:

Picture1.ScaleMode = 0 'User
Picture1.ScaleLeft = LeftValue
Picture1.ScaleTop = TopValue
Picture1.ScaleWidth = RightValue - LeftValue
Picture1.ScaleHeight = BottomValue - TopValue

Now all your map is scaled according your coordinates and all mouse events (move, click, down/up) will return scaled values.
But if you need large range (more then 5 degrees) or very precissious coordinates, you have to use Mercator's projection formulaes.

Cheers
0

LVL 49

Expert Comment

ID: 7991189
Hi Gopakumar,
It appears that you have forgotten this question. I will ask Community Support to close it unless you finalize it within 7 days. I will ask a Community Support Moderator to:

Accept Ark's comment(s) as an answer.

Gopakumar, if you think your question was not answered at all or if you need help, just post a new comment here; Community Support will help you.  DO NOT accept this comment as an answer.

EXPERTS: If you disagree with that recommendation, please post an explanatory comment.
==========
DanRollins -- EE database cleanup volunteer
0

Expert Comment

ID: 8053151
per recommendation

SpideyMod
Community Support Moderator @Experts Exchange
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I’ve seen a number of people looking for examples of how to access web services from VB6.  I’ve been using a test harness I built in VB6 (using many resources I found online) that I use for small projects to work out how to communicate with web serv…
You can of course define an array to hold data that is of a particular type like an array of Strings to hold customer names or an array of Doubles to hold customer sales, but what do you do if you want to coordinate that data? This article describes…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…
###### Suggested Courses
Course of the Month9 days, 12 hours left to enroll