From c32f79fc7ed1b6f14c5c2340fc96557f38279753 Mon Sep 17 00:00:00 2001
From: Admin <Dana_Lee1016@126.com>
Date: 星期一, 22 二月 2021 10:51:44 +0800
Subject: [PATCH] 不用拷贝giscar到本地了。改为从平台获取,保存至本地,然后进行读取
---
app/src/main/java/safeluck/drive/evaluation/fragment/ArcGisMapFragment.java | 41 +++++++++++++++++++++++++++++++++++------
1 files changed, 35 insertions(+), 6 deletions(-)
diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/ArcGisMapFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/ArcGisMapFragment.java
index 8d62c10..feabb12 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/ArcGisMapFragment.java
+++ b/app/src/main/java/safeluck/drive/evaluation/fragment/ArcGisMapFragment.java
@@ -33,10 +33,14 @@
import com.esri.arcgisruntime.geometry.SpatialReference;
import com.esri.arcgisruntime.layers.ArcGISMapImageLayer;
import com.esri.arcgisruntime.layers.ArcGISTiledLayer;
+import com.esri.arcgisruntime.loadable.LoadStatus;
import com.esri.arcgisruntime.mapping.ArcGISMap;
+import com.esri.arcgisruntime.mapping.MobileMapPackage;
import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener;
import com.esri.arcgisruntime.mapping.view.Graphic;
import com.esri.arcgisruntime.mapping.view.GraphicsOverlay;
+import com.esri.arcgisruntime.mapping.view.MapScaleChangedEvent;
+import com.esri.arcgisruntime.mapping.view.MapScaleChangedListener;
import com.esri.arcgisruntime.mapping.view.MapView;
import com.esri.arcgisruntime.symbology.SimpleFillSymbol;
import com.esri.arcgisruntime.symbology.SimpleLineSymbol;
@@ -46,6 +50,7 @@
import org.json.JSONException;
import org.json.JSONObject;
+import java.io.File;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
@@ -117,13 +122,18 @@
ExamStatus examStatus = (ExamStatus)obj;
if (examStatus.getMap_id()>-1){
if (examStatus.getEnter()==ENTER){
- MyLog.i(TAG,String.format("杩涘叆[%d] map",examStatus.getMap_id()));
double scale = mMapView.getMapScale();
- mMapView.setViewpointScaleAsync(scale * 0.2*0.2);
+ MyLog.i(TAG,String.format("杩涘叆[%d] map,scale=%f",examStatus.getMap_id(),scale));
+ mMapView.setViewpointScaleAsync(scale * 0.2);
+
+
+
}else{
- MyLog.i(TAG,String.format("閫�鍑篬%d] map",examStatus.getMap_id()));
double scale = mMapView.getMapScale();
- mMapView.setViewpointScaleAsync(scale * 5*5);
+ MyLog.i(TAG,String.format("閫�鍑篬%d] map,scale=%f",examStatus.getMap_id(),scale));
+
+ mMapView.setViewpointScaleAsync(scale * 5);
+
}
}
}
@@ -177,6 +187,12 @@
View view = inflater.inflate(R.layout.layout_arc_gis,container,false);
mMapView = view.findViewById(R.id.mapView);
+ mMapView.addMapScaleChangedListener(new MapScaleChangedListener() {
+ @Override
+ public void mapScaleChanged(MapScaleChangedEvent mapScaleChangedEvent) {
+ Log.i(TAG,"mapscaleChangelistenre");
+ }
+ });
view.findViewById(R.id.btn_change_map).setOnClickListener(this);
mSurfaceView = view.findViewById(R.id.surfaceview_arcgis);
@@ -258,6 +274,18 @@
addTrailheadsLayer();
+// url = Environment.getExternalStorageDirectory().getAbsolutePath()+ File.separator+_mActivity.getPackageName()+"/shoufei0220.mmpk";
+// Log.i(TAG,"url ========="+url);
+// final MobileMapPackage mobileMapPackage = new MobileMapPackage(url);
+// mobileMapPackage.loadAsync();
+// mobileMapPackage.addDoneLoadingListener(()->{
+// LoadStatus loadStatus = mobileMapPackage.getLoadStatus();
+// if (loadStatus==LoadStatus.LOADED){
+// List<ArcGISMap> mainArcGisMapL = mobileMapPackage.getMaps();
+// ArcGISMap mainArcGismapMMPK = mainArcGisMapL.get(0);
+// mMapView.setMap(mainArcGismapMMPK);
+// }
+// });
return view;
}
@@ -705,7 +733,7 @@
// create an empty map instance
ArcGISMap map = new ArcGISMap();
Log.i(TAG,String.format("map.getMiniScale=%f",map.getMinScale()));
- map.setMinScale(1000.0);
+ map.setMinScale(400.0);
// add map image layer as operational layer
map.getOperationalLayers().add(mapImageLayer);
mMapView.setMap(map);
@@ -769,8 +797,9 @@
}
private void readGisCar() {
- String carFilePath = Environment.getExternalStorageDirectory().getAbsolutePath()+"/"+_mActivity.getPackageName()+"/lianfang_giscar.json";
+ String carFilePath = Environment.getExternalStorageDirectory().getAbsolutePath()+"/"+_mActivity.getPackageName()+"/gisvehiclemodel.json";
if (TextUtils.isEmpty(carFilePath)){
+ Toast.makeText(_mActivity, "杞﹁締妯″瀷鏂囦欢涓嶅瓨鍦�", Toast.LENGTH_SHORT).show();
MyLog.i (TAG, "GISCar杞﹁締妯″瀷鏂囦欢涓嶅瓨鍦�");
return ;
}
--
Gitblit v1.8.0