zhangliang2 2 yıl önce
ebeveyn
işleme
8a70c074cf

BIN
src/assets/common/image/others/carsimFont.png


BIN
src/assets/common/image/others/carsimFont1.png


+ 144 - 156
src/views/modelLibrary/components/vehicleModelCarsim.vue

@@ -78,7 +78,7 @@
             </div>
 
             <div class="flexBox padTop22">
-                <el-form-item label="簧上质量:" prop="sprungMass">
+                <el-form-item label="簧上质量(kg):" prop="sprungMass">
                     <el-input
                         placeholder="请输入"
                         maxlength="12"
@@ -87,7 +87,7 @@
                     >
                     </el-input>
                 </el-form-item>
-                <el-form-item label="车辆宽度:" prop="vehicleWidth">
+                <el-form-item label="车辆宽度(mm):" prop="vehicleWidth">
                     <el-input
                         placeholder="请输入"
                         maxlength="12"
@@ -97,7 +97,7 @@
                     </el-input>
                 </el-form-item>
                 <el-form-item
-                    label="整车绕Y轴转动惯量:"
+                    label="整车绕Y轴转动惯量(kg·m²):"
                     prop="rotationalInertiaY"
                 >
                     <el-input
@@ -109,7 +109,7 @@
                     </el-input>
                 </el-form-item>
                 <el-form-item
-                    label="整车绕Z轴转动惯量:"
+                    label="整车绕Z轴转动惯量(kg·m²):"
                     prop="rotationalInertiaZ"
                 >
                     <el-input
@@ -121,7 +121,7 @@
                     </el-input>
                 </el-form-item>
                 <el-form-item
-                    label="整车绕X轴转动惯量:"
+                    label="整车绕X轴转动惯量(kg·m²):"
                     prop="rotationalInertiaX"
                 >
                     <el-input
@@ -155,7 +155,7 @@
             </div>
             <div v-show="activeName === '1'" class="flexBox">
                 <el-form-item
-                    label="有效滚动半径/mm:"
+                    label="有效滚动半径(mm):"
                     prop="frontLeftWheelEffectiveRollingRadius"
                 >
                     <el-input
@@ -187,7 +187,7 @@
                     </el-input>
                 </el-form-item>
                 <el-form-item
-                    label="自由半径/mm:"
+                    label="自由半径(mm):"
                     prop="frontLeftWheelFreeRadius"
                 >
                     <el-input
@@ -205,7 +205,7 @@
 
             <div v-show="activeName === '2'" class="flexBox">
                 <el-form-item
-                    label="有效滚动半径/mm:"
+                    label="有效滚动半径(mm):"
                     prop="rearLeftWheelEffectiveRollingRadius"
                 >
                     <el-input
@@ -235,7 +235,7 @@
                     </el-input>
                 </el-form-item>
                 <el-form-item
-                    label="自由半径/mm:"
+                    label="自由半径(mm):"
                     prop="rearLeftWheelFreeRadius"
                 >
                     <el-input
@@ -253,7 +253,7 @@
 
             <div v-show="activeName === '3'" class="flexBox">
                 <el-form-item
-                    label="有效滚动半径/mm:"
+                    label="有效滚动半径(mm):"
                     prop="frontRightWheelEffectiveRollingRadius"
                 >
                     <el-input
@@ -285,7 +285,7 @@
                     </el-input>
                 </el-form-item>
                 <el-form-item
-                    label="自由半径/mm:"
+                    label="自由半径(mm):"
                     prop="frontRightWheelFreeRadius"
                 >
                     <el-input
@@ -303,7 +303,7 @@
 
             <div v-show="activeName === '4'" class="flexBox">
                 <el-form-item
-                    label="有效滚动半径/mm:"
+                    label="有效滚动半径(mm):"
                     prop="rearRightWheelEffectiveRollingRadius"
                 >
                     <el-input
@@ -335,7 +335,7 @@
                     </el-input>
                 </el-form-item>
                 <el-form-item
-                    label="自由半径/mm:"
+                    label="自由半径(mm):"
                     prop="rearRightWheelFreeRadius"
                 >
                     <el-input
@@ -358,12 +358,12 @@
                     @click="
                         diaChange(
                             'isCur1',
-                            '不同载荷下回正力矩和侧偏角的关系曲线',
+                            '不同载荷下轮胎回正力矩和侧偏角的关系曲线',
                             1
                         )
                     "
                 >
-                    不同载荷下回正力矩和侧偏角的关系曲线
+                    不同载荷下轮胎回正力矩和侧偏角的关系曲线
                 </div>
                 <div
                     class="dia"
@@ -371,12 +371,12 @@
                     @click="
                         diaChange(
                             'isCur2',
-                            '不同载荷下侧向力和侧偏角的关系曲线',
+                            '不同载荷下轮胎侧向力和侧偏角的关系曲线',
                             2
                         )
                     "
                 >
-                    不同载荷下侧向力和侧偏角的关系曲线
+                    不同载荷下轮胎侧向力和侧偏角的关系曲线
                 </div>
                 <div
                     class="dia"
@@ -384,12 +384,12 @@
                     @click="
                         diaChange(
                             'isCur3',
-                            '不同载荷下纵向力和滑移率的关系曲线',
+                            '不同载荷下轮胎纵向力和滑移率的关系曲线',
                             3
                         )
                     "
                 >
-                    不同载荷下纵向力和滑移率的关系曲线
+                    不同载荷下轮胎纵向力和滑移率的关系曲线
                 </div>
             </div>
 
@@ -413,7 +413,7 @@
 
             <div v-show="activeName2 === '1'" class="flexBox">
                 <el-form-item label="悬架类型:" prop="frontWheelSuspensionType">
-                    <el-select v-model="form.frontWheelSuspensionType">
+                    <el-select v-model="form.frontWheelSuspensionType" disabled>
                         <el-option
                             v-for="item in suspensionTypeList"
                             :label="item.caption"
@@ -438,7 +438,7 @@
                     </el-input>
                 </el-form-item>
                 <el-form-item
-                    label="簧下质量/kg:"
+                    label="簧下质量(kg):"
                     prop="frontWheelUnsprungMass"
                 >
                     <el-input
@@ -452,7 +452,7 @@
                     >
                     </el-input>
                 </el-form-item>
-                <el-form-item label="轮距/mm:" prop="frontWheelTrackWidth">
+                <el-form-item label="轮距(mm):" prop="frontWheelTrackWidth">
                     <el-input
                         placeholder="请输入"
                         maxlength="12"
@@ -465,7 +465,7 @@
 
             <div v-show="activeName2 === '2'" class="flexBox">
                 <el-form-item label="悬架类型:" prop="rearWheelSuspensionType">
-                    <el-select v-model="form.rearWheelSuspensionType">
+                    <el-select v-model="form.rearWheelSuspensionType" disabled>
                         <el-option
                             v-for="item in suspensionTypeList"
                             :label="item.caption"
@@ -489,7 +489,10 @@
                     >
                     </el-input>
                 </el-form-item>
-                <el-form-item label="簧下质量/kg:" prop="rearWheelUnsprungMass">
+                <el-form-item
+                    label="簧下质量(kg):"
+                    prop="rearWheelUnsprungMass"
+                >
                     <el-input
                         placeholder="请输入"
                         maxlength="12"
@@ -498,7 +501,7 @@
                     >
                     </el-input>
                 </el-form-item>
-                <el-form-item label="轮距/mm:" prop="rearWheelTrackWidth">
+                <el-form-item label="轮距(mm):" prop="rearWheelTrackWidth">
                     <el-input
                         placeholder="请输入"
                         maxlength="12"
@@ -516,7 +519,7 @@
                 </div>
             </div>
             <div class="flexBox">
-                <el-form-item label="迎风面积:" prop="windwardArea">
+                <el-form-item label="迎风面积(㎡):" prop="windwardArea">
                     <el-input
                         placeholder="请输入"
                         maxlength="12"
@@ -525,7 +528,7 @@
                     >
                     </el-input>
                 </el-form-item>
-                <el-form-item label="空气密度:" prop="airDensity">
+                <el-form-item label="空气密度(kg·m³):" prop="airDensity">
                     <el-input
                         placeholder="请输入"
                         maxlength="12"
@@ -548,7 +551,7 @@
 
             <div class="flexBox">
                 <el-form-item
-                    label="发动机曲轴转动惯量:"
+                    label="发动机曲轴转动惯量(kg·m²):"
                     prop="engineCrankshaftMomentInertia"
                 >
                     <el-input
@@ -562,7 +565,7 @@
                     >
                     </el-input>
                 </el-form-item>
-                <el-form-item label="怠速转速:" prop="idleSpeed">
+                <el-form-item label="怠速转速(rpm):" prop="idleSpeed">
                     <el-input
                         placeholder="请输入"
                         maxlength="12"
@@ -571,6 +574,17 @@
                     >
                     </el-input>
                 </el-form-item>
+                <el-form-item label="驱动类型:" prop="driverType">
+                    <el-select v-model="form.driverType" disabled>
+                        <el-option
+                            v-for="item in driverTypeList"
+                            :label="item.caption"
+                            :value="item.code"
+                            :key="item.code"
+                        >
+                        </el-option>
+                    </el-select>
+                </el-form-item>
             </div>
 
             <div class="dialogBtnBox">
@@ -597,7 +611,7 @@
             </div>
             <div class="flexBox">
                 <el-form-item
-                    label="输入轴的转动惯量:"
+                    label="输入轴的转动惯量(kg·m²):"
                     prop="momentInertiaInputShaft"
                 >
                     <el-input
@@ -612,7 +626,7 @@
                     </el-input>
                 </el-form-item>
                 <el-form-item
-                    label="输出轴的转动惯量:"
+                    label="输出轴的转动惯量(kg·m²):"
                     prop="momentInertiaOutputShaft"
                 >
                     <el-input
@@ -700,7 +714,7 @@
                     </el-table-column>
                 </tableList>
                 <div>
-                    <el-form-item label="换挡时间(S):" prop="shiftTime">
+                    <el-form-item label="换挡时间(s):" prop="shiftTime">
                         <el-input
                             placeholder="请输入"
                             maxlength="12"
@@ -758,7 +772,7 @@
             </div>
 
             <div class="flexBox">
-                <el-form-item label="制动类型:" prop="brakeType">
+                <!-- <el-form-item label="制动类型:" prop="brakeType">
                     <el-select v-model="form.brakeType">
                         <el-option
                             v-for="item in brakeTypeList"
@@ -768,9 +782,9 @@
                         >
                         </el-option>
                     </el-select>
-                </el-form-item>
+                </el-form-item> -->
                 <el-form-item
-                    label="前轮制动力矩:"
+                    label="前轮制动力矩(N·m/Mpa):"
                     prop="frontLeftWheelBrakingTorque"
                 >
                     <el-input
@@ -785,7 +799,7 @@
                     </el-input>
                 </el-form-item>
                 <el-form-item
-                    label="后轮制动力矩:"
+                    label="后轮制动力矩(N·m/Mpa):"
                     prop="rearLeftWheelBrakingTorque"
                 >
                     <el-input
@@ -799,8 +813,8 @@
                     >
                     </el-input>
                 </el-form-item>
-                <el-form-item
-                    label="右前轮制动力矩:"
+                <!-- <el-form-item
+                    label="右前轮制动力矩(N·m/Mpa):"
                     prop="frontRightWheelBrakingTorque"
                 >
                     <el-input
@@ -813,9 +827,9 @@
                         v-model="form.frontRightWheelBrakingTorque"
                     >
                     </el-input>
-                </el-form-item>
-                <el-form-item
-                    label="右后轮制动力矩:"
+                </el-form-item> -->
+                <!-- <el-form-item
+                    label="右后轮制动力矩(N·m/Mpa):"
                     prop="rearRightWheelBrakingTorque"
                 >
                     <el-input
@@ -828,7 +842,7 @@
                         v-model="form.rearRightWheelBrakingTorque"
                     >
                     </el-input>
-                </el-form-item>
+                </el-form-item> -->
             </div>
 
             <div class="titlePanel">
@@ -837,7 +851,7 @@
 
             <div class="flexBox">
                 <el-form-item label="转向类型:" prop="steeringType">
-                    <el-select v-model="form.steeringType">
+                    <el-select v-model="form.steeringType" disabled>
                         <el-option
                             v-for="item in steeringTypeList"
                             :label="item.caption"
@@ -848,7 +862,7 @@
                     </el-select>
                 </el-form-item>
                 <el-form-item label="转向器类型:" prop="steeringGearType">
-                    <el-select v-model="form.steeringGearType">
+                    <el-select v-model="form.steeringGearType" disabled>
                         <el-option
                             v-for="item in steeringGearTypeList"
                             :label="item.caption"
@@ -1303,49 +1317,50 @@ export default {
                 centroidToGround: "", // 质心到地面的高度
                 wheelbase: "", // 轴距
 
-                frontLeftWheelEffectiveRollingRadius: "", // 左前轮-有效滚动半径/mm
+                frontLeftWheelEffectiveRollingRadius: "", // 左前轮-有效滚动半径
                 frontLeftWheelRollingResistanceCoefficient: "", // 左前轮-滚动阻力系数
-                frontLeftWheelFreeRadius: "", // 左前轮-自由半径/mm
-                rearLeftWheelEffectiveRollingRadius: "", // 左后轮-有效滚动半径/mm
+                frontLeftWheelFreeRadius: "", // 左前轮-自由半径
+                rearLeftWheelEffectiveRollingRadius: "", // 左后轮-有效滚动半径
                 rearLeftWheelRollingResistanceCoefficient: "", // 左后轮-滚动阻力系数
-                rearLeftWheelFreeRadius: "", // 左后轮-自由半径/mm
-                frontRightWheelEffectiveRollingRadius: "", // 右前轮-有效滚动半径/mm
+                rearLeftWheelFreeRadius: "", // 左后轮-自由半径
+                frontRightWheelEffectiveRollingRadius: "", // 右前轮-有效滚动半径
                 frontRightWheelRollingResistanceCoefficient: "", // 右前轮-滚动阻力系数
-                frontRightWheelFreeRadius: "", // 右前轮-自由半径/mm
-                rearRightWheelEffectiveRollingRadius: "", // 右后轮-有效滚动半径/mm
+                frontRightWheelFreeRadius: "", // 右前轮-自由半径
+                rearRightWheelEffectiveRollingRadius: "", // 右后轮-有效滚动半径
                 rearRightWheelRollingResistanceCoefficient: "", // 右后轮-滚动阻力系数
-                rearRightWheelFreeRadius: "", // 右后轮-自由半径/mm
+                rearRightWheelFreeRadius: "", // 右后轮-自由半径
 
-                frontLeftWheelRelationCurvePositiveMomentAndSideslipAngle: [], // 左前轮不同载荷下回正力矩和侧偏角的关系曲线
-                frontLeftWheelRelationCurveLateralForceAndSideslipAngle: [], // 左前轮不同载荷下侧向力和侧偏角的关系曲线
+                frontLeftWheelRelationCurvePositiveMomentAndSideslipAngle: [], // 左前轮不同载荷下轮胎回正力矩和侧偏角的关系曲线
+                frontLeftWheelRelationCurveLateralForceAndSideslipAngle: [], // 左前轮不同载荷下轮胎侧向力和侧偏角的关系曲线
                 frontLeftWheelRelationCurveLongitudinalForceAndSideslipAngle:
-                    [], // 左前轮不同载荷下纵向力和侧偏角的关系曲线
-                rearLeftWheelRelationCurvePositiveMomentAndSideslipAngle: [], // 左后轮不同载荷下回正力矩和侧偏角的关系曲线
-                rearLeftWheelRelationCurveLateralForceAndSideslipAngle: [], // 左后轮不同载荷下侧向力和侧偏角的关系曲线
-                rearLeftWheelRelationCurveLongitudinalForceAndSideslipAngle: [], // 左后轮不同载荷下纵向力和侧偏角的关系曲线
-                frontRightWheelRelationCurvePositiveMomentAndSideslipAngle: [], // 右前轮不同载荷下回正力矩和侧偏角的关系曲线
-                frontRightWheelRelationCurveLateralForceAndSideslipAngle: [], // 右前轮不同载荷下侧向力和侧偏角的关系曲线
+                    [], // 左前轮不同载荷下轮胎纵向力和滑移率的关系曲线
+                rearLeftWheelRelationCurvePositiveMomentAndSideslipAngle: [], // 左后轮不同载荷下轮胎回正力矩和侧偏角的关系曲线
+                rearLeftWheelRelationCurveLateralForceAndSideslipAngle: [], // 左后轮不同载荷下轮胎侧向力和侧偏角的关系曲线
+                rearLeftWheelRelationCurveLongitudinalForceAndSideslipAngle: [], // 左后轮不同载荷下轮胎纵向力和滑移率的关系曲线
+                frontRightWheelRelationCurvePositiveMomentAndSideslipAngle: [], // 右前轮不同载荷下轮胎回正力矩和侧偏角的关系曲线
+                frontRightWheelRelationCurveLateralForceAndSideslipAngle: [], // 右前轮不同载荷下轮胎侧向力和侧偏角的关系曲线
                 frontRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
-                    [], // 右前轮不同载荷下纵向力和侧偏角的关系曲线
-                rearRightWheelRelationCurvePositiveMomentAndSideslipAngle: [], // 右后轮不同载荷下回正力矩和侧偏角的关系曲线
-                rearRightWheelRelationCurveLateralForceAndSideslipAngle: [], // 右后轮不同载荷下侧向力和侧偏角的关系曲线
+                    [], // 右前轮不同载荷下轮胎纵向力和滑移率的关系曲线
+                rearRightWheelRelationCurvePositiveMomentAndSideslipAngle: [], // 右后轮不同载荷下轮胎回正力矩和侧偏角的关系曲线
+                rearRightWheelRelationCurveLateralForceAndSideslipAngle: [], // 右后轮不同载荷下轮胎侧向力和侧偏角的关系曲线
                 rearRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
-                    [], // 右后轮不同载荷下纵向力和侧偏角的关系曲线
+                    [], // 右后轮不同载荷下轮胎纵向力和滑移率的关系曲线
 
-                frontWheelSuspensionType: "", // 前轮-悬架类型
+                frontWheelSuspensionType: "1", // 前轮-悬架类型
                 frontWheelSuspensionKinematicsCoefficient: "", // 前轮-悬架运动学系数
-                frontWheelUnsprungMass: "", // 前轮-簧下质量/kg
-                frontWheelTrackWidth: "", // 前轮-轮距/mm
-                rearWheelSuspensionType: "", // 后轮-悬架类型
+                frontWheelUnsprungMass: "", // 前轮-簧下质量
+                frontWheelTrackWidth: "", // 前轮-轮距
+                rearWheelSuspensionType: "1", // 后轮-悬架类型
                 rearWheelSuspensionKinematicsCoefficient: "", // 后轮-悬架运动学系数
-                rearWheelUnsprungMass: "", // 后轮-簧下质量/kg
-                rearWheelTrackWidth: "", // 后轮-轮距/mm
+                rearWheelUnsprungMass: "", // 后轮-簧下质量
+                rearWheelTrackWidth: "", // 后轮-轮距
 
                 windwardArea: "", // 迎风面积
                 airDensity: "", // 空气密度
 
                 engineCrankshaftMomentInertia: "", // 发动机曲轴转动惯量
                 idleSpeed: "", // 怠速转速
+                driverType: "1", // 驱动类型
 
                 relationCurveEngineTorqueSpeedAndThrottleOpening: [], // 发动机扭矩、转速和节气门开的度关系曲线
 
@@ -1374,13 +1389,13 @@ export default {
                 shiftTimeDown56: [],
 
                 brakeType: "", // 制动类型
-                frontLeftWheelBrakingTorque: "", // 前轮制动力矩
-                rearLeftWheelBrakingTorque: "", // 后轮制动力矩
-                frontRightWheelBrakingTorque: "", // 右前轮制动力矩
-                rearRightWheelBrakingTorque: "", // 右后轮制动力矩
+                frontLeftWheelBrakingTorque: "", // 前轮制动力矩
+                rearLeftWheelBrakingTorque: "", // 后轮制动力矩
+                // frontRightWheelBrakingTorque: "", // 右前轮制动力矩
+                // rearRightWheelBrakingTorque: "", // 右后轮制动力矩
 
-                steeringType: "", // 转向类型
-                steeringGearType: "", // 转向器类型
+                steeringType: "1", // 转向类型
+                steeringGearType: "1", // 转向器类型
                 steeringGearRatio: "", // 转向器传动比
 
                 relationCurveRightWheelAngleAndSteeringGearOutput: [], // 右轮转角与转向器输出的关系
@@ -1654,6 +1669,9 @@ export default {
                         trigger: ["blur"],
                     },
                 ],
+                driverType: [
+                    { required: true, message: "请选择", trigger: "change" },
+                ],
 
                 momentInertiaInputShaft: [
                     { required: true, message: "请输入", trigger: "blur" },
@@ -1703,9 +1721,9 @@ export default {
                     },
                 ],
 
-                brakeType: [
-                    { required: true, message: "请选择", trigger: "change" },
-                ],
+                // brakeType: [
+                //     { required: true, message: "请选择", trigger: "change" },
+                // ],
                 frontLeftWheelBrakingTorque: [
                     { required: true, message: "请输入", trigger: "blur" },
                     {
@@ -1722,22 +1740,22 @@ export default {
                         trigger: ["blur"],
                     },
                 ],
-                frontRightWheelBrakingTorque: [
-                    { required: true, message: "请输入", trigger: "blur" },
-                    {
-                        validator: validateNum,
-                        message: "请输入最多带有4位小数的非负数",
-                        trigger: ["blur"],
-                    },
-                ],
-                rearRightWheelBrakingTorque: [
-                    { required: true, message: "请输入", trigger: "blur" },
-                    {
-                        validator: validateNum,
-                        message: "请输入最多带有4位小数的非负数",
-                        trigger: ["blur"],
-                    },
-                ],
+                // frontRightWheelBrakingTorque: [
+                //     { required: true, message: "请输入", trigger: "blur" },
+                //     {
+                //         validator: validateNum,
+                //         message: "请输入最多带有4位小数的非负数",
+                //         trigger: ["blur"],
+                //     },
+                // ],
+                // rearRightWheelBrakingTorque: [
+                //     { required: true, message: "请输入", trigger: "blur" },
+                //     {
+                //         validator: validateNum,
+                //         message: "请输入最多带有4位小数的非负数",
+                //         trigger: ["blur"],
+                //     },
+                // ],
 
                 steeringType: [
                     { required: true, message: "请选择", trigger: "change" },
@@ -1771,7 +1789,7 @@ export default {
                     template: true,
                 },
                 {
-                    label: "Inertia",
+                    label: "Inertia(kg·m²)",
                     prop: "inertia",
                     template: true,
                 },
@@ -1950,6 +1968,12 @@ export default {
             },
             type: Array,
         },
+        driverTypeList: {
+            default: function () {
+                return [];
+            },
+            type: Array,
+        },
     },
 
     methods: {
@@ -2267,11 +2291,6 @@ export default {
                 }
             }
 
-            // console.log(data);
-
-            // console.log(labels);
-            // console.log(props);
-
             this.diaCancel();
         },
         diaCancel() {
@@ -2283,10 +2302,6 @@ export default {
 
             this.columns1 = [];
             this.getDataWay1.data = [];
-
-            // this.$refs.upload1.attachmentList = [];
-            // console.log(this.$refs.upload1);
-            // console.log(this.$refs.upload1.attachmentList);
         },
         diaSave1() {
             let array = this.getDataWay2.data;
@@ -2446,7 +2461,6 @@ export default {
         },
         attachmentChange1(fileInfo) {
             this.file1 = fileInfo;
-            // console.log(fileInfo);
 
             let columns = []; // column数组
 
@@ -2674,28 +2688,28 @@ export default {
         },
         checkArr() {
             /*  
-frontLeftWheelRelationCurvePositiveMomentAndSideslipAngle: [], // 左前轮不同载荷下回正力矩和侧偏角的关系曲线
-frontLeftWheelRelationCurveLateralForceAndSideslipAngle: [], // 左前轮不同载荷下侧向力和侧偏角的关系曲线
+frontLeftWheelRelationCurvePositiveMomentAndSideslipAngle: [], // 左前轮不同载荷下轮胎回正力矩和侧偏角的关系曲线
+frontLeftWheelRelationCurveLateralForceAndSideslipAngle: [], // 左前轮不同载荷下轮胎侧向力和侧偏角的关系曲线
 frontLeftWheelRelationCurveLongitudinalForceAndSideslipAngle:
-    [], // 左前轮不同载荷下纵向力和侧偏角的关系曲线
-rearLeftWheelRelationCurvePositiveMomentAndSideslipAngle: [], // 左后轮不同载荷下回正力矩和侧偏角的关系曲线
-rearLeftWheelRelationCurveLateralForceAndSideslipAngle: [], // 左后轮不同载荷下侧向力和侧偏角的关系曲线
-rearLeftWheelRelationCurveLongitudinalForceAndSideslipAngle: [], // 左后轮不同载荷下纵向力和侧偏角的关系曲线
-frontRightWheelRelationCurvePositiveMomentAndSideslipAngle: [], // 右前轮不同载荷下回正力矩和侧偏角的关系曲线
-frontRightWheelRelationCurveLateralForceAndSideslipAngle: [], // 右前轮不同载荷下侧向力和侧偏角的关系曲线
+    [], // 左前轮不同载荷下轮胎纵向力和滑移率的关系曲线
+rearLeftWheelRelationCurvePositiveMomentAndSideslipAngle: [], // 左后轮不同载荷下轮胎回正力矩和侧偏角的关系曲线
+rearLeftWheelRelationCurveLateralForceAndSideslipAngle: [], // 左后轮不同载荷下轮胎侧向力和侧偏角的关系曲线
+rearLeftWheelRelationCurveLongitudinalForceAndSideslipAngle: [], // 左后轮不同载荷下轮胎纵向力和滑移率的关系曲线
+frontRightWheelRelationCurvePositiveMomentAndSideslipAngle: [], // 右前轮不同载荷下轮胎回正力矩和侧偏角的关系曲线
+frontRightWheelRelationCurveLateralForceAndSideslipAngle: [], // 右前轮不同载荷下轮胎侧向力和侧偏角的关系曲线
 frontRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
-    [], // 右前轮不同载荷下纵向力和侧偏角的关系曲线
-rearRightWheelRelationCurvePositiveMomentAndSideslipAngle: [], // 右后轮不同载荷下回正力矩和侧偏角的关系曲线
-rearRightWheelRelationCurveLateralForceAndSideslipAngle: [], // 右后轮不同载荷下侧向力和侧偏角的关系曲线
+    [], // 右前轮不同载荷下轮胎纵向力和滑移率的关系曲线
+rearRightWheelRelationCurvePositiveMomentAndSideslipAngle: [], // 右后轮不同载荷下轮胎回正力矩和侧偏角的关系曲线
+rearRightWheelRelationCurveLateralForceAndSideslipAngle: [], // 右后轮不同载荷下轮胎侧向力和侧偏角的关系曲线
 rearRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
-    [], // 右后轮不同载荷下纵向力和侧偏角的关系曲线
+    [], // 右后轮不同载荷下轮胎纵向力和滑移率的关系曲线
     */
             let arr =
                 this.form
                     .frontLeftWheelRelationCurvePositiveMomentAndSideslipAngle;
             if (!Array.isArray(arr) || arr.length === 0) {
                 this.$message.error(
-                    "左前轮不同载荷下回正力矩和侧偏角的关系曲线数据不全,请填写完整"
+                    "左前轮不同载荷下轮胎回正力矩和侧偏角的关系曲线数据不全,请填写完整"
                 );
                 return false;
             }
@@ -2705,7 +2719,7 @@ rearRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
                     .frontLeftWheelRelationCurveLateralForceAndSideslipAngle;
             if (!Array.isArray(arr) || arr.length === 0) {
                 this.$message.error(
-                    "左前轮不同载荷下侧向力和侧偏角的关系曲线数据不全,请填写完整"
+                    "左前轮不同载荷下轮胎侧向力和侧偏角的关系曲线数据不全,请填写完整"
                 );
                 return false;
             }
@@ -2715,7 +2729,7 @@ rearRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
                     .frontLeftWheelRelationCurveLongitudinalForceAndSideslipAngle;
             if (!Array.isArray(arr) || arr.length === 0) {
                 this.$message.error(
-                    "左前轮不同载荷下纵向力和侧偏角的关系曲线数据不全,请填写完整"
+                    "左前轮不同载荷下轮胎纵向力和滑移率的关系曲线数据不全,请填写完整"
                 );
                 return false;
             }
@@ -2725,7 +2739,7 @@ rearRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
                     .rearLeftWheelRelationCurvePositiveMomentAndSideslipAngle;
             if (!Array.isArray(arr) || arr.length === 0) {
                 this.$message.error(
-                    "左后轮不同载荷下回正力矩和侧偏角的关系曲线数据不全,请填写完整"
+                    "左后轮不同载荷下轮胎回正力矩和侧偏角的关系曲线数据不全,请填写完整"
                 );
                 return false;
             }
@@ -2735,7 +2749,7 @@ rearRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
                     .rearLeftWheelRelationCurveLateralForceAndSideslipAngle;
             if (!Array.isArray(arr) || arr.length === 0) {
                 this.$message.error(
-                    "左后轮不同载荷下侧向力和侧偏角的关系曲线数据不全,请填写完整"
+                    "左后轮不同载荷下轮胎侧向力和侧偏角的关系曲线数据不全,请填写完整"
                 );
                 return false;
             }
@@ -2745,7 +2759,7 @@ rearRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
                     .rearLeftWheelRelationCurveLongitudinalForceAndSideslipAngle;
             if (!Array.isArray(arr) || arr.length === 0) {
                 this.$message.error(
-                    "左后轮不同载荷下纵向力和侧偏角的关系曲线数据不全,请填写完整"
+                    "左后轮不同载荷下轮胎纵向力和滑移率的关系曲线数据不全,请填写完整"
                 );
                 return false;
             }
@@ -2755,7 +2769,7 @@ rearRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
                     .frontRightWheelRelationCurvePositiveMomentAndSideslipAngle;
             if (!Array.isArray(arr) || arr.length === 0) {
                 this.$message.error(
-                    "右前轮不同载荷下回正力矩和侧偏角的关系曲线数据不全,请填写完整"
+                    "右前轮不同载荷下轮胎回正力矩和侧偏角的关系曲线数据不全,请填写完整"
                 );
                 return false;
             }
@@ -2765,7 +2779,7 @@ rearRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
                     .frontRightWheelRelationCurveLateralForceAndSideslipAngle;
             if (!Array.isArray(arr) || arr.length === 0) {
                 this.$message.error(
-                    "右前轮不同载荷下侧向力和侧偏角的关系曲线数据不全,请填写完整"
+                    "右前轮不同载荷下轮胎侧向力和侧偏角的关系曲线数据不全,请填写完整"
                 );
                 return false;
             }
@@ -2775,7 +2789,7 @@ rearRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
                     .frontRightWheelRelationCurveLongitudinalForceAndSideslipAngle;
             if (!Array.isArray(arr) || arr.length === 0) {
                 this.$message.error(
-                    "右前轮不同载荷下纵向力和侧偏角的关系曲线数据不全,请填写完整"
+                    "右前轮不同载荷下轮胎纵向力和滑移率的关系曲线数据不全,请填写完整"
                 );
                 return false;
             }
@@ -2785,7 +2799,7 @@ rearRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
                     .rearRightWheelRelationCurvePositiveMomentAndSideslipAngle;
             if (!Array.isArray(arr) || arr.length === 0) {
                 this.$message.error(
-                    "右后轮不同载荷下回正力矩和侧偏角的关系曲线数据不全,请填写完整"
+                    "右后轮不同载荷下轮胎回正力矩和侧偏角的关系曲线数据不全,请填写完整"
                 );
                 return false;
             }
@@ -2795,7 +2809,7 @@ rearRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
                     .rearRightWheelRelationCurveLateralForceAndSideslipAngle;
             if (!Array.isArray(arr) || arr.length === 0) {
                 this.$message.error(
-                    "右后轮不同载荷下侧向力和侧偏角的关系曲线数据不全,请填写完整"
+                    "右后轮不同载荷下轮胎侧向力和侧偏角的关系曲线数据不全,请填写完整"
                 );
                 return false;
             }
@@ -2805,7 +2819,7 @@ rearRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
                     .rearRightWheelRelationCurveLongitudinalForceAndSideslipAngle;
             if (!Array.isArray(arr) || arr.length === 0) {
                 this.$message.error(
-                    "右后轮不同载荷下纵向力和侧偏角的关系曲线数据不全,请填写完整"
+                    "右后轮不同载荷下轮胎纵向力和滑移率的关系曲线数据不全,请填写完整"
                 );
                 return false;
             }
@@ -2854,30 +2868,6 @@ rearRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
                 this.form.coasting.push(i.coasting);
             });
 
-            console.log(dataArray);
-            console.log(this.form.gearRatio);
-            console.log(this.form.inertia);
-            console.log(this.form.driving);
-            console.log(this.form.coasting);
-
-            /* arr = this.form.gearRatio;
-            let arr1 = this.form.inertia;
-            let arr2 = this.form.driving;
-            let arr3 = this.form.coasting;
-            if (
-                !Array.isArray(arr) ||
-                arr.length === 0 ||
-                !Array.isArray(arr1) ||
-                arr1.length === 0 ||
-                !Array.isArray(arr2) ||
-                arr2.length === 0 ||
-                !Array.isArray(arr3) ||
-                arr3.length === 0
-            ) {
-                this.$message.error("变速器表格中数据不全,请填写完整");
-                return false;
-            } */
-
             /* 
                 shiftTimeUp12: [],
                 shiftTimeDown12: [],
@@ -2980,7 +2970,6 @@ rearRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
                     let hasArr = this.checkArr();
 
                     if (hasArr) {
-                        // this.$emit("getForm", this.form, 2);
                         flag = true;
                     } else {
                         flag = false;
@@ -3007,7 +2996,6 @@ rearRightWheelRelationCurveLongitudinalForceAndSideslipAngle:
                     },
                 */
 
-            // let arr = this.form.gearRatio;
             if (this.form.gearRatio.length === 0) return;
 
             let arr = this.getDataWay.data;

+ 1 - 33
src/views/modelLibrary/components/vehicleModelVTD.vue

@@ -212,14 +212,6 @@ export default {
         };
         return {
             form: {
-                // vehicleCode: "", // 车辆ID
-                // vehicleName: "", // 车辆名称
-                // description: "", // 车辆描述
-                // vehicleType: "", // 车辆类型
-                // vehicleModel: "", // 车辆型号
-                // vehicleColour: "", // 车辆颜色
-                // vehicleType: [], // 车辆模型
-                // modelLabel: "", // 车辆模型标识
                 maxSpeed: "", // 最大速度
                 enginePower: "", // 发动机功率
                 maxDeceleration: "", // 最大减速度
@@ -237,32 +229,11 @@ export default {
                 heightDistance: "", // 车高
                 wheelbase: "", // 轴距
                 mass: "", // 质量
-                // share: "", // 分享
-                // vehicleImage: "", // 对应的图片相对地址
-                // id: "",
-                // vehicleFrontView: "", // 对应的图片相对地址
-                // vehicleTopView: "", // 对应的图片相对地址
             },
             vehicleTypeList: [],
             vehicleModelList: [],
             vehicleColourList: [],
-            // wheelDriveList: [],
             rules: {
-                // vehicleName: [
-                //     { required: true, message: "请输入", trigger: "blur" },
-                // ],
-                // description: [
-                //     { required: true, message: "请输入", trigger: "blur" },
-                // ],
-                // vehicleModel: [
-                //     { required: true, message: "请输入", trigger: "blur" },
-                // ],
-                // vehicleColour: [
-                //     { required: true, message: "请输入", trigger: "blur" },
-                // ],
-                // modelLabel: [
-                //     { required: true, message: "请输入", trigger: "blur" },
-                // ],
                 maxSpeed: [
                     { required: true, message: "请输入", trigger: "blur" },
                     {
@@ -409,9 +380,6 @@ export default {
                 wheelDrive: [
                     { required: true, message: "请选择", trigger: "change" },
                 ],
-                // vehicleType: [
-                //     { required: true, message: "请选择", trigger: "change" },
-                // ],
             },
         };
     },
@@ -428,7 +396,7 @@ export default {
     methods: {
         save() {
             let flag = null;
-            
+
             this.$refs.form.validate((valid) => {
                 if (valid) {
                     flag = true;

+ 5 - 2
src/views/modelLibrary/vehicleModel.vue

@@ -108,6 +108,7 @@
                     :brakeTypeList="brakeTypeList"
                     :steeringTypeList="steeringTypeList"
                     :steeringGearTypeList="steeringGearTypeList"
+                    :driverTypeList="driverTypeList"
                 ></Carsim>
 
                 <div class="titlePanel">
@@ -116,10 +117,10 @@
 
                 <div class="modelBox">
                     <!-- <img v-show="modelImgSrc" :src="modelImgSrc" width="100%" /> -->
-                    <!-- <three-show
+                    <three-show
                         ref="threeShow"
                         :carModel="carModel"
-                    ></three-show> -->
+                    ></three-show>
                 </div>
             </el-form>
 
@@ -229,6 +230,7 @@ export default {
             brakeTypeList: [],
             steeringTypeList: [],
             steeringGearTypeList: [],
+            driverTypeList: [],
 
             rules: {
                 parameterType: [
@@ -788,6 +790,7 @@ export default {
             brakeTypeList: "brakeType",
             steeringTypeList: "steeringType",
             steeringGearTypeList: "steeringGearType",
+            driverTypeList: "driverType",
         });
 
         this.getModelLabelList();

+ 102 - 26
src/views/systemManagement/sceneLibraryManagement/generalizationScene.vue

@@ -30,6 +30,22 @@
                 </el-select>
             </template>
             <template slot="searchItem3">
+                <span class="label">道路类型</span>
+                <el-select
+                    v-model="searchParams.scenarioRoadType"
+                    multiple
+                    size="small"
+                    clearable
+                >
+                    <el-option
+                        v-for="item in scenarioRoadTypeList"
+                        :label="item.caption"
+                        :value="item.code"
+                        :key="item.code"
+                    ></el-option>
+                </el-select>
+            </template>
+            <!-- <template slot="searchItem3">
                 <span class="label">天气</span>
                 <el-select
                     v-model="searchParams.scenarioWeather"
@@ -53,7 +69,7 @@
                     placeholder="时间"
                 >
                 </el-time-picker>
-            </template>
+            </template> -->
             <template slot="searchBtn1">
                 <el-button type="primary" @click="doSearch">查询</el-button>
             </template>
@@ -77,6 +93,12 @@
                 width="180"
             >
                 <template v-slot="scope">
+                    <i
+                        @click="viewRow(scope.row)"
+                        class="el-icon-view elIcon cursor"
+                        title="查看模板"
+                    >
+                    </i>
                     <i
                         @click="delRow(scope.row)"
                         class="el-icon-delete elIcon"
@@ -88,6 +110,26 @@
         </tableList>
 
         <el-dialog
+            v-if="generalizationVisible"
+            :visible.sync="generalizationVisible"
+            title="泛化模板"
+            width="90%"
+            class="generalizationDia"
+            :close-on-click-modal="false"
+            :close-on-press-escape="false"
+            :before-close="generalizationCancel"
+        >
+            <div>
+                <generalization-detail
+                    ref="generalizationDetail"
+                    :disabled="true"
+                    :id="generalizationId"
+                    :genUrlType="1"
+                ></generalization-detail>
+            </div>
+        </el-dialog>
+
+        <!-- <el-dialog
             :title="videoDiaTitle"
             :visible.sync="dialogVisible"
             width="690px"
@@ -98,27 +140,29 @@
             <div class="videoBox">
                 <video autoplay :src="videoSrc" controls></video>
             </div>
-        </el-dialog>
+        </el-dialog> -->
     </div>
 </template>
 
 <script>
 import searchLayout from "@/components/grid/searchLayout";
 import tableList from "@/components/grid/TableList";
+import generalizationDetail from "@/views/sceneLibrary/components/generalizationDetail";
 import { mapState } from "vuex";
 
 export default {
     name: "generalizationScenarioList", // 泛化场景模板
-    components: { searchLayout, tableList },
+    components: { searchLayout, tableList, generalizationDetail },
     data() {
         return {
             searchParams: {
                 //搜索参数
                 sceneId: "", // 场景类型编号
                 fileName: [], // 功能模块
-                scenarioWeather: [], // 天气
-                scenarioTime: "", // 时间
+                scenarioRoadType: [], // 道路类型
                 share: "0",
+                // scenarioWeather: [], // 天气
+                // scenarioTime: "", // 时间
             },
             labels: [],
             fileNameList: [],
@@ -147,13 +191,17 @@ export default {
                     prop: "scenarioRoadType",
                 },
                 {
-                    label: "时间",
-                    prop: "scenarioTime",
-                },
-                {
-                    label: "天气",
-                    prop: "scenarioWeather",
+                    label: "场景简述",
+                    prop: "scenarioResume",
                 },
+                // {
+                //     label: "时间",
+                //     prop: "scenarioTime",
+                // },
+                // {
+                //     label: "天气",
+                //     prop: "scenarioWeather",
+                // },
                 {
                     label: "操作",
                     prop: "cgInfos",
@@ -182,11 +230,17 @@ export default {
             autoplay: false,
             videoSrc: "",
             videoDiaTitle: "",
+            generalizationVisible: false, // 泛化dialog
+            generalizationId: "", // 泛化详情id
         };
     },
 
     props: {
-        scenarioWeatherList: {
+        // scenarioWeatherList: {
+        //     type: Array,
+        //     default: [],
+        // },
+        scenarioRoadTypeList: {
             type: Array,
             default: [],
         },
@@ -210,28 +264,33 @@ export default {
             this.searchParams = {
                 sceneId: "",
                 fileName: [],
-                scenarioWeather: [],
-                scenarioTime: "",
+                scenarioRoadType: [],
                 share: "0",
+                // scenarioWeather: [],
+                // scenarioTime: "",
             };
             this.labels = [];
             this.doSearch();
         },
         viewRow(row) {
-            this.dialogVisible = true;
-            this.videoDiaTitle = row.naturalName;
+            this.generalizationId = row.id;
+            this.generalizationVisible = true;
+        },
+        // viewRow(row) {
+        //     this.dialogVisible = true;
+        //     this.videoDiaTitle = row.naturalName;
 
-            let url = "";
-            if (process.env.VUE_APP_IS_DEV == "true") {
-                url = this.fileHost + this.fileUrl;
-            } else {
-                url = this.fileUrl;
-            }
+        //     let url = "";
+        //     if (process.env.VUE_APP_IS_DEV == "true") {
+        //         url = this.fileHost + this.fileUrl;
+        //     } else {
+        //         url = this.fileUrl;
+        //     }
 
-            let token = localStorage.getItem("Authorization").split(" ")[1];
-            this.videoSrc = `${url}?objectName=${row.videoAddress}&access_token=${token}`;
-            this.autoplay = true;
-        },
+        //     let token = localStorage.getItem("Authorization").split(" ")[1];
+        //     this.videoSrc = `${url}?objectName=${row.videoAddress}&access_token=${token}`;
+        //     this.autoplay = true;
+        // },
         delRow(row) {
             this.$confirm("确认是否删除?", "提示", {
                 confirmButtonText: "确定",
@@ -283,6 +342,10 @@ export default {
                 }
             });
         },
+        // 泛化-取消
+        generalizationCancel() {
+            this.generalizationVisible = false;
+        },
     },
 
     mounted() {
@@ -303,5 +366,18 @@ export default {
     .btnsPanel {
         text-align: right;
     }
+
+    .generalizationDia {
+        /deep/ .el-dialog__body {
+            position: relative;
+            padding: 20px 60px;
+
+            .changeBtn {
+                position: absolute;
+                top: 20px;
+                right: 60px;
+            }
+        }
+    }
 }
 </style>

+ 5 - 3
src/views/systemManagement/sceneLibraryManagement/sceneLibraryManagement.vue

@@ -36,7 +36,7 @@
         </traffic-accident-simulation-scene>
         <generalization-scene
             v-show="subPageActiveName === 4"
-            :scenarioWeatherList="scenarioWeatherList"
+            :scenarioRoadTypeList="scenarioRoadTypeList"
         ></generalization-scene>
     </div>
 </template>
@@ -74,7 +74,8 @@ export default {
             temporaryOperationList: [],
             regulationTypeList: [],
             fileNameList: [],
-            scenarioWeatherList: [],
+            // scenarioWeatherList: [],
+            scenarioRoadTypeList: [],
         };
     },
     computed: {
@@ -128,7 +129,8 @@ export default {
             conflictBehaviorList: "conflictBehavior",
             conflictTypeList: "conflictType",
             regulationTypeList: "regulationType",
-            scenarioWeatherList: "scenarioWeather",
+            // scenarioWeatherList: "scenarioWeather",
+            scenarioRoadTypeList: "scenarioRoadType",
         });
 
         await this.$dicsTreesInit({