- 漏刻有時(shí)地理信息系統(tǒng)說明文檔(LOCKGIS、php后臺管理、三端一體PC-H5-微信小程序、百度地圖jsAPI二次開發(fā)、標(biāo)注彈窗導(dǎo)航)
- 漏刻有時(shí)地理信息系統(tǒng)LOCKGIS小程序配置說明(web-view組件、服務(wù)器域名配置、復(fù)制鏈接和轉(zhuǎn)發(fā)功能)
- 漏刻有時(shí)地理信息系統(tǒng)LOCKGIS主程序配置說明(地圖調(diào)起彈窗、圖像標(biāo)注、指定地圖中心、H5獲取導(dǎo)航、微信小程序環(huán)境識別)
前言
漏刻有時(shí)智能地理信息系統(tǒng),英文名稱LOCKGIS(后文簡稱:LOCKGIS),基于百度地圖JavaScript API,旨在幫助開發(fā)者在網(wǎng)站中構(gòu)建功能豐富、交互性強(qiáng)的地圖應(yīng)用,將地理位置與數(shù)字化技術(shù)相結(jié)合,為用戶提供實(shí)時(shí)、有效的地理信息服務(wù)。
LOCKGIS通過web、移動端、桌面應(yīng)用等方式,將地圖數(shù)據(jù)和地理信息展示出來,方便用戶實(shí)現(xiàn)地圖瀏覽、地點(diǎn)搜索、路線規(guī)劃等功能。同時(shí),還可以應(yīng)用到各行各業(yè),如房地產(chǎn)、旅游、物流、交通等領(lǐng)域,為相關(guān)企業(yè)和個(gè)人提供基于地理位置的信息服務(wù)和解決方案,提升其運(yùn)營效率和服務(wù)質(zhì)量,促進(jìn)經(jīng)濟(jì)發(fā)展。
另外,地圖開發(fā)還可以結(jié)合人工智能、大數(shù)據(jù)等技術(shù),實(shí)現(xiàn)更加智能、高效的地理信息服務(wù),為人們帶來更多的便利和體驗(yàn)。
LOCKGIS二次開發(fā)者可以根據(jù)自身應(yīng)用需要對地圖API進(jìn)行個(gè)性化的擴(kuò)展和定制,達(dá)到更符合業(yè)務(wù)需求的功能效果,為用戶提供更好的服務(wù)。
通過地圖信息系統(tǒng)的二次開發(fā),可以實(shí)現(xiàn)以下功能:
- 地理定位:對地圖上的數(shù)據(jù)進(jìn)行定位和標(biāo)注,使數(shù)據(jù)能夠更直觀、更易于理解。
- 數(shù)據(jù)分析:通過對標(biāo)注在地圖上的數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析,可以更快速地發(fā)現(xiàn)數(shù)據(jù)間的關(guān)系和規(guī)律。
- 業(yè)務(wù)開發(fā):通過二次開發(fā),可以根據(jù)自身需要擴(kuò)展地圖API的功能,方便開發(fā)者快速實(shí)現(xiàn)相關(guān)業(yè)務(wù)。
- 數(shù)據(jù)可視化:將地圖部署到數(shù)據(jù)可視化平臺上,可以將數(shù)據(jù)在地圖上以可視化的方式展示出來,幫助用戶更好地理解數(shù)據(jù)。
- 市場定制:通過定制化地圖樣式、圖標(biāo)和注記等,可以根據(jù)公司品牌風(fēng)格和業(yè)務(wù)需求來展現(xiàn)自身的特色。
漏刻有時(shí)地理信息系統(tǒng)的二次開發(fā)可以幫助企業(yè)、開發(fā)者更好地實(shí)現(xiàn)業(yè)務(wù)需求,同時(shí)提高應(yīng)用開發(fā)效率,為用戶提供更好的服務(wù)。
一、運(yùn)行環(huán)境
(一)環(huán)境檢查
操作系統(tǒng):Linux、WINNT;
PHP版本: 5.5+;
MySQL版本:5.6+;
(二)權(quán)限檢查
conf:可寫;
upload:可寫;
(三)函數(shù)支持
file_get_contents():支持
mb_convert_encoding():支持
json_encode():支持
(四)域名相關(guān)
1.域名備案,否則無法在小程序中添加服務(wù)器和業(yè)務(wù)域名;
2.SSL證書,否則無法在小程序中正常綁定域名和實(shí)現(xiàn)實(shí)時(shí)定位功能;
二、核心代碼
(一)坐標(biāo)展示
- 考慮加裝速度和實(shí)際效果,首次加載100個(gè)最新的坐標(biāo)點(diǎn);
- 搜索顯示全部坐標(biāo);
public function getMarkers()
{
global $db, $res;
dbc();
//獲取數(shù)據(jù);
@$keywords = get_param("keywords");
$sql = "select poi_id,poi_sn,poi_name,poi_area,poi_address,poi_lon,poi_lat,poi_type,poi_phone from " . $db->table('poi') . " WHERE 1 ";
if ($keywords != "") {
$sql .= " AND poi_name like '%" . $keywords . "%'";
}
$sql .= " ORDER BY poi_id DESC";
//首次加載默認(rèn)顯示,搜索全部顯示
if ($keywords == "") {
$sql .= " LIMIT 100";
}
$row = $db->queryall($sql);
$res['code'] = 0;
$res["data"] = $row;
die(json_encode_lockdata($res));
}
(二)實(shí)時(shí)定位
//初始化地圖;
var map;
function map_init() {
map = new BMap.Map("lock_map", {enableMapClick: false});
var point = new BMap.Point(120.199672, 30.331184);
map.centerAndZoom(point, 17);
map.enableScrollWheelZoom();
// 添加定位控件;
var geolocationControl = new BMap.GeolocationControl();
map.addControl(geolocationControl);
//綁定定位成功后事件
geolocationControl.addEventListener("locationSuccess", function (e) {
console.log(e.point.lng) //定位成功后調(diào)用逆地址解析函數(shù)
});
//綁定定位失敗后事件
geolocationControl.addEventListener("locationError", function (e) {
//console.log(e);
map.centerAndZoom("寧波市", 17); //用城市名設(shè)置地圖中心點(diǎn)
});
//自動定位;
getBdGeo();
function getBdGeo() {
var geolocation = new BMap.Geolocation();
geolocation.getCurrentPosition(function (r) {
if (this.getStatus() == BMAP_STATUS_SUCCESS) {
map.clearOverlays();
map.panTo(r.point);
//alert(JSON.stringify(r));
$("#poi_address").val(r.address.province + r.address.city + r.address.district + r.address.street + r.address.street_number);
$("#lnglat").val(r.point.lng + "," + r.point.lat)
//返回當(dāng)前中心點(diǎn);
var points = new BMap.Point(r.point.lng, r.point.lat);
map.centerAndZoom(points, 17);
//添加標(biāo)注;
var marker = new BMap.Marker(points);
map.addOverlay(marker);
marker.enableDragging();
marker.addEventListener('dragend', function () {
//console.log(marker.getPosition().lat);
$("#lnglat").val(marker.getPosition().lng + "," + marker.getPosition().lat)
})
} else {
//定位失敗
layer.msg('無法獲取定位,系統(tǒng)將自動定位,錯誤碼:' + this.getStatus(), {icon: 2, time: 1000}, function () {
map.centerAndZoom("寧波市", 17); //用城市名設(shè)置地圖中心點(diǎn)
})
}
}, function (error) {
console.log(error);
}, {
enableHighAccuracy: true,//是否要求高精度的地理位置信息
timeout: 1000,//對地理位置信息的獲取操作做超時(shí)限制,如果再該事件內(nèi)未獲取到地理位置信息,將返回錯誤
maximumAge: 0//設(shè)置緩存有效時(shí)間,在該時(shí)間段內(nèi),獲取的地理位置信息還是設(shè)置此時(shí)間段之前的那次獲得的信息,超過這段時(shí)間緩存的位置信息會被廢棄
});
}
}
三、界面展示
(一)微信小程序端
(二)H5展示頁
(三)PC端
(四)PHP后臺管理
四、技術(shù)特點(diǎn)
(一)支持私有部署
私有部署指將軟件部署在自己的服務(wù)器或云服務(wù)器上,而非使用第三方提供的服務(wù)。LOCKGIS支持私有部署:
- 安全性更高:私有部署可以更好地保護(hù)敏感數(shù)據(jù)和知識產(chǎn)權(quán),避免數(shù)據(jù)泄露和侵權(quán)。
- 可定制性更強(qiáng):私有部署可以根據(jù)企業(yè)自身需要進(jìn)行自定義和定制,更加符合企業(yè)的業(yè)務(wù)需求。
- 可控性更強(qiáng):私有部署可以實(shí)時(shí)監(jiān)控和管理系統(tǒng)的運(yùn)行狀況和數(shù)據(jù)流向,更加可控。
- 成本更低:私有部署可以避免使用第三方服務(wù)帶來的成本,并且可以使用現(xiàn)有設(shè)備或云服務(wù)器,降低硬件成本。
- 沒有依賴第三方:私有部署不需要依賴第三方提供的服務(wù),不會因?yàn)榈谌椒?wù)的限制而受到影響。
(二)LOCKGIS開發(fā)特點(diǎn)
作為一個(gè)GIS開發(fā)應(yīng)用,需要操作和處理地理和空間數(shù)據(jù),通過構(gòu)建運(yùn)行在地圖上的用戶界面,將這些數(shù)據(jù)可視化。
- 優(yōu)秀的地圖底層
地圖是GIS應(yīng)用程序的核心,為了讓地圖有效,需要針對市場實(shí)際情況選擇地圖底層,以便更好的展示業(yè)務(wù)需求,創(chuàng)造業(yè)務(wù)場景。在設(shè)計(jì)地圖時(shí),需要考慮數(shù)據(jù)的層次結(jié)構(gòu)和可視化效果,同時(shí)要確保地圖簡潔易懂。LOCKGIS采用百度地圖開發(fā)平臺技術(shù)接口,解決市場需求。 - 數(shù)據(jù)獲取和處理
GIS應(yīng)用程序需要讀取和處理大量地理和空間數(shù)據(jù)。因此,LOCKGIS采用PHP+MySQL開發(fā),從不同的數(shù)據(jù)源中獲取這些數(shù)據(jù),并在應(yīng)用程序中處理和存儲它們。 - GIS API
GIS同一采用百度地圖開發(fā)API和騰訊地圖開發(fā)API(微信小程序環(huán)境內(nèi))實(shí)現(xiàn)應(yīng)用程序中調(diào)用地圖、地理和空間數(shù)據(jù),并將其可視化。 - 數(shù)據(jù)庫管理
GIS應(yīng)用程序需要使用數(shù)據(jù)庫來存儲和管理地圖數(shù)據(jù)。系統(tǒng)采用開源MySQL數(shù)據(jù)庫,按照實(shí)際需求設(shè)計(jì)數(shù)據(jù)表,并合理化使用SQL查詢來處理數(shù)據(jù)和戰(zhàn)術(shù)數(shù)據(jù)。 - 空間分析
GIS應(yīng)用程序進(jìn)行空間分析來解決各種問題,使用空間數(shù)據(jù)分析庫,如Geospatial Analytics、Shapely和GDAL,來執(zhí)行空間分析。 - 地理編碼和反向地理編碼
地理編碼將地理位置轉(zhuǎn)換為地址,反向地理編碼將地址轉(zhuǎn)換為地理位置,通過第三方API和庫來實(shí)現(xiàn)這些功能,對于用戶來說,僅需點(diǎn)擊操作即可。 - 用戶界面設(shè)計(jì)
GIS應(yīng)用程序的用戶界面應(yīng)該易于使用并且功能強(qiáng)大。通過了解用戶界面設(shè)計(jì)的最佳實(shí)踐,使用JavaScript和HTML/CSS來構(gòu)建動態(tài)、交互式的用戶界面。
(三)功能延伸
- 支持圖標(biāo)標(biāo)注功能
- 支持文字標(biāo)簽功能
- 支持信息彈窗功能
- 支持地圖調(diào)起,實(shí)現(xiàn)導(dǎo)航功能
- 支持坐標(biāo)采集功能
- 支持標(biāo)注篩選查詢功能
- 支持位置糾偏功能
-
- …
按照業(yè)務(wù)需求,可以實(shí)現(xiàn)更多復(fù)雜的功能,如:文章來源:http://www.zghlxwxcb.cn/news/detail-455057.html
- 支持富文本信息彈窗框(圖片、視頻信息展示)
- 支持POI興趣點(diǎn)之間直接距離測算
- 支持路線規(guī)劃
- 支持圓形區(qū)域POI檢索
- …
@漏刻有時(shí)文章來源地址http://www.zghlxwxcb.cn/news/detail-455057.html
到了這里,關(guān)于漏刻有時(shí)地理信息系統(tǒng)說明文檔(LOCKGIS、php后臺管理、三端一體PC-H5-微信小程序、百度地圖jsAPI二次開發(fā)、標(biāo)注彈窗導(dǎo)航)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!