Tôi đang cố gắng phát triển một trang trong ASP.NET sẽ hoạt động như một máy chủ lát cho Google MapChuyển đổi dài/vĩ độ sang pixel x/y, được cung cấp mức thu phóng
Nó sẽ kéo thu thập các điểm vĩ độ/kinh độ từ cơ sở dữ liệu, sau đó hiển thị chúng dưới dạng các chấm đỏ nhỏ trên nền trong suốt, được cung cấp mức thu phóng (mặc định: 15).
Sau đó, nó sẽ trả lại kết quả dưới dạng hình ảnh loại GIF.
Có bất kỳ thuật toán hoặc thư viện nào được phát triển cho phép tôi thực hiện bộ vĩ độ/kinh độ này và chuyển đổi chúng thành một tập hợp các tọa độ 2D pixel, với mức thu phóng không?
(Điều này là tất cả được thực hiện phía máy chủ, vì vậy tôi không thể sử dụng API của Google Maps.)
Cập nhật: Tìm thấy một mã mẫu trong Perl rằng làm điều gì đó tương tự:
http://blog.barros.ws/2009/03/06/convert-lat-lng-and-zoom-values-to-pixel-xy-on-a-map/
Rắc rối là, tôi không biết Perl, và không thực sự có thời gian để mở một cuốn sách và tìm hiểu nó.
Có ai có thể giúp tôi giải mã những gì đang diễn ra trong chức năng này không?
sub Google_Coord_to_Pix
{
my $value = shift ;
my $lat = shift ;
my $lng = shift ;
my @d = () ;
my $e = 0 ;
$d[1] = sprintf("%0.0f", $$value{'bmO'} + $lng * $$value{'pixLngDeg'}) ;
$e = sin($lat * $$value{'Wa'}) ;
if($e > 0.99999)
{
$e = 0.99999 ;
}
if($e < -0.99999)
{
$e = -0.99999 ;
}
$d[0] = sprintf("%0.0f", $$value{'bmO'} + 0.5 * log((1 + $e)/(1 - $e)) * (-1) * $$value{'pixLngRad'}) ;
return (@d) ;
}
Có, bạn là chính xác. Tôi sẽ xóa câu trả lời của tôi. –