【发布时间】:2010-09-20 05:27:25
【问题描述】:
我正在编写一个使用 Canvas 定位元素的地图应用程序。对于每个元素,我必须以编程方式将元素的 Lat/Long 转换为画布的坐标,然后设置 Canvas.Top 和 Canvas.Left 属性。
如果我有一个 360x180 的画布,我可以将画布上的坐标转换为 X 轴上从 -180 到 180 而不是 0 到 360 以及 Y 轴上从 90 到 -90 而不是 0 到 180 的坐标吗?
扩展要求:
- 画布可以是任意大小,因此在 360x180 或 5000x100 的情况下仍然可以使用。
- 纬度/经度区域可能并不总是 (-90,-180)x(90,180),它可以是任何值(即 (5,-175)x(89,-174))。
- PathGeometry 等基于点而不是 Canvas.Top/Left 的元素需要工作。
【问题讨论】:
标签: c# wpf xaml wpf-controls