QingXiCheAndQvCarEvent.js 78 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262
  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. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  978. QingXiCheAdnQvCarEventStep.find().meshVisibility("取出高压水管并放入布管器内", true);
  979. objIframeEdit.cameraVisualAngleGetListNameGpsTo("取出高压水管并放入布管器内1");
  980. WindowEvent.find().WindowTxtViewOpenEvent(
  981. "缓慢取出高压水管,随后将水管一端小心送入布管器内,整个过程保持轻拿轻放,不要损坏设备。" + "\n"
  982. );
  983. WindowEvent.find().WindowVideoRemoveColorOpen(
  984. QingXiCheAndQvComRes.find().resJson["QingXiChe_05"],
  985. "top:auto;left:auto;bottom:5%;right:10%;",
  986. null,
  987. null
  988. );
  989. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  990. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  991. }
  992. /**
  993. * 套上高压水管护管器
  994. */
  995. work_new_12 = function() {
  996. let thisClass = this;
  997. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  998. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  999. let objIframe = objThreeWorldEventMain.objIframe;
  1000. let objScene = objThreeWorldEventMain.objScene;
  1001. let BABYLON = objThreeWorldEventMain.BABYLON;
  1002. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1003. objIframeEdit.modelPeopleLook(3);
  1004. objIframeEdit.roleShow(false);
  1005. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1006. QingXiCheAdnQvCarEventStep.find().meshVisibility("套上高压水管护管器", true);
  1007. objIframeEdit.cameraVisualAngleGetListNameGpsTo("套上高压水管护管器1");
  1008. WindowEvent.find().WindowTxtViewOpenEvent(
  1009. "为延长高压水管使用寿命、有效减少磨损,需要套上高压水管护管器,先将护管器开口对准水管端口,再沿管壁缓慢滑动套入。" + "\n"
  1010. );
  1011. WindowEvent.find().WindowVideoRemoveColorOpen(
  1012. QingXiCheAndQvComRes.find().resJson["QingXiChe_17"],
  1013. "top:auto;left:auto;bottom:5%;right:10%;",
  1014. null,
  1015. null
  1016. );
  1017. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1018. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1019. }
  1020. /**
  1021. * 安装合适的高压喷头
  1022. */
  1023. work_new_13 = function() {
  1024. let thisClass = this;
  1025. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1026. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1027. let objIframe = objThreeWorldEventMain.objIframe;
  1028. let objScene = objThreeWorldEventMain.objScene;
  1029. let BABYLON = objThreeWorldEventMain.BABYLON;
  1030. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1031. objIframeEdit.modelPeopleLook(3);
  1032. objIframeEdit.roleShow(false);
  1033. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1034. QingXiCheAdnQvCarEventStep.find().meshVisibility("安装合适的高压喷头", true);
  1035. objIframeEdit.cameraVisualAngleGetListNameGpsTo("安装合适的高压喷头1");
  1036. WindowEvent.find().WindowTxtViewOpenEvent(
  1037. "仔细评估现场施工的压力需求、喷射范围等工况,挑选适配规格的高压喷头,用扳手将其与高压水管牢固拧紧,确保连接紧密无渗漏。" + "\n"
  1038. );
  1039. WindowEvent.find().WindowVideoRemoveColorOpen(
  1040. QingXiCheAndQvComRes.find().resJson["QingXiChe_20"],
  1041. "top:auto;left:auto;bottom:5%;right:10%;",
  1042. null,
  1043. null
  1044. );
  1045. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1046. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1047. }
  1048. /**
  1049. * 将高压水管放入待施工的管道内
  1050. */
  1051. work_new_14 = function() {
  1052. let thisClass = this;
  1053. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1054. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1055. let objIframe = objThreeWorldEventMain.objIframe;
  1056. let objScene = objThreeWorldEventMain.objScene;
  1057. let BABYLON = objThreeWorldEventMain.BABYLON;
  1058. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1059. objIframeEdit.modelPeopleLook(3);
  1060. objIframeEdit.roleShow(false);
  1061. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1062. QingXiCheAdnQvCarEventStep.find().meshVisibility("将高压水管放入待施工的管道内", true);
  1063. objIframeEdit.cameraVisualAngleGetListNameGpsTo("将高压水管放入待施工的管道内1");
  1064. WindowEvent.find().WindowTxtViewOpenEvent(
  1065. "双手握紧高压水管,缓慢、匀速地将其送入施工管道,同时注意观察送入长度,使水管前端深入管道内保持在0.5至1米的合适位置。" + "\n"
  1066. );
  1067. WindowEvent.find().WindowVideoRemoveColorOpen(
  1068. QingXiCheAndQvComRes.find().resJson["QingXiChe_18"],
  1069. "top:auto;left:auto;bottom:5%;right:10%;",
  1070. null,
  1071. null
  1072. );
  1073. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1074. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1075. }
  1076. /**
  1077. * 在触屏操作面板上将管长清零
  1078. */
  1079. work_new_15 = function() {
  1080. let thisClass = this;
  1081. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1082. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1083. let objIframe = objThreeWorldEventMain.objIframe;
  1084. let objScene = objThreeWorldEventMain.objScene;
  1085. let BABYLON = objThreeWorldEventMain.BABYLON;
  1086. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1087. objIframeEdit.modelPeopleLook(3);
  1088. objIframeEdit.roleShow(false);
  1089. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1090. QingXiCheAdnQvCarEventStep.find().meshVisibility("在触屏操作面板上将管长清零", true);
  1091. objIframeEdit.cameraVisualAngleGetListNameGpsTo("在触屏操作面板上将管长清零1");
  1092. WindowEvent.find().WindowTxtViewOpenEvent(
  1093. "走近触屏操作面板,点击功能菜单找到管长设置选项,在确认无运行指令干扰后,按下清零按键,使显示屏管长数值归零并完成初始化。" + "\n"
  1094. );
  1095. WindowEvent.find().WindowVideoRemoveColorOpen(
  1096. QingXiCheAndQvComRes.find().resJson["QingXiChe_06"],
  1097. "top:auto;left:auto;bottom:5%;right:10%;",
  1098. null,
  1099. null
  1100. );
  1101. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1102. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1103. }
  1104. /**
  1105. * 在安全的情况开启冲水开关
  1106. */
  1107. work_new_16 = function() {
  1108. let thisClass = this;
  1109. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1110. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1111. let objIframe = objThreeWorldEventMain.objIframe;
  1112. let objScene = objThreeWorldEventMain.objScene;
  1113. let BABYLON = objThreeWorldEventMain.BABYLON;
  1114. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1115. objIframeEdit.modelPeopleLook(3);
  1116. objIframeEdit.roleShow(false);
  1117. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1118. QingXiCheAdnQvCarEventStep.find().meshVisibility("在安全的情况开启冲水开关", true);
  1119. objIframeEdit.cameraVisualAngleGetListNameGpsTo("在安全的情况开启冲水开关1");
  1120. WindowEvent.find().WindowTxtViewOpenEvent(
  1121. "全面检查周边环境,确认无人员靠近、设备无异常后,在触屏操作面板上,精准按下冲水开关,同时密切观察设备运行状态。" + "\n"
  1122. );
  1123. WindowEvent.find().WindowVideoViewOpenEvent(
  1124. QingXiCheAndQvCarEvent.find().videoJson["videw_liu_cheng_2"],
  1125. null,
  1126. function() {}
  1127. );
  1128. WindowEvent.find().WindowVideoRemoveColorOpen(
  1129. QingXiCheAndQvComRes.find().resJson["QingXiChe_21"],
  1130. "top:auto;left:auto;bottom:5%;right:10%;",
  1131. null,
  1132. null
  1133. );
  1134. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1135. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1136. }
  1137. /**
  1138. * 根据现场工况调节冲水压力
  1139. */
  1140. work_new_17 = function() {
  1141. let thisClass = this;
  1142. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1143. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1144. let objIframe = objThreeWorldEventMain.objIframe;
  1145. let objScene = objThreeWorldEventMain.objScene;
  1146. let BABYLON = objThreeWorldEventMain.BABYLON;
  1147. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1148. objIframeEdit.modelPeopleLook(3);
  1149. objIframeEdit.roleShow(false);
  1150. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1151. QingXiCheAdnQvCarEventStep.find().meshVisibility("根据现场工况调节冲水压力", true);
  1152. objIframeEdit.cameraVisualAngleGetListNameGpsTo("根据现场工况调节冲水压力1");
  1153. WindowEvent.find().WindowTxtViewOpenEvent(
  1154. "时刻留意现场施工情况,依据作业强度与进度,适时调节油门控制水压;同步灵活收放高压水管,保障施工高效、稳定推进。" + "\n"
  1155. );
  1156. WindowEvent.find().WindowVideoRemoveColorOpen(
  1157. QingXiCheAndQvComRes.find().resJson["QingXiChe_24"],
  1158. "top:auto;left:auto;bottom:5%;right:10%;",
  1159. null,
  1160. null
  1161. );
  1162. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1163. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1164. }
  1165. /**
  1166. * 疏通管道后减小油门到初始状态
  1167. */
  1168. work_new_18 = function() {
  1169. let thisClass = this;
  1170. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1171. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1172. let objIframe = objThreeWorldEventMain.objIframe;
  1173. let objScene = objThreeWorldEventMain.objScene;
  1174. let BABYLON = objThreeWorldEventMain.BABYLON;
  1175. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1176. objIframeEdit.modelPeopleLook(3);
  1177. objIframeEdit.roleShow(false);
  1178. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1179. QingXiCheAdnQvCarEventStep.find().meshVisibility("疏通管道后减小油门到初始状态", true);
  1180. objIframeEdit.cameraVisualAngleGetListNameGpsTo("疏通管道后减小油门到初始状态1");
  1181. WindowEvent.find().WindowTxtViewOpenEvent(
  1182. "确认管道疏通彻底、水流顺畅后,缓慢平稳地减小油门,密切注视仪表盘参数,直至油门恢复至作业前的初始设定状态。" + "\n"
  1183. );
  1184. WindowEvent.find().WindowVideoRemoveColorOpen(
  1185. QingXiCheAndQvComRes.find().resJson["QingXiChe_14"],
  1186. "top:auto;left:auto;bottom:5%;right:10%;",
  1187. null,
  1188. null
  1189. );
  1190. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1191. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1192. }
  1193. /**
  1194. * 带压收回高压水管
  1195. */
  1196. work_new_19 = function() {
  1197. let thisClass = this;
  1198. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1199. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1200. let objIframe = objThreeWorldEventMain.objIframe;
  1201. let objScene = objThreeWorldEventMain.objScene;
  1202. let BABYLON = objThreeWorldEventMain.BABYLON;
  1203. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1204. objIframeEdit.modelPeopleLook(3);
  1205. objIframeEdit.roleShow(false);
  1206. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1207. QingXiCheAdnQvCarEventStep.find().meshVisibility("带压收回高压水管", true);
  1208. objIframeEdit.cameraVisualAngleGetListNameGpsTo("带压收回高压水管1");
  1209. WindowEvent.find().WindowTxtViewOpenEvent(
  1210. "为防止喷头堵塞,在收回高压水管过程中保持冲水开关开启状态,以缓慢匀速的方式将水管回收到距管口2米处。" + "\n"
  1211. + "收回水管过程中采用带压回收的方式,主要为了借助高压水流将管道内污泥冲刷至沉井口。"
  1212. );
  1213. WindowEvent.find().WindowVideoRemoveColorOpen(
  1214. QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1215. "top:auto;left:auto;bottom:5%;right:10%;",
  1216. null,
  1217. null
  1218. );
  1219. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1220. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1221. }
  1222. /**
  1223. * 至触摸屏关闭冲水开关
  1224. */
  1225. work_new_20 = function() {
  1226. let thisClass = this;
  1227. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1228. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1229. let objIframe = objThreeWorldEventMain.objIframe;
  1230. let objScene = objThreeWorldEventMain.objScene;
  1231. let BABYLON = objThreeWorldEventMain.BABYLON;
  1232. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1233. objIframeEdit.modelPeopleLook(3);
  1234. objIframeEdit.roleShow(false);
  1235. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1236. QingXiCheAdnQvCarEventStep.find().meshVisibility("至触摸屏关闭冲水开关", true);
  1237. objIframeEdit.cameraVisualAngleGetListNameGpsTo("至触摸屏关闭冲水开关1");
  1238. WindowEvent.find().WindowTxtViewOpenEvent(
  1239. "完成管道疏通作业后,仔细确认现场无异常水流需求,走到触屏操作面板前,点击对应图标,缓慢关闭冲水开关,确保水流完全停止。" + "\n"
  1240. );
  1241. WindowEvent.find().WindowVideoRemoveColorOpen(
  1242. QingXiCheAndQvComRes.find().resJson["QingXiChe_12"],
  1243. "top:auto;left:auto;bottom:5%;right:10%;",
  1244. null,
  1245. null
  1246. );
  1247. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1248. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1249. }
  1250. /**
  1251. * 缓慢收回高压水管
  1252. */
  1253. work_new_21 = function() {
  1254. let thisClass = this;
  1255. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1256. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1257. let objIframe = objThreeWorldEventMain.objIframe;
  1258. let objScene = objThreeWorldEventMain.objScene;
  1259. let BABYLON = objThreeWorldEventMain.BABYLON;
  1260. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1261. objIframeEdit.modelPeopleLook(3);
  1262. objIframeEdit.roleShow(false);
  1263. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1264. QingXiCheAdnQvCarEventStep.find().meshVisibility("缓慢收回高压水管", true);
  1265. objIframeEdit.cameraVisualAngleGetListNameGpsTo("缓慢收回高压水管1");
  1266. WindowEvent.find().WindowTxtViewOpenEvent(
  1267. "施工完毕后,从管道拉出水管,同步检查管身有无破损。" + "\n"
  1268. );
  1269. WindowEvent.find().WindowVideoRemoveColorOpen(
  1270. QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1271. "top:auto;left:auto;bottom:5%;right:10%;",
  1272. null,
  1273. null
  1274. );
  1275. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1276. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1277. }
  1278. /**
  1279. * 拆卸高压喷头放入喷头机箱内
  1280. */
  1281. work_new_22 = function() {
  1282. let thisClass = this;
  1283. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1284. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1285. let objIframe = objThreeWorldEventMain.objIframe;
  1286. let objScene = objThreeWorldEventMain.objScene;
  1287. let BABYLON = objThreeWorldEventMain.BABYLON;
  1288. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1289. objIframeEdit.modelPeopleLook(3);
  1290. objIframeEdit.roleShow(false);
  1291. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1292. QingXiCheAdnQvCarEventStep.find().meshVisibility("拆卸高压喷头放入喷头机箱内", true);
  1293. objIframeEdit.cameraVisualAngleGetListNameGpsTo("拆卸高压喷头放入喷头机箱内1");
  1294. WindowEvent.find().WindowTxtViewOpenEvent(
  1295. "使用专用扳手,按照规范操作流程,小心拧松高压喷头与水管接口,取下喷头后仔细擦拭,确认无污渍残留,再轻放入喷头机箱内妥善归置。" + "\n"
  1296. );
  1297. WindowEvent.find().WindowVideoRemoveColorOpen(
  1298. QingXiCheAndQvComRes.find().resJson["QingXiChe_07"],
  1299. "top:auto;left:auto;bottom:5%;right:10%;",
  1300. null,
  1301. null
  1302. );
  1303. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1304. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1305. }
  1306. /**
  1307. * 收起高压水管将卷筒恢复到初始状态
  1308. */
  1309. work_new_23 = function() {
  1310. let thisClass = this;
  1311. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1312. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1313. let objIframe = objThreeWorldEventMain.objIframe;
  1314. let objScene = objThreeWorldEventMain.objScene;
  1315. let BABYLON = objThreeWorldEventMain.BABYLON;
  1316. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1317. objIframeEdit.modelPeopleLook(3);
  1318. objIframeEdit.roleShow(false);
  1319. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1320. QingXiCheAdnQvCarEventStep.find().meshVisibility("收起高压水管将卷筒恢复到初始状态", true);
  1321. objIframeEdit.cameraVisualAngleGetListNameGpsTo("收起高压水管将卷筒恢复到初始状态1");
  1322. WindowEvent.find().WindowTxtViewOpenEvent(
  1323. "按下卷筒解锁按钮,双手扶住高压水管引导其整齐缠绕,匀速转动卷筒手柄,密切观察缠绕状态,直至将水管完全收回并固定妥当后关闭卷筒锁。" + "\n"
  1324. );
  1325. WindowEvent.find().WindowVideoRemoveColorOpen(
  1326. QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1327. "top:auto;left:auto;bottom:5%;right:10%;",
  1328. null,
  1329. null
  1330. );
  1331. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1332. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1333. }
  1334. /**
  1335. * 将高压水管拧到水管固定座
  1336. */
  1337. work_new_24 = function() {
  1338. let thisClass = this;
  1339. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1340. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1341. let objIframe = objThreeWorldEventMain.objIframe;
  1342. let objScene = objThreeWorldEventMain.objScene;
  1343. let BABYLON = objThreeWorldEventMain.BABYLON;
  1344. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1345. objIframeEdit.modelPeopleLook(3);
  1346. objIframeEdit.roleShow(false);
  1347. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1348. QingXiCheAdnQvCarEventStep.find().meshVisibility("将高压水管拧到水管固定座", true);
  1349. objIframeEdit.cameraVisualAngleGetListNameGpsTo("将高压水管拧到水管固定座1");
  1350. WindowEvent.find().WindowTxtViewOpenEvent(
  1351. "拿起高压水管对准固定座接口,顺时针缓慢旋转,同时确保水管与接口紧密贴合,直至完全拧紧,使高压水管稳固固定在固定座上。" + "\n"
  1352. );
  1353. // WindowEvent.find().WindowVideoRemoveColorOpen(
  1354. // QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1355. // "top:auto;left:auto;bottom:5%;right:10%;",
  1356. // null,
  1357. // null
  1358. // );
  1359. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1360. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1361. }
  1362. /**
  1363. * 回到驾驶室踩下车辆离合器5秒
  1364. */
  1365. work_new_25 = function() {
  1366. let thisClass = this;
  1367. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1368. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1369. let objIframe = objThreeWorldEventMain.objIframe;
  1370. let objScene = objThreeWorldEventMain.objScene;
  1371. let BABYLON = objThreeWorldEventMain.BABYLON;
  1372. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1373. objIframeEdit.modelPeopleLook(3);
  1374. objIframeEdit.roleShow(false);
  1375. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1376. QingXiCheAdnQvCarEventStep.find().meshVisibility("回到驾驶室踩下车辆离合器5秒", true);
  1377. objIframeEdit.cameraVisualAngleGetListNameGpsTo("回到驾驶室踩下车辆离合器5秒1");
  1378. WindowEvent.find().WindowTxtViewOpenEvent(
  1379. "完成设备收尾工作后,稳步返回驾驶室,坐定并调整坐姿,将右脚平稳置于离合器踏板上,匀速下压车辆离合器并持续保持5秒钟。" + "\n"
  1380. );
  1381. // WindowEvent.find().WindowVideoRemoveColorOpen(
  1382. // QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1383. // "top:auto;left:auto;bottom:5%;right:10%;",
  1384. // null,
  1385. // null
  1386. // );
  1387. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1388. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1389. }
  1390. /**
  1391. * 关闭取力器开关
  1392. */
  1393. work_new_26 = function() {
  1394. let thisClass = this;
  1395. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1396. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1397. let objIframe = objThreeWorldEventMain.objIframe;
  1398. let objScene = objThreeWorldEventMain.objScene;
  1399. let BABYLON = objThreeWorldEventMain.BABYLON;
  1400. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1401. objIframeEdit.modelPeopleLook(3);
  1402. objIframeEdit.roleShow(false);
  1403. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1404. QingXiCheAdnQvCarEventStep.find().meshVisibility("关闭取力器开关", true);
  1405. objIframeEdit.cameraVisualAngleGetListNameGpsTo("观察仪表盘指示灯");
  1406. WindowEvent.find().WindowTxtViewOpenEvent(
  1407. "关闭取力器开关" + "\n"
  1408. );
  1409. // WindowEvent.find().WindowVideoRemoveColorOpen(
  1410. // QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1411. // "top:auto;left:auto;bottom:5%;right:10%;",
  1412. // null,
  1413. // null
  1414. // );
  1415. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1416. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1417. }
  1418. /**
  1419. * 关闭车辆双闪和工作双闪箭头灯
  1420. */
  1421. work_new_27 = function() {
  1422. let thisClass = this;
  1423. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1424. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1425. let objIframe = objThreeWorldEventMain.objIframe;
  1426. let objScene = objThreeWorldEventMain.objScene;
  1427. let BABYLON = objThreeWorldEventMain.BABYLON;
  1428. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1429. objIframeEdit.modelPeopleLook(3);
  1430. objIframeEdit.roleShow(false);
  1431. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1432. QingXiCheAdnQvCarEventStep.find().meshVisibility("关闭车辆双闪和工作双闪箭头灯", true);
  1433. objIframeEdit.cameraVisualAngleGetListNameGpsTo("开启双闪");
  1434. WindowEvent.find().WindowTxtViewOpenEvent(
  1435. "关闭车辆双闪和工作双闪箭头灯" + "\n"
  1436. );
  1437. // WindowEvent.find().WindowVideoRemoveColorOpen(
  1438. // QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1439. // "top:auto;left:auto;bottom:5%;right:10%;",
  1440. // null,
  1441. // null
  1442. // );
  1443. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1444. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1445. }
  1446. /**
  1447. * 车辆正常熄火
  1448. */
  1449. work_new_28 = function() {
  1450. let thisClass = this;
  1451. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1452. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1453. let objIframe = objThreeWorldEventMain.objIframe;
  1454. let objScene = objThreeWorldEventMain.objScene;
  1455. let BABYLON = objThreeWorldEventMain.BABYLON;
  1456. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1457. objIframeEdit.modelPeopleLook(3);
  1458. objIframeEdit.roleShow(false);
  1459. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1460. QingXiCheAdnQvCarEventStep.find().meshVisibility("车辆正常熄火", true);
  1461. objIframeEdit.cameraVisualAngleGetListNameGpsTo("熄火_1");
  1462. WindowEvent.find().WindowTxtViewOpenEvent(
  1463. "车辆正常熄火" + "\n"
  1464. );
  1465. // WindowEvent.find().WindowVideoRemoveColorOpen(
  1466. // QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1467. // "top:auto;left:auto;bottom:5%;right:10%;",
  1468. // null,
  1469. // null
  1470. // );
  1471. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1472. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1473. }
  1474. /**
  1475. * 清洗车已完成所有任务
  1476. */
  1477. work_new_29 = function() {
  1478. let thisClass = this;
  1479. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1480. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1481. let objIframe = objThreeWorldEventMain.objIframe;
  1482. let objScene = objThreeWorldEventMain.objScene;
  1483. let BABYLON = objThreeWorldEventMain.BABYLON;
  1484. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1485. objIframeEdit.modelPeopleLook(3);
  1486. objIframeEdit.roleShow(false);
  1487. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1488. QingXiCheAdnQvCarEventStep.find().meshVisibility("清洗车已完成所有任务", true);
  1489. objIframeEdit.cameraVisualAngleGetListNameGpsTo("清洗车流程完成");
  1490. // WindowEvent.find().WindowTxtViewOpenEvent(
  1491. // "车辆正常熄火" + "\n"
  1492. // );
  1493. // WindowEvent.find().WindowVideoRemoveColorOpen(
  1494. // QingXiCheAndQvComRes.find().resJson["QingXiChe_25"],
  1495. // "top:auto;left:auto;bottom:5%;right:10%;",
  1496. // null,
  1497. // null
  1498. // );
  1499. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1500. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1501. }
  1502. /**
  1503. * 数字修复虚拟仿真-将阀门关闭停止水流
  1504. */
  1505. shuZiXiuFuWork_0 = function() {
  1506. let thisClass = this;
  1507. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1508. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1509. let objIframe = objThreeWorldEventMain.objIframe;
  1510. let objScene = objThreeWorldEventMain.objScene;
  1511. let BABYLON = objThreeWorldEventMain.BABYLON;
  1512. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1513. objIframeEdit.modelPeopleLook(3);
  1514. objIframeEdit.roleShow(false);
  1515. WindowEvent.find().WindowVideoRemoveColorExit();
  1516. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1517. // 重置所有动画原始位置
  1518. QingXiCheAdnQvCarEventStep.find().animationAllTypeUpdate('stopAll');
  1519. // 开启水流
  1520. QingXiCheAdnQvCarEventStep.find().waterGuanEvent(true);
  1521. QingXiCheAndQvComHighlightLayer.find().delAll("自定义");
  1522. QingXiCheAndQvCarEventClick.find().meshListComHighlightEvent("数字修复虚拟仿真-将阀门关闭停止水流");
  1523. setTimeout(function() {
  1524. // 将地面挪到合适的位置
  1525. QingXiCheAdnQvCarEventStep.find().animationAllTypeUpdate('数字修复虚拟仿真-将橡胶垫片放置到正确的位置');
  1526. }, 300);
  1527. objIframeEdit.cameraVisualAngleGetListNameGpsTo("关闭阀门");
  1528. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1529. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1530. }
  1531. /**
  1532. * 数字修复虚拟仿真-将橡胶垫片放置到正确的位置
  1533. */
  1534. shuZiXiuFuWork_1 = function() {
  1535. let thisClass = this;
  1536. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1537. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1538. let objIframe = objThreeWorldEventMain.objIframe;
  1539. let objScene = objThreeWorldEventMain.objScene;
  1540. let BABYLON = objThreeWorldEventMain.BABYLON;
  1541. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1542. objIframeEdit.modelPeopleLook(3);
  1543. objIframeEdit.roleShow(false);
  1544. QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1545. QingXiCheAndQvComHighlightLayer.find().delAll("自定义");
  1546. QingXiCheAndQvCarEventClick.find().meshListComHighlightEvent("数字修复虚拟仿真-将橡胶垫片放置到正确的位置");
  1547. objIframeEdit.cameraVisualAngleGetListNameGpsTo("将橡胶垫片放置到正确的位置_准备安装");
  1548. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1549. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1550. }
  1551. /**
  1552. * 数字修复虚拟仿真-将抱箍放置到正确的位置
  1553. */
  1554. shuZiXiuFuWork_2 = function() {
  1555. let thisClass = this;
  1556. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1557. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1558. let objIframe = objThreeWorldEventMain.objIframe;
  1559. let objScene = objThreeWorldEventMain.objScene;
  1560. let BABYLON = objThreeWorldEventMain.BABYLON;
  1561. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1562. objIframeEdit.modelPeopleLook(3);
  1563. objIframeEdit.roleShow(false);
  1564. // QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1565. QingXiCheAndQvComHighlightLayer.find().delAll("自定义");
  1566. QingXiCheAndQvCarEventClick.find().meshListComHighlightEvent("数字修复虚拟仿真-将抱箍放置到正确的位置");
  1567. objIframeEdit.cameraVisualAngleGetListNameGpsTo("将抱箍放置到正确的位置_准备安装");
  1568. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1569. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1570. }
  1571. /**
  1572. * 数字修复虚拟仿真-将插销安装到正确的位置
  1573. */
  1574. shuZiXiuFuWork_3 = function() {
  1575. let thisClass = this;
  1576. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1577. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1578. let objIframe = objThreeWorldEventMain.objIframe;
  1579. let objScene = objThreeWorldEventMain.objScene;
  1580. let BABYLON = objThreeWorldEventMain.BABYLON;
  1581. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1582. objIframeEdit.modelPeopleLook(3);
  1583. objIframeEdit.roleShow(false);
  1584. // QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1585. QingXiCheAndQvComHighlightLayer.find().delAll("自定义");
  1586. QingXiCheAndQvCarEventClick.find().meshListComHighlightEvent("数字修复虚拟仿真-将插销安装到正确的位置");
  1587. objIframeEdit.cameraVisualAngleGetListNameGpsTo("将插销安装到正确的位置_准备安装");
  1588. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1589. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1590. }
  1591. /**
  1592. * 数字修复虚拟仿真-将螺丝安装到正确的位置
  1593. */
  1594. shuZiXiuFuWork_4 = function() {
  1595. let thisClass = this;
  1596. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1597. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1598. let objIframe = objThreeWorldEventMain.objIframe;
  1599. let objScene = objThreeWorldEventMain.objScene;
  1600. let BABYLON = objThreeWorldEventMain.BABYLON;
  1601. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1602. objIframeEdit.modelPeopleLook(3);
  1603. objIframeEdit.roleShow(false);
  1604. // QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1605. QingXiCheAndQvComHighlightLayer.find().delAll("自定义");
  1606. QingXiCheAndQvCarEventClick.find().meshListComHighlightEvent("数字修复虚拟仿真-将螺丝安装到正确的位置");
  1607. objIframeEdit.cameraVisualAngleGetListNameGpsTo("将螺丝安装到正确的位置_准备安装");
  1608. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1609. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1610. }
  1611. /**
  1612. * 数字修复虚拟仿真-用扳手将螺丝旋紧螺丝
  1613. */
  1614. shuZiXiuFuWork_5 = function() {
  1615. let thisClass = this;
  1616. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1617. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1618. let objIframe = objThreeWorldEventMain.objIframe;
  1619. let objScene = objThreeWorldEventMain.objScene;
  1620. let BABYLON = objThreeWorldEventMain.BABYLON;
  1621. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1622. objIframeEdit.modelPeopleLook(3);
  1623. objIframeEdit.roleShow(false);
  1624. // QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1625. QingXiCheAndQvComHighlightLayer.find().delAll("自定义");
  1626. QingXiCheAndQvCarEventClick.find().meshListComHighlightEvent("数字修复虚拟仿真-用扳手将螺丝旋紧螺丝");
  1627. objIframeEdit.cameraVisualAngleGetListNameGpsTo("用扳手将螺丝旋紧螺丝_准备安装");
  1628. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1629. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1630. }
  1631. /**
  1632. * 数字修复虚拟仿真-已完成所有任务
  1633. */
  1634. shuZiXiuFuWork_6 = function() {
  1635. let thisClass = this;
  1636. let objThreeWorldEventMain = this.objThreeWorldEventMain;
  1637. let objIframeEdit = objThreeWorldEventMain.objIframeEdit;
  1638. let objIframe = objThreeWorldEventMain.objIframe;
  1639. let objScene = objThreeWorldEventMain.objScene;
  1640. let BABYLON = objThreeWorldEventMain.BABYLON;
  1641. let ChengGuangYuanJing = objIframe.ChengGuangYuanJing;
  1642. objIframeEdit.modelPeopleLook(3);
  1643. objIframeEdit.roleShow(false);
  1644. // QingXiCheAdnQvCarEventStep.find().meshVisibility("all", false);
  1645. QingXiCheAndQvComHighlightLayer.find().delAll("自定义");
  1646. objIframeEdit.cameraVisualAngleGetListNameGpsTo("数字修复虚拟仿真-已完成所有任务");
  1647. setTimeout(function() {
  1648. // 启动水流
  1649. QingXiCheAdnQvCarEventStep.find().waterGuanEvent(true, true);
  1650. }, 1500);
  1651. thisClass.tipsBtnsUpOpenEventCallbackMain(false);
  1652. thisClass.tipsBtnsDownOpenEventCallbackMain(false);
  1653. }
  1654. }