Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.
 
 
 
 

1599 řádky
35 KiB

  1. {
  2. "pass": true,
  3. "checks": [
  4. {
  5. "name": "task 87 first view",
  6. "state": {
  7. "id": "bridge-engine",
  8. "step": 0,
  9. "operation": 0,
  10. "errors": 0,
  11. "complete": false,
  12. "pending": false,
  13. "cameraTween": false,
  14. "lid": {
  15. "position": [
  16. 0,
  17. 0,
  18. 0
  19. ],
  20. "quaternion": [
  21. 0,
  22. 0,
  23. 0,
  24. 1
  25. ]
  26. },
  27. "evidenceCount": 0,
  28. "grounding": null,
  29. "modelSources": [
  30. {
  31. "name": "地形.glb",
  32. "url": "/models/地形.glb"
  33. },
  34. {
  35. "name": "0916架桥车.glb",
  36. "url": "/models/bridge-erector-20260916.glb"
  37. },
  38. {
  39. "name": "0916保障车.glb",
  40. "url": "/models/bridge-support-20260916.glb"
  41. },
  42. {
  43. "name": "双车连接油管.glb",
  44. "url": "/models/bridge-rescue-hoses-20260916.glb"
  45. }
  46. ],
  47. "hdr": "venice_sunset_1k",
  48. "distance": 15.259438616959523,
  49. "zoom": 1,
  50. "exposure": 1,
  51. "light": [
  52. 0.8,
  53. 1.4
  54. ],
  55. "screen": {
  56. "x": 1013.602930281089,
  57. "y": 496.20521864360535,
  58. "localX": 550.602930281089,
  59. "localY": 307.70521864360535,
  60. "visible": true
  61. },
  62. "bounds": [
  63. 0.5236417353153229,
  64. 0.2973613739013672,
  65. 0.33587217330932617
  66. ],
  67. "projected": {
  68. "x": 536.7233791838236,
  69. "y": 296.80898942798194,
  70. "w": 27.71510311051361,
  71. "h": 22.135003784886635
  72. },
  73. "pivot": [
  74. 0.0013664013147354215,
  75. 0.6606327220894567,
  76. 1.9416658949851993
  77. ],
  78. "pickPoints": [],
  79. "freePoints": [],
  80. "tip": null,
  81. "front": [
  82. 0,
  83. 0.6246950475544243,
  84. 0.7808688094430303
  85. ],
  86. "workflowCoverage": [
  87. {
  88. "name": "bridge-engine",
  89. "glowing": true
  90. },
  91. {
  92. "name": "front-pump-pto-switch",
  93. "glowing": true
  94. },
  95. {
  96. "name": "bridge-hose-a",
  97. "glowing": true
  98. },
  99. {
  100. "name": "bridge-hose-b",
  101. "glowing": true
  102. },
  103. {
  104. "name": "bridge-hose-line-a",
  105. "glowing": true
  106. },
  107. {
  108. "name": "bridge-hose-line-b",
  109. "glowing": true
  110. },
  111. {
  112. "name": "bridge-return-line-a",
  113. "glowing": true
  114. },
  115. {
  116. "name": "bridge-return-line-b",
  117. "glowing": true
  118. },
  119. {
  120. "name": "bridge-return-valve",
  121. "glowing": true
  122. },
  123. {
  124. "name": "front-pump-aux-control-box-cover",
  125. "glowing": true
  126. },
  127. {
  128. "name": "front-pump-rescue-switch",
  129. "glowing": true
  130. },
  131. {
  132. "name": "bridge-filter-valve-1",
  133. "glowing": true
  134. },
  135. {
  136. "name": "bridge-filter-valve-2",
  137. "glowing": true
  138. },
  139. {
  140. "name": "bridge-support-pto",
  141. "glowing": true
  142. },
  143. {
  144. "name": "bridge-supply",
  145. "glowing": true
  146. }
  147. ],
  148. "camera": [
  149. 10.052979982711939,
  150. 6.245383343985843,
  151. 11.135487493970418
  152. ],
  153. "target": [
  154. 1.197076935786147,
  155. 1.0123497253478748,
  156. -0.13566183848059057
  157. ],
  158. "outline": 1,
  159. "cutaway": 0,
  160. "materials": [
  161. {
  162. "opacity": 1,
  163. "baseline": 1,
  164. "side": 2
  165. },
  166. {
  167. "opacity": 1,
  168. "baseline": 1,
  169. "side": 2
  170. },
  171. {
  172. "opacity": 1,
  173. "baseline": 1,
  174. "side": 2
  175. },
  176. {
  177. "opacity": 1,
  178. "baseline": 1,
  179. "side": 2
  180. },
  181. {
  182. "opacity": 1,
  183. "baseline": 1,
  184. "side": 2
  185. },
  186. {
  187. "opacity": 1,
  188. "baseline": 1,
  189. "side": 2
  190. },
  191. {
  192. "opacity": 1,
  193. "baseline": 1,
  194. "side": 2
  195. },
  196. {
  197. "opacity": 1,
  198. "baseline": 1,
  199. "side": 2
  200. },
  201. {
  202. "opacity": 1,
  203. "baseline": 1,
  204. "side": 2
  205. },
  206. {
  207. "opacity": 1,
  208. "baseline": 1,
  209. "side": 2
  210. },
  211. {
  212. "opacity": 1,
  213. "baseline": 1,
  214. "side": 2
  215. },
  216. {
  217. "opacity": 1,
  218. "baseline": 1,
  219. "side": 2
  220. },
  221. {
  222. "opacity": 1,
  223. "baseline": 1,
  224. "side": 2
  225. },
  226. {
  227. "opacity": 1,
  228. "baseline": 1,
  229. "side": 2
  230. },
  231. {
  232. "opacity": 1,
  233. "baseline": 1,
  234. "side": 2
  235. },
  236. {
  237. "opacity": 1,
  238. "baseline": 1,
  239. "side": 2
  240. },
  241. {
  242. "opacity": 1,
  243. "baseline": 1,
  244. "side": 2
  245. },
  246. {
  247. "opacity": 1,
  248. "baseline": 1,
  249. "side": 2
  250. },
  251. {
  252. "opacity": 1,
  253. "baseline": 1,
  254. "side": 2
  255. },
  256. {
  257. "opacity": 1,
  258. "baseline": 1,
  259. "side": 2
  260. },
  261. {
  262. "opacity": 1,
  263. "baseline": 1,
  264. "side": 2
  265. },
  266. {
  267. "opacity": 1,
  268. "baseline": 1,
  269. "side": 2
  270. },
  271. {
  272. "opacity": 1,
  273. "baseline": 1,
  274. "side": 2
  275. },
  276. {
  277. "opacity": 1,
  278. "baseline": 1,
  279. "side": 2
  280. },
  281. {
  282. "opacity": 1,
  283. "baseline": 1,
  284. "side": 2
  285. },
  286. {
  287. "opacity": 1,
  288. "baseline": 1,
  289. "side": 2
  290. },
  291. {
  292. "opacity": 1,
  293. "baseline": 1,
  294. "side": 2
  295. },
  296. {
  297. "opacity": 1,
  298. "baseline": 1,
  299. "side": 2
  300. },
  301. {
  302. "opacity": 1,
  303. "baseline": 1,
  304. "side": 2
  305. },
  306. {
  307. "opacity": 1,
  308. "baseline": 1,
  309. "side": 2
  310. },
  311. {
  312. "opacity": 1,
  313. "baseline": 1,
  314. "side": 2
  315. },
  316. {
  317. "opacity": 1,
  318. "baseline": 1,
  319. "side": 2
  320. },
  321. {
  322. "opacity": 1,
  323. "baseline": 1,
  324. "side": 2
  325. },
  326. {
  327. "opacity": 1,
  328. "baseline": 1,
  329. "side": 2
  330. },
  331. {
  332. "opacity": 1,
  333. "baseline": 1,
  334. "side": 2
  335. },
  336. {
  337. "opacity": 1,
  338. "baseline": 1,
  339. "side": 2
  340. },
  341. {
  342. "opacity": 1,
  343. "baseline": 1,
  344. "side": 2
  345. },
  346. {
  347. "opacity": 1,
  348. "baseline": 1,
  349. "side": 2
  350. },
  351. {
  352. "opacity": 1,
  353. "baseline": 1,
  354. "side": 2
  355. },
  356. {
  357. "opacity": 1,
  358. "baseline": 1,
  359. "side": 2
  360. },
  361. {
  362. "opacity": 1,
  363. "baseline": 1,
  364. "side": 2
  365. },
  366. {
  367. "opacity": 1,
  368. "baseline": 1,
  369. "side": 2
  370. },
  371. {
  372. "opacity": 1,
  373. "baseline": 1,
  374. "side": 2
  375. },
  376. {
  377. "opacity": 1,
  378. "baseline": 1,
  379. "side": 2
  380. },
  381. {
  382. "opacity": 1,
  383. "baseline": 1,
  384. "side": 2
  385. },
  386. {
  387. "opacity": 1,
  388. "baseline": 1,
  389. "side": 2
  390. },
  391. {
  392. "opacity": 1,
  393. "baseline": 1,
  394. "side": 2
  395. },
  396. {
  397. "opacity": 1,
  398. "baseline": 1,
  399. "side": 2
  400. },
  401. {
  402. "opacity": 1,
  403. "baseline": 1,
  404. "side": 2
  405. },
  406. {
  407. "opacity": 1,
  408. "baseline": 1,
  409. "side": 2
  410. },
  411. {
  412. "opacity": 1,
  413. "baseline": 1,
  414. "side": 2
  415. },
  416. {
  417. "opacity": 1,
  418. "baseline": 1,
  419. "side": 2
  420. },
  421. {
  422. "opacity": 1,
  423. "baseline": 1,
  424. "side": 2
  425. },
  426. {
  427. "opacity": 1,
  428. "baseline": 1,
  429. "side": 2
  430. },
  431. {
  432. "opacity": 1,
  433. "baseline": 1,
  434. "side": 2
  435. },
  436. {
  437. "opacity": 1,
  438. "baseline": 1,
  439. "side": 2
  440. },
  441. {
  442. "opacity": 1,
  443. "baseline": 1,
  444. "side": 2
  445. },
  446. {
  447. "opacity": 1,
  448. "baseline": 1,
  449. "side": 2
  450. },
  451. {
  452. "opacity": 1,
  453. "baseline": 1,
  454. "side": 2
  455. },
  456. {
  457. "opacity": 1,
  458. "baseline": 1,
  459. "side": 2
  460. },
  461. {
  462. "opacity": 1,
  463. "baseline": 1,
  464. "side": 2
  465. },
  466. {
  467. "opacity": 1,
  468. "baseline": 1,
  469. "side": 2
  470. },
  471. {
  472. "opacity": 1,
  473. "baseline": 1,
  474. "side": 2
  475. },
  476. {
  477. "opacity": 1,
  478. "baseline": 1,
  479. "side": 2
  480. },
  481. {
  482. "opacity": 1,
  483. "baseline": 1,
  484. "side": 2
  485. },
  486. {
  487. "opacity": 1,
  488. "baseline": 1,
  489. "side": 2
  490. },
  491. {
  492. "opacity": 1,
  493. "baseline": 1,
  494. "side": 2
  495. },
  496. {
  497. "opacity": 1,
  498. "baseline": 1,
  499. "side": 2
  500. },
  501. {
  502. "opacity": 1,
  503. "baseline": 1,
  504. "side": 2
  505. },
  506. {
  507. "opacity": 1,
  508. "baseline": 1,
  509. "side": 2
  510. },
  511. {
  512. "opacity": 1,
  513. "baseline": 1,
  514. "side": 2
  515. },
  516. {
  517. "opacity": 1,
  518. "baseline": 1,
  519. "side": 2
  520. },
  521. {
  522. "opacity": 1,
  523. "baseline": 1,
  524. "side": 2
  525. },
  526. {
  527. "opacity": 1,
  528. "baseline": 1,
  529. "side": 2
  530. },
  531. {
  532. "opacity": 1,
  533. "baseline": 1,
  534. "side": 2
  535. },
  536. {
  537. "opacity": 1,
  538. "baseline": 1,
  539. "side": 2
  540. },
  541. {
  542. "opacity": 1,
  543. "baseline": 1,
  544. "side": 2
  545. },
  546. {
  547. "opacity": 1,
  548. "baseline": 1,
  549. "side": 2
  550. },
  551. {
  552. "opacity": 1,
  553. "baseline": 1,
  554. "side": 2
  555. },
  556. {
  557. "opacity": 1,
  558. "baseline": 1,
  559. "side": 2
  560. },
  561. {
  562. "opacity": 1,
  563. "baseline": 1,
  564. "side": 2
  565. },
  566. {
  567. "opacity": 1,
  568. "baseline": 1,
  569. "side": 2
  570. },
  571. {
  572. "opacity": 1,
  573. "baseline": 1,
  574. "side": 2
  575. },
  576. {
  577. "opacity": 1,
  578. "baseline": 1,
  579. "side": 2
  580. },
  581. {
  582. "opacity": 1,
  583. "baseline": 1,
  584. "side": 2
  585. },
  586. {
  587. "opacity": 1,
  588. "baseline": 1,
  589. "side": 2
  590. },
  591. {
  592. "opacity": 1,
  593. "baseline": 1,
  594. "side": 2
  595. },
  596. {
  597. "opacity": 1,
  598. "baseline": 1,
  599. "side": 2
  600. },
  601. {
  602. "opacity": 1,
  603. "baseline": 1,
  604. "side": 2
  605. },
  606. {
  607. "opacity": 1,
  608. "baseline": 1,
  609. "side": 2
  610. },
  611. {
  612. "opacity": 1,
  613. "baseline": 1,
  614. "side": 2
  615. },
  616. {
  617. "opacity": 1,
  618. "baseline": 1,
  619. "side": 2
  620. },
  621. {
  622. "opacity": 1,
  623. "baseline": 1,
  624. "side": 2
  625. },
  626. {
  627. "opacity": 1,
  628. "baseline": 1,
  629. "side": 2
  630. },
  631. {
  632. "opacity": 1,
  633. "baseline": 1,
  634. "side": 2
  635. },
  636. {
  637. "opacity": 1,
  638. "baseline": 1,
  639. "side": 2
  640. },
  641. {
  642. "opacity": 1,
  643. "baseline": 1,
  644. "side": 2
  645. },
  646. {
  647. "opacity": 1,
  648. "baseline": 1,
  649. "side": 2
  650. },
  651. {
  652. "opacity": 1,
  653. "baseline": 1,
  654. "side": 2
  655. },
  656. {
  657. "opacity": 1,
  658. "baseline": 1,
  659. "side": 2
  660. },
  661. {
  662. "opacity": 1,
  663. "baseline": 1,
  664. "side": 2
  665. },
  666. {
  667. "opacity": 1,
  668. "baseline": 1,
  669. "side": 2
  670. },
  671. {
  672. "opacity": 1,
  673. "baseline": 1,
  674. "side": 2
  675. },
  676. {
  677. "opacity": 1,
  678. "baseline": 1,
  679. "side": 2
  680. },
  681. {
  682. "opacity": 1,
  683. "baseline": 1,
  684. "side": 2
  685. },
  686. {
  687. "opacity": 1,
  688. "baseline": 1,
  689. "side": 2
  690. },
  691. {
  692. "opacity": 1,
  693. "baseline": 1,
  694. "side": 2
  695. },
  696. {
  697. "opacity": 1,
  698. "baseline": 1,
  699. "side": 2
  700. },
  701. {
  702. "opacity": 1,
  703. "baseline": 1,
  704. "side": 2
  705. },
  706. {
  707. "opacity": 1,
  708. "baseline": 1,
  709. "side": 2
  710. },
  711. {
  712. "opacity": 1,
  713. "baseline": 1,
  714. "side": 2
  715. },
  716. {
  717. "opacity": 1,
  718. "baseline": 1,
  719. "side": 2
  720. },
  721. {
  722. "opacity": 1,
  723. "baseline": 1,
  724. "side": 2
  725. },
  726. {
  727. "opacity": 1,
  728. "baseline": 1,
  729. "side": 2
  730. },
  731. {
  732. "opacity": 1,
  733. "baseline": 1,
  734. "side": 2
  735. },
  736. {
  737. "opacity": 1,
  738. "baseline": 1,
  739. "side": 2
  740. },
  741. {
  742. "opacity": 1,
  743. "baseline": 1,
  744. "side": 2
  745. },
  746. {
  747. "opacity": 1,
  748. "baseline": 1,
  749. "side": 2
  750. },
  751. {
  752. "opacity": 1,
  753. "baseline": 1,
  754. "side": 2
  755. },
  756. {
  757. "opacity": 1,
  758. "baseline": 1,
  759. "side": 2
  760. },
  761. {
  762. "opacity": 1,
  763. "baseline": 1,
  764. "side": 2
  765. },
  766. {
  767. "opacity": 1,
  768. "baseline": 1,
  769. "side": 2
  770. },
  771. {
  772. "opacity": 1,
  773. "baseline": 1,
  774. "side": 2
  775. },
  776. {
  777. "opacity": 1,
  778. "baseline": 1,
  779. "side": 2
  780. },
  781. {
  782. "opacity": 1,
  783. "baseline": 1,
  784. "side": 2
  785. },
  786. {
  787. "opacity": 1,
  788. "baseline": 1,
  789. "side": 2
  790. },
  791. {
  792. "opacity": 1,
  793. "baseline": 1,
  794. "side": 2
  795. },
  796. {
  797. "opacity": 1,
  798. "baseline": 1,
  799. "side": 2
  800. },
  801. {
  802. "opacity": 1,
  803. "baseline": 1,
  804. "side": 2
  805. },
  806. {
  807. "opacity": 1,
  808. "baseline": 1,
  809. "side": 2
  810. },
  811. {
  812. "opacity": 1,
  813. "baseline": 1,
  814. "side": 2
  815. },
  816. {
  817. "opacity": 1,
  818. "baseline": 1,
  819. "side": 2
  820. },
  821. {
  822. "opacity": 1,
  823. "baseline": 1,
  824. "side": 2
  825. },
  826. {
  827. "opacity": 1,
  828. "baseline": 1,
  829. "side": 2
  830. },
  831. {
  832. "opacity": 1,
  833. "baseline": 1,
  834. "side": 2
  835. },
  836. {
  837. "opacity": 1,
  838. "baseline": 1,
  839. "side": 2
  840. },
  841. {
  842. "opacity": 1,
  843. "baseline": 1,
  844. "side": 2
  845. },
  846. {
  847. "opacity": 1,
  848. "baseline": 1,
  849. "side": 2
  850. },
  851. {
  852. "opacity": 1,
  853. "baseline": 1,
  854. "side": 2
  855. },
  856. {
  857. "opacity": 1,
  858. "baseline": 1,
  859. "side": 2
  860. },
  861. {
  862. "opacity": 1,
  863. "baseline": 1,
  864. "side": 2
  865. },
  866. {
  867. "opacity": 1,
  868. "baseline": 1,
  869. "side": 2
  870. },
  871. {
  872. "opacity": 1,
  873. "baseline": 1,
  874. "side": 2
  875. },
  876. {
  877. "opacity": 1,
  878. "baseline": 1,
  879. "side": 2
  880. },
  881. {
  882. "opacity": 1,
  883. "baseline": 1,
  884. "side": 2
  885. },
  886. {
  887. "opacity": 1,
  888. "baseline": 1,
  889. "side": 2
  890. },
  891. {
  892. "opacity": 1,
  893. "baseline": 1,
  894. "side": 2
  895. },
  896. {
  897. "opacity": 1,
  898. "baseline": 1,
  899. "side": 2
  900. },
  901. {
  902. "opacity": 1,
  903. "baseline": 1,
  904. "side": 2
  905. },
  906. {
  907. "opacity": 1,
  908. "baseline": 1,
  909. "side": 2
  910. },
  911. {
  912. "opacity": 1,
  913. "baseline": 1,
  914. "side": 2
  915. },
  916. {
  917. "opacity": 1,
  918. "baseline": 1,
  919. "side": 2
  920. },
  921. {
  922. "opacity": 1,
  923. "baseline": 1,
  924. "side": 2
  925. },
  926. {
  927. "opacity": 1,
  928. "baseline": 1,
  929. "side": 2
  930. },
  931. {
  932. "opacity": 1,
  933. "baseline": 1,
  934. "side": 2
  935. },
  936. {
  937. "opacity": 1,
  938. "baseline": 1,
  939. "side": 2
  940. },
  941. {
  942. "opacity": 1,
  943. "baseline": 1,
  944. "side": 2
  945. },
  946. {
  947. "opacity": 1,
  948. "baseline": 1,
  949. "side": 2
  950. },
  951. {
  952. "opacity": 1,
  953. "baseline": 1,
  954. "side": 2
  955. },
  956. {
  957. "opacity": 1,
  958. "baseline": 1,
  959. "side": 2
  960. },
  961. {
  962. "opacity": 1,
  963. "baseline": 1,
  964. "side": 2
  965. },
  966. {
  967. "opacity": 1,
  968. "baseline": 1,
  969. "side": 2
  970. },
  971. {
  972. "opacity": 1,
  973. "baseline": 1,
  974. "side": 2
  975. },
  976. {
  977. "opacity": 1,
  978. "baseline": 1,
  979. "side": 2
  980. },
  981. {
  982. "opacity": 1,
  983. "baseline": 1,
  984. "side": 2
  985. }
  986. ],
  987. "labels": [
  988. {
  989. "text": "聚焦 · 架桥车发动机",
  990. "x": 949.578125,
  991. "y": 523.4375,
  992. "w": 128,
  993. "h": 30,
  994. "id": "bridge-engine"
  995. }
  996. ],
  997. "narration": [
  998. {
  999. "video": true,
  1000. "fallback": true
  1001. },
  1002. {
  1003. "video": true,
  1004. "fallback": true
  1005. },
  1006. {
  1007. "video": true,
  1008. "fallback": true
  1009. },
  1010. {
  1011. "video": true,
  1012. "fallback": true
  1013. },
  1014. {
  1015. "video": true,
  1016. "fallback": true
  1017. },
  1018. {
  1019. "video": true,
  1020. "fallback": true
  1021. }
  1022. ],
  1023. "teacherWarning": "当前操作:保持架桥车发动机运行。",
  1024. "stepCount": 6,
  1025. "hasNormalControl": false,
  1026. "hoseConnections": [
  1027. {
  1028. "id": "bridge-hose-line-a",
  1029. "position": [
  1030. -0.6497425091266632,
  1031. 0.9717301726341248,
  1032. 0.11148320883512497
  1033. ],
  1034. "remaining": 0.12
  1035. },
  1036. {
  1037. "id": "bridge-hose-line-b",
  1038. "position": [
  1039. 3.077364330291748,
  1040. 0.5208766460418701,
  1041. 1.110397458076477
  1042. ],
  1043. "remaining": 0.1200000000000001
  1044. },
  1045. {
  1046. "id": "bridge-return-line-a",
  1047. "position": [
  1048. -0.6497425091266632,
  1049. 0.9708543121814728,
  1050. 0.07469351589679718
  1051. ],
  1052. "remaining": 0.12
  1053. },
  1054. {
  1055. "id": "bridge-return-line-b",
  1056. "position": [
  1057. 3.077364330291748,
  1058. 0.5211287438869476,
  1059. 1.0733574628829956
  1060. ],
  1061. "remaining": 0.1200000000000001
  1062. }
  1063. ],
  1064. "operationData": {
  1065. "targetId": "bridge-engine",
  1066. "kind": "identify",
  1067. "directionHint": "保持架桥车发动机运行",
  1068. "effects": [
  1069. {
  1070. "targetId": "bridge-engine",
  1071. "color": 2209160
  1072. }
  1073. ],
  1074. "index": 0,
  1075. "axis": [
  1076. 0,
  1077. 1,
  1078. 0
  1079. ],
  1080. "deltaDegrees": 0,
  1081. "toleranceDegrees": 6
  1082. },
  1083. "position": [
  1084. 0.0013663864135741999,
  1085. 0.6606327220894567,
  1086. 1.941665954589844
  1087. ],
  1088. "quaternion": [
  1089. 0,
  1090. 0,
  1091. 0,
  1092. 1
  1093. ]
  1094. }
  1095. },
  1096. {
  1097. "name": "new model source and ground contacts",
  1098. "pass": true,
  1099. "grounding": {
  1100. "samples": 446,
  1101. "minGap": 0,
  1102. "maxGap": 0.001598701477051434
  1103. },
  1104. "modelSources": [
  1105. {
  1106. "name": "地形.glb",
  1107. "url": "/models/地形.glb"
  1108. },
  1109. {
  1110. "name": "0916架桥车.glb",
  1111. "url": "/models/bridge-erector-20260916.glb"
  1112. },
  1113. {
  1114. "name": "0916保障车.glb",
  1115. "url": "/models/bridge-support-20260916.glb"
  1116. },
  1117. {
  1118. "name": "双车连接油管.glb",
  1119. "url": "/models/bridge-rescue-hoses-20260916.glb"
  1120. }
  1121. ]
  1122. },
  1123. {
  1124. "name": "task 87 internal target inspected with explicit translucent tool",
  1125. "targetId": "bridge-engine",
  1126. "pass": true
  1127. },
  1128. {
  1129. "name": "task 87 step 1 operation 1",
  1130. "target": "bridge-engine",
  1131. "drag": false,
  1132. "distance": 2.6062982499292233,
  1133. "projected": {
  1134. "x": 662.9122984279823,
  1135. "y": 212.61469837836887,
  1136. "w": 176.17540314403573,
  1137. "h": 135.83320316240622
  1138. },
  1139. "labels": 4
  1140. },
  1141. {
  1142. "name": "task 87 step 1 operation 2",
  1143. "target": "front-pump-pto-switch",
  1144. "drag": true,
  1145. "distance": 2.6062982499292233,
  1146. "projected": {
  1147. "x": 709.0006218687108,
  1148. "y": 263.03238137723895,
  1149. "w": 83.99875626257597,
  1150. "h": 33.023591730972726
  1151. },
  1152. "labels": 1
  1153. },
  1154. {
  1155. "name": "006 hose operation 1 geometry and completion guard",
  1156. "pass": true,
  1157. "connected": 0,
  1158. "ends": [
  1159. {
  1160. "id": "bridge-hose-line-a",
  1161. "position": [
  1162. -0.6497425091266632,
  1163. 0.9717301726341248,
  1164. 0.11148320883512497
  1165. ],
  1166. "remaining": 0.12
  1167. },
  1168. {
  1169. "id": "bridge-hose-line-b",
  1170. "position": [
  1171. 3.077364330291748,
  1172. 0.5208766460418701,
  1173. 1.110397458076477
  1174. ],
  1175. "remaining": 0.1200000000000001
  1176. },
  1177. {
  1178. "id": "bridge-return-line-a",
  1179. "position": [
  1180. -0.6497425091266632,
  1181. 0.9708543121814728,
  1182. 0.07469351589679718
  1183. ],
  1184. "remaining": 0.12
  1185. },
  1186. {
  1187. "id": "bridge-return-line-b",
  1188. "position": [
  1189. 3.077364330291748,
  1190. 0.5211287438869476,
  1191. 1.0733574628829956
  1192. ],
  1193. "remaining": 0.1200000000000001
  1194. }
  1195. ]
  1196. },
  1197. {
  1198. "name": "task 87 step 2 operation 1",
  1199. "target": "bridge-hose-a",
  1200. "drag": true,
  1201. "distance": 2.606298249929224,
  1202. "projected": {
  1203. "x": 716.5751089643882,
  1204. "y": 235.1456238637226,
  1205. "w": 68.84978207122037,
  1206. "h": 89.46479408676683
  1207. },
  1208. "labels": 9
  1209. },
  1210. {
  1211. "name": "006 hose operation 2 geometry and completion guard",
  1212. "pass": true,
  1213. "connected": 0,
  1214. "ends": [
  1215. {
  1216. "id": "bridge-hose-line-a",
  1217. "position": [
  1218. -0.6497425091266632,
  1219. 0.9717301726341248,
  1220. 0.11148320883512497
  1221. ],
  1222. "remaining": 0.12
  1223. },
  1224. {
  1225. "id": "bridge-hose-line-b",
  1226. "position": [
  1227. 3.077364330291748,
  1228. 0.5208766460418701,
  1229. 1.110397458076477
  1230. ],
  1231. "remaining": 0.1200000000000001
  1232. },
  1233. {
  1234. "id": "bridge-return-line-a",
  1235. "position": [
  1236. -0.6497425091266632,
  1237. 0.9708543121814728,
  1238. 0.07469351589679718
  1239. ],
  1240. "remaining": 0.12
  1241. },
  1242. {
  1243. "id": "bridge-return-line-b",
  1244. "position": [
  1245. 3.077364330291748,
  1246. 0.5211287438869476,
  1247. 1.0733574628829956
  1248. ],
  1249. "remaining": 0.1200000000000001
  1250. }
  1251. ]
  1252. },
  1253. {
  1254. "name": "task 87 step 2 operation 2",
  1255. "target": "bridge-hose-b",
  1256. "drag": true,
  1257. "distance": 2.6062982499292233,
  1258. "projected": {
  1259. "x": 716.5749979728365,
  1260. "y": 235.14564999479703,
  1261. "w": 68.85000405432356,
  1262. "h": 89.46473781586778
  1263. },
  1264. "labels": 5
  1265. },
  1266. {
  1267. "name": "006 short hose drag does not count as a connection",
  1268. "pass": true
  1269. },
  1270. {
  1271. "name": "006 hose operation 3 geometry and completion guard",
  1272. "pass": true,
  1273. "connected": 1,
  1274. "ends": [
  1275. {
  1276. "id": "bridge-hose-line-a",
  1277. "position": [
  1278. -0.5297425091266632,
  1279. 0.9717301726341248,
  1280. 0.11148320883512497
  1281. ],
  1282. "remaining": 0
  1283. },
  1284. {
  1285. "id": "bridge-hose-line-b",
  1286. "position": [
  1287. 3.077364330291748,
  1288. 0.5208766460418701,
  1289. 1.110397458076477
  1290. ],
  1291. "remaining": 0.1200000000000001
  1292. },
  1293. {
  1294. "id": "bridge-return-line-a",
  1295. "position": [
  1296. -0.6497425091266632,
  1297. 0.9708543121814728,
  1298. 0.07469351589679718
  1299. ],
  1300. "remaining": 0.12
  1301. },
  1302. {
  1303. "id": "bridge-return-line-b",
  1304. "position": [
  1305. 3.077364330291748,
  1306. 0.5211287438869476,
  1307. 1.0733574628829956
  1308. ],
  1309. "remaining": 0.1200000000000001
  1310. }
  1311. ]
  1312. },
  1313. {
  1314. "name": "task 87 step 2 operation 3",
  1315. "target": "bridge-hose-line-a",
  1316. "drag": true,
  1317. "distance": 2.6062982499292238,
  1318. "projected": {
  1319. "x": 722.8016963712324,
  1320. "y": 246.3561291464537,
  1321. "w": 56.39660725753561,
  1322. "h": 66.60615034164394
  1323. },
  1324. "labels": 5
  1325. },
  1326. {
  1327. "name": "006 hose operation 4 geometry and completion guard",
  1328. "pass": true,
  1329. "connected": 2,
  1330. "ends": [
  1331. {
  1332. "id": "bridge-hose-line-a",
  1333. "position": [
  1334. -0.5297425091266632,
  1335. 0.9717301726341248,
  1336. 0.11148320883512497
  1337. ],
  1338. "remaining": 0
  1339. },
  1340. {
  1341. "id": "bridge-hose-line-b",
  1342. "position": [
  1343. 3.197364330291748,
  1344. 0.5208766460418701,
  1345. 1.110397458076477
  1346. ],
  1347. "remaining": 0
  1348. },
  1349. {
  1350. "id": "bridge-return-line-a",
  1351. "position": [
  1352. -0.6497425091266632,
  1353. 0.9708543121814728,
  1354. 0.07469351589679718
  1355. ],
  1356. "remaining": 0.12
  1357. },
  1358. {
  1359. "id": "bridge-return-line-b",
  1360. "position": [
  1361. 3.077364330291748,
  1362. 0.5211287438869476,
  1363. 1.0733574628829956
  1364. ],
  1365. "remaining": 0.1200000000000001
  1366. }
  1367. ]
  1368. },
  1369. {
  1370. "name": "task 87 step 2 operation 4",
  1371. "target": "bridge-hose-line-b",
  1372. "drag": true,
  1373. "distance": 2.6062982499292238,
  1374. "projected": {
  1375. "x": 722.8017098128092,
  1376. "y": 246.35605894123788,
  1377. "w": 56.396580374382324,
  1378. "h": 66.60629498856335
  1379. },
  1380. "labels": 4
  1381. },
  1382. {
  1383. "name": "006 hose operation 5 geometry and completion guard",
  1384. "pass": true,
  1385. "connected": 3,
  1386. "ends": [
  1387. {
  1388. "id": "bridge-hose-line-a",
  1389. "position": [
  1390. -0.5297425091266632,
  1391. 0.9717301726341248,
  1392. 0.11148320883512497
  1393. ],
  1394. "remaining": 0
  1395. },
  1396. {
  1397. "id": "bridge-hose-line-b",
  1398. "position": [
  1399. 3.197364330291748,
  1400. 0.5208766460418701,
  1401. 1.110397458076477
  1402. ],
  1403. "remaining": 0
  1404. },
  1405. {
  1406. "id": "bridge-return-line-a",
  1407. "position": [
  1408. -0.5297425091266632,
  1409. 0.9708543121814728,
  1410. 0.07469351589679718
  1411. ],
  1412. "remaining": 0
  1413. },
  1414. {
  1415. "id": "bridge-return-line-b",
  1416. "position": [
  1417. 3.077364330291748,
  1418. 0.5211287438869476,
  1419. 1.0733574628829956
  1420. ],
  1421. "remaining": 0.1200000000000001
  1422. }
  1423. ]
  1424. },
  1425. {
  1426. "name": "task 87 step 2 operation 5",
  1427. "target": "bridge-return-line-a",
  1428. "drag": true,
  1429. "distance": 2.6062982499292238,
  1430. "projected": {
  1431. "x": 732.9817238724916,
  1432. "y": 255.9786090146429,
  1433. "w": 36.03655225501757,
  1434. "h": 47.310764141427484
  1435. },
  1436. "labels": 5
  1437. },
  1438. {
  1439. "name": "006 hose operation 6 geometry and completion guard",
  1440. "pass": true,
  1441. "connected": 4,
  1442. "ends": [
  1443. {
  1444. "id": "bridge-hose-line-a",
  1445. "position": [
  1446. -0.5297425091266632,
  1447. 0.9717301726341248,
  1448. 0.11148320883512497
  1449. ],
  1450. "remaining": 0
  1451. },
  1452. {
  1453. "id": "bridge-hose-line-b",
  1454. "position": [
  1455. 3.197364330291748,
  1456. 0.5208766460418701,
  1457. 1.110397458076477
  1458. ],
  1459. "remaining": 0
  1460. },
  1461. {
  1462. "id": "bridge-return-line-a",
  1463. "position": [
  1464. -0.5297425091266632,
  1465. 0.9708543121814728,
  1466. 0.07469351589679718
  1467. ],
  1468. "remaining": 0
  1469. },
  1470. {
  1471. "id": "bridge-return-line-b",
  1472. "position": [
  1473. 3.197364330291748,
  1474. 0.5211287438869476,
  1475. 1.0733574628829956
  1476. ],
  1477. "remaining": 0
  1478. }
  1479. ]
  1480. },
  1481. {
  1482. "name": "task 87 step 2 operation 6",
  1483. "target": "bridge-return-line-b",
  1484. "drag": true,
  1485. "distance": 2.6062982499292238,
  1486. "projected": {
  1487. "x": 732.9817678929677,
  1488. "y": 255.9785383102741,
  1489. "w": 36.03646421406563,
  1490. "h": 47.31090878328561
  1491. },
  1492. "labels": 4
  1493. },
  1494. {
  1495. "name": "task 87 step 3 operation 1",
  1496. "target": "bridge-return-valve",
  1497. "drag": true,
  1498. "distance": 2.6062982499292238,
  1499. "projected": {
  1500. "x": 692.7555261168103,
  1501. "y": 264.6492748792297,
  1502. "w": 116.48894776638076,
  1503. "h": 29.793580229157556
  1504. },
  1505. "labels": 1
  1506. },
  1507. {
  1508. "name": "task 87 step 4 operation 1",
  1509. "target": "front-pump-aux-control-box-cover",
  1510. "drag": true,
  1511. "distance": 2.606298249929224,
  1512. "projected": {
  1513. "x": 699.1228274833263,
  1514. "y": 249.20856621347716,
  1515. "w": 103.75434503334805,
  1516. "h": 60.651670340400216
  1517. },
  1518. "labels": 13
  1519. },
  1520. {
  1521. "name": "task 87 step 4 operation 2",
  1522. "target": "front-pump-rescue-switch",
  1523. "drag": true,
  1524. "distance": 2.6062982499292238,
  1525. "projected": {
  1526. "x": 748.0136078101959,
  1527. "y": 276.39727764862505,
  1528. "w": 5.972784379609266,
  1529. "h": 6.274247470104569
  1530. },
  1531. "labels": 11
  1532. },
  1533. {
  1534. "name": "task 87 step 5 operation 1",
  1535. "target": "bridge-filter-valve-1",
  1536. "drag": true,
  1537. "distance": 2.6062982499292238,
  1538. "projected": {
  1539. "x": 692.6892130062968,
  1540. "y": 264.8954801602761,
  1541. "w": 116.62157398740703,
  1542. "h": 29.326181621991225
  1543. },
  1544. "labels": 6
  1545. },
  1546. {
  1547. "name": "task 87 step 5 operation 2",
  1548. "target": "bridge-filter-valve-2",
  1549. "drag": true,
  1550. "distance": 2.6062982499292238,
  1551. "projected": {
  1552. "x": 693.775094204158,
  1553. "y": 260.62023383483773,
  1554. "w": 114.44981159168424,
  1555. "h": 37.8674482852453
  1556. },
  1557. "labels": 6
  1558. },
  1559. {
  1560. "name": "task 87 step 6 operation 1",
  1561. "target": "bridge-support-pto",
  1562. "drag": true,
  1563. "distance": 2.6062982499292238,
  1564. "projected": {
  1565. "x": 713.0499877342736,
  1566. "y": 234.09443864742252,
  1567. "w": 75.90002453145382,
  1568. "h": 91.19538520202474
  1569. },
  1570. "labels": 4
  1571. },
  1572. {
  1573. "name": "task 87 step 6 operation 2",
  1574. "target": "bridge-supply",
  1575. "drag": false,
  1576. "distance": 2.6062982499292247,
  1577. "projected": {
  1578. "x": 716.8964976099176,
  1579. "y": 231.9366905664349,
  1580. "w": 68.2070047801659,
  1581. "h": 95.45439604586647
  1582. },
  1583. "labels": 1
  1584. },
  1585. {
  1586. "name": "006 completes after six steps with no synthetic normal-operation handle, six paired narrations and completion message",
  1587. "pass": true
  1588. }
  1589. ],
  1590. "errors": [],
  1591. "writes": [
  1592. "http://192.168.31.168:6180/api/tran/v1/teaching/assignments/87/preview/validate",
  1593. "http://192.168.31.168:6180/api/tran/v1/teaching/assignments/87/preview/validate",
  1594. "http://192.168.31.168:6180/api/tran/v1/teaching/assignments/87/preview/validate",
  1595. "http://192.168.31.168:6180/api/tran/v1/teaching/assignments/87/preview/validate",
  1596. "http://192.168.31.168:6180/api/tran/v1/teaching/assignments/87/preview/validate",
  1597. "http://192.168.31.168:6180/api/tran/v1/teaching/assignments/87/preview/validate"
  1598. ]
  1599. }