QingXiCheAndQvCarEvent.js 79 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272
  1. import { QingXiCheAndQvComHighlightLayer } from './QingXiCheAndQvComHighlightLayer.js';
  2. import { QingXiCheAndQvCarEventClick } from './QingXiCheAndQvCarEventClick.js';
  3. import { WindowEvent } from '../../WindowQingXiCheAndQv/js/WindowEvent.js';
  4. import { QingXiCheAndQvComRes } from '../js/QingXiCheAndQvComRes.js';
  5. import { QingXiCheAndQvComClipPlaneMeshEvent } from '../js/QingXiCheAndQvComClipPlaneMeshEvent.js';
  6. import { QingXiCheAdnQvCarEventStep } from './QingXiCheAdnQvCarEventStep.js';
  7. import { ComVal } from "../common/ComVal.js";
  8. /**
  9. * 操作清洗车仿真逻辑
  10. */
  11. export class QingXiCheAndQvCarEvent {
  12. // 每次 new 出对象则会调用这个构造函数
  13. constructor() {
  14. /**
  15. * 三维世界对象 src\components\ThreeWorldEvent\js\QingXiCheAndQvThreeWorldEventMain.js
  16. */
  17. this.objThreeWorldEventMain = null;
  18. /**
  19. * 回调控制 上一步是否显示
  20. */
  21. this.tipsBtnsUpOpenEventCallback = null;
  22. /**
  23. * 回调控制 下一步是否显示
  24. */
  25. this.tipsBtnsDownOpenEventCallback = null;
  26. /**
  27. * 记录当前的事件名字
  28. */
  29. this.eventName = null;
  30. /**
  31. * 当前事件是否处理完成
  32. * 0 - 未完成 , 1 - 处理中, 2 - 处理完成
  33. */
  34. this.eventEnd = 0;
  35. /**
  36. * 对应可以操作的 store,控制其他组件实验
  37. */
  38. this.ComStore = {};
  39. /**
  40. * 记录可以弹出的视频
  41. */
  42. this.videoJson = {
  43. // "唯一code" : "对应的视频地址",
  44. };
  45. /**
  46. * 用于记录一些粒子的操作的球体
  47. * 有的粒子停止的时候比较奇怪
  48. * 所以有些粒子的停止和开启,是通过移动坐标实现的
  49. */
  50. this.particleSystemAutoSphere = {
  51. };
  52. /**
  53. * 记录成功绕车的点位
  54. */
  55. this.aroundTheCarPointRecord = {}
  56. // 绕车的坐标点
  57. this.aroundTheCarPoint = {
  58. "aroundTheCarPoint_1" : {
  59. "positionX": 5.102473326414879,
  60. "positionY": 0.5,
  61. "positionZ": -14.771803943333067,
  62. "toGpsDownTime": 0
  63. },
  64. "aroundTheCarPoint_2" : {
  65. "positionX": 5.129245758056641,
  66. "positionY": 0.5000000000000036,
  67. "positionZ": -19.925683975219727,
  68. "toGpsDownTime": 0
  69. },
  70. "aroundTheCarPoint_3" : {
  71. "positionX": 6.931572914123535,
  72. "positionY": 0.5000000000000036,
  73. "positionZ": -22.559829711914062,
  74. "toGpsDownTime": 0
  75. },
  76. "aroundTheCarPoint_4" : {
  77. "positionX": 10.04547119140625,
  78. "positionY": 0.4999999999999982,
  79. "positionZ": -22.38238525390625,
  80. "toGpsDownTime": 0
  81. },
  82. "aroundTheCarPoint_5" : {
  83. "positionX": 10.286110877990723,
  84. "positionY": 0.4185760095715523,
  85. "positionZ": -17.99656867980957,
  86. "toGpsDownTime": 0
  87. },
  88. "aroundTheCarPoint_6" : {
  89. "positionX": 10.143107414245605,
  90. "positionY": 0.5000000000000018,
  91. "positionZ": -15.21783447265625,
  92. "toGpsDownTime": 0
  93. },
  94. "aroundTheCarPoint_7" : {
  95. "positionX": 8.979252815246582,
  96. "positionY": 0.4999999999999991,
  97. "positionZ": -13.10937213897705,
  98. "toGpsDownTime": 0
  99. },
  100. "aroundTheCarPoint_8" : {
  101. "positionX": 6.7399396896362305,
  102. "positionY": 0.5,
  103. "positionZ": -13.170058250427246,
  104. "toGpsDownTime": 0
  105. }
  106. }
  107. }
  108. // 实现单例模式
  109. static find() {
  110. if (!QingXiCheAndQvCarEvent.instance) {
  111. QingXiCheAndQvCarEvent.instance = new QingXiCheAndQvCarEvent();
  112. }
  113. return QingXiCheAndQvCarEvent.instance;
  114. }
  115. /**
  116. * 初始化第一个步骤视角
  117. */
  118. evnetInit_1 = () => {
  119. let thisClass = this;
  120. thisClass.work_1();
  121. }
  122. /**
  123. * 回调控制 上一步是否显示
  124. * open true - 显示, false 隐藏
  125. */
  126. tipsBtnsUpOpenEventCallbackMain = function(open) {
  127. if (this.tipsBtnsUpOpenEventCallback == null || this.tipsBtnsUpOpenEventCallback == undefined) {
  128. return;
  129. }
  130. this.tipsBtnsUpOpenEventCallback(open);
  131. }
  132. /**
  133. * 回调控制 下一步是否显示
  134. * open true - 显示, false 隐藏
  135. */
  136. tipsBtnsDownOpenEventCallbackMain = (open) => {
  137. if (this.tipsBtnsDownOpenEventCallback == null || this.tipsBtnsDownOpenEventCallback == undefined) {
  138. return;
  139. }
  140. this.tipsBtnsDownOpenEventCallback(open);
  141. }
  142. /**
  143. * 关闭或开启车子
  144. * open true - 开启, false - 关闭
  145. */
  146. carOpen = function(open) {
  147. let thisClass = this;
  148. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  149. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  150. let objIframe = objThreeWorldEventMain.objIframe;
  151. let objScene = objThreeWorldEventMain.objScene;
  152. let BABYLON = objThreeWorldEventMain.BABYLON;
  153. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  154. let level = open == true ? 12 : 0.1;
  155. // 更新对应模型的参数
  156. objIframeEdit.objOneMeshListIdToJsonUpdate(
  157. "model_1754298683935控制台_primitive6",
  158. {
  159. "levelAlbedoTexture" : level,
  160. "levelDiffuseTexture" : level,
  161. }
  162. );
  163. // // 更新对应模型的参数
  164. // objIframeEdit.objOneMeshListIdToJsonUpdate(
  165. // "model_1754298683935控制台_primitive7",
  166. // {
  167. // "levelAlbedoTexture" : level,
  168. // "levelDiffuseTexture" : level,
  169. // }
  170. // );
  171. }
  172. /**
  173. * 关闭或开启双闪
  174. * open true - 开启, false - 关闭
  175. */
  176. carShuangShanOpen = function(open) {
  177. let thisClass = this;
  178. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  179. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  180. let objIframe = objThreeWorldEventMain.objIframe;
  181. let objScene = objThreeWorldEventMain.objScene;
  182. let BABYLON = objThreeWorldEventMain.BABYLON;
  183. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  184. let glowLayerOpen = open;
  185. // 更新对应模型的参数
  186. objIframeEdit.objOneMeshListIdToJsonUpdate(
  187. // "model_1746598895147控制台_primitive7",
  188. // "model_1754298683935控制台_primitive8",
  189. "model_1754298683935控制台_primitive7",
  190. {
  191. "glowLayerOpen" : glowLayerOpen,
  192. "glowLayerColor" : "rgb(255,50,0)",
  193. "glowLayerAlpha" : "1.0"
  194. }
  195. );
  196. // let albedoTextureNew = open == true ? "animationImgList_e90269b2-7940-445f-93a2-327033791563" : QingXiCheAndQvComRes.find().resJson["img_shuang"];
  197. // console.log(
  198. // " ========== 切换双闪贴图 albedoTextureNew ========== ", albedoTextureNew
  199. // );
  200. // 更新对应模型的参数
  201. objIframeEdit.objOneMeshListIdToJsonUpdate(
  202. "model_1754298683935控制台_primitive8",
  203. {
  204. // "albedoTexture" : albedoTextureNew,
  205. // "diffuseTexture" : albedoTextureNew,
  206. "levelAlbedoTexture" : open == true ? 3 : 0.1,
  207. "levelEmissiveTexture" : open == true ? 0 : 0.2,
  208. "emissiveColor" : open == true ? "rgb(0, 0, 0)" : "rgb(121,121,121)",
  209. }
  210. );
  211. }
  212. /**
  213. * 根据不同的类型,操作不同的三维
  214. * type 自定义类型
  215. */
  216. typeEvent = function(type) {
  217. let thisClass = this;
  218. console.log(
  219. "根据不同的类型,切换对应的3d逻辑", type
  220. );
  221. // if (typeof type != 'string' && type != '' && type != ' ' && type != ' ') {
  222. // this.storesObj.courseChapter3dShow.show.threeWorldMask = false;
  223. // return this;
  224. // }
  225. // this.storesObj.courseChapter3dShow.show.threeWorldMask = true;
  226. // 进入新的流程,默认没有完成
  227. this.eventName = type;
  228. this.eventEnd = 0;
  229. QingXiCheAndQvCarEventClick.find().renderEventBool = false;
  230. // 优先关闭弹窗文本窗口
  231. WindowEvent.find().WindowTxtViewOpenExit();
  232. WindowEvent.find().WindowVideoViewOpenExit();
  233. switch(type) {
  234. // 仿真模拟
  235. case '仿真模拟':
  236. thisClass.work_1();
  237. break;
  238. // // 点击管道开始清洗
  239. // case '点击管道开始清洗':
  240. // thisClass.work_7();
  241. // break;
  242. // 人物换装
  243. case '人物换装':
  244. thisClass.work_new_0();
  245. break;
  246. // 行至车辆区域
  247. case '行至车辆区域':
  248. thisClass.work_new_0_1();
  249. break;
  250. // 绕车一周
  251. case '绕车一周':
  252. thisClass.work_new_0_2();
  253. break;
  254. // 打开车门进入驾驶室
  255. case '打开车门进入驾驶室':
  256. thisClass.work_new_1();
  257. break;
  258. case '确认手刹已拉起档位是P档然后发动车辆':
  259. thisClass.work_new_2();
  260. break;
  261. case '发动车辆':
  262. thisClass.work_new_2_2();
  263. break;
  264. // 打开车辆双闪同时开启工作双闪灯
  265. case '打开车辆双闪同时开启工作双闪灯':
  266. thisClass.work_new_3();
  267. break;
  268. // 踩下车辆离合器5秒
  269. case '踩下车辆离合器5秒':
  270. thisClass.work_new_4();
  271. break;
  272. // 按下取力器开关
  273. case '按下取力器开关':
  274. thisClass.work_new_5();
  275. break;
  276. // 缓慢抬起离合器
  277. case '缓慢抬起离合器':
  278. thisClass.work_new_6();
  279. break;
  280. case '确定车辆双闪和工作箭头等是否正常':
  281. thisClass.work_new_6_1();
  282. break;
  283. case '下车':
  284. thisClass.work_new_6_2();
  285. break;
  286. // 下车确定安全灯显示是否正常
  287. case '下车确定安全灯显示是否正常':
  288. thisClass.work_new_7();
  289. break;
  290. // 在施工范围放置警示标识
  291. case '在施工范围放置警示标识':
  292. thisClass.work_new_8();
  293. break;
  294. // 从水管固定座上拧下高压水管
  295. case '从水管固定座上拧下高压水管':
  296. thisClass.work_new_9();
  297. break;
  298. // 调整卷筒器到合适位置
  299. case '调整卷筒器到合适位置':
  300. thisClass.work_new_10();
  301. break;
  302. // 取出高压水管并放入布管器内
  303. case '取出高压水管并放入布管器内':
  304. thisClass.work_new_11();
  305. break;
  306. // 套上高压水管护管器
  307. case '套上高压水管护管器':
  308. thisClass.work_new_12();
  309. break;
  310. // 安装合适的高压喷头
  311. case '安装合适的高压喷头':
  312. thisClass.work_new_13();
  313. break;
  314. // 将高压水管放入待施工的管道内
  315. case '将高压水管放入待施工的管道内':
  316. thisClass.work_new_14();
  317. break;
  318. // 在触屏操作面板上将管长清零
  319. case '在触屏操作面板上将管长清零':
  320. thisClass.work_new_15();
  321. break;
  322. // 在安全的情况开启冲水开关
  323. case '在安全的情况开启冲水开关':
  324. thisClass.work_new_16();
  325. break;
  326. // 根据现场工况调节冲水压力
  327. case '根据现场工况调节冲水压力':
  328. thisClass.work_new_17();
  329. break;
  330. // 疏通管道后减小油门到初始状态
  331. case '疏通管道后减小油门到初始状态':
  332. thisClass.work_new_18();
  333. break;
  334. // 带压收回高压水管
  335. case '带压收回高压水管':
  336. thisClass.work_new_19();
  337. break;
  338. // 至触摸屏关闭冲水开关
  339. case '至触摸屏关闭冲水开关':
  340. thisClass.work_new_20();
  341. break;
  342. // 缓慢收回高压水管
  343. case '缓慢收回高压水管':
  344. thisClass.work_new_21();
  345. break;
  346. // 拆卸高压喷头放入喷头机箱内
  347. case '拆卸高压喷头放入喷头机箱内':
  348. thisClass.work_new_22();
  349. break;
  350. // 收起高压水管将卷筒恢复到初始状态
  351. case '收起高压水管将卷筒恢复到初始状态':
  352. thisClass.work_new_23();
  353. break;
  354. // 将高压水管拧到水管固定座
  355. case '将高压水管拧到水管固定座':
  356. thisClass.work_new_24();
  357. break;
  358. // 回到驾驶室踩下车辆离合器5秒
  359. case '回到驾驶室踩下车辆离合器5秒':
  360. thisClass.work_new_25();
  361. break;
  362. // 关闭取力器开关
  363. case '关闭取力器开关':
  364. thisClass.work_new_26();
  365. break;
  366. // 关闭车辆双闪和工作双闪箭头灯
  367. case '关闭车辆双闪和工作双闪箭头灯':
  368. thisClass.work_new_27();
  369. break;
  370. // 车辆正常熄火
  371. case '车辆正常熄火':
  372. thisClass.work_new_28();
  373. break;
  374. // //
  375. // case '':
  376. // break;
  377. // //
  378. // case '':
  379. // break;
  380. // //
  381. // case '':
  382. // break;
  383. // //
  384. // case '':
  385. // break;
  386. // //
  387. // case '':
  388. // break;
  389. // //
  390. // case '':
  391. // break;
  392. // //
  393. // case '':
  394. // break;
  395. // //
  396. // case '':
  397. // break;
  398. // //
  399. // case '':
  400. // break;
  401. // 已完成所有任务
  402. case 'equipmentRepositioningWork':
  403. thisClass.work_new_29();
  404. break;
  405. // 数字修复虚拟仿真-将阀门关闭停止水流
  406. case '数字修复虚拟仿真-将阀门关闭停止水流':
  407. thisClass.shuZiXiuFuWork_0();
  408. break;
  409. // 数字修复虚拟仿真-将橡胶垫片放置到正确的位置
  410. case '数字修复虚拟仿真-将橡胶垫片放置到正确的位置':
  411. thisClass.shuZiXiuFuWork_1();
  412. break;
  413. // 数字修复虚拟仿真-将抱箍放置到正确的位置
  414. case '数字修复虚拟仿真-将抱箍放置到正确的位置':
  415. thisClass.shuZiXiuFuWork_2();
  416. break;
  417. // 数字修复虚拟仿真-将插销安装到正确的位置
  418. case '数字修复虚拟仿真-将插销安装到正确的位置':
  419. thisClass.shuZiXiuFuWork_3();
  420. break;
  421. // 数字修复虚拟仿真-将螺丝安装到正确的位置
  422. case '数字修复虚拟仿真-将螺丝安装到正确的位置':
  423. thisClass.shuZiXiuFuWork_4();
  424. break;
  425. // 数字修复虚拟仿真-用扳手将螺丝旋紧螺丝
  426. case '数字修复虚拟仿真-用扳手将螺丝旋紧螺丝':
  427. thisClass.shuZiXiuFuWork_5();
  428. break;
  429. // 数字修复虚拟仿真-已完成所有任务
  430. case '数字修复虚拟仿真-已完成所有任务':
  431. thisClass.shuZiXiuFuWork_6();
  432. break;
  433. // //
  434. // case '':
  435. // break;
  436. default:
  437. break;
  438. }
  439. }
  440. /**
  441. * 仿真模拟开始先进行初始化
  442. */
  443. work_1 = () => {
  444. let thisClass = this;
  445. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  446. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  447. let objIframe = objThreeWorldEventMain.objIframe;
  448. let objScene = objThreeWorldEventMain.objScene;
  449. let BABYLON = objThreeWorldEventMain.BABYLON;
  450. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  451. WindowEvent.find().WindowVideoRemoveColorExit();
  452. objIframeEdit.modelPeopleLook(3);
  453. objIframeEdit.roleShow(false);
  454. objIframeEdit.cameraVisualAngleGetListNameGpsTo("清洗车");
  455. thisClass.aroundTheCarPointRecord = {}
  456. // // 控制延迟逻辑
  457. // ComVal.find().fpsEventAdd("type_click_" + new Date().getTime(), {}, 3000, function(fpsEventAddRet) {
  458. // ComVal.find().fpsEventDel(fpsEventAddRet.code);
  459. // QingXiCheAndQvComClipPlaneMeshEvent.find().carMeshClipNo();
  460. // });
  461. QingXiCheAndQvComClipPlaneMeshEvent.find().carMeshClipNo();
  462. QingXiCheAndQvComHighlightLayer.find().objJsonDelAll();
  463. QingXiCheAdnQvCarEventStep.find().waterEvent(false);
  464. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  465. QingXiCheAdnQvCarEventStep.find().animationAllTypeUpdate('stopAll');
  466. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  467. thisClass.tipsBtnsDownOpenEventCallbackMain(true);
  468. }
  469. /**
  470. * 已完成所有任务
  471. */
  472. work_8 = function() {
  473. let thisClass = this;
  474. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  475. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  476. let objIframe = objThreeWorldEventMain.objIframe;
  477. let objScene = objThreeWorldEventMain.objScene;
  478. let BABYLON = objThreeWorldEventMain.BABYLON;
  479. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  480. objIframeEdit.modelPeopleLook(3);
  481. objIframeEdit.roleShow(false);
  482. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  483. // QingXiCheAdnQvCarEventStep.find().meshVisibility("点击模拟踩离合", true);
  484. // 关闭清洗水流
  485. QingXiCheAdnQvCarEventStep.find().waterEvent(false);
  486. objIframeEdit.cameraVisualAngleGetListNameGpsTo("清洗车-喷枪");
  487. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  488. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  489. }
  490. /**
  491. * 人物换装
  492. */
  493. work_new_0 = function() {
  494. let thisClass = this;
  495. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  496. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  497. let objIframe = objThreeWorldEventMain.objIframe;
  498. let objScene = objThreeWorldEventMain.objScene;
  499. let BABYLON = objThreeWorldEventMain.BABYLON;
  500. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  501. objIframeEdit.modelPeopleLook(3);
  502. objIframeEdit.roleShow(false);
  503. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  504. QingXiCheAdnQvCarEventStep.find().meshVisibility("人物穿衣服", true);
  505. objIframeEdit.cameraVisualAngleGetListNameGpsTo("穿衣服_1");
  506. // WindowEvent.find().WindowTxtViewOpenEvent(
  507. // "上车前,先绕车一周,观察车辆前后有无障碍物,留意周边行人、车辆动态。" + "\n"
  508. // + "确认无异常后,拉开车门,侧身坐入驾驶室。"
  509. // );
  510. // WindowEvent.find().WindowVideoRemoveColorOpen(
  511. // QingXiCheAndQvComRes.find().resJson["QingXiChe_13"],
  512. // "top:auto;left:auto;bottom:5%;right:10%;",
  513. // null,
  514. // null
  515. // );
  516. // // 初始化重置一些物体的材质
  517. // thisClass.carOpen(false);
  518. // thisClass.carShuangShanOpen(false);
  519. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  520. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  521. }
  522. /**
  523. * 行至车辆区域
  524. */
  525. work_new_0_1 = function() {
  526. let thisClass = this;
  527. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  528. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  529. let objIframe = objThreeWorldEventMain.objIframe;
  530. let objScene = objThreeWorldEventMain.objScene;
  531. let BABYLON = objThreeWorldEventMain.BABYLON;
  532. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  533. thisClass.aroundTheCarPointRecord = {}
  534. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  535. QingXiCheAdnQvCarEventStep.find().meshVisibility("行至车辆区域", true);
  536. // 切换到人物的视角
  537. // objThreeWorldEventMain.commonBirthplaceUpdate();
  538. objThreeWorldEventMain.commonBirthplaceUpdate(true);
  539. objIframeEdit.modelPeopleLook(1);
  540. objIframeEdit.roleShow(true);
  541. // 这里进行一个延迟,因为重新回到第一个步骤
  542. setTimeout(function() {
  543. QingXiCheAndQvCarEventClick.find().renderEventBool = true;
  544. }, 2000);
  545. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  546. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  547. }
  548. /**
  549. * 绕车一周
  550. */
  551. work_new_0_2 = function() {
  552. let thisClass = this;
  553. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  554. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  555. let objIframe = objThreeWorldEventMain.objIframe;
  556. let objScene = objThreeWorldEventMain.objScene;
  557. let BABYLON = objThreeWorldEventMain.BABYLON;
  558. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  559. thisClass.aroundTheCarPointRecord = {}
  560. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  561. QingXiCheAdnQvCarEventStep.find().meshVisibility("绕车一周", true);
  562. // 切换到人物的视角
  563. objThreeWorldEventMain.commonBirthplaceUpdate();
  564. objIframeEdit.modelPeopleLook(1);
  565. objIframeEdit.roleShow(true);
  566. QingXiCheAndQvCarEventClick.find().renderEventBool = true;
  567. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  568. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  569. }
  570. /**
  571. * 打开车门进入驾驶室
  572. */
  573. work_new_1 = function() {
  574. let thisClass = this;
  575. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  576. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  577. let objIframe = objThreeWorldEventMain.objIframe;
  578. let objScene = objThreeWorldEventMain.objScene;
  579. let BABYLON = objThreeWorldEventMain.BABYLON;
  580. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  581. // objIframeEdit.modelPeopleLook(3);
  582. // objIframeEdit.roleShow(false);
  583. // 切换到人物的视角
  584. objThreeWorldEventMain.commonBirthplaceUpdate();
  585. objIframeEdit.modelPeopleLook(1);
  586. objIframeEdit.roleShow(true);
  587. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  588. QingXiCheAdnQvCarEventStep.find().meshVisibility("打开车门进入驾驶室", true);
  589. // objIframeEdit.cameraVisualAngleGetListNameGpsTo("绕车1");
  590. WindowEvent.find().WindowTxtViewOpenEvent(
  591. "上车前,先绕车一周,观察车辆前后有无障碍物,留意周边行人、车辆动态。" + "\n"
  592. + "确认无异常后,拉开车门,侧身坐入驾驶室。"
  593. );
  594. WindowEvent.find().WindowVideoRemoveColorOpen(
  595. QingXiCheAndQvComRes.find().resJson["QingXiChe_13"],
  596. "top:auto;left:auto;bottom:5%;right:10%;",
  597. null,
  598. null
  599. );
  600. // 初始化重置一些物体的材质
  601. thisClass.carOpen(false);
  602. thisClass.carShuangShanOpen(false);
  603. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  604. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  605. }
  606. /**
  607. * 确认手刹已拉起档位是P档然后发动车辆
  608. */
  609. work_new_2 = function() {
  610. let thisClass = this;
  611. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  612. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  613. let objIframe = objThreeWorldEventMain.objIframe;
  614. let objScene = objThreeWorldEventMain.objScene;
  615. let BABYLON = objThreeWorldEventMain.BABYLON;
  616. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  617. objIframeEdit.modelPeopleLook(3);
  618. objIframeEdit.roleShow(false);
  619. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  620. QingXiCheAdnQvCarEventStep.find().meshVisibility("确认手刹已拉起档位是P档然后发动车辆", true);
  621. // objIframeEdit.cameraVisualAngleGetListNameGpsTo("手刹和空挡");
  622. WindowEvent.find().WindowTxtViewOpenEvent(
  623. "观察驾驶室挡位状态,确认手刹处于拉起状态,挡位状态切换至P挡位置。"
  624. );
  625. WindowEvent.find().WindowVideoRemoveColorOpen(
  626. QingXiCheAndQvComRes.find().resJson["QingXiChe_04"],
  627. "top:auto;left:auto;bottom:5%;right:10%;",
  628. null,
  629. null
  630. );
  631. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  632. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  633. }
  634. /**
  635. * 发动车辆
  636. */
  637. work_new_2_2 = function() {
  638. let thisClass = this;
  639. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  640. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  641. let objIframe = objThreeWorldEventMain.objIframe;
  642. let objScene = objThreeWorldEventMain.objScene;
  643. let BABYLON = objThreeWorldEventMain.BABYLON;
  644. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  645. objIframeEdit.modelPeopleLook(3);
  646. objIframeEdit.roleShow(false);
  647. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  648. QingXiCheAdnQvCarEventStep.find().meshVisibility("发动车辆", true);
  649. // objIframeEdit.cameraVisualAngleGetListNameGpsTo("手刹和空挡");
  650. WindowEvent.find().WindowTxtViewOpenEvent(
  651. "拧动启动钥匙,发动车辆。"
  652. );
  653. WindowEvent.find().WindowVideoRemoveColorOpen(
  654. QingXiCheAndQvComRes.find().resJson["QingXiChe_04"],
  655. "top:auto;left:auto;bottom:5%;right:10%;",
  656. null,
  657. null
  658. );
  659. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  660. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  661. }
  662. /**
  663. * 打开车辆双闪同时开启工作双闪灯
  664. */
  665. work_new_3 = function() {
  666. let thisClass = this;
  667. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  668. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  669. let objIframe = objThreeWorldEventMain.objIframe;
  670. let objScene = objThreeWorldEventMain.objScene;
  671. let BABYLON = objThreeWorldEventMain.BABYLON;
  672. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  673. objIframeEdit.modelPeopleLook(3);
  674. objIframeEdit.roleShow(false);
  675. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  676. QingXiCheAdnQvCarEventStep.find().meshVisibility("打开车辆双闪同时开启工作双闪灯", true);
  677. objIframeEdit.cameraVisualAngleGetListNameGpsTo("开启双闪");
  678. WindowEvent.find().WindowTxtViewOpenEvent(
  679. "按下车辆双闪按钮,打开车辆双闪,同时,按下工作双闪按钮,打开工作双闪箭头灯。" + "\n"
  680. // + "拧动启动钥匙,发动车辆。"
  681. );
  682. WindowEvent.find().WindowVideoRemoveColorOpen(
  683. QingXiCheAndQvComRes.find().resJson["QingXiChe_01"],
  684. "top:auto;left:auto;bottom:5%;right:10%;",
  685. null,
  686. null
  687. );
  688. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  689. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  690. }
  691. /**
  692. * 踩下车辆离合器5秒
  693. */
  694. work_new_4 = function() {
  695. let thisClass = this;
  696. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  697. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  698. let objIframe = objThreeWorldEventMain.objIframe;
  699. let objScene = objThreeWorldEventMain.objScene;
  700. let BABYLON = objThreeWorldEventMain.BABYLON;
  701. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  702. objIframeEdit.modelPeopleLook(3);
  703. objIframeEdit.roleShow(false);
  704. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  705. QingXiCheAdnQvCarEventStep.find().meshVisibility("踩下车辆离合器5秒", true);
  706. // objIframeEdit.cameraVisualAngleGetListNameGpsTo("调整坐姿");
  707. // objIframeEdit.cameraVisualAngleGetListNameGpsTo("手握方向盘");
  708. WindowEvent.find().WindowTxtViewOpenEvent(
  709. "调整坐姿,双手稳握方向盘。" + "\n"
  710. + "用脚掌平稳且有力地踩下车辆离合器踏板,保持5秒,为后续操作做好准备。"
  711. );
  712. WindowEvent.find().WindowVideoRemoveColorOpen(
  713. QingXiCheAndQvComRes.find().resJson["QingXiChe_15"],
  714. "top:auto;left:auto;bottom:5%;right:10%;",
  715. null,
  716. null
  717. );
  718. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  719. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  720. }
  721. /**
  722. * 按下取力器开关
  723. */
  724. work_new_5 = function() {
  725. let thisClass = this;
  726. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  727. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  728. let objIframe = objThreeWorldEventMain.objIframe;
  729. let objScene = objThreeWorldEventMain.objScene;
  730. let BABYLON = objThreeWorldEventMain.BABYLON;
  731. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  732. objIframeEdit.modelPeopleLook(3);
  733. objIframeEdit.roleShow(false);
  734. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  735. QingXiCheAdnQvCarEventStep.find().meshVisibility("按下取力器开关", true);
  736. objIframeEdit.cameraVisualAngleGetListNameGpsTo("观察仪表盘指示灯");
  737. WindowEvent.find().WindowTxtViewOpenEvent(
  738. "目视仪表盘指示灯,确认车辆处于合适工况后,用手指轻稳按下取力器开关,稍作停顿,观察仪表状态,确保取力器顺利接合。" + "\n"
  739. );
  740. WindowEvent.find().WindowVideoRemoveColorOpen(
  741. QingXiCheAndQvComRes.find().resJson["QingXiChe_02"],
  742. "top:auto;left:auto;bottom:5%;right:10%;",
  743. null,
  744. null
  745. );
  746. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  747. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  748. }
  749. /**
  750. * 缓慢抬起离合器
  751. */
  752. work_new_6 = function() {
  753. let thisClass = this;
  754. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  755. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  756. let objIframe = objThreeWorldEventMain.objIframe;
  757. let objScene = objThreeWorldEventMain.objScene;
  758. let BABYLON = objThreeWorldEventMain.BABYLON;
  759. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  760. objIframeEdit.modelPeopleLook(3);
  761. objIframeEdit.roleShow(false);
  762. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  763. QingXiCheAdnQvCarEventStep.find().meshVisibility("缓慢抬起离合器", true);
  764. // objIframeEdit.cameraVisualAngleGetListNameGpsTo("抬起离合器踏板");
  765. WindowEvent.find().WindowTxtViewOpenEvent(
  766. "手肘轻靠座椅,以脚跟为支点,脚掌缓慢上抬离合器踏板,力度由重渐轻,同时感受车辆动力衔接,避免急抬引发顿挫。" + "\n"
  767. );
  768. WindowEvent.find().WindowVideoRemoveColorOpen(
  769. QingXiCheAndQvComRes.find().resJson["QingXiChe_22"],
  770. "top:auto;left:auto;bottom:5%;right:10%;",
  771. null,
  772. null
  773. );
  774. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  775. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  776. }
  777. /**
  778. * 确定车辆双闪和工作箭头等是否正常
  779. */
  780. work_new_6_1 = function() {
  781. let thisClass = this;
  782. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  783. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  784. let objIframe = objThreeWorldEventMain.objIframe;
  785. let objScene = objThreeWorldEventMain.objScene;
  786. let BABYLON = objThreeWorldEventMain.BABYLON;
  787. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  788. objIframeEdit.modelPeopleLook(3);
  789. objIframeEdit.roleShow(false);
  790. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  791. QingXiCheAdnQvCarEventStep.find().meshVisibility("确定车辆双闪和工作箭头等是否正常", true);
  792. objIframeEdit.cameraVisualAngleGetListNameGpsTo("清洗车缓慢抬起离合器");
  793. // WindowEvent.find().WindowTxtViewOpenEvent(
  794. // "手肘轻靠座椅,以脚跟为支点,脚掌缓慢上抬离合器踏板,力度由重渐轻,同时感受车辆动力衔接,避免急抬引发顿挫。" + "\n"
  795. // );
  796. // WindowEvent.find().WindowVideoRemoveColorOpen(
  797. // QingXiCheAndQvComRes.find().resJson["QingXiChe_22"],
  798. // "top:auto;left:auto;bottom:5%;right:10%;",
  799. // null,
  800. // null
  801. // );
  802. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  803. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  804. }
  805. /**
  806. * 下车
  807. */
  808. work_new_6_2 = function() {
  809. let thisClass = this;
  810. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  811. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  812. let objIframe = objThreeWorldEventMain.objIframe;
  813. let objScene = objThreeWorldEventMain.objScene;
  814. let BABYLON = objThreeWorldEventMain.BABYLON;
  815. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  816. objIframeEdit.modelPeopleLook(3);
  817. objIframeEdit.roleShow(false);
  818. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  819. QingXiCheAdnQvCarEventStep.find().meshVisibility("下车", true);
  820. // objIframeEdit.cameraVisualAngleGetListNameGpsTo("清洗车缓慢抬起离合器");
  821. // WindowEvent.find().WindowTxtViewOpenEvent(
  822. // "手肘轻靠座椅,以脚跟为支点,脚掌缓慢上抬离合器踏板,力度由重渐轻,同时感受车辆动力衔接,避免急抬引发顿挫。" + "\n"
  823. // );
  824. // WindowEvent.find().WindowVideoRemoveColorOpen(
  825. // QingXiCheAndQvComRes.find().resJson["QingXiChe_22"],
  826. // "top:auto;left:auto;bottom:5%;right:10%;",
  827. // null,
  828. // null
  829. // );
  830. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  831. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  832. }
  833. /**
  834. * 下车确定安全灯显示是否正常
  835. */
  836. work_new_7 = function() {
  837. let thisClass = this;
  838. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  839. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  840. let objIframe = objThreeWorldEventMain.objIframe;
  841. let objScene = objThreeWorldEventMain.objScene;
  842. let BABYLON = objThreeWorldEventMain.BABYLON;
  843. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  844. // objIframeEdit.modelPeopleLook(3);
  845. // objIframeEdit.roleShow(false);
  846. // 切换到人物的视角
  847. objThreeWorldEventMain.commonBirthplaceUpdate();
  848. objIframeEdit.modelPeopleLook(1);
  849. objIframeEdit.roleShow(true);
  850. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  851. // QingXiCheAdnQvCarEventStep.find().meshVisibility("下车确定安全灯显示是否正常", true);
  852. // objIframeEdit.cameraVisualAngleGetListNameGpsTo("下车观察各项灯光0");
  853. WindowEvent.find().WindowTxtViewOpenEvent(
  854. "下车并确认车辆双闪灯快速交替闪烁,工作箭头清晰明亮,各项灯光显示均正常无误。" + "\n"
  855. );
  856. WindowEvent.find().WindowVideoRemoveColorOpen(
  857. QingXiCheAndQvComRes.find().resJson["QingXiChe_23"],
  858. "top:auto;left:auto;bottom:5%;right:10%;",
  859. null,
  860. null
  861. );
  862. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  863. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  864. }
  865. /**
  866. * 在施工范围放置警示标识
  867. */
  868. work_new_8 = function() {
  869. let thisClass = this;
  870. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  871. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  872. let objIframe = objThreeWorldEventMain.objIframe;
  873. let objScene = objThreeWorldEventMain.objScene;
  874. let BABYLON = objThreeWorldEventMain.BABYLON;
  875. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  876. // objIframeEdit.modelPeopleLook(3);
  877. // objIframeEdit.roleShow(false);
  878. objIframeEdit.modelPeopleLook(1);
  879. objIframeEdit.roleShow(true);
  880. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  881. // QingXiCheAdnQvCarEventStep.find().meshVisibility("在施工范围放置警示标识", true);
  882. // objIframeEdit.cameraVisualAngleGetListNameGpsTo("在施工范围放置警示标识1");
  883. WindowEvent.find().WindowTxtViewOpenEvent(
  884. "携带反光锥、警示牌等安全设备,沿施工场地边缘,间隔适当距离摆放。确保警示标识醒目稳固,全方位提醒过往人员注意安全。" + "\n"
  885. );
  886. WindowEvent.find().WindowVideoRemoveColorOpen(
  887. QingXiCheAndQvComRes.find().resJson["QingXiChe_16"],
  888. "top:auto;left:auto;bottom:5%;right:10%;",
  889. null,
  890. null
  891. );
  892. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  893. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  894. }
  895. /**
  896. * 从水管固定座上拧下高压水管
  897. */
  898. work_new_9 = function() {
  899. let thisClass = this;
  900. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  901. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  902. let objIframe = objThreeWorldEventMain.objIframe;
  903. let objScene = objThreeWorldEventMain.objScene;
  904. let BABYLON = objThreeWorldEventMain.BABYLON;
  905. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  906. // objIframeEdit.modelPeopleLook(3);
  907. // objIframeEdit.roleShow(false);
  908. // 切换到人物的视角
  909. objThreeWorldEventMain.commonBirthplaceUpdate();
  910. objIframeEdit.modelPeopleLook(1);
  911. objIframeEdit.roleShow(true);
  912. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  913. QingXiCheAdnQvCarEventStep.find().meshVisibility("从水管固定座上拧下高压水管", true);
  914. // objIframeEdit.cameraVisualAngleGetListNameGpsTo("从水管固定座上拧下高压水管1");
  915. // WindowEvent.find().WindowVideoViewOpenEvent(
  916. // QingXiCheAndQvCarEvent.find().videoJson["videw_liu_cheng_1"],
  917. // null,
  918. // function() {}
  919. // );
  920. WindowEvent.find().WindowTxtViewOpenEvent(
  921. "到车后查看水管固定座高压水管的螺栓位置,双手握紧扳手,按逆时针方向缓慢拧松固定螺栓,顺势取下高压水管并妥善放置。" + "\n"
  922. );
  923. WindowEvent.find().WindowVideoRemoveColorOpen(
  924. QingXiCheAndQvComRes.find().resJson["QingXiChe_03"],
  925. "top:auto;left:auto;bottom:5%;right:10%;",
  926. null,
  927. null
  928. );
  929. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  930. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  931. }
  932. /**
  933. * 调整卷筒器到合适位置
  934. */
  935. work_new_10 = function() {
  936. let thisClass = this;
  937. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  938. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  939. let objIframe = objThreeWorldEventMain.objIframe;
  940. let objScene = objThreeWorldEventMain.objScene;
  941. let BABYLON = objThreeWorldEventMain.BABYLON;
  942. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  943. // objIframeEdit.modelPeopleLook(3);
  944. // objIframeEdit.roleShow(false);
  945. // 切换到人物的视角
  946. objThreeWorldEventMain.commonBirthplaceUpdate();
  947. objIframeEdit.modelPeopleLook(1);
  948. objIframeEdit.roleShow(true);
  949. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  950. QingXiCheAdnQvCarEventStep.find().meshVisibility("调整卷筒器到合适位置", true);
  951. // objIframeEdit.cameraVisualAngleGetListNameGpsTo("调整卷筒器到合适位置1");
  952. WindowEvent.find().WindowTxtViewOpenEvent(
  953. "找到卷筒锁开关,轻轻按下开启,依照现场作业需求,缓慢转动卷筒调整至合适角度,确认无误后,再次按下开关将卷筒牢牢锁住。" + "\n"
  954. );
  955. WindowEvent.find().WindowVideoRemoveColorOpen(
  956. QingXiCheAndQvComRes.find().resJson["QingXiChe_11"],
  957. "top:auto;left:auto;bottom:5%;right:10%;",
  958. null,
  959. null
  960. );
  961. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  962. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  963. }
  964. /**
  965. * 取出高压水管并放入布管器内
  966. */
  967. work_new_11 = function() {
  968. let thisClass = this;
  969. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  970. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  971. let objIframe = objThreeWorldEventMain.objIframe;
  972. let objScene = objThreeWorldEventMain.objScene;
  973. let BABYLON = objThreeWorldEventMain.BABYLON;
  974. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  975. // objIframeEdit.modelPeopleLook(3);
  976. // objIframeEdit.roleShow(false);
  977. // 切换到人物的视角
  978. objThreeWorldEventMain.commonBirthplaceUpdate();
  979. objIframeEdit.modelPeopleLook(1);
  980. objIframeEdit.roleShow(true);
  981. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  982. QingXiCheAdnQvCarEventStep.find().meshVisibility("取出高压水管并放入布管器内", true);
  983. // objIframeEdit.cameraVisualAngleGetListNameGpsTo("取出高压水管并放入布管器内1");
  984. WindowEvent.find().WindowTxtViewOpenEvent(
  985. "缓慢取出高压水管,随后将水管一端小心送入布管器内,整个过程保持轻拿轻放,不要损坏设备。" + "\n"
  986. );
  987. WindowEvent.find().WindowVideoRemoveColorOpen(
  988. QingXiCheAndQvComRes.find().resJson["QingXiChe_05"],
  989. "top:auto;left:auto;bottom:5%;right:10%;",
  990. null,
  991. null
  992. );
  993. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  994. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  995. }
  996. /**
  997. * 套上高压水管护管器
  998. */
  999. work_new_12 = function() {
  1000. let thisClass = this;
  1001. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1002. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1003. let objIframe = objThreeWorldEventMain.objIframe;
  1004. let objScene = objThreeWorldEventMain.objScene;
  1005. let BABYLON = objThreeWorldEventMain.BABYLON;
  1006. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1007. objIframeEdit.modelPeopleLook(3);
  1008. objIframeEdit.roleShow(false);
  1009. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1010. QingXiCheAdnQvCarEventStep.find().meshVisibility("套上高压水管护管器", true);
  1011. objIframeEdit.cameraVisualAngleGetListNameGpsTo("套上高压水管护管器1");
  1012. WindowEvent.find().WindowTxtViewOpenEvent(
  1013. "为延长高压水管使用寿命、有效减少磨损,需要套上高压水管护管器,先将护管器开口对准水管端口,再沿管壁缓慢滑动套入。" + "\n"
  1014. );
  1015. WindowEvent.find().WindowVideoRemoveColorOpen(
  1016. QingXiCheAndQvComRes.find().resJson["QingXiChe_17"],
  1017. "top:auto;left:auto;bottom:5%;right:10%;",
  1018. null,
  1019. null
  1020. );
  1021. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1022. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1023. }
  1024. /**
  1025. * 安装合适的高压喷头
  1026. */
  1027. work_new_13 = function() {
  1028. let thisClass = this;
  1029. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1030. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1031. let objIframe = objThreeWorldEventMain.objIframe;
  1032. let objScene = objThreeWorldEventMain.objScene;
  1033. let BABYLON = objThreeWorldEventMain.BABYLON;
  1034. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1035. // objIframeEdit.modelPeopleLook(3);
  1036. // objIframeEdit.roleShow(false);
  1037. // 切换到人物的视角
  1038. objThreeWorldEventMain.commonBirthplaceUpdate();
  1039. objIframeEdit.modelPeopleLook(1);
  1040. objIframeEdit.roleShow(true);
  1041. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1042. QingXiCheAdnQvCarEventStep.find().meshVisibility("安装合适的高压喷头", true);
  1043. // objIframeEdit.cameraVisualAngleGetListNameGpsTo("安装合适的高压喷头1");
  1044. WindowEvent.find().WindowTxtViewOpenEvent(
  1045. "仔细评估现场施工的压力需求、喷射范围等工况,挑选适配规格的高压喷头,用扳手将其与高压水管牢固拧紧,确保连接紧密无渗漏。" + "\n"
  1046. );
  1047. WindowEvent.find().WindowVideoRemoveColorOpen(
  1048. QingXiCheAndQvComRes.find().resJson["QingXiChe_20"],
  1049. "top:auto;left:auto;bottom:5%;right:10%;",
  1050. null,
  1051. null
  1052. );
  1053. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1054. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1055. }
  1056. /**
  1057. * 将高压水管放入待施工的管道内
  1058. */
  1059. work_new_14 = function() {
  1060. let thisClass = this;
  1061. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1062. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1063. let objIframe = objThreeWorldEventMain.objIframe;
  1064. let objScene = objThreeWorldEventMain.objScene;
  1065. let BABYLON = objThreeWorldEventMain.BABYLON;
  1066. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1067. objIframeEdit.modelPeopleLook(3);
  1068. objIframeEdit.roleShow(false);
  1069. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1070. QingXiCheAdnQvCarEventStep.find().meshVisibility("将高压水管放入待施工的管道内", true);
  1071. objIframeEdit.cameraVisualAngleGetListNameGpsTo("将高压水管放入待施工的管道内1");
  1072. WindowEvent.find().WindowTxtViewOpenEvent(
  1073. "双手握紧高压水管,缓慢、匀速地将其送入施工管道,同时注意观察送入长度,使水管前端深入管道内保持在0.5至1米的合适位置。" + "\n"
  1074. );
  1075. WindowEvent.find().WindowVideoRemoveColorOpen(
  1076. QingXiCheAndQvComRes.find().resJson["QingXiChe_18"],
  1077. "top:auto;left:auto;bottom:5%;right:10%;",
  1078. null,
  1079. null
  1080. );
  1081. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1082. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1083. }
  1084. /**
  1085. * 在触屏操作面板上将管长清零
  1086. */
  1087. work_new_15 = function() {
  1088. let thisClass = this;
  1089. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1090. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1091. let objIframe = objThreeWorldEventMain.objIframe;
  1092. let objScene = objThreeWorldEventMain.objScene;
  1093. let BABYLON = objThreeWorldEventMain.BABYLON;
  1094. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1095. objIframeEdit.modelPeopleLook(3);
  1096. objIframeEdit.roleShow(false);
  1097. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1098. QingXiCheAdnQvCarEventStep.find().meshVisibility("在触屏操作面板上将管长清零", true);
  1099. objIframeEdit.cameraVisualAngleGetListNameGpsTo("在触屏操作面板上将管长清零1");
  1100. WindowEvent.find().WindowTxtViewOpenEvent(
  1101. "走近触屏操作面板,点击功能菜单找到管长设置选项,在确认无运行指令干扰后,按下清零按键,使显示屏管长数值归零并完成初始化。" + "\n"
  1102. );
  1103. WindowEvent.find().WindowVideoRemoveColorOpen(
  1104. QingXiCheAndQvComRes.find().resJson["QingXiChe_06"],
  1105. "top:auto;left:auto;bottom:5%;right:10%;",
  1106. null,
  1107. null
  1108. );
  1109. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1110. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1111. }
  1112. /**
  1113. * 在安全的情况开启冲水开关
  1114. */
  1115. work_new_16 = function() {
  1116. let thisClass = this;
  1117. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1118. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1119. let objIframe = objThreeWorldEventMain.objIframe;
  1120. let objScene = objThreeWorldEventMain.objScene;
  1121. let BABYLON = objThreeWorldEventMain.BABYLON;
  1122. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1123. objIframeEdit.modelPeopleLook(3);
  1124. objIframeEdit.roleShow(false);
  1125. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1126. QingXiCheAdnQvCarEventStep.find().meshVisibility("在安全的情况开启冲水开关", true);
  1127. objIframeEdit.cameraVisualAngleGetListNameGpsTo("在安全的情况开启冲水开关1");
  1128. WindowEvent.find().WindowTxtViewOpenEvent(
  1129. "全面检查周边环境,确认无人员靠近、设备无异常后,在触屏操作面板上,精准按下冲水开关,同时密切观察设备运行状态。" + "\n"
  1130. );
  1131. WindowEvent.find().WindowVideoViewOpenEvent(
  1132. QingXiCheAndQvCarEvent.find().videoJson["videw_liu_cheng_2"],
  1133. null,
  1134. function() {}
  1135. );
  1136. WindowEvent.find().WindowVideoRemoveColorOpen(
  1137. QingXiCheAndQvComRes.find().resJson["QingXiChe_21"],
  1138. "top:auto;left:auto;bottom:5%;right:10%;",
  1139. null,
  1140. null
  1141. );
  1142. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1143. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1144. }
  1145. /**
  1146. * 根据现场工况调节冲水压力
  1147. */
  1148. work_new_17 = function() {
  1149. let thisClass = this;
  1150. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1151. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1152. let objIframe = objThreeWorldEventMain.objIframe;
  1153. let objScene = objThreeWorldEventMain.objScene;
  1154. let BABYLON = objThreeWorldEventMain.BABYLON;
  1155. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1156. objIframeEdit.modelPeopleLook(3);
  1157. objIframeEdit.roleShow(false);
  1158. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1159. QingXiCheAdnQvCarEventStep.find().meshVisibility("根据现场工况调节冲水压力", true);
  1160. objIframeEdit.cameraVisualAngleGetListNameGpsTo("根据现场工况调节冲水压力1");
  1161. WindowEvent.find().WindowTxtViewOpenEvent(
  1162. "时刻留意现场施工情况,依据作业强度与进度,适时调节油门控制水压;同步灵活收放高压水管,保障施工高效、稳定推进。" + "\n"
  1163. );
  1164. WindowEvent.find().WindowVideoRemoveColorOpen(
  1165. QingXiCheAndQvComRes.find().resJson["QingXiChe_24"],
  1166. "top:auto;left:auto;bottom:5%;right:10%;",
  1167. null,
  1168. null
  1169. );
  1170. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1171. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1172. }
  1173. /**
  1174. * 疏通管道后减小油门到初始状态
  1175. */
  1176. work_new_18 = function() {
  1177. let thisClass = this;
  1178. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1179. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1180. let objIframe = objThreeWorldEventMain.objIframe;
  1181. let objScene = objThreeWorldEventMain.objScene;
  1182. let BABYLON = objThreeWorldEventMain.BABYLON;
  1183. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1184. objIframeEdit.modelPeopleLook(3);
  1185. objIframeEdit.roleShow(false);
  1186. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1187. QingXiCheAdnQvCarEventStep.find().meshVisibility("疏通管道后减小油门到初始状态", true);
  1188. objIframeEdit.cameraVisualAngleGetListNameGpsTo("疏通管道后减小油门到初始状态1");
  1189. WindowEvent.find().WindowTxtViewOpenEvent(
  1190. "确认管道疏通彻底、水流顺畅后,缓慢平稳地减小油门,密切注视仪表盘参数,直至油门恢复至作业前的初始设定状态。" + "\n"
  1191. );
  1192. WindowEvent.find().WindowVideoRemoveColorOpen(
  1193. QingXiCheAndQvComRes.find().resJson["QingXiChe_14"],
  1194. "top:auto;left:auto;bottom:5%;right:10%;",
  1195. null,
  1196. null
  1197. );
  1198. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1199. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1200. }
  1201. /**
  1202. * 带压收回高压水管
  1203. */
  1204. work_new_19 = function() {
  1205. let thisClass = this;
  1206. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1207. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1208. let objIframe = objThreeWorldEventMain.objIframe;
  1209. let objScene = objThreeWorldEventMain.objScene;
  1210. let BABYLON = objThreeWorldEventMain.BABYLON;
  1211. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1212. objIframeEdit.modelPeopleLook(3);
  1213. objIframeEdit.roleShow(false);
  1214. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1215. QingXiCheAdnQvCarEventStep.find().meshVisibility("带压收回高压水管", true);
  1216. objIframeEdit.cameraVisualAngleGetListNameGpsTo("带压收回高压水管1");
  1217. WindowEvent.find().WindowTxtViewOpenEvent(
  1218. "为防止喷头堵塞,在收回高压水管过程中保持冲水开关开启状态,以缓慢匀速的方式将水管回收到距管口2米处。" + "\n"
  1219. + "收回水管过程中采用带压回收的方式,主要为了借助高压水流将管道内污泥冲刷至沉井口。"
  1220. );
  1221. WindowEvent.find().WindowVideoRemoveColorOpen(
  1222. QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1223. "top:auto;left:auto;bottom:5%;right:10%;",
  1224. null,
  1225. null
  1226. );
  1227. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1228. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1229. }
  1230. /**
  1231. * 至触摸屏关闭冲水开关
  1232. */
  1233. work_new_20 = function() {
  1234. let thisClass = this;
  1235. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1236. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1237. let objIframe = objThreeWorldEventMain.objIframe;
  1238. let objScene = objThreeWorldEventMain.objScene;
  1239. let BABYLON = objThreeWorldEventMain.BABYLON;
  1240. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1241. objIframeEdit.modelPeopleLook(3);
  1242. objIframeEdit.roleShow(false);
  1243. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1244. QingXiCheAdnQvCarEventStep.find().meshVisibility("至触摸屏关闭冲水开关", true);
  1245. objIframeEdit.cameraVisualAngleGetListNameGpsTo("至触摸屏关闭冲水开关1");
  1246. WindowEvent.find().WindowTxtViewOpenEvent(
  1247. "完成管道疏通作业后,仔细确认现场无异常水流需求,走到触屏操作面板前,点击对应图标,缓慢关闭冲水开关,确保水流完全停止。" + "\n"
  1248. );
  1249. WindowEvent.find().WindowVideoRemoveColorOpen(
  1250. QingXiCheAndQvComRes.find().resJson["QingXiChe_12"],
  1251. "top:auto;left:auto;bottom:5%;right:10%;",
  1252. null,
  1253. null
  1254. );
  1255. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1256. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1257. }
  1258. /**
  1259. * 缓慢收回高压水管
  1260. */
  1261. work_new_21 = function() {
  1262. let thisClass = this;
  1263. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1264. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1265. let objIframe = objThreeWorldEventMain.objIframe;
  1266. let objScene = objThreeWorldEventMain.objScene;
  1267. let BABYLON = objThreeWorldEventMain.BABYLON;
  1268. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1269. objIframeEdit.modelPeopleLook(3);
  1270. objIframeEdit.roleShow(false);
  1271. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1272. QingXiCheAdnQvCarEventStep.find().meshVisibility("缓慢收回高压水管", true);
  1273. objIframeEdit.cameraVisualAngleGetListNameGpsTo("缓慢收回高压水管1");
  1274. WindowEvent.find().WindowTxtViewOpenEvent(
  1275. "施工完毕后,从管道拉出水管,同步检查管身有无破损。" + "\n"
  1276. );
  1277. WindowEvent.find().WindowVideoRemoveColorOpen(
  1278. QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1279. "top:auto;left:auto;bottom:5%;right:10%;",
  1280. null,
  1281. null
  1282. );
  1283. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1284. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1285. }
  1286. /**
  1287. * 拆卸高压喷头放入喷头机箱内
  1288. */
  1289. work_new_22 = function() {
  1290. let thisClass = this;
  1291. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1292. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1293. let objIframe = objThreeWorldEventMain.objIframe;
  1294. let objScene = objThreeWorldEventMain.objScene;
  1295. let BABYLON = objThreeWorldEventMain.BABYLON;
  1296. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1297. objIframeEdit.modelPeopleLook(3);
  1298. objIframeEdit.roleShow(false);
  1299. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1300. QingXiCheAdnQvCarEventStep.find().meshVisibility("拆卸高压喷头放入喷头机箱内", true);
  1301. objIframeEdit.cameraVisualAngleGetListNameGpsTo("拆卸高压喷头放入喷头机箱内1");
  1302. WindowEvent.find().WindowTxtViewOpenEvent(
  1303. "使用专用扳手,按照规范操作流程,小心拧松高压喷头与水管接口,取下喷头后仔细擦拭,确认无污渍残留,再轻放入喷头机箱内妥善归置。" + "\n"
  1304. );
  1305. WindowEvent.find().WindowVideoRemoveColorOpen(
  1306. QingXiCheAndQvComRes.find().resJson["QingXiChe_07"],
  1307. "top:auto;left:auto;bottom:5%;right:10%;",
  1308. null,
  1309. null
  1310. );
  1311. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1312. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1313. }
  1314. /**
  1315. * 收起高压水管将卷筒恢复到初始状态
  1316. */
  1317. work_new_23 = function() {
  1318. let thisClass = this;
  1319. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1320. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1321. let objIframe = objThreeWorldEventMain.objIframe;
  1322. let objScene = objThreeWorldEventMain.objScene;
  1323. let BABYLON = objThreeWorldEventMain.BABYLON;
  1324. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1325. objIframeEdit.modelPeopleLook(3);
  1326. objIframeEdit.roleShow(false);
  1327. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1328. QingXiCheAdnQvCarEventStep.find().meshVisibility("收起高压水管将卷筒恢复到初始状态", true);
  1329. objIframeEdit.cameraVisualAngleGetListNameGpsTo("收起高压水管将卷筒恢复到初始状态1");
  1330. WindowEvent.find().WindowTxtViewOpenEvent(
  1331. "按下卷筒解锁按钮,双手扶住高压水管引导其整齐缠绕,匀速转动卷筒手柄,密切观察缠绕状态,直至将水管完全收回并固定妥当后关闭卷筒锁。" + "\n"
  1332. );
  1333. WindowEvent.find().WindowVideoRemoveColorOpen(
  1334. QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1335. "top:auto;left:auto;bottom:5%;right:10%;",
  1336. null,
  1337. null
  1338. );
  1339. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1340. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1341. }
  1342. /**
  1343. * 将高压水管拧到水管固定座
  1344. */
  1345. work_new_24 = function() {
  1346. let thisClass = this;
  1347. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1348. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1349. let objIframe = objThreeWorldEventMain.objIframe;
  1350. let objScene = objThreeWorldEventMain.objScene;
  1351. let BABYLON = objThreeWorldEventMain.BABYLON;
  1352. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1353. objIframeEdit.modelPeopleLook(3);
  1354. objIframeEdit.roleShow(false);
  1355. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1356. QingXiCheAdnQvCarEventStep.find().meshVisibility("将高压水管拧到水管固定座", true);
  1357. objIframeEdit.cameraVisualAngleGetListNameGpsTo("将高压水管拧到水管固定座1");
  1358. WindowEvent.find().WindowTxtViewOpenEvent(
  1359. "拿起高压水管对准固定座接口,顺时针缓慢旋转,同时确保水管与接口紧密贴合,直至完全拧紧,使高压水管稳固固定在固定座上。" + "\n"
  1360. );
  1361. // WindowEvent.find().WindowVideoRemoveColorOpen(
  1362. // QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1363. // "top:auto;left:auto;bottom:5%;right:10%;",
  1364. // null,
  1365. // null
  1366. // );
  1367. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1368. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1369. }
  1370. /**
  1371. * 回到驾驶室踩下车辆离合器5秒
  1372. */
  1373. work_new_25 = function() {
  1374. let thisClass = this;
  1375. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1376. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1377. let objIframe = objThreeWorldEventMain.objIframe;
  1378. let objScene = objThreeWorldEventMain.objScene;
  1379. let BABYLON = objThreeWorldEventMain.BABYLON;
  1380. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1381. objIframeEdit.modelPeopleLook(3);
  1382. objIframeEdit.roleShow(false);
  1383. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1384. QingXiCheAdnQvCarEventStep.find().meshVisibility("回到驾驶室踩下车辆离合器5秒", true);
  1385. objIframeEdit.cameraVisualAngleGetListNameGpsTo("回到驾驶室踩下车辆离合器5秒1");
  1386. WindowEvent.find().WindowTxtViewOpenEvent(
  1387. "完成设备收尾工作后,稳步返回驾驶室,坐定并调整坐姿,将右脚平稳置于离合器踏板上,匀速下压车辆离合器并持续保持5秒钟。" + "\n"
  1388. );
  1389. // WindowEvent.find().WindowVideoRemoveColorOpen(
  1390. // QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1391. // "top:auto;left:auto;bottom:5%;right:10%;",
  1392. // null,
  1393. // null
  1394. // );
  1395. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1396. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1397. }
  1398. /**
  1399. * 关闭取力器开关
  1400. */
  1401. work_new_26 = function() {
  1402. let thisClass = this;
  1403. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1404. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1405. let objIframe = objThreeWorldEventMain.objIframe;
  1406. let objScene = objThreeWorldEventMain.objScene;
  1407. let BABYLON = objThreeWorldEventMain.BABYLON;
  1408. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1409. objIframeEdit.modelPeopleLook(3);
  1410. objIframeEdit.roleShow(false);
  1411. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1412. QingXiCheAdnQvCarEventStep.find().meshVisibility("关闭取力器开关", true);
  1413. objIframeEdit.cameraVisualAngleGetListNameGpsTo("观察仪表盘指示灯");
  1414. WindowEvent.find().WindowTxtViewOpenEvent(
  1415. "关闭取力器开关" + "\n"
  1416. );
  1417. // WindowEvent.find().WindowVideoRemoveColorOpen(
  1418. // QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1419. // "top:auto;left:auto;bottom:5%;right:10%;",
  1420. // null,
  1421. // null
  1422. // );
  1423. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1424. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1425. }
  1426. /**
  1427. * 关闭车辆双闪和工作双闪箭头灯
  1428. */
  1429. work_new_27 = function() {
  1430. let thisClass = this;
  1431. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1432. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1433. let objIframe = objThreeWorldEventMain.objIframe;
  1434. let objScene = objThreeWorldEventMain.objScene;
  1435. let BABYLON = objThreeWorldEventMain.BABYLON;
  1436. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1437. objIframeEdit.modelPeopleLook(3);
  1438. objIframeEdit.roleShow(false);
  1439. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1440. QingXiCheAdnQvCarEventStep.find().meshVisibility("关闭车辆双闪和工作双闪箭头灯", true);
  1441. objIframeEdit.cameraVisualAngleGetListNameGpsTo("开启双闪");
  1442. WindowEvent.find().WindowTxtViewOpenEvent(
  1443. "关闭车辆双闪和工作双闪箭头灯" + "\n"
  1444. );
  1445. // WindowEvent.find().WindowVideoRemoveColorOpen(
  1446. // QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1447. // "top:auto;left:auto;bottom:5%;right:10%;",
  1448. // null,
  1449. // null
  1450. // );
  1451. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1452. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1453. }
  1454. /**
  1455. * 车辆正常熄火
  1456. */
  1457. work_new_28 = function() {
  1458. let thisClass = this;
  1459. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1460. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1461. let objIframe = objThreeWorldEventMain.objIframe;
  1462. let objScene = objThreeWorldEventMain.objScene;
  1463. let BABYLON = objThreeWorldEventMain.BABYLON;
  1464. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1465. objIframeEdit.modelPeopleLook(3);
  1466. objIframeEdit.roleShow(false);
  1467. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1468. QingXiCheAdnQvCarEventStep.find().meshVisibility("车辆正常熄火", true);
  1469. objIframeEdit.cameraVisualAngleGetListNameGpsTo("熄火_1");
  1470. WindowEvent.find().WindowTxtViewOpenEvent(
  1471. "车辆正常熄火" + "\n"
  1472. );
  1473. // WindowEvent.find().WindowVideoRemoveColorOpen(
  1474. // QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1475. // "top:auto;left:auto;bottom:5%;right:10%;",
  1476. // null,
  1477. // null
  1478. // );
  1479. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1480. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1481. }
  1482. /**
  1483. * 清洗车已完成所有任务
  1484. */
  1485. work_new_29 = function() {
  1486. let thisClass = this;
  1487. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1488. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1489. let objIframe = objThreeWorldEventMain.objIframe;
  1490. let objScene = objThreeWorldEventMain.objScene;
  1491. let BABYLON = objThreeWorldEventMain.BABYLON;
  1492. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1493. objIframeEdit.modelPeopleLook(3);
  1494. objIframeEdit.roleShow(false);
  1495. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1496. QingXiCheAdnQvCarEventStep.find().meshVisibility("清洗车已完成所有任务", true);
  1497. objIframeEdit.cameraVisualAngleGetListNameGpsTo("清洗车流程完成");
  1498. // WindowEvent.find().WindowTxtViewOpenEvent(
  1499. // "车辆正常熄火" + "\n"
  1500. // );
  1501. // WindowEvent.find().WindowVideoRemoveColorOpen(
  1502. // QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1503. // "top:auto;left:auto;bottom:5%;right:10%;",
  1504. // null,
  1505. // null
  1506. // );
  1507. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1508. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1509. }
  1510. /**
  1511. * 数字修复虚拟仿真-将阀门关闭停止水流
  1512. */
  1513. shuZiXiuFuWork_0 = function() {
  1514. let thisClass = this;
  1515. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1516. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1517. let objIframe = objThreeWorldEventMain.objIframe;
  1518. let objScene = objThreeWorldEventMain.objScene;
  1519. let BABYLON = objThreeWorldEventMain.BABYLON;
  1520. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1521. objIframeEdit.modelPeopleLook(3);
  1522. objIframeEdit.roleShow(false);
  1523. WindowEvent.find().WindowVideoRemoveColorExit();
  1524. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1525. // 重置所有动画原始位置
  1526. QingXiCheAdnQvCarEventStep.find().animationAllTypeUpdate('stopAll');
  1527. // 开启水流
  1528. QingXiCheAdnQvCarEventStep.find().waterGuanEvent(true);
  1529. QingXiCheAndQvComHighlightLayer.find().delAll("自定义");
  1530. QingXiCheAndQvCarEventClick.find().meshListComHighlightEvent("数字修复虚拟仿真-将阀门关闭停止水流");
  1531. setTimeout(function() {
  1532. // 将地面挪到合适的位置
  1533. QingXiCheAdnQvCarEventStep.find().animationAllTypeUpdate('数字修复虚拟仿真-将橡胶垫片放置到正确的位置');
  1534. }, 300);
  1535. objIframeEdit.cameraVisualAngleGetListNameGpsTo("关闭阀门");
  1536. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1537. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1538. }
  1539. /**
  1540. * 数字修复虚拟仿真-将橡胶垫片放置到正确的位置
  1541. */
  1542. shuZiXiuFuWork_1 = function() {
  1543. let thisClass = this;
  1544. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1545. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1546. let objIframe = objThreeWorldEventMain.objIframe;
  1547. let objScene = objThreeWorldEventMain.objScene;
  1548. let BABYLON = objThreeWorldEventMain.BABYLON;
  1549. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1550. objIframeEdit.modelPeopleLook(3);
  1551. objIframeEdit.roleShow(false);
  1552. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1553. QingXiCheAndQvComHighlightLayer.find().delAll("自定义");
  1554. QingXiCheAndQvCarEventClick.find().meshListComHighlightEvent("数字修复虚拟仿真-将橡胶垫片放置到正确的位置");
  1555. objIframeEdit.cameraVisualAngleGetListNameGpsTo("将橡胶垫片放置到正确的位置_准备安装");
  1556. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1557. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1558. }
  1559. /**
  1560. * 数字修复虚拟仿真-将抱箍放置到正确的位置
  1561. */
  1562. shuZiXiuFuWork_2 = function() {
  1563. let thisClass = this;
  1564. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1565. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1566. let objIframe = objThreeWorldEventMain.objIframe;
  1567. let objScene = objThreeWorldEventMain.objScene;
  1568. let BABYLON = objThreeWorldEventMain.BABYLON;
  1569. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1570. objIframeEdit.modelPeopleLook(3);
  1571. objIframeEdit.roleShow(false);
  1572. // QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1573. QingXiCheAndQvComHighlightLayer.find().delAll("自定义");
  1574. QingXiCheAndQvCarEventClick.find().meshListComHighlightEvent("数字修复虚拟仿真-将抱箍放置到正确的位置");
  1575. objIframeEdit.cameraVisualAngleGetListNameGpsTo("将抱箍放置到正确的位置_准备安装");
  1576. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1577. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1578. }
  1579. /**
  1580. * 数字修复虚拟仿真-将插销安装到正确的位置
  1581. */
  1582. shuZiXiuFuWork_3 = function() {
  1583. let thisClass = this;
  1584. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1585. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1586. let objIframe = objThreeWorldEventMain.objIframe;
  1587. let objScene = objThreeWorldEventMain.objScene;
  1588. let BABYLON = objThreeWorldEventMain.BABYLON;
  1589. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1590. objIframeEdit.modelPeopleLook(3);
  1591. objIframeEdit.roleShow(false);
  1592. // QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1593. QingXiCheAndQvComHighlightLayer.find().delAll("自定义");
  1594. QingXiCheAndQvCarEventClick.find().meshListComHighlightEvent("数字修复虚拟仿真-将插销安装到正确的位置");
  1595. objIframeEdit.cameraVisualAngleGetListNameGpsTo("将插销安装到正确的位置_准备安装");
  1596. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1597. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1598. }
  1599. /**
  1600. * 数字修复虚拟仿真-将螺丝安装到正确的位置
  1601. */
  1602. shuZiXiuFuWork_4 = function() {
  1603. let thisClass = this;
  1604. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1605. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1606. let objIframe = objThreeWorldEventMain.objIframe;
  1607. let objScene = objThreeWorldEventMain.objScene;
  1608. let BABYLON = objThreeWorldEventMain.BABYLON;
  1609. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1610. objIframeEdit.modelPeopleLook(3);
  1611. objIframeEdit.roleShow(false);
  1612. // QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1613. QingXiCheAndQvComHighlightLayer.find().delAll("自定义");
  1614. QingXiCheAndQvCarEventClick.find().meshListComHighlightEvent("数字修复虚拟仿真-将螺丝安装到正确的位置");
  1615. objIframeEdit.cameraVisualAngleGetListNameGpsTo("将螺丝安装到正确的位置_准备安装");
  1616. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1617. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1618. }
  1619. /**
  1620. * 数字修复虚拟仿真-用扳手将螺丝旋紧螺丝
  1621. */
  1622. shuZiXiuFuWork_5 = function() {
  1623. let thisClass = this;
  1624. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1625. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1626. let objIframe = objThreeWorldEventMain.objIframe;
  1627. let objScene = objThreeWorldEventMain.objScene;
  1628. let BABYLON = objThreeWorldEventMain.BABYLON;
  1629. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1630. objIframeEdit.modelPeopleLook(3);
  1631. objIframeEdit.roleShow(false);
  1632. // QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1633. QingXiCheAndQvComHighlightLayer.find().delAll("自定义");
  1634. QingXiCheAndQvCarEventClick.find().meshListComHighlightEvent("数字修复虚拟仿真-用扳手将螺丝旋紧螺丝");
  1635. objIframeEdit.cameraVisualAngleGetListNameGpsTo("用扳手将螺丝旋紧螺丝_准备安装");
  1636. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1637. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1638. }
  1639. /**
  1640. * 数字修复虚拟仿真-已完成所有任务
  1641. */
  1642. shuZiXiuFuWork_6 = function() {
  1643. let thisClass = this;
  1644. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1645. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1646. let objIframe = objThreeWorldEventMain.objIframe;
  1647. let objScene = objThreeWorldEventMain.objScene;
  1648. let BABYLON = objThreeWorldEventMain.BABYLON;
  1649. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1650. objIframeEdit.modelPeopleLook(3);
  1651. objIframeEdit.roleShow(false);
  1652. // QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1653. QingXiCheAndQvComHighlightLayer.find().delAll("自定义");
  1654. objIframeEdit.cameraVisualAngleGetListNameGpsTo("数字修复虚拟仿真-已完成所有任务");
  1655. setTimeout(function() {
  1656. // 启动水流
  1657. QingXiCheAdnQvCarEventStep.find().waterGuanEvent(true, true);
  1658. }, 1500);
  1659. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1660. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1661. }
  1662. }