免费可以看的无遮挡av无码|国产在线拍揄自揄视频网站|在线无码精品视频播放在|欧美亚洲国产成人精品,国产成人久久77777精品,亚洲欧美视频在线观看,色偷偷色噜噜狠狠网站久久

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > 84坐標(biāo)系和2000坐標(biāo)系的區(qū)別

84坐標(biāo)系和2000坐標(biāo)系的區(qū)別

來源:千鋒教育
發(fā)布人:xqq
時(shí)間: 2023-11-24 23:20:09 1700839209

在GIS應(yīng)用中,坐標(biāo)系扮演著重要的角色。坐標(biāo)系是地圖與現(xiàn)實(shí)世界之間的橋梁,能夠?qū)O為復(fù)雜的真實(shí)世界問題轉(zhuǎn)化為易于處理的數(shù)字問題。然而,不同的坐標(biāo)系在處理方式上會(huì)存在差異。本文將從多個(gè)方面對常見的84坐標(biāo)系和2000坐標(biāo)系進(jìn)行詳細(xì)闡述。

一、基本介紹

84坐標(biāo)系是一種經(jīng)緯度坐標(biāo)系,其坐標(biāo)系中心為地球質(zhì)心。該坐標(biāo)系最重要的特點(diǎn)是能夠方便地表示全球范圍內(nèi)的地理位置,但無法精確表達(dá)較小范圍內(nèi)的地理位置。

2000坐標(biāo)系是國家測繪局推薦使用的新一代大地坐標(biāo)系,其核心是新的大地參考系。相比于84坐標(biāo)系,2000坐標(biāo)系更加精確,能夠?qū)⒕植康乩砦恢帽磉_(dá)到亞米級(jí)別。此外,2000坐標(biāo)系還具有與國際接軌的優(yōu)勢。

二、經(jīng)緯度轉(zhuǎn)換方式

經(jīng)緯度坐標(biāo)系是最基本的坐標(biāo)系之一,在坐標(biāo)轉(zhuǎn)換中被廣泛使用。在地球表面的任意一點(diǎn)上,可以通過一個(gè)水平面和一個(gè)垂直于水平面的軸建立本地地理坐標(biāo)系來描述其位置。

在84坐標(biāo)系中,將地球上一個(gè)點(diǎn)的位置用經(jīng)、緯度來表示。經(jīng)度是指從東往西的角度,以子午線為基準(zhǔn),范圍在-180°到180°之間。緯度是指從南往北的角度,以赤道為基準(zhǔn),范圍在-90°到90°之間。

在2000坐標(biāo)系中,經(jīng)緯度也是用來表示一個(gè)位置的。但是,由于該坐標(biāo)系采用了新的大地參考系,因此需使用新的轉(zhuǎn)換公式進(jìn)行計(jì)算。


// 84坐標(biāo)系轉(zhuǎn)2000坐標(biāo)系

public double[] convert84To2000(double latitude, double longitude) {
    double x = 0.0, y = 0.0, z = 0.0;
    double a = 6378137.0;
    double f = 1.0 / 298.257223563;
    double b = (1 - f) * a;
    double e = Math.sqrt((a * a - b * b) / (a * a));
    double E = Math.atan2(z, Math.sqrt(x * x + y * y));
    double r = Math.sqrt(x * x + y * y + z * z);
    double latitude1 = Math.atan2(z + e * e * b * Math.pow(Math.sin(E), 3), r - a * Math.pow(e, 2) * Math.pow(Math.cos(E), 3));
    double longitude1 = Math.atan2(y, x);
    double N = a / Math.sqrt(1 - Math.pow(e * Math.sin(latitude1), 2));
    double h = r / Math.cos(latitude1) - N;
    double X = (N + h) * Math.cos(latitude1) * Math.cos(longitude1);
    double Y = (N + h) * Math.cos(latitude1) * Math.sin(longitude1);
    double Z = (N * (1 - Math.pow(e, 2)) + h) * Math.sin(latitude1);
    double k = 1.0000648438897;
    double dx = -24.9;
    double dy = 140.8;
    double dz = 76.3;
    double X1 = k * (X + dx);
    double Y1 = k * (Y + dy);
    double Z1 = k * (Z + dz);
    return new double[]{X1, Y1, Z1};
}

三、投影方式

地理坐標(biāo)系統(tǒng)一般只能處理本地地理坐標(biāo)系,無法處理空間地理坐標(biāo)系,因此需要將地球表面的曲面投影到一個(gè)平面上,再進(jìn)行處理。這時(shí),就需要使用坐標(biāo)投影方式。不同的坐標(biāo)系統(tǒng)有著不同的投影方式,因此在進(jìn)行數(shù)據(jù)轉(zhuǎn)換時(shí)需要對投影方式進(jìn)行轉(zhuǎn)換。

84坐標(biāo)系采用的是經(jīng)緯度投影方式,將地球投影為一個(gè)橢球面,并使用經(jīng)緯度坐標(biāo)系來表示位置。這種方式適合于小范圍內(nèi)的測量,但無法處理大范圍內(nèi)的地理數(shù)據(jù)。

2000坐標(biāo)系采用的是局部坐標(biāo)系投影方式,將地球投影為一個(gè)平面,使用直角坐標(biāo)系來表示位置。該投影方式精度高,能夠處理高精度和大范圍內(nèi)的地理數(shù)據(jù)。


// 84坐標(biāo)系和2000坐標(biāo)系之間的投影轉(zhuǎn)換

import pyproj

def convert84To2000(latitude, longitude):
    p1 = pyproj.Proj(init='epsg:4326')
    p2 = pyproj.Proj(init='epsg:4547')
    return pyproj.transform(p1, p2, longitude, latitude)

四、距離計(jì)算方式

在實(shí)際應(yīng)用中,需要根據(jù)位置信息計(jì)算出兩點(diǎn)之間的距離。由于地球是一顆球體,因此在計(jì)算兩點(diǎn)之間的距離時(shí)需要考慮地球曲率的影響。

在84坐標(biāo)系中,通常采用地球球面上兩點(diǎn)之間的最短距離(即大圓距離)來計(jì)算距離。這種方法可以使用Haversine公式來計(jì)算,能夠滿足大多數(shù)需求。

在2000坐標(biāo)系中,通常采用勾股定理計(jì)算兩點(diǎn)之間的距離。由于平面上直線距離與平面上曲線距離相等,因此在該投影方式下,使用勾股定理即可計(jì)算兩點(diǎn)之間的距離。


// 計(jì)算84坐標(biāo)系下兩點(diǎn)之間的距離

public double distance84(double latitude1, double longitude1, double latitude2, double longitude2) {
    double earthRadius = 6371.0;
    double dLat = Math.toRadians(latitude2 - latitude1);
    double dLng = Math.toRadians(longitude2 - longitude1);
    double a = Math.sin(dLat / 2) * Math.sin(dLat / 2) +
            Math.cos(Math.toRadians(latitude1)) * Math.cos(Math.toRadians(latitude2)) *
                    Math.sin(dLng / 2) * Math.sin(dLng / 2);
    double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
    return earthRadius * c;
}

// 計(jì)算2000坐標(biāo)系下兩點(diǎn)之間的距離

public double distance2000(double x1, double y1, double x2, double y2) {
    return Math.sqrt(Math.pow(x2 - x1, 2) + Math.pow(y2 - y1, 2));
}

五、地圖展示方式

在地理信息系統(tǒng)中,地圖展示是重要的數(shù)據(jù)呈現(xiàn)方式。不同的坐標(biāo)系在地圖展示方式上也存在差異。

84坐標(biāo)系通常采用經(jīng)緯度坐標(biāo)系來展示地圖,以全球?yàn)檎故痉秶軌蚍奖愕卣故敬蠓秶牡乩頂?shù)據(jù)。

2000坐標(biāo)系通常采用網(wǎng)格坐標(biāo)系來展示地圖,以局部區(qū)域?yàn)檎故痉秶?,能夠展示更加精確的地理數(shù)據(jù)。此外,2000坐標(biāo)系還應(yīng)用了多分辨率技術(shù)和變換技術(shù)來提高地圖繪制效率,使其具有優(yōu)秀的性能表現(xiàn)。


// 使用OpenLayers展示84坐標(biāo)系地圖

var map = new ol.Map({
    target: 'map',
    layers: [
        new ol.layer.Tile({
            source: new ol.source.OSM()
        })
    ],
    view: new ol.View({
        projection: 'EPSG:4326',
        center: [120.12, 30.27],
        zoom: 8
    })
});

// 使用ArcGIS API for JavaScript展示2000坐標(biāo)系地圖

var map = new Map("map", {
    basemap: "streets",
    center: [119.768133, 29.582415],
    zoom: 12
});

六、總結(jié)

本文從多個(gè)方面對84坐標(biāo)系和2000坐標(biāo)系進(jìn)行了詳細(xì)的闡述。通過對兩者的對比分析,可以看出2000坐標(biāo)系相對于84坐標(biāo)系在準(zhǔn)確性、適用范圍、處理能力和性能表現(xiàn)方面都具有優(yōu)勢。當(dāng)需要處理高精度且范圍較廣的地理數(shù)據(jù)時(shí),2000坐標(biāo)系是更好的選擇。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT