Commit aeedd7a4 authored by p x's avatar p x
Browse files

测试感知物加载

parent 4f89f2a9
...@@ -8,6 +8,7 @@ import com.minedata.minenavi.mapdal.LatLng ...@@ -8,6 +8,7 @@ import com.minedata.minenavi.mapdal.LatLng
import com.sd.api.bean.MyCLoc import com.sd.api.bean.MyCLoc
import com.sd.api.parkroad.MsParkRoad import com.sd.api.parkroad.MsParkRoad
import com.sd.api.parkroad.OnPrAddCar import com.sd.api.parkroad.OnPrAddCar
import com.sd.api.parkroad.PartType
import com.sd.api.parkroad.PtcBean import com.sd.api.parkroad.PtcBean
import com.sd.api.ui.MapMultiView.OnMapReadyLis import com.sd.api.ui.MapMultiView.OnMapReadyLis
import com.sd.api.ui.MapReadyView import com.sd.api.ui.MapReadyView
...@@ -35,13 +36,14 @@ class PartRoadActivity : AppCompatActivity() { ...@@ -35,13 +36,14 @@ class PartRoadActivity : AppCompatActivity() {
binding.mapMultiView.addMapRenderCallback(object : OnMapReadyLis { binding.mapMultiView.addMapRenderCallback(object : OnMapReadyLis {
override fun onMapReady(mapReadyView: MapReadyView) { override fun onMapReady(mapReadyView: MapReadyView) {
this@PartRoadActivity.mapReadView = mapReadyView this@PartRoadActivity.mapReadView = mapReadyView
MsParkRoad.setCarRoadVM(mapReadyView)
} }
}) })
setLis() setLis()
} }
private fun setLis() { private fun setLis() {
MsParkRoad.preloadMainCar(assets, "models/truck.glb") // MsParkRoad.preloadMainCar(assets, "models/truck.glb")
//主车移动 //主车移动
binding.bt1.setOnClickListener { binding.bt1.setOnClickListener {
mockFzLine() mockFzLine()
...@@ -105,9 +107,15 @@ class PartRoadActivity : AppCompatActivity() { ...@@ -105,9 +107,15 @@ class PartRoadActivity : AppCompatActivity() {
// MsParkRoad.warnAlerm("50332456-3030-3030-3530-303334533954", true, 5) // MsParkRoad.warnAlerm("50332456-3030-3030-3530-303334533954", true, 5)
MsParkRoad.clearAllTargets() MsParkRoad.clearAllTargets()
} }
//预加载模型 //预加载主车
binding.bt11.setOnClickListener { binding.bt11.setOnClickListener {
MsParkRoad.preloadMainCar(assets,"models/truck.glb") // println("-----点击预加载模型")
MsParkRoad.preloadMainCar(assets,"car.glb")
}
//预加载感知物
binding.bt12.setOnClickListener {
MsParkRoad.preloadParticipant(assets,"truck.glb",PartType.CAR)
MsParkRoad.preloadParticipant(assets,"passenger.glb",PartType.PEOPLE)
} }
} }
...@@ -141,7 +149,7 @@ class PartRoadActivity : AppCompatActivity() { ...@@ -141,7 +149,7 @@ class PartRoadActivity : AppCompatActivity() {
} }
//地图底图,当前位置,主车是否添加回调 //地图底图,当前位置,主车是否添加回调
MsParkRoad.updateMainCar(mapReadView, MyCLoc.instance, object : OnPrAddCar { MsParkRoad.updateMainCar(MyCLoc.instance, object : OnPrAddCar {
override fun onPrAddCar(isAdd: Boolean) { override fun onPrAddCar(isAdd: Boolean) {
println("------------isAdd = ${isAdd}") println("------------isAdd = ${isAdd}")
} }
......
...@@ -80,8 +80,13 @@ ...@@ -80,8 +80,13 @@
android:id="@+id/bt11" android:id="@+id/bt11"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="预加载模型" /> android:text="预加载主车" />
<Button
android:id="@+id/bt12"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="预加载参与者" />
</LinearLayout> </LinearLayout>
......
...@@ -52,7 +52,9 @@ class PartRoadFragment : Fragment() { ...@@ -52,7 +52,9 @@ class PartRoadFragment : Fragment() {
setDebugLogging(true) setDebugLogging(true)
setWebViewLogging(true) setWebViewLogging(true)
} }
MsParkRoad.preloadMainCar(requireActivity().assets, "truck.glb") // carRoadVM.webViewClient?.preloadMainCar(requireActivity().assets.open("truck.glb")) { v: Boolean ->
// println("-----------v = ${v}")
// }
MapReadyView.instance.carRoadVM = carRoadVM MapReadyView.instance.carRoadVM = carRoadVM
onMapReadyLis?.onMapReady(MapReadyView.instance) onMapReadyLis?.onMapReady(MapReadyView.instance)
} }
......
...@@ -15,10 +15,14 @@ import com.sd.api.vms.CarRoadVM ...@@ -15,10 +15,14 @@ import com.sd.api.vms.CarRoadVM
object MsParkRoad { object MsParkRoad {
private var carRoadVM: CarRoadVM? = null private var carRoadVM: CarRoadVM? = null
fun updateMainCar(mapReadyView: MapReadyView?, myloc: MyCLoc, onPrAddCar: OnPrAddCar?) {
fun setCarRoadVM(mapReadyView: MapReadyView?) {
if (mapReadyView == null) if (mapReadyView == null)
return return
carRoadVM = mapReadyView.carRoadVM carRoadVM = mapReadyView?.carRoadVM
}
fun updateMainCar(myloc: MyCLoc, onPrAddCar: OnPrAddCar?) {
carRoadVM?.updateMainCar(myloc, onPrAddCar) carRoadVM?.updateMainCar(myloc, onPrAddCar)
} }
...@@ -102,11 +106,27 @@ object MsParkRoad { ...@@ -102,11 +106,27 @@ object MsParkRoad {
carRoadVM?.webViewClient?.clearAllTargets(null) carRoadVM?.webViewClient?.clearAllTargets(null)
} }
/**预加载模型***/ /**预加载主车***/
fun preloadMainCar(assets: AssetManager, fileName: String) { fun preloadMainCar(assets: AssetManager, fileName: String) {
println("-----预加载模型") carRoadVM?.webViewClient?.preloadMainCar(assets.open(fileName)) { v: Boolean ->
carRoadVM?.webViewClient?.preloadMainCar(assets.open(fileName)) { v: Boolean-> println("-------preloadMainCar = ${v}")
println("------preloadMainCar = ${v}") }
}
/**预加载感知物***/
fun preloadParticipant(assets: AssetManager, fileName: String, ptcType: PartType) {
if (ptcType == PartType.CAR) {
carRoadVM?.webViewClient?.preloadParticipant(
Participant.ParticipantType.CAR,
assets.open(fileName)
) { v: Boolean ->
println("-------------preloadParticipant = ${v}")
}
} else if (ptcType == PartType.PEOPLE) {
carRoadVM?.webViewClient?.preloadParticipant(
Participant.ParticipantType.PEOPLE,
assets.open(fileName)
) { }
} }
} }
......
package com.sd.api.parkroad
/**参与者枚举**/
enum class PartType {
CAR,
PEOPLE
}
\ No newline at end of file
package com.sd.api.ui package com.sd.api.ui
import com.amap.api.maps.AMap import com.amap.api.maps.AMap
import com.example.car_and_road_3d.CarAndRoadWebViewClient
import com.minedata.minenavi.map.MapView import com.minedata.minenavi.map.MapView
import com.minedata.minenavi.map.MineMap import com.minedata.minenavi.map.MineMap
import com.sd.api.vms.CarRoadVM import com.sd.api.vms.CarRoadVM
...@@ -17,11 +16,12 @@ class MapReadyView private constructor() { ...@@ -17,11 +16,12 @@ class MapReadyView private constructor() {
/**四维在线地图容器*/ /**四维在线地图容器*/
var fMapView: MapView? = null var fMapView: MapView? = null
/**四维在线地图*/ /**四维在线地图*/
var mMineMap: MineMap? = null var mMineMap: MineMap? = null
//四维局部图操作类 //四维局部图操作类
var carRoadVM: CarRoadVM?=null var carRoadVM: CarRoadVM? = null
/**高德在线地图*/ /**高德在线地图*/
var aMap: AMap? = null var aMap: AMap? = null
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment