How do I transform value into screen coordinates

Click For Summary
To transform x, y values into screen coordinates, a linear transformation is required. For the x-axis, where the range is from 0 to 800, the transformation can be expressed as h = Ax + B, with B determined to be 40. For the y-axis, which ranges from 12 to 20, the transformation is v = Ay + B, with A calculated from the difference between the screen coordinates at the top and bottom. By solving these equations, the appropriate values for A and B can be found to accurately map the coordinates onto the display area. This method ensures that the transformation maintains proportionality across the screen.
tonytj
Messages
1
Reaction score
0
How do I transform my x, y values into screen coordinates system

All values is in pixels
In my coordinate system origo is located in (40,495)
The display area that I can use is from X=40 to x=750 and
from y=495 to y=55
When you go down in the coordinate system the y value is increasing and when
you go to the right
the x value is increasing.
The y-axis is showing time from 12:00 to 20:00 and the x-axis is distance
showing from 0 to 800

So I can have values like
[13:10, 190]
[13:40, 240]
[14:25, 390]
[15:10, 431]
[16:10, 554]
[17:10, 643]
[18:10, 740]

I just wonder if someone has a algoritm that I can use to transform my
values into this coordinate system.


//Tony
 
Mathematics news on Phys.org
I assume you want a linear transformation (so that one part of the screen isn not "squeezed" or "stretched" more than another). You want x= 0 to correspond to screen coordinate, h= 40 and x= 800 to correspond to h= 750. A linear transformation is of the form h= Ax+ B. x=0, h= 40 tells you that 40= A(0)= B so B= 40. x= 800, h= 750 gives 750= 800A+ B= 800A+ 40. Solve that for A.

Similarly, in terms of "y" and vertical coordinates, you want v= Ay+ B. y= 12, at the bottom, corresponds to v= 495 so 495= 12A+ B. y= 20, at the top, corresponds to v= 55 so 55= 20A+ B. You can eliminate B from that by subtracting the two equations: 495- 55= 440= 8A. Solve that for A, the put that into either equation to solve for B.
 
Here is a little puzzle from the book 100 Geometric Games by Pierre Berloquin. The side of a small square is one meter long and the side of a larger square one and a half meters long. One vertex of the large square is at the center of the small square. The side of the large square cuts two sides of the small square into one- third parts and two-thirds parts. What is the area where the squares overlap?

Similar threads

  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 1 ·
Replies
1
Views
1K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 40 ·
2
Replies
40
Views
5K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 7 ·
Replies
7
Views
1K
  • · Replies 20 ·
Replies
20
Views
4K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 4 ·
Replies
4
Views
2K