在C#中,可以使用数学库或地理信息系统(GIS)库来将经纬度转换为XY平面坐标。以下是一种常见的方法:
using System;
using ProjNet.CoordinateSystems;
using ProjNet.CoordinateSystems.Transformations;
public static double[] ConvertLatLngToXY(double latitude, double longitude)
{
// 定义经纬度坐标系
ICoordinateSystem wgs84 = GeographicCoordinateSystem.WGS84;
// 定义XY平面坐标系(例如,Web墨卡托投影)
IProjectedCoordinateSystem projected = ProjectedCoordinateSystem.WebMercator;
// 创建坐标转换器
CoordinateTransformationFactory ctf = new CoordinateTransformationFactory();
ICoordinateTransformation transformation = ctf.CreateFromCoordinateSystems(wgs84, projected);
// 创建经纬度坐标点
double[] latLng = new double[] { longitude, latitude };
// 执行转换
double[] xy = transformation.MathTransform.Transform(latLng);
return xy;
}
double latitude = 40.7128; // 纬度
double longitude = -74.0060; // 经度
double[] xy = ConvertLatLngToXY(latitude, longitude);
Console.WriteLine("X坐标: " + xy[0]);
Console.WriteLine("Y坐标: " + xy[1]);
请注意,上述代码示例使用ProjNet库来执行坐标转换。您可以根据自己的需求选择其他库或方法来实现相同的功能。
领取专属 10元无门槛券
手把手带您无忧上云