Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
p x
SuZhouAvp
Commits
1b561d38
Commit
1b561d38
authored
Sep 17, 2025
by
p x
Browse files
调通行人感知物头上的方框
parent
bb95327c
Changes
5
Hide whitespace changes
Inline
Side-by-side
app/libs/unityLibrary-release(
4
).aar
→
app/libs/unityLibrary-release(
5
).aar
View file @
1b561d38
No preview for this file type
app/src/main/java/com/sd/cavphmi/bean/V2xStartBean.kt
View file @
1b561d38
...
...
@@ -12,6 +12,7 @@ package com.sd.cavphmi.bean
val
typeName
:
String
)
//第一个是自己的车 第二个是预警车
data class
VObject
(
val
elevation
:
Double
,
val
id
:
String
,
...
...
app/src/main/java/com/sd/cavphmi/ui/MainActivity.kt
View file @
1b561d38
package
com.sd.cavphmi.ui
import
android.os.Handler
import
android.util.Log
import
android.view.KeyEvent
import
android.widget.RelativeLayout
import
android.widget.Toast
...
...
@@ -106,7 +104,7 @@ class MainActivity : BaseActivity<ActivityMainBinding, MyBaseViewModel>(),
//感知目标物
binding
.
btTarget
.
setOnClickListener
{
mainVm
.
subTarget
().
observe
(
this
)
{
if
(
it
.
size
==
0
){
if
(
it
.
size
==
0
)
{
HighMapApi
.
clearPtcData
()
return
@observe
}
...
...
@@ -119,17 +117,17 @@ class MainActivity : BaseActivity<ActivityMainBinding, MyBaseViewModel>(),
unityPtc
.
lon
=
item
.
longitude
unityPtc
.
ptcid
=
item
.
ptcId
unityPtc
.
heading
=
item
.
heading
// unityPtc.aniTime=ptc.aniTime
unityPtc
.
aniTime
=
1
if
(
item
.
ptcType
==
"car"
)
{
unityPtc
.
pType
=
1
}
else
{
unityPtc
.
pType
=
2
}
// unityPtc.aniTime=ptc.aniTime
// unityPtc.aniTime = 1
// unityPtc.isFlash=ptc.isFlash
// unityPtc.isRed=ptc.isRed
unityPtc
.
isFlash
=
true
unityPtc
.
isRed
=
true
//
unityPtc.isFlash = true
//
unityPtc.isRed = true
ptcList
.
add
(
unityPtc
)
}
HighMapApi
.
setPtcData
(
ptcList
)
...
...
@@ -139,7 +137,24 @@ class MainActivity : BaseActivity<ActivityMainBinding, MyBaseViewModel>(),
}
//v2x 预警
binding
.
btV2x
.
setOnClickListener
{
mainVm
.
subStartV2x
()
mainVm
.
subStartV2x
().
observe
(
this
)
{
v2x
->
if
(
v2x
.
objects
.
isEmpty
())
return
@observe
//获取预警感知目标物的id
var
v2xId
=
v2x
.
objects
.
get
(
1
).
id
v2xId
=
"19448"
var
unityPtc
=
UnityPtc
()
// unityPtc.pType = 1
unityPtc
.
ptcid
=
v2xId
unityPtc
.
isRed
=
true
unityPtc
.
isFlash
=
true
// unityPtc.aniTime=5000
// unityPtc.isRed= true
val
ptcList
=
listOf
(
unityPtc
)
HighMapApi
.
setPtcData
(
ptcList
)
}
}
//模拟选择车辆
binding
.
btSetcar
.
setOnClickListener
{
...
...
app/src/main/java/com/sd/cavphmi/ui/fragment/UnityFragment.kt
View file @
1b561d38
...
...
@@ -7,8 +7,11 @@ import android.view.View
import
android.view.ViewGroup
import
android.widget.FrameLayout
import
androidx.fragment.app.Fragment
import
androidx.fragment.app.activityViewModels
import
com.sd.cavphmi.viewmodels.UnityMapVm
import
com.unity3d.player.IUnityPlayerLifecycleEvents
import
com.unity3d.player.UnityPlayer
import
kotlin.getValue
/**
...
...
@@ -80,6 +83,8 @@ class UnityFragment : Fragment(), IUnityPlayerLifecycleEvents {
// UnityPlayer 实例
private
lateinit
var
mUnityPlayer
:
UnityPlayer
//UNITY map 控制类
private
val
unityMapVm
:
UnityMapVm
by
activityViewModels
()
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
...
...
@@ -92,6 +97,8 @@ class UnityFragment : Fragment(), IUnityPlayerLifecycleEvents {
// 视图创建完成后,可以在这里进行最终设置
mUnityPlayer
.
windowFocusChanged
(
true
)
// mUnityPlayer.requestFocus()
//使用拼接服务器资源加载地图
unityMapVm
.
loadTileJson
()
}
// 可选:向 Unity 发送消息的方法
...
...
app/src/main/java/com/sd/cavphmi/viewmodels/UnityMapVm.kt
0 → 100644
View file @
1b561d38
package
com.sd.cavphmi.viewmodels
import
android.content.Context
import
androidx.lifecycle.ViewModel
import
com.sd.cavphmi.highmap.HighMapApi
import
com.sd.cavphmi.highmap.TileJsonBean
import
dagger.hilt.android.lifecycle.HiltViewModel
import
dagger.hilt.android.qualifiers.ApplicationContext
import
javax.inject.Inject
@HiltViewModel
class
UnityMapVm
@Inject
constructor
(
@ApplicationContext
var
context
:
Context
)
:
ViewModel
()
{
/**给unity读取3d tile json配置***/
fun
loadTileJson
()
{
var
tileJsonBean
=
TileJsonBean
()
HighMapApi
.
setTileInit
(
tileJsonBean
)
}
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment