Merge branch 'master' of gitlab.navinfo.com:CollectVehicle/OneMapQS

 Conflicts:
	app/src/main/java/com/navinfo/omqs/ui/fragment/personalcenter/PersonalCenterFragment.kt
This commit is contained in:
squallzhjch 2023-04-26 15:19:25 +08:00
commit d00505c22d
56 changed files with 160 additions and 132 deletions

View File

@ -30,6 +30,21 @@ android {
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
signingConfigs {
debug {
storeFile file('D:/WrokSpace/OneMapQS/fastmap.keystore')
storePassword "navinfo"
keyAlias "fastmap"
keyPassword "navinfo"
}
}
dexOptions {
jumboMode = true
javaMaxHeapSize "4096M"
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_11
targetCompatibility JavaVersion.VERSION_11
@ -58,9 +73,7 @@ android {
dependencies {
implementation project(':collect-library')
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.5'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'

View File

@ -12,24 +12,33 @@
},
{
"table": "OMDB_RD_LINK_DIRECT",
"code": 2001,
"code": 2010,
"name": "道路方向"
},
{
"table": "OMDB_SPEEDLIMIT",
"code": 4002,
"name": "常规点限速"
},
{
"table": "OMDB_SPEEDLIMIT_COND",
"code": 2001,
"code": 4003,
"name": "条件点限速"
},
{
"table": "OMDB_SPEEDLIMIT_VAR",
"code": 2001,
"code": 4004,
"name": "可变点限速"
},
{
"table": "OMDB_SPEEDLIMIT",
"code": 2001,
"name": "常规点限速"
}
{
"table": "OMDB_LANE_LG_LINK",
"code": 5001,
"name": "车道中心线"
},
{
"table": "OMDB_LANE_NUM",
"code": 5002,
"name": "车道数"
}
]
}

View File

@ -119,12 +119,12 @@ class MainViewModel @Inject constructor(
}
}
TraceDataBase.getDatabase(
context,
Constant.USER_DATA_PATH + "/trace.sqlite"
).niLocationDao.insert(niLocation)
niLocationList.removeAt(0)
Log.e("qj", "saveTrace")
TraceDataBase.getDatabase(context, Constant.USER_DATA_PATH + "/trace.sqlite").niLocationDao.insert(niLocation)
niLocationList.remove(niLocation)
Log.e("qj", "saveTrace==${niLocationList.size}")
}
Thread.sleep(30)
}

View File

@ -34,6 +34,7 @@ import com.navinfo.collect.library.sensor.ISensor.enmConnectionStatus;
import com.navinfo.collect.library.sensor.ISensor.SensorWorkingMode;
import com.navinfo.collect.library.garminvirbxe.SensorParams;
import com.navinfo.collect.library.garminvirbxe.HostBean;
import com.navinfo.collect.library.system.VLCApplication;
import com.navinfo.omqs.Constant;
import com.navinfo.omqs.R;
import com.navinfo.omqs.ui.activity.map.MainActivity;
@ -714,38 +715,38 @@ public class CommonDialog extends Dialog implements SurfaceHolder.Callback, IVid
if (indexClentCamera == 2)
resId = R.id.main_activity_camera2;
Drawable drawable = context.getResources().getDrawable(R.mipmap.icon_page_video_a0);
Drawable drawable = context.getResources().getDrawable(R.drawable.icon_page_video_a0);
ShareUtil shareUtil = new ShareUtil(context, indexClentCamera);
//0为录像模式
if (shareUtil.getTakeCameraMode() == 0) {
switch (statusType) {
case 0:
drawable = context.getResources().getDrawable(R.mipmap.icon_page_video_a0);
drawable = context.getResources().getDrawable(R.drawable.icon_page_video_a0);
break;
case 1:
drawable = context.getResources().getDrawable(R.mipmap.icon_page_video_a1);
drawable = context.getResources().getDrawable(R.drawable.icon_page_video_a1);
break;
case 2:
drawable = context.getResources().getDrawable(R.mipmap.icon_page_video_a2);
drawable = context.getResources().getDrawable(R.drawable.icon_page_video_a2);
break;
case 3:
drawable = context.getResources().getDrawable(R.mipmap.icon_page_video_a3);
drawable = context.getResources().getDrawable(R.drawable.icon_page_video_a3);
break;
}
} else {
switch (statusType) {
case 0:
drawable = context.getResources().getDrawable(R.mipmap.icon_page_take_photo_a0);
drawable = context.getResources().getDrawable(R.drawable.icon_page_take_photo_a0);
break;
case 1:
drawable = context.getResources().getDrawable(R.mipmap.icon_page_take_photo_a1);
drawable = context.getResources().getDrawable(R.drawable.icon_page_take_photo_a1);
break;
case 2:
drawable = context.getResources().getDrawable(R.mipmap.icon_page_take_photo_a2);
drawable = context.getResources().getDrawable(R.drawable.icon_page_take_photo_a2);
break;
case 3:
drawable = context.getResources().getDrawable(R.mipmap.icon_page_take_photo_a3);
drawable = context.getResources().getDrawable(R.drawable.icon_page_take_photo_a3);
break;
}
}
@ -1597,9 +1598,9 @@ public class CommonDialog extends Dialog implements SurfaceHolder.Callback, IVid
}
private void setmImgViewImageDrawable(int type) {
Drawable drawable = getContext().getResources().getDrawable(R.mipmap.icon_camera_img);
Drawable drawable = getContext().getResources().getDrawable(R.drawable.icon_camera_img);
if (type == 1)
drawable = getContext().getResources().getDrawable(R.mipmap.icon_camera_take_photo_img);
drawable = getContext().getResources().getDrawable(R.drawable.icon_camera_take_photo_img);
if (mImgView != null)
mImgView.setImageDrawable(drawable);

View File

@ -80,22 +80,21 @@ class PersonalCenterFragment : BaseFragment(), FSAFActivityCallbacks {
}
})
}
// R.id.personal_center_menu_import_data -> { // 导入zip数据
// fileChooser.openChooseFileDialog(object : FileChooserCallback() {
// override fun onCancel(reason: String) {
// }
//
// override fun onResult(uri: Uri) {
// val file = UriUtils.uri2File(uri)
// val importOMDBHelper: ImportOMDBHelper =
// importOMDBHiltFactory.obtainImportOMDBHelper(
// requireContext(),
// file
// )
// viewModel.importOMDBData(importOMDBHelper)
// }
// })
// }
R.id.personal_center_menu_import_data -> { // 导入zip数据
fileChooser.openChooseFileDialog(object : FileChooserCallback() {
override fun onCancel(reason: String) {
}
override fun onResult(uri: Uri) {
val file = UriUtils.uri2File(uri)
val importOMDBHelper: ImportOMDBHelper = importOMDBHiltFactory.obtainImportOMDBHelper(
requireContext(),
file
)
viewModel.importOMDBData(importOMDBHelper)
}
})
}
R.id.personal_center_menu_import_yuan_data -> {
// 用户选中导入数据,打开文件选择器,用户选择导入的数据文件目录
fileChooser.openChooseFileDialog(object : FileChooserCallback() {

View File

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 4.9 KiB

View File

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 19 KiB

View File

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB

View File

Before

Width:  |  Height:  |  Size: 65 KiB

After

Width:  |  Height:  |  Size: 65 KiB

View File

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View File

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 17 KiB

View File

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:drawable="@mipmap/icon_camera_on">
<item android:state_checked="true" android:drawable="@drawable/icon_camera_on">
</item>
<item android:state_selected="true" android:drawable="@mipmap/icon_camera_on">
<item android:state_selected="true" android:drawable="@drawable/icon_camera_on">
</item>
<item android:drawable="@mipmap/icon_camera_off">
<item android:drawable="@drawable/icon_camera_off">
</item>
</selector>

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:drawable="@mipmap/record_select">
<item android:state_checked="true" android:drawable="@drawable/record_select">
</item>
<item android:state_selected="true" android:drawable="@mipmap/record_select">
<item android:state_selected="true" android:drawable="@drawable/record_select">
</item>
<item android:drawable="@mipmap/takephoto_select">
<item android:drawable="@drawable/takephoto_select">
</item>
</selector>

View File

@ -1,11 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:state_enabled="true" android:drawable="@mipmap/icon_camera_start">
<item android:state_checked="true" android:state_enabled="true" android:drawable="@drawable/icon_camera_start">
</item>
<item android:state_selected="true" android:state_enabled="true" android:drawable="@mipmap/icon_camera_start">
<item android:state_selected="true" android:state_enabled="true" android:drawable="@drawable/icon_camera_start">
</item>
<item android:state_enabled="false" android:drawable="@mipmap/icon_camera_start_disable">
<item android:state_enabled="false" android:drawable="@drawable/icon_camera_start_disable">
</item>
<item android:drawable="@mipmap/icon_camera_end">
<item android:drawable="@drawable/icon_camera_end">
</item>
</selector>

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@mipmap/icon_camera_close_press" android:state_focused="true"></item>
<item android:drawable="@mipmap/icon_camera_close_press" android:state_pressed="true"></item>
<item android:drawable="@mipmap/icon_camera_close_press" android:state_selected="true"></item>
<item android:drawable="@mipmap/icon_camera_close_press" android:state_checked="true"></item>
<item android:drawable="@mipmap/icon_camera_close_normal"></item>
<item android:drawable="@drawable/icon_camera_close_press" android:state_focused="true"></item>
<item android:drawable="@drawable/icon_camera_close_press" android:state_pressed="true"></item>
<item android:drawable="@drawable/icon_camera_close_press" android:state_selected="true"></item>
<item android:drawable="@drawable/icon_camera_close_press" android:state_checked="true"></item>
<item android:drawable="@drawable/icon_camera_close_normal"></item>
</selector>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false">
<item android:drawable="@mipmap/icon_page_video_a3" android:duration="1000" />
<item android:drawable="@mipmap/icon_page_video_a0" android:duration="1000" />
<item android:drawable="@mipmap/icon_page_video_a3" android:duration="1000" />
<item android:drawable="@mipmap/icon_page_video_a0" android:duration="1000" />
<item android:drawable="@drawable/icon_page_video_a3" android:duration="1000" />
<item android:drawable="@drawable/icon_page_video_a0" android:duration="1000" />
<item android:drawable="@drawable/icon_page_video_a3" android:duration="1000" />
<item android:drawable="@drawable/icon_page_video_a0" android:duration="1000" />
</animation-list>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false">
<item android:drawable="@mipmap/icon_page_take_photo_a3" android:duration="1000" />
<item android:drawable="@mipmap/icon_page_take_photo_a3" android:duration="1000" />
<item android:drawable="@mipmap/icon_page_take_photo_a3" android:duration="1000" />
<item android:drawable="@mipmap/icon_page_take_photo_a0" android:duration="1000" />
<item android:drawable="@drawable/icon_page_take_photo_a3" android:duration="1000" />
<item android:drawable="@drawable/icon_page_take_photo_a3" android:duration="1000" />
<item android:drawable="@drawable/icon_page_take_photo_a3" android:duration="1000" />
<item android:drawable="@drawable/icon_page_take_photo_a0" android:duration="1000" />
</animation-list>

View File

@ -99,7 +99,7 @@
android:layout_marginLeft="160dp"
android:layout_marginTop="20dp"
android:onClick="@{()->mainActivity.openCamera()}"
android:src="@mipmap/icon_page_video_a1"
android:src="@drawable/icon_page_video_a1"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent" />

View File

@ -21,7 +21,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/fl_layout"
android:background="@color/white"
android:background="@android:color/white"
android:gravity="center_vertical"
android:orientation="vertical"
android:paddingBottom="15dp"
@ -43,7 +43,7 @@
android:layout_centerVertical="true"
android:text="默认外设相机拍照"
android:textColor="@android:color/black"
android:textSize="15sp" />
android:textSize="@dimen/default_font_size" />
<CheckBox
android:id="@+id/select_camera"
@ -81,7 +81,7 @@
android:layout_marginBottom="1dp"
android:padding="@dimen/ten"
android:text="一键连接"
android:textSize="@dimen/card_title_font_2size" />
android:textSize="@dimen/default_font_size" />
</LinearLayout>
<FrameLayout
@ -92,35 +92,23 @@
android:background="@color/bg_gray2">
<CheckBox
android:id="@+id/startorendtakepicture"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center_horizontal"
android:button="@drawable/chk_icon_camera_start_stop_xml"
android:checked="true"
android:enabled="false" />
<SurfaceView
android:id="@+id/video"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerInParent="true"
android:background="@color/bg_gray2"
android:fitsSystemWindows="true"
android:visibility="gone" />
<CheckBox
android:id="@+id/takephoto_or_record"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right|bottom"
android:layout_margin="10dp"
android:button="@drawable/chk_icon_camera_record_or_takephoto_xml"
android:checked="true"
android:paddingLeft="@dimen/five"
android:text="录像"
android:textColor="@color/white" />
<ImageView
android:id="@+id/video_defalut"
android:layout_width="148.5dp"
android:layout_height="@dimen/camear_dialog_iv_hight"
android:layout_gravity="center_horizontal"
android:layout_marginTop="@dimen/camear_dialog_iv_margin_top"
android:src="@mipmap/icon_camera_img" />
android:src="@drawable/icon_camera_img" />
<LinearLayout
android:layout_width="fill_parent"
@ -134,7 +122,7 @@
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="@dimen/five"
android:src="@mipmap/icon_camera_time" />
android:src="@drawable/icon_camera_time" />
<TextView
android:layout_width="wrap_content"
@ -147,14 +135,26 @@
</LinearLayout>
<SurfaceView
android:id="@+id/video"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerInParent="true"
android:background="@color/bg_gray2"
android:fitsSystemWindows="true"
android:visibility="gone" />
<CheckBox
android:id="@+id/startorendtakepicture"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center_horizontal"
android:button="@drawable/chk_icon_camera_start_stop_xml"
android:checked="true"
android:enabled="false" />
<CheckBox
android:id="@+id/takephoto_or_record"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right|bottom"
android:layout_margin="10dp"
android:paddingLeft="@dimen/five"
android:textColor="@color/white"
android:text="录像"
android:button="@drawable/chk_icon_camera_record_or_takephoto_xml"
android:checked="true" />
</FrameLayout>
</RelativeLayout>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:tns="http://opensciencemap.org/rendertheme"
xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
targetNamespace="http://opensciencemap.org/rendertheme" xml:lang="en">
xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
targetNamespace="http://opensciencemap.org/rendertheme" xml:lang="en">
<!-- attribute types -->
<xs:simpleType name="cap">
@ -81,7 +81,7 @@
<xs:simpleType name="strokeDasharray">
<xs:restriction base="xs:string">
<xs:pattern
value="([0-9]+(\.[0-9]+)? *, *[0-9]+(\.[0-9]+)? *, *)*[0-9]+(\.[0-9]+)? *, *[0-9]+(\.[0-9]+)?"/>
value="([0-9]+(\.[0-9]+)? *, *[0-9]+(\.[0-9]+)? *, *)*[0-9]+(\.[0-9]+)? *, *[0-9]+(\.[0-9]+)?"/>
</xs:restriction>
</xs:simpleType>
@ -357,9 +357,9 @@
<xs:attribute name="version" type="xs:positiveInteger" use="required"/>
<xs:attribute name="map-background" default="#ffffff" type="tns:color" use="optional"/>
<xs:attribute name="base-stroke-width" default="1" type="tns:nonNegativeFloat"
use="optional"/>
use="optional"/>
<xs:attribute name="base-text-scale" default="1" type="tns:nonNegativeFloat"
use="optional"/>
use="optional"/>
</xs:complexType>
<!-- root element -->

View File

@ -8,16 +8,29 @@
<data android:mimeType="*/*"/>
</intent>
</queries>
<!-- AK鉴权 -->
<meta-data
android:name="com.baidu.lbsapi.API_KEY"
android:value="IxQi4mZGTlfv6Z9M2GRdqn4KKRbOATUU" />
<!--<meta-data
android:name="com.baidu.lbsapi.API_KEY"
android:value="IxQi4mZGTlfv6Z9M2GRdqn4KKRbOATUU" />--><!--BMnHEAZ8Ypq44GOBf4UqENgvCmncfFU6-->
<application
android:allowBackup="true"
android:networkSecurityConfig="@xml/network_security_config">
<!-- AK鉴权 -->
<meta-data
android:name="com.baidu.lbsapi.API_KEY"
android:value="BMnHEAZ8Ypq44GOBf4UqENgvCmncfFU6" />
<service
android:name="com.baidu.location.f"
android:enabled="true"
android:process=":remote">
<intent-filter>
<action android:name="com.baidu.location.service_v2.2" />
</intent-filter>
</service>
</application>
</manifest>

View File

@ -51,6 +51,9 @@
<!--ferry-->
<style-text style="bold" fill="#606060" id="ferry" k="name" size="12" stroke="#ffffff"
stroke-width="2.0" />
<!--speedlimit-->
<style-text fill="#ffffff" id="max-speed-limit" k="name" size="15" stroke="#ffffff"
stroke-width="0.1" />
<!--###### AREA styles ######-->
@ -1615,38 +1618,28 @@
<m v="OMDB_SPEEDLIMIT">
<m k="speedFlag">
<m v="0">
<circle fill="#0000ff" radius="30" scale-radius="true" />
<text k="maxSpeed" use="road"></text>
<text k="minSpeed" dy="30" bg-fill="#00ff00" use="road"></text>
<circle fill="#0000ff" radius="26" scale-radius="true" stroke="#ff0000" stroke-width="2"/>
<m select="any">
<text k="maxSpeed" use="max-speed-limit"></text>
<caption k="minSpeed" dy="-28" fill="#000000" priority="5" size="15" stroke="#ffffff"
stroke-width="1.0"></caption>
</m>
</m>
<m v="1">
<!-- <circle fill="#0000ff" radius="30" scale-radius="true" />-->
<text k="maxSpeed" use="road"></text>
<text k="minSpeed" dy="30" bg-fill="#00ff00" use="road"></text>
<circle fill="#0000ff" radius="26" scale-radius="true" stroke="#ff0000" stroke-width="2"/>
<m select="any">
<text k="maxSpeed" use="max-speed-limit"></text>
<caption k="minSpeed" dy="-28" fill="#000000" priority="5" size="15" stroke="#ffffff"
stroke-width="1.0"></caption>
</m>
</m>
</m>
</m>
<!--条件点限速-->
<m v="OMDB_SPEEDLIMIT_COND">
<m k="direct">
<m v="2">
<lineSymbol src="assets:omdb/oneway_left.svg"></lineSymbol>
</m>
<m v="3">
<lineSymbol src="assets:omdb/oneway_right.svg"></lineSymbol>
</m>
</m>
</m>
<!--可变点限速-->
<m v="OMDB_SPEEDLIMIT_VAR">
<m k="direct">
<m v="2">
<lineSymbol src="assets:omdb/oneway_left.svg"></lineSymbol>
</m>
<m v="3">
<lineSymbol src="assets:omdb/oneway_right.svg"></lineSymbol>
</m>
</m>
</m>
</m>
</rendertheme>