`
szpapas
  • 浏览: 106895 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

EPSG:900913 与 EPSG:4326 转换方法

阅读更多
前提条件是安装了Mapserver for Windows ms4w 软件包中已经包含

1. 设置环境变量
set GDAL_DATA=\ms4w\gdaldata
path=%path%;\ms4w\tools\gdal-ogr;\ms4w\Apache\cgi-bin

设置坐标系,EPSG:90013
在Dos下执行这个命令:
echo ^<900913^> +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs ^<^> >> \ms4w\proj\nad\epsg


2. 转换Arcgis 的 SHP 文件(用ogr2ogr实现)
G:\>ogr2ogr

Usage: ogr2ogr [--help-general] [-skipfailures] [-append] [-update]
               [-select field_list] [-where restricted_where]
               [-sql <sql statement>]
               [-spat xmin ymin xmax ymax] [-preserve_fid] [-fid FID]
               [-a_srs srs_def] [-t_srs srs_def] [-s_srs srs_def]
               [-f format_name] [-overwrite] [[-dsco NAME=VALUE] ...]
               dst_datasource_name src_datasource_name
               [-lco NAME=VALUE] [-nln name] [-nlt type] [layer [layer ...]]


可以用ogrinfo 查看shp 信息
F:\ms4w\apps\webgis\data2>ogrinfo -summary . rivers_region
INFO: Open of `.'
      using driver `ESRI Shapefile' successful.

Layer name: rivers_region
Geometry: Polygon
Feature Count: 8370
Extent: (112.980256, 22.538197) - (114.054200, 23.923092)
Layer SRS WKT:
GEOGCS["Lat Long WGS84",
    DATUM["WGS84",
        SPHEROID["World_Geodetic_System_of_1984",6378137,298.257223563]],
    PRIMEM["Greenwich",0],
    UNIT["Degree",0.017453292519943295]]
序号: String (10.0)
编号: String (10.0)
名称: String (30.0)
类型: String (15.0)
LAT_HI: Real (10.6)
LONG_HI: Real (11.6)
LAT_LOW: Real (10.6)
LONG_LOW: Real (11.6)

现在是LonLat的坐标系,下面我们来转换:
命令格式:
ogr2ogr -t_srs EPSG:900913 <to_file.shp> <from_shape_file.shp>

>ogr2ogr -t_srs EPSG:900913 out_river.shp rivers_region.shp

执行后得到的结果是:

F:\ms4w\apps\webgis\data2>ogrinfo -summary . out_river
INFO: Open of `.'
      using driver `ESRI Shapefile' successful.

Layer name: out_river
Geometry: Polygon
Feature Count: 8370
Extent: (12576904.567614, 2576266.091130) - (12696455.466834, 2744039.331212)
Layer SRS WKT:
PROJCS["Google Maps Global Mercator",
    GEOGCS["GCS_WGS_1984",
        DATUM["WGS_1984",
            SPHEROID["WGS_1984",6378137,298.257223563]],
        PRIMEM["Greenwich",0],
        UNIT["Degree",0.017453292519943295]],
    PROJECTION["Mercator_2SP"],
    PARAMETER["standard_parallel_1",0],
    PARAMETER["latitude_of_origin",0],
    PARAMETER["central_meridian",0],
    PARAMETER["false_easting",0],
    PARAMETER["false_northing",0],
    UNIT["Meter",1],
    EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0
x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext  +no_defs"]]
序号: String (10.0)
编号: String (10.0)
名称: String (30.0)
类型: String (15.0)
LAT_HI: Real (10.6)
LONG_HI: Real (11.6)
LAT_LOW: Real (10.6)
LONG_LOW: Real (11.6)


3.Raster 文件的转换方式。
Raster 文件通过是用GeoTiff的格式,中间包含了地理信息。
命令格式:
gdalwarp -s_srs EPSG:4326 -t_srs EPSG:900913 <from_file.tif> <to_file.tif>

先查看一下图片信息:
F:\ms4w\apps\webgis\data2>gdalinfo fg-900.TIF
Warning 1: TIFFFetchNormalTag:ASCII value for tag "Software" does not end in nul
l byte
Driver: GTiff/GeoTIFF
Files: fg-900.TIF
Size is 2058, 1756
Coordinate System is `'
Origin = (113.204516152319740,23.234743614544065)
Pixel Size = (0.000121859844067,-0.000121859844067)
Metadata:
  TIFFTAG_SOFTWARE=
  TIFFTAG_XRESOLUTION=300
  TIFFTAG_YRESOLUTION=300
  TIFFTAG_RESOLUTIONUNIT=2 (pixels/inch)
Image Structure Metadata:
  INTERLEAVE=BAND
Corner Coordinates:
Upper Left  ( 113.2045162,  23.2347436)
Lower Left  ( 113.2045162,  23.0207577)
Upper Right ( 113.4553037,  23.2347436)
Lower Right ( 113.4553037,  23.0207577)
Center      ( 113.3299099,  23.1277507)
Band 1 Block=2058x3 Type=Byte, ColorInterp=Palette
  Color Table (RGB with 256 entries)
    0: 0,0,0,255
    1: 128,0,0,255
    2: 0,128,0,255
    3: 128,128,0,255
    4: 0,0,128,255
    5: 128,0,128,255
    6: 0,128,128,255

执行转换命令:
F:\ms4w\apps\webgis\data2>gdalwarp -s_srs EPSG:4326 -t_srs EPSG:900913 fg-900.TI
F fg-900-n.TIF
Warning 1: TIFFFetchNormalTag:ASCII value for tag "Software" does not end in nul
l byte
Copying color table from fg-900.TIF to new file.
Creating output file that is 1983P x 1840L.
Warning 1: TIFFFetchNormalTag:ASCII value for tag "Software" does not end in nul
l byte
Processing input file fg-900.TIF.
0...10...20...30...40...50...60...70...80...90...100 - done.

执行完成后,我们再检查一下:
F:\ms4w\apps\webgis\data2>gdalinfo fg-900-n.TIF
Driver: GTiff/GeoTIFF
Files: fg-900-n.TIF
Size is 1983, 1840
Coordinate System is:
PROJCS["Google Maps Global Mercator",
    GEOGCS["WGS 84",
        DATUM["WGS_1984",
            SPHEROID["WGS 84",6378137,298.2572235630016,
                AUTHORITY["EPSG","7030"]],
            AUTHORITY["EPSG","6326"]],
        PRIMEM["Greenwich",0],
        UNIT["degree",0.0174532925199433],
        AUTHORITY["EPSG","4326"]],
    PROJECTION["Mercator_1SP"],
    PARAMETER["central_meridian",0],
    PARAMETER["scale_factor",1],
    PARAMETER["false_easting",0],
    PARAMETER["false_northing",0],
    UNIT["metre",1,
        AUTHORITY["EPSG","9001"]]]
Origin = (12601869.093575137000000,2660431.700036020900000)
Pixel Size = (14.077025171240757,-14.077025171240757)
Metadata:
  AREA_OR_POINT=Area
Image Structure Metadata:
  INTERLEAVE=BAND
Corner Coordinates:
Upper Left  (12601869.094, 2660431.700) (113d12'16.26"E, 23d22'28.38"N)
Lower Left  (12601869.094, 2634529.974) (113d12'16.26"E, 23d 9'34.49"N)
Upper Right (12629783.834, 2660431.700) (113d27'19.00"E, 23d22'28.38"N)
Lower Right (12629783.834, 2634529.974) (113d27'19.00"E, 23d 9'34.49"N)
Center      (12615826.464, 2647480.837) (113d19'47.63"E, 23d16'1.59"N)
Band 1 Block=1983x4 Type=Byte, ColorInterp=Palette
  Color Table (RGB with 256 entries)
    0: 0,0,0,255
    1: 128,0,0,255
    2: 0,128,0,255
    3: 128,128,0,255
    4: 0,0,128,255
    5: 128,0,128,255


END.
0
0
分享到:
评论
1 楼 java-admin 2011-10-11  
看bu懂。
EPSG:4326 代表的是坐标系吗?

相关推荐

    GIS坐标转换 JAVA版

    我是为了将EPSG:4326坐标转换成EPSG:900913坐标,找到的工具,然后添加了两者之间的转换方式! 使用方式: private static Projection proj = ProjectionFactory .getNamedPROJ4CoordinateSystem("epsg:900913");...

    Proj4js实现客户端坐标转换

    在使用 Proj4js 实现客户端坐标转换时,我们需要了解 EPSG:900913 投影坐标系的详细参数,以便正确地进行坐标转换。同时,我们也需要了解 WGS84 坐标系的详细参数,以便正确地将 WGS84 坐标系下的坐标转换为 EPSG:...

    Cesium 坐标转换,cesium坐标系

    2. EPSG:4326:这是WGS84坐标系的一种表示方式,它定义了经度和纬度的顺序和单位,通常用于地理信息系统(GIS)中。 3. Web Mercator(Web墨卡托):这是一种投影坐标系,常用于Web地图服务,如Google Maps和Bing ...

    SuperMap iDesktop 7C 谷歌坐标转换

    GPS设备通常采用WGS84坐标系统,而谷歌地图则使用自己的Web Mercator投影(也称为EPSG:900913或EPSG:3857),这是一种横轴墨卡托投影。由于两者之间存在差异,如果不进行转换,GPS数据在谷歌地图上显示的位置将会...

    国内常用EPSG坐标系

    坐标系转换需要的资源

    可以支持epsg解析的2.03版本

    与EPSG编码系统紧密关联,负责将地理位置从一个坐标系转换到另一个。 4. `zlib.dll`:ZLIB是一个广泛使用的数据压缩库,GDAL使用它来处理数据的压缩和解压缩,以减少存储需求和提高传输效率。 5. `srsdata`:这个...

    geo2epsg:根据地理坐标提供有效的 EPSG 代码 (WGS84 UTM)

    地理2epsg描述提供来自地理坐标的有效 EPSG 代码。 目前仅支持 WGS 84和 UTM。安装 npm install geo2epsg 设置 var Geo2EPSG = require ( 'geo2espg' ) ;var geo2espg = new Geo2EPSG ( ) ;用法十进制度度 分 秒学分...

    处理投影1

    接下来,我们创建了一个`extent`对象,表示EPSG:27700投影的地理范围,将其从EPSG:4326转换为EPSG:3857。这有助于限制地图的可视范围,确保只显示与所选投影相关的地理区域。 在创建OpenLayers的`map`实例时,我们...

    openlayer框架说明文档

    - **实例化与方法** - 实例化投影对象:`var projection = new OpenLayers.Projection('EPSG:4326', {});` - 方法: - `getCode`: 获取投影code。 - `getUnits`: 获取投影单位,可能是“度”或“米”。 - `...

    坐标系对应EPSG代号、经度范围、中央经线.rar

    每个EPSG编号代表一种特定的坐标系或投影方法,比如常见的WGS84(EPSG:4326)和UTM(例如EPSG:32611)。这些编码使得不同系统间的数据交换变得标准化,避免了混淆和不一致。 文件中的“坐标系对应EPSG代号”部分,...

    gis wkid 坐标参考 资料

    例如,当你从在线地图服务下载数据时,它们通常以Web Mercator(WKID 102113或3857)格式提供,而如果你需要与GPS设备或其他地理信息系统进行数据交换,可能需要转换成WGS 84(WKID 4326)。 在提供的资料《WKID....

    Openlayer 简单实例10

    2. `displayProjection`:这个属性定义了用户界面显示的坐标系,通常用于将地图上的坐标转换为人类可读的形式,这里仍然是“EPSG:4326”。 3. `units`:定义地图的单位,此处设置为“km”,意味着地图上的距离将以...

    空间坐标系与EPSG编号的对应关系.zip

    EPSG 编号是一个四位或五位的数字,比如常见的 WGS84 坐标系对应的 EPSG 编号是 4326,UTM 坐标系则有多个 EPSG 编号,如 UTM 区域 35N 的 EPSG 编号为 32635。每个 EPSG 编号代表一个特定的投影方式、参考椭球、...

    根据epsg代号进行坐标的批量投影转换

    source_epsg = 4326 # 源EPSG代码,例如WGS84 target_epsg = 3857 # 目标EPSG代码,例如Web Mercator source_srs = osr.SpatialReference() source_srs.ImportFromEPSG(source_epsg) target_srs = osr....

    openlayer加载

    - **球形墨卡托投影**:许多在线地图服务(如Google Maps)使用球形墨卡托投影(EPSG:900913),这是因为这种投影方式适合全球范围的地图显示。然而,在局部区域放大时,可能会出现一定的失真。 - **多源数据融合**...

    EE32 Projections.docx

    var transformedProjection = ee.Projection('EPSG:4326').transform([100, 0, 0, 0, -100, 0]); print(transformedProjection); ``` ##### 3.3 调整投影的平移 (Adjusting Translation) **方法:** ```...

    mapbox加载带高度的建筑白膜全流程

    这里可以进行投影转换然后在这里面勾选选择一下切片方案,即切片多少级,一般选择min到maxGridset可以这样新建一个,EPSG:900913其实就是3857投影,EPSG:900913与EPSG:3857等效的。 5. 获取服务地址,这个比较坑...

    金字塔图片服务器部署全步骤.docx

    注意,切割的文件必须是GeoTiff格式,包含经纬度和投影坐标,且可添加坐标系转换参数,如 `-s_srs EPSG:4326`。 **二、部署在GeoServer上** 1. **安装GeoServer** 安装GeoServer,并将金字塔插件(gt-image...

    openlayers在线绘制

    var coordinates3857 = ol.proj.transform(coordinates4326, 'EPSG:4326', 'EPSG:3857'); ``` 反之,将3857坐标转换为4326: ```javascript var coordinates3857 = ...; // 3857 坐标 var coordinates4326 = ...

    EZSurvey 1.0 Alpha.zip

    与同类软件相比,本软件支持多平台,图形数据采集、编辑更简洁,更符合常规操作习惯。 欢迎关注EZSurveyQQ群:523636554 EZSurvey_1_Alpha目前为测试版。请大家测试并反馈测试问题和建议,谢谢! 欢迎加入群:...

Global site tag (gtag.js) - Google Analytics