Compare commits
12 Commits
master
...
test-newCh
Author | SHA1 | Date | |
---|---|---|---|
|
b5705b12c2 | ||
|
196f8e5306 | ||
|
4fe929cd37 | ||
|
7dd973c13e | ||
|
50e5e92a05 | ||
|
740e676971 | ||
|
6d4e28a0dc | ||
|
2d2f3e9fdc | ||
|
3b21f72e38 | ||
|
baaa8e4bbb | ||
|
53ef9b5930 | ||
|
df2cae5c2b |
9
.env.sai
@ -1,9 +0,0 @@
|
||||
# just a flag
|
||||
NODE_ENV = 'production'
|
||||
VUE_APP_PRO = 'common'
|
||||
|
||||
# base api
|
||||
# VUE_APP_BASE_API = 'http://160.20.60.15:9000'
|
||||
# VUE_APP_VOICE_API = 'http://160.20.60.15/oss/joylink'
|
||||
# VUE_APP_UPLOAD_API = 'http://160.20.60.15'
|
||||
# VUE_APP_BASE_SITE='http://160.20.60.15'
|
@ -1,52 +0,0 @@
|
||||
---
|
||||
name: local-test分支构建发布到本地服务器
|
||||
run-name: ${{ gitea.actor }} is testing out Gitea Actions
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- local-test
|
||||
jobs:
|
||||
Build-Publish:
|
||||
runs-on: joylink-local233
|
||||
steps:
|
||||
- name: 检出代码
|
||||
uses: https://gitea.joylink.club/actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
- name: 设置node环境
|
||||
uses: https://gitea.joylink.club/actions/local-setup-node@v0.1.1
|
||||
with:
|
||||
version: v14.21.3
|
||||
cache: yarn
|
||||
cache-dependency-path: yarn.lock
|
||||
- name: 安装yarn,并build
|
||||
run: |
|
||||
node -v
|
||||
npm config set registry https://registry.npmmirror.com
|
||||
npm install --global yarn
|
||||
yarn config set registry https://registry.npmmirror.com
|
||||
yarn
|
||||
yarn run buildas local-test
|
||||
tar czvf ./dist-local-test.tar.gz ./dist
|
||||
- name: 打包发送到服务器
|
||||
uses: https://gitea.joylink.club/appleboy/scp-action@v0.1.7
|
||||
with:
|
||||
host: ${{ secrets.LOCAL_233_SSH_HOST }}
|
||||
username: ${{ secrets.LOCAL_233_SSH_USER }}
|
||||
password: ${{ secrets.LOCAL_233_SSH_PASSWORD }}
|
||||
port: ${{ secrets.LOCAL_233_SSH_PORT }}
|
||||
source: ./dist-local-test.tar.gz
|
||||
target: /home/minio/oss/rt-sim-training-client
|
||||
overwrite: true
|
||||
- name: SSH连接并解压发布
|
||||
uses: https://gitea.joylink.club/appleboy/ssh-action@v1.0.3
|
||||
with:
|
||||
host: ${{ secrets.LOCAL_233_SSH_HOST }}
|
||||
port: ${{ secrets.LOCAL_233_SSH_PORT }}
|
||||
username: ${{ secrets.LOCAL_233_SSH_USER }}
|
||||
password: ${{ secrets.LOCAL_233_SSH_PASSWORD }}
|
||||
script: |
|
||||
cd /home/minio/oss/rt-sim-training-client
|
||||
rm -rf /usr/local/joylink/client/cbtc
|
||||
mkdir -p /usr/local/joylink/client
|
||||
tar xz --strip 2 -C /usr/local/joylink/client -f dist-local-test.tar.gz
|
@ -1,52 +0,0 @@
|
||||
name: master分支构建发布到公网服务器
|
||||
run-name: ${{ gitea.actor }} is testing out Gitea Actions
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
Build-Publish:
|
||||
runs-on: joylink-local233
|
||||
steps:
|
||||
- name: 检出代码
|
||||
uses: https://gitea.joylink.club/actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
- name: 设置node环境
|
||||
uses: https://gitea.joylink.club/actions/local-setup-node@v0.1.1
|
||||
with:
|
||||
version: 'v14.21.3'
|
||||
cache: 'yarn'
|
||||
cache-dependency-path: 'yarn.lock'
|
||||
- name: 安装yarn,并build
|
||||
run: |
|
||||
node -v
|
||||
npm config set registry https://registry.npmmirror.com
|
||||
npm install --global yarn
|
||||
yarn config set registry https://registry.npmmirror.com
|
||||
yarn
|
||||
yarn run build
|
||||
tar czvf ./dist-master.tar.gz ./dist
|
||||
- name: 打包发送到服务器
|
||||
uses: https://gitea.joylink.club/appleboy/scp-action@v0.1.7
|
||||
with:
|
||||
host: ${{ secrets.PUB1_DOMAIN_SSH_HOST }}
|
||||
port: ${{ secrets.PUB1_DOMAIN_SSH_PORT }}
|
||||
username: ${{ secrets.PUB1_DOMAIN_SSH_USER }}
|
||||
password: ${{ secrets.PUB1_DOMAIN_SSH_PASSWORD }}
|
||||
source: ./dist-master.tar.gz
|
||||
target: /mnt/data/published/rt-sim-training-client
|
||||
overwrite: true
|
||||
- name: SSH连接并解压发布
|
||||
uses: https://gitea.joylink.club/appleboy/ssh-action@v1.0.3
|
||||
with:
|
||||
host: ${{ secrets.PUB1_DOMAIN_SSH_HOST }}
|
||||
port: ${{ secrets.PUB1_DOMAIN_SSH_PORT }}
|
||||
username: ${{ secrets.PUB1_DOMAIN_SSH_USER }}
|
||||
password: ${{ secrets.PUB1_DOMAIN_SSH_PASSWORD }}
|
||||
script: |
|
||||
cd /mnt/data/published/rt-sim-training-client
|
||||
rm -rf /usr/local/joylink/client/cbtc
|
||||
mkdir -p /usr/local/joylink/client
|
||||
tar xz --strip 2 -C /usr/local/joylink/client -f dist-master.tar.gz
|
1
.gitignore
vendored
@ -4,6 +4,7 @@ dist/
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
package-lock.json
|
||||
tests/**/coverage/
|
||||
src/utils/baseUrl.js*
|
||||
|
||||
|
@ -4,6 +4,3 @@ English | [简体中文](./README-zh.md)
|
||||
|
||||
|
||||
Copyright (c) 2018-present Joylink
|
||||
### 项目环境
|
||||
- "node": "<=14.21.3";
|
||||
- "webpack": ">=4 < 4.29";
|
@ -18,9 +18,6 @@
|
||||
"svgo": "svgo -f src/icons/svg --config=src/icons/svgo.yml"
|
||||
},
|
||||
"dependencies": {
|
||||
"@stomp/stompjs": "^5.4.4",
|
||||
"@wangeditor/editor": "^5.1.23",
|
||||
"@wangeditor/editor-for-vue": "^1.0.2",
|
||||
"axios": "^0.18.0",
|
||||
"dayjs": "^1.11.5",
|
||||
"echarts": "^4.7.0",
|
||||
@ -46,11 +43,9 @@
|
||||
"vue-i18n": "^8.12.0",
|
||||
"vue-quill-editor": "^3.0.6",
|
||||
"vue-router": "^3.1.6",
|
||||
"vue-video-player": "^5.0.1",
|
||||
"vuedraggable": "^2.24.3",
|
||||
"vuex": "^3.1.0",
|
||||
"wangeditor": "^4.6.17",
|
||||
"ws": "^8.13.0",
|
||||
"xlsx": "^0.14.2",
|
||||
"zrender": "^4.0.4"
|
||||
},
|
||||
|
@ -23,6 +23,7 @@
|
||||
<script>
|
||||
import { getToken, getUserIdKey } from '@/utils/auth';
|
||||
import { getSessionStorage, setSessionStorage } from '@/utils/auth';
|
||||
import { loginInfo } from '@/scripts/ProjectConfig';
|
||||
import WindowResizeHandler from '@/mixin/WindowResizeHandler';
|
||||
import LoadingImg from '@/assets/loading.gif';
|
||||
import AppLoading from '@/assets/appLoading.png';
|
||||
@ -67,7 +68,7 @@ export default {
|
||||
callback: action => {
|
||||
removeToken();
|
||||
this.$store.dispatch('exit').then(resp => {
|
||||
this.$router.push({path: `/login?project=${this.$store.state.projectConfig.markKey}`});
|
||||
this.$router.push({path: loginInfo[this.$store.state.projectConfig.markKey].loginPath});
|
||||
});
|
||||
}
|
||||
});
|
||||
|
@ -1,416 +0,0 @@
|
||||
import request from '@/utils/request';
|
||||
|
||||
/**
|
||||
* 获取竞赛试卷分页列表
|
||||
* @param {Object} params
|
||||
* @param {String} params.name 试卷名称
|
||||
*/
|
||||
export function getPaperList(params) {
|
||||
return request({
|
||||
url: '/api/exercise/race/paper/page',
|
||||
method: 'GET',
|
||||
params
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建试卷
|
||||
* @param {Object} data
|
||||
* @param {String} data.name 试卷名称
|
||||
* @param {String} data.desc 基础描述
|
||||
* @param {Number} data.seasonId 所属赛季id
|
||||
* @param {Boolean} data.supportCopy 是否支持拷贝
|
||||
*/
|
||||
export function createPaper(data) {
|
||||
return request({
|
||||
url: '/api/exercise/race/paper',
|
||||
method: 'POST',
|
||||
data
|
||||
});
|
||||
}
|
||||
|
||||
/** 修改试卷
|
||||
* @param {Object} data 同创建试卷
|
||||
* @param {Number} id 试卷id
|
||||
*/
|
||||
export function editPaper(id, data) {
|
||||
return request({
|
||||
url: `/api/exercise/race/paper/${id}`,
|
||||
method: 'POST',
|
||||
data
|
||||
});
|
||||
}
|
||||
|
||||
/** 删除指定试卷
|
||||
* @param {Number} id 任务id
|
||||
*/
|
||||
export function deletePaper(id) {
|
||||
return request({
|
||||
url: `/api/exercise/race/paper/${id}`,
|
||||
method: 'DELETE'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取竞赛试卷菜单
|
||||
* @param {Object} params
|
||||
* @param {String} params.group 分组ZZ=中职;GZ=高职
|
||||
*/
|
||||
export function getPaperMenu(params) {
|
||||
return request({
|
||||
url: '/api/exercise/race/paper/menu',
|
||||
method: 'GET',
|
||||
params
|
||||
});
|
||||
}
|
||||
|
||||
/** 模块修改任务设置
|
||||
* @param {Object} data
|
||||
* @param {Array} data.modules 所有模块
|
||||
* @param {Number} data.modules[i].module_name 模块名字
|
||||
* @param {Number} data.modules[i].duration 考试总时间
|
||||
* @param {Number} data.modules[i].group 任务分组
|
||||
* @param {Number} data.modules[i].group.taskIds 此分组中的任务id
|
||||
* @param {Number} data.modules[i].group.name 此组的名字
|
||||
* @param {Number} data.modules[i].group.group 此分组的子分组
|
||||
*/
|
||||
export function paperModuleTaskSetting(paperId, data) {
|
||||
return request({
|
||||
url: `/api/exercise/race/paper/${paperId}/config`,
|
||||
method: 'POST',
|
||||
data
|
||||
});
|
||||
}
|
||||
|
||||
/** 查看试卷明细
|
||||
* @param {Number} id 模块id
|
||||
*/
|
||||
export function getPaperDetail(id) {
|
||||
return request({
|
||||
url: `/api/exercise/race/paper/${id}`,
|
||||
method: 'GET'
|
||||
});
|
||||
}
|
||||
|
||||
/** 试卷拷贝
|
||||
* @param {Number} id 模块id
|
||||
*/
|
||||
export function copyPaper(id) {
|
||||
console.log(id);
|
||||
return request({
|
||||
url: `/api/exercise/race/paper/${id}/copy`,
|
||||
method: 'PUT'
|
||||
});
|
||||
}
|
||||
|
||||
/** 查看所有任务数据 */
|
||||
export function getTaskTreeDatas() {
|
||||
return request({
|
||||
url: '/api/exercise/race/task/tree',
|
||||
method: 'GET'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建任务
|
||||
* @param {Object} data
|
||||
* @param {String} data.name 任务名称
|
||||
* @param {String} data.desc 基础描述
|
||||
* @param {String} data.content 考核内容
|
||||
* @param {String} data.standards 评价标准
|
||||
* @param {Number} data.parentId 如果是子任务,需要父任务的id
|
||||
*/
|
||||
export function createTask(data) {
|
||||
return request({
|
||||
url: '/api/exercise/race/task',
|
||||
method: 'POST',
|
||||
data
|
||||
});
|
||||
}
|
||||
|
||||
/** 修改指定任务
|
||||
* @param {Object} data 同创建任务
|
||||
* @param {Number} id 任务id
|
||||
*/
|
||||
export function editTask(id, data) {
|
||||
return request({
|
||||
url: `/api/exercise/race/task/${id}`,
|
||||
method: 'POST',
|
||||
data
|
||||
});
|
||||
}
|
||||
|
||||
/** 删除指定任务
|
||||
* @param {Number} id 任务id
|
||||
*/
|
||||
export function deleteTask(id) {
|
||||
return request({
|
||||
url: `/api/exercise/race/task/${id}`,
|
||||
method: 'DELETE'
|
||||
});
|
||||
}
|
||||
|
||||
/** 查看任务详情
|
||||
* @param {Number} id 任务id
|
||||
*/
|
||||
export function getTaskDetail(id) {
|
||||
return request({
|
||||
url: `/api/exercise/race/task/${id}`,
|
||||
method: 'GET'
|
||||
});
|
||||
}
|
||||
|
||||
/** 查看指定子任务
|
||||
* @param {Number} id 任务id
|
||||
*/
|
||||
export function getchildrenTaskDatas(id) {
|
||||
return request({
|
||||
url: `/api/exercise/race/task/${id}/children`,
|
||||
method: 'GET'
|
||||
});
|
||||
}
|
||||
|
||||
/** 任务绑定
|
||||
* @param {Array} data
|
||||
* @param {Number} taskId 任务id
|
||||
* @param {Number} data[i].bindId 绑定id,根据bindtype来区分对应的id
|
||||
* @param {String} data[i].bindType rule =0评分规则;scene=1场景
|
||||
* @param {Number} data[i].status 0=绑定 ;1=解绑
|
||||
*/
|
||||
export function bindTask(taskId, data) {
|
||||
return request({
|
||||
url: `/api/exercise/race/task/${taskId}/bind`,
|
||||
method: 'POST',
|
||||
data
|
||||
});
|
||||
}
|
||||
/** 竞赛赛季添加
|
||||
* @param {Object} data
|
||||
* @param {Number} data.group 分组 1-高职 2中职
|
||||
* @param {String} data.term 赛季
|
||||
* @param {String} data.code 编号
|
||||
*/
|
||||
export function addContestSeason(data) {
|
||||
return request({
|
||||
url: '/api/exercise/race/season',
|
||||
method: 'post',
|
||||
data
|
||||
});
|
||||
}
|
||||
/** 竞赛赛季分页查询
|
||||
* @param {Object} params
|
||||
* @param {Number} params.group 分组 1-高职 2中职
|
||||
* @param {String} params.term 赛季
|
||||
* @param {String} params.code 编号
|
||||
*/
|
||||
export function queryContestSeasonPaged(params) {
|
||||
return request({
|
||||
url: '/api/exercise/race/season/page',
|
||||
method: 'get',
|
||||
params
|
||||
});
|
||||
}
|
||||
/** 竞赛赛季修改
|
||||
* @param {Object} data
|
||||
* @param {Number} id 赛季id
|
||||
* @param {String} data.group 分组 ZZ=中职;GZ=高职
|
||||
* @param {String} data.term 赛季
|
||||
* @param {String} data.code 编号
|
||||
*/
|
||||
export function updateContestSeason(id, data) {
|
||||
return request({
|
||||
url: `/api/exercise/race/season/${id}`,
|
||||
method: 'post',
|
||||
data
|
||||
});
|
||||
}
|
||||
/** 竞赛赛季删除
|
||||
* @param {Number} id 赛季id
|
||||
*/
|
||||
export function deleteContestSeason(id) {
|
||||
return request({
|
||||
url: `/api/exercise/race/season/${id}`,
|
||||
method: 'delete'
|
||||
});
|
||||
}
|
||||
/** 竞赛评分创建基本信息
|
||||
* @param {Object} data
|
||||
* @param {String} data.name 名称
|
||||
*/
|
||||
export function createContextScore(data) {
|
||||
return request({
|
||||
url: '/api/exercise/race/score',
|
||||
method: 'post',
|
||||
data
|
||||
});
|
||||
}
|
||||
/** 竞赛评分列表分页
|
||||
* @param {Object} params
|
||||
* @param {String} params.name 名称
|
||||
*/
|
||||
export function queryContextScorePaged(params) {
|
||||
return request({
|
||||
url: '/api/exercise/race/score/page',
|
||||
method: 'get',
|
||||
params
|
||||
});
|
||||
}
|
||||
/** 竞赛评分删除
|
||||
* @param {Number} id 评分id
|
||||
*/
|
||||
export function deleteContextScore(id) {
|
||||
return request({
|
||||
url: `/api/exercise/race/score/${id}`,
|
||||
method: 'delete'
|
||||
});
|
||||
}
|
||||
/** 竞赛评分修改评分详情内容
|
||||
* @param {Number} id 评分id
|
||||
* @param {Object} data
|
||||
* @param {Array [object]} data.units 评分单元
|
||||
* @param {String} data.units[0].text 文字描述
|
||||
* @param {Number} data.units[0].sceneStepId 场景步骤ID
|
||||
* @param {Number} data.units[0].score 分值
|
||||
* @param {String} data.units[0].worker 作业程序
|
||||
* @param {String} data.units[0].criteria 评分标准
|
||||
*/
|
||||
export function updateContextScoreDetail(id, data) {
|
||||
return request({
|
||||
url: `/api/exercise/race/score/edit/rule/${id}`,
|
||||
method: 'post',
|
||||
data
|
||||
});
|
||||
}
|
||||
/** 竞赛评分详情
|
||||
* @param {Number} id 评分id
|
||||
*/
|
||||
export function getContextScoreDetail(id) {
|
||||
return request({
|
||||
url: `/api/exercise/race/score/${id}`,
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
/** 竞赛场景分页查询
|
||||
* @param {Object} params
|
||||
* @param {String} params.type 竞赛类型 local=场景;link=3D
|
||||
*/
|
||||
export function queryContestSencePaged(params) {
|
||||
return request({
|
||||
url: '/api/exercise/race/scene/page',
|
||||
method: 'get',
|
||||
params
|
||||
});
|
||||
}
|
||||
/** 竞赛场景删除
|
||||
* @param {Number} id 场景id
|
||||
*/
|
||||
export function deleteContestSence(id) {
|
||||
return request({
|
||||
url: `/api/exercise/race/scene/${id}`,
|
||||
method: 'delete'
|
||||
});
|
||||
}
|
||||
/** 竞赛场景详情
|
||||
* @param {Number} id 场景id
|
||||
*/
|
||||
export function getContextSenceDetail(id) {
|
||||
return request({
|
||||
url: `/api/exercise/race/scene/${id}`,
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
/** 实训场景发布到大赛场景
|
||||
* @param {Object} data
|
||||
* @param {Number} data.traningPublishId 草稿实训场景id
|
||||
* @param {String} data.name 大赛场景名称
|
||||
*/
|
||||
export function publishContextSence(data) {
|
||||
return request({
|
||||
url: `/api/exercise/race/scene/publish/training`,
|
||||
method: 'post',
|
||||
data
|
||||
});
|
||||
}
|
||||
|
||||
/** 场景视频保存
|
||||
* @param {Object} data
|
||||
* @param {String} data.name 场景名称
|
||||
* @param {String} data.type Video=视频
|
||||
* @param {Object} data.scene 大赛场景
|
||||
* @param {String} data.scene.url 地址
|
||||
* @param {String} data.scene.fileName 文件名
|
||||
*/
|
||||
export function saveSceneVideo(data) {
|
||||
return request({
|
||||
url: `/api/exercise/race/scene/custom/edit`,
|
||||
method: 'post',
|
||||
data
|
||||
});
|
||||
}
|
||||
|
||||
/** 场景视频编辑 */
|
||||
export function editSceneVideo(sceneId, data) {
|
||||
return request({
|
||||
url: `/api/exercise/race/scene/custom/${sceneId}/edit`,
|
||||
method: 'post',
|
||||
data
|
||||
});
|
||||
}
|
||||
|
||||
/** 竞赛试卷测试模块任务集合
|
||||
* @param {String} paperId 试卷id
|
||||
* @param {String} moduleId 模块id
|
||||
*/
|
||||
export function getTaskTree(paperId, moduleId) {
|
||||
return request({
|
||||
url: `/api/exercise/race/paper/${paperId}/module/${moduleId}/task`,
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
/** 竞赛开始训练
|
||||
* @param {String} paperId 试卷id
|
||||
* @param {String} moduleId 模块id
|
||||
*/
|
||||
export function beginContestExercise(paperId, moduleId) {
|
||||
return request({
|
||||
url: `/api/race/${paperId}/${moduleId}`,
|
||||
method: 'POST'
|
||||
});
|
||||
}
|
||||
|
||||
/** 竞赛完成训练 */
|
||||
export function finishContestExercise() {
|
||||
return request({
|
||||
url: '/api/race/finish',
|
||||
method: 'PUT'
|
||||
});
|
||||
}
|
||||
|
||||
/** 竞赛赛季html内容编辑
|
||||
* @param {String} id 赛季id
|
||||
* @param {String} data.htmlContent 内容
|
||||
*/
|
||||
export function editSeasonContent(id, data) {
|
||||
return request({
|
||||
url: `/api/exercise/race/season/${id}/html`,
|
||||
method: 'post',
|
||||
data
|
||||
});
|
||||
}
|
||||
/** 竞赛赛季html内容获取
|
||||
* @param {String} id 赛季id
|
||||
*/
|
||||
export function getSeasonContent(id) {
|
||||
return request({
|
||||
url: `/api/exercise/race/season/${id}/html`,
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
export function getTheoryList() {
|
||||
return request({
|
||||
url: '/api/exercise/race/paper/questions',
|
||||
method: 'get'
|
||||
});
|
||||
}
|
@ -7,6 +7,10 @@ const BASE_UPLOAD_API = store.state.user.uploadUrl;
|
||||
// export const BASE_ASSET_API = store.state.user.resourcesUrl;
|
||||
export const BASE_ASSET_API = store.state.user.ossUrl;
|
||||
|
||||
// console.log(JL3D_LOCAL_STATIC);
|
||||
// console.log(BASE_UPLOAD_API);
|
||||
// console.log(BASE_ASSET_API);
|
||||
|
||||
export function getUploadModelUrl() {
|
||||
return (BASE_UPLOAD_API+"/api/upload/MODEL?appId=00001&appSecret=joylink00001");
|
||||
}
|
||||
|
@ -307,25 +307,3 @@ export function queryMapListByUser() {
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
/** 根据mapId获取客户端信息数据 */
|
||||
export function getClientDataById(mapId) {
|
||||
return request({
|
||||
url: `/api/map/${mapId}/mapClientMap`,
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
/** 发布地图根据id生成实训 */
|
||||
export function generateTrainingData(data) {
|
||||
return request({
|
||||
url: `/api/v2/training/rule/generate/mapId`,
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
/** 根据mapId获取列车信息 */
|
||||
export function getTrainListByMapId(mapId) {
|
||||
return request({
|
||||
url: `/api/map/${mapId}/trains`,
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
@ -265,11 +265,3 @@ export function loadTrainingBg(group, trainingId) {
|
||||
method: 'post'
|
||||
});
|
||||
}
|
||||
/** 预备开始场景 */
|
||||
export function prepareScene(group, params) {
|
||||
return request({
|
||||
url:`/api/training2Simulation/${group}/prepare/start`,
|
||||
method: 'post',
|
||||
params
|
||||
});
|
||||
}
|
||||
|
@ -101,7 +101,7 @@ export function getOrgList() {
|
||||
return request({
|
||||
url: '/api/orgProject/list',
|
||||
method: 'get'
|
||||
});
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
@ -111,15 +111,5 @@ export function selectOrgnization(orgId) {
|
||||
return request({
|
||||
url: `/api/orgProject/signIn/${orgId}`,
|
||||
method: 'put'
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用户已经加入的仿真
|
||||
*/
|
||||
export function getSimulationJoined() {
|
||||
return request({
|
||||
url: '/simulation/joined/by/me',
|
||||
method: 'get'
|
||||
});
|
||||
})
|
||||
}
|
||||
|
@ -269,12 +269,12 @@ export function generateExam(pcId) {
|
||||
}
|
||||
|
||||
/** 删除用户试卷 */
|
||||
// export function deleteUserExam(param) {
|
||||
// return request({
|
||||
// url: `/api/v2/paper/user/${puId}`,
|
||||
// method: 'DELETE'
|
||||
// });
|
||||
// }
|
||||
export function deleteUserExam(param) {
|
||||
return request({
|
||||
url: `/api/v2/paper/user/${puId}`,
|
||||
method: 'method'
|
||||
});
|
||||
}
|
||||
|
||||
/** 获取用户试卷完整信息
|
||||
* @param {Number} puId 用户试卷Id
|
||||
@ -344,13 +344,3 @@ export function queryTagList(data) {
|
||||
data
|
||||
});
|
||||
}
|
||||
/**
|
||||
* 获取试卷创建者list
|
||||
*/
|
||||
export function queryPaperCreatorList(data) {
|
||||
return request({
|
||||
url: `/api/v2/paper/composition/list/creatorInfo`,
|
||||
method: 'POST',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
@ -323,11 +323,3 @@ export function isExistEmail(params) {
|
||||
});
|
||||
}
|
||||
|
||||
// 成工院第三方登录
|
||||
export function cgyThirdLogin(data) {
|
||||
return request({
|
||||
url: '/api/login/cgy/third',
|
||||
method: 'post',
|
||||
data
|
||||
});
|
||||
}
|
||||
|
@ -91,13 +91,13 @@ export function getSimulationTimeChart(mapId) {
|
||||
})
|
||||
}
|
||||
|
||||
// // 课程内实训数据统计
|
||||
// export function getLessonTimeChart(id) {
|
||||
// return request({
|
||||
// url: `/api/stats/lesson/${id}/stats`,
|
||||
// method: 'get',
|
||||
// })
|
||||
// }
|
||||
// 课程内实训数据统计
|
||||
export function getLessonTimeChart(id) {
|
||||
return request({
|
||||
url: `/api/stats/lesson/${id}/stats`,
|
||||
method: 'get',
|
||||
})
|
||||
}
|
||||
|
||||
// 课程列表
|
||||
export function getLessonList() {
|
||||
|
@ -172,50 +172,3 @@ export function sendBase64(groupId, data) {
|
||||
data
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置群消息已读
|
||||
* @param {String} groupId 房间号
|
||||
* @param {Object} data
|
||||
* @param {Number} data.id 群组id
|
||||
* @returns
|
||||
*/
|
||||
export function setGroupReadMessage(groupId, data) {
|
||||
return request({
|
||||
url: `/simulation/${groupId}/operate/Conversation_Group_Read_Message`,
|
||||
method: 'post',
|
||||
data
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 发送私聊文字信息
|
||||
* @param {String} groupId 房间号
|
||||
* @param {Object} data
|
||||
* @param {Number} data.memberId 角色id
|
||||
* @param {String} data.content 文字内容
|
||||
* @returns
|
||||
*/
|
||||
export function sendPrivateText(groupId, data) {
|
||||
return request({
|
||||
url: `/simulation/${groupId}/operate/Conversation_Group_Private_Text_Chat`,
|
||||
method: 'post',
|
||||
data
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 发送私聊BASE64信息
|
||||
* @param {String} groupId 房间号
|
||||
* @param {Object} data
|
||||
* @param {Number} data.memberId 角色id
|
||||
* @param {String} data.fileBase64Str 文件base64码
|
||||
* @returns
|
||||
*/
|
||||
export function sendPrivateBase64(groupId, data) {
|
||||
return request({
|
||||
url: `/simulation/${groupId}/operate/Conversation_Group_Private_Audio_Base64`,
|
||||
method: 'post',
|
||||
data
|
||||
});
|
||||
}
|
||||
|
@ -15,20 +15,3 @@ export function selectQuestionTypeNum(companyId) {
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
/** 加载场景 */
|
||||
export function loadRace(simulationId, sceneId) {
|
||||
return request({
|
||||
url: `/api/race/${simulationId}/load/${sceneId}`,
|
||||
method: 'put'
|
||||
});
|
||||
|
||||
}
|
||||
/** 完成任务 */
|
||||
export function overTask(taskId, data) {
|
||||
return request({
|
||||
url: `/api/race/${taskId}/finish`,
|
||||
method: 'put',
|
||||
data
|
||||
});
|
||||
}
|
||||
|
@ -1,10 +0,0 @@
|
||||
import request from '@/utils/request';
|
||||
|
||||
/** 查询用户使用记录统计 */
|
||||
export function queryUserSimulationRecord(params, userId) {
|
||||
return request({
|
||||
url: `/api/record/stats/list/criteria/${userId}`,
|
||||
method: 'get',
|
||||
params
|
||||
});
|
||||
}
|
@ -47,39 +47,39 @@ export function examNotifyNew({ examId }) {
|
||||
});
|
||||
}
|
||||
/** 获取用户实训列表*/
|
||||
// export function getSimulationList(data) {
|
||||
// return request({
|
||||
// url: `/api/stats/simulation`,
|
||||
// method: 'get',
|
||||
// params: data
|
||||
// });
|
||||
// }
|
||||
export function getSimulationList(data) {
|
||||
return request({
|
||||
url: `/api/stats/simulation`,
|
||||
method: 'get',
|
||||
params: data
|
||||
});
|
||||
}
|
||||
|
||||
// /** 添加用户仿真数据*/
|
||||
// export function postSimulationStats(data) {
|
||||
// return request({
|
||||
// url: `/api/stats/simulation`,
|
||||
// method: 'post',
|
||||
// data: data
|
||||
// });
|
||||
// }
|
||||
/** 添加用户仿真数据*/
|
||||
export function postSimulationStats(data) {
|
||||
return request({
|
||||
url: `/api/stats/simulation`,
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
// /** 更新用户仿真数据*/
|
||||
// export function putSimulationStats(data) {
|
||||
// return request({
|
||||
// url: `/api/stats/${data.id}`,
|
||||
// method: 'put',
|
||||
// data: data
|
||||
// });
|
||||
// }
|
||||
/** 更新用户仿真数据*/
|
||||
export function putSimulationStats(data) {
|
||||
return request({
|
||||
url: `/api/stats/${data.id}`,
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
/** 删除用户仿真数据*/
|
||||
// export function deleteSimulationStats(statsId) {
|
||||
// return request({
|
||||
// url: `/api/stats/${statsId}`,
|
||||
// method: 'delete'
|
||||
// });
|
||||
// }
|
||||
export function deleteSimulationStats(statsId) {
|
||||
return request({
|
||||
url: `/api/stats/${statsId}`,
|
||||
method: 'delete'
|
||||
});
|
||||
}
|
||||
|
||||
/** 录制脚本仿真(新版)*/
|
||||
export function scriptRecordNotifyNew(scriptId) {
|
||||
@ -515,10 +515,10 @@ export function getStandListByRunLineOrTrainCode(group, params) {
|
||||
params
|
||||
});
|
||||
}
|
||||
/** 沙盘列车控制 */
|
||||
export function sandTableTrainControl(group, params) {
|
||||
/** 上饶列车控制 */
|
||||
export function srTrainControl(group, params) {
|
||||
return request({
|
||||
url: `/api/sandTable/${group}/control`,
|
||||
url: `/api/sr/${group}/control`,
|
||||
method: 'put',
|
||||
params
|
||||
});
|
||||
@ -583,27 +583,3 @@ export function enterSimulationByTeacher(group) {
|
||||
method: 'post'
|
||||
});
|
||||
}
|
||||
/** 切换角色后触发消息 */
|
||||
export function getUnreceivedMessages(simulationId, memberId) {
|
||||
return request({
|
||||
url: `/simulation/${simulationId}/${memberId}/unreceivedMessages`,
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
/** 控制叶佳供货的小车 */
|
||||
export function controlYjTrain(simulationId, right) {
|
||||
return request({
|
||||
url: `/api/realDevice/${simulationId}/train`,
|
||||
method: 'put',
|
||||
params: { right }
|
||||
});
|
||||
}
|
||||
/** 创建仿真(不通过功能id) */
|
||||
export function createSimulationNoFunction(mapId, data) {
|
||||
return request({
|
||||
url: `/simulation/new/${mapId}`,
|
||||
method: 'post',
|
||||
data
|
||||
});
|
||||
}
|
||||
|
@ -32,21 +32,6 @@ export function updateTraining(data) {
|
||||
data
|
||||
});
|
||||
}
|
||||
/** 更新发布实训信息(标签, 描述, 标题) */
|
||||
export function updateTrainingInfo(data) {
|
||||
return request({
|
||||
url: `/api/v2/training/published/update`,
|
||||
method: 'put',
|
||||
data
|
||||
});
|
||||
}
|
||||
/** 已发布实训转为草稿 */
|
||||
export function saveAsTrainingDraft(trainingId) {
|
||||
return request({
|
||||
url: `/api/v2/training/published/${trainingId}/saveAsDraft`,
|
||||
method: 'post'
|
||||
});
|
||||
}
|
||||
/** 查询步骤列表 */
|
||||
export function getTrainingStepList(trainingId) {
|
||||
return request({
|
||||
@ -173,26 +158,3 @@ export function clearDesignTraining(trainingId, group) {
|
||||
method: 'delete'
|
||||
});
|
||||
}
|
||||
/** 导出实训数据 */
|
||||
export function exportTrainingData(data) {
|
||||
return request({
|
||||
url: `/api/v2/training/published/export`,
|
||||
method: 'post',
|
||||
data
|
||||
});
|
||||
}
|
||||
/** 导入实训数据 */
|
||||
export function importTrainingData(data) {
|
||||
return request({
|
||||
url: `/api/v2/training/published/import`,
|
||||
method: 'post',
|
||||
data
|
||||
});
|
||||
}
|
||||
/** 实训跳转到当前步骤*/
|
||||
export function jumpToTraining(group, stepId) {
|
||||
return request({
|
||||
url: `/api/training2Simulation/${group}/jumpTo/${stepId}`,
|
||||
method: 'put'
|
||||
});
|
||||
}
|
||||
|
@ -193,11 +193,3 @@ export function queryTemplateMapFunPaged(params) {
|
||||
params
|
||||
});
|
||||
}
|
||||
/** 线路功能覆盖生成(主要用于客户端重新生成后线路功能里客户端重新匹配) */
|
||||
export function generateMapFun(data) {
|
||||
return request({
|
||||
url: `/api/mapFunction/generate/mapIds`,
|
||||
method: 'post',
|
||||
data
|
||||
});
|
||||
}
|
||||
|
Before Width: | Height: | Size: 37 KiB |
Before Width: | Height: | Size: 130 KiB |
Before Width: | Height: | Size: 6.3 KiB |
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.4 KiB |
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 709 B After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 2.3 KiB |
@ -332,6 +332,7 @@ export default {
|
||||
methods: {
|
||||
handleEdit(row, column, index) {
|
||||
this.$set(row, 'isEdit', true);
|
||||
// console.log(this.$refs);
|
||||
// if (this.$refs.customerInput.length) {
|
||||
// this.$refs.customerInput[index].$el.querySelector('input').focus();
|
||||
// }
|
||||
|
@ -38,12 +38,6 @@ export default {
|
||||
permissionManage: 'Permission',
|
||||
authorityTransferManage: 'Privilege distribution management',
|
||||
userRulesManage: 'User Rights Statistics',
|
||||
contestDataManage:'Contest data management',
|
||||
contestSubjectManage:'contest subject management',
|
||||
contestTaskManage:'contest task management',
|
||||
contestSceneManage:'contest scene management',
|
||||
contestTaskScoreManage:'contest task score management',
|
||||
contestSeasonManage:'contest season management',
|
||||
fileManage: 'File Manage',
|
||||
frontResourceManage: 'Front-End Resource Management',
|
||||
iscsPrerecordManage: 'ISCS Advance record management',
|
||||
|
@ -107,6 +107,4 @@ export default {
|
||||
iscsResourcesManage: 'ISCS Resources Manage',
|
||||
projectManage: 'Project Manage',
|
||||
frontProjectConfigManage: 'Front Project Config Manage',
|
||||
training: 'Training',
|
||||
theory: 'Theory'
|
||||
};
|
||||
}
|
||||
|
@ -51,7 +51,7 @@ export default {
|
||||
menuSignal: {
|
||||
routeSelect: '进路选排',
|
||||
routeCancel: '进路取消',
|
||||
signalBlock: '信号封锁',
|
||||
signalBlock: '信号封闭',
|
||||
signalDeblock: '信号解封',
|
||||
signalReopen: '信号重开',
|
||||
guideRouteHandle: '引导进路办理',
|
||||
|
@ -38,12 +38,6 @@ export default {
|
||||
permissionManage: '权限管理',
|
||||
authorityTransferManage: '权限分发管理',
|
||||
userRulesManage: '用户权限管理',
|
||||
contestDataManage:'竞赛数据管理',
|
||||
contestSubjectManage:'竞赛题目管理',
|
||||
contestTaskManage:'竞赛任务管理',
|
||||
contestSceneManage:'竞赛场景管理',
|
||||
contestTaskScoreManage:'竞赛任务评分管理',
|
||||
contestSeasonManage:'竞赛赛季管理',
|
||||
fileManage: '文件管理',
|
||||
frontResourceManage: '前端资源管理',
|
||||
iscsPrerecordManage: 'ISCS预录管理',
|
||||
|
@ -111,6 +111,4 @@ export default {
|
||||
iscsResourcesManage: 'ISCS资源管理',
|
||||
projectManage: '项目管理',
|
||||
frontProjectConfigManage: '前端项目配置管理',
|
||||
training: '实训',
|
||||
theory: '理论'
|
||||
};
|
||||
}
|
||||
|
@ -9,15 +9,7 @@ const mapDeviceStyle = {
|
||||
'09': 'xian_02',
|
||||
'10': 'xian_01', // 西安一号线
|
||||
'11': 'xian_01', // 西安三号线
|
||||
'12': 'ningbo_03', // 宁波三号线
|
||||
'13': 'race_01', // 2020国赛线路
|
||||
'14':'nanjing_02', // 南京二号线
|
||||
'15': 'datie_01', // 大铁线路一
|
||||
'16': 'datie_02', // 大铁线路二
|
||||
'17':'datie_tky', // 铁科院大铁线路
|
||||
'18':'datie_jd1a',
|
||||
'19': 'datie_ksk', // 大铁 卡斯柯
|
||||
'20': 'ningbo_01'
|
||||
'12': 'ningbo_03' // 宁波三号线
|
||||
};
|
||||
|
||||
export function selectLineCode(code) {
|
||||
|
@ -5,6 +5,7 @@ export function SetScene(project) {
|
||||
// var cubeTextureLoader = new THREE.CubeTextureLoader();
|
||||
|
||||
var bgTexture;
|
||||
// console.log(project);
|
||||
if(project == "login" || project == undefined){
|
||||
bgTexture = new THREE.TextureLoader().load(JL3D_LOCAL_STATIC+"/background/other.jpg");
|
||||
}else if(project == "heb"){
|
||||
|
@ -48,6 +48,7 @@ export function Pathaction(){
|
||||
|
||||
document.onmousedown = function(event){
|
||||
jlmap3dedit.selectswitch = false;
|
||||
console.log(event.button);
|
||||
|
||||
//辅助线段
|
||||
|
||||
@ -59,6 +60,7 @@ export function Pathaction(){
|
||||
|
||||
lineswitch = null;
|
||||
|
||||
console.log(linenew);
|
||||
|
||||
if(linenew){
|
||||
|
||||
@ -72,6 +74,7 @@ export function Pathaction(){
|
||||
|
||||
point1 = mouserray(event,jlmap3dedit);
|
||||
|
||||
console.log("new");
|
||||
if(point1){
|
||||
linenew = addline(point1,1,jlmap3dedit.splineHelperObjects,jlmap3dedit.scene);
|
||||
jlmap3dedit.mapdata.path.push(linenew);
|
||||
@ -101,6 +104,7 @@ export function Pathaction(){
|
||||
jlmap3dedit.mapdata.sectionlist.sections.datalist[i].rail.push(linenew.geometry.vertices[n]);
|
||||
}
|
||||
jlmap3dedit.mapdata.sectionlist.sections.datalist[i].railline = linenew;
|
||||
console.log(jlmap3dedit.mapdata.sectionlist.sections.datalist[i].rail);
|
||||
i = jlmap3dedit.mapdata.sectionlist.sections.modellist.length;
|
||||
}
|
||||
}
|
||||
@ -173,6 +177,7 @@ export function Pathaction(){
|
||||
|
||||
document.onmousedown = function(event){
|
||||
|
||||
console.log(event.button);
|
||||
|
||||
//辅助线段
|
||||
|
||||
@ -184,6 +189,7 @@ export function Pathaction(){
|
||||
|
||||
lineswitch = null;
|
||||
|
||||
console.log(linenew);
|
||||
|
||||
if(linenew){
|
||||
|
||||
@ -227,6 +233,8 @@ export function Pathaction(){
|
||||
for(let n=0;n<linenew.geometry.vertices.length;n++){
|
||||
jlmap3dedit.mapdata.sectionlist.sections.datalist[i].rail.push(linenew.geometry.vertices[n]);
|
||||
}
|
||||
console.log(jlmap3dedit.mapdata.sectionlist.sections.datalist[i]);
|
||||
console.log(jlmap3dedit.mapdata.sectionlist.sections.datalist[i].rail);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -281,6 +289,7 @@ export function Pathaction(){
|
||||
}
|
||||
//点击事件
|
||||
this.raycaster = function(data){
|
||||
console.log();
|
||||
if(scope.on == true){
|
||||
|
||||
//定义光线
|
||||
@ -291,11 +300,13 @@ export function Pathaction(){
|
||||
mouse.y = -(event.clientY / window.innerHeight) * 2 + 1;
|
||||
|
||||
raycaster.setFromCamera( mouse, data.camera );
|
||||
console.log(data.splineHelperObjects);
|
||||
let intersects1;
|
||||
|
||||
intersects1 = raycaster.intersectObjects( data.splineHelperObjects);
|
||||
|
||||
if(intersects1[0]){
|
||||
console.log(intersects1[0]);
|
||||
return intersects1[0].object;
|
||||
}
|
||||
|
||||
@ -318,7 +329,9 @@ export function Pathaction(){
|
||||
mouse.y = -(mousep.clientY / window.innerHeight) * 2 + 1;
|
||||
|
||||
raycaster.setFromCamera( mouse, jlmap3dedit.camera );
|
||||
console.log(jlmap3dedit.assetloader.modellist[3].mesh);
|
||||
var intersects = raycaster.intersectObjects(jlmap3dedit.assetloader.modellist[3].mesh.children);
|
||||
console.log(intersects);
|
||||
if(intersects[0]){
|
||||
resultpoint = intersects[0].point;
|
||||
return resultpoint;
|
||||
|
@ -79,9 +79,13 @@ export function Sectionaction(){
|
||||
|
||||
raycaster.setFromCamera( mouse, data.camera );
|
||||
let intersects1;
|
||||
// console.log(modellist);
|
||||
for(let i=0;i<modellist.length;i++){
|
||||
intersects1 = raycaster.intersectObject(modellist[i],true);
|
||||
// console.log(intersects1);
|
||||
if(intersects1[0]){
|
||||
// console.log(intersects1[0].object.code);
|
||||
// console.log(modellist[i].code);
|
||||
if(intersects1[0].object.code == modellist[i].code){
|
||||
|
||||
return modellist[i];
|
||||
@ -93,17 +97,20 @@ export function Sectionaction(){
|
||||
}
|
||||
|
||||
this.changemodel = function(jlmap3dedit,changedata){
|
||||
console.log(changedata);
|
||||
let scene = jlmap3dedit.scene;
|
||||
let assetloader = jlmap3dedit.assetloader;
|
||||
let isnewmodel = true;
|
||||
//判断是否是未加载模型
|
||||
for(let i=0;i<assetloader.modellist.length;i++){
|
||||
console.log(assetloader.modellist[i].assetUrl);
|
||||
|
||||
if(changedata.assetUrl == assetloader.modellist[i].assetUrl){
|
||||
isnewmodel = false;
|
||||
i = assetloader.modellist.length;
|
||||
}
|
||||
}
|
||||
console.log(isnewmodel);
|
||||
|
||||
jlmap3dedit.assetloader.loadnewsection(changedata,jlmap3dedit);
|
||||
|
||||
@ -111,19 +118,25 @@ export function Sectionaction(){
|
||||
|
||||
// for(let i=0;i<jlmap3dedit.mapdata.signallist.list.length;i++){
|
||||
// if(jlmap3dedit.selectmodel.code == jlmap3dedit.mapdata.signallist.list[i].mesh.code){
|
||||
// console.log("change");
|
||||
// let num = i;
|
||||
//
|
||||
// //判断是否修改模型
|
||||
// console.log(changedata.id );
|
||||
// console.log(jlmap3dedit.mapdata.signallist.list[i].mesh.name);
|
||||
// if(changedata.id != jlmap3dedit.mapdata.signallist.list[i].mesh.name){
|
||||
//
|
||||
// if(isnewmodel == true){
|
||||
// console.log("new");
|
||||
// return jlmap3dedit.assetloader.loadnewasset(jlmap3dedit,changedata,num);
|
||||
//
|
||||
// }else{
|
||||
// console.log("old");
|
||||
// return jlmap3dedit.assetloader.loadoldasset(jlmap3dedit,changedata,num);
|
||||
//
|
||||
// }
|
||||
// }else{
|
||||
// console.log("same");
|
||||
// return jlmap3dedit.selectmodel;
|
||||
// }
|
||||
//
|
||||
|
@ -50,6 +50,7 @@ export function Signalaction(){
|
||||
for(let i=0;i<data.mapdata.signallist.list.length;i++){
|
||||
intersects1 = raycaster.intersectObjects( data.mapdata.signallist.list[i].mesh.children);
|
||||
if(intersects1[0]){
|
||||
console.log(intersects1[0].object);
|
||||
if(intersects1[0].object.parent.code == data.mapdata.signallist.list[i].mesh.code){
|
||||
return data.mapdata.signallist.list[i].mesh;
|
||||
}
|
||||
@ -61,9 +62,11 @@ export function Signalaction(){
|
||||
}
|
||||
|
||||
this.changemodel = function(jlmap3dedit,changedata){
|
||||
console.log(changedata);
|
||||
let isnewmodel = true;
|
||||
//判断是否是未加载模型
|
||||
for(let i=0;i<jlmap3dedit.assetloader.modellist.length;i++){
|
||||
console.log(jlmap3dedit.assetloader.modellist[i].assetUrl);
|
||||
|
||||
if(changedata.assetUrl == jlmap3dedit.assetloader.modellist[i].assetUrl){
|
||||
isnewmodel = false;
|
||||
@ -74,19 +77,25 @@ export function Signalaction(){
|
||||
let scene = jlmap3dedit.scene;
|
||||
for(let i=0;i<jlmap3dedit.mapdata.signallist.list.length;i++){
|
||||
if(jlmap3dedit.selectmodel.code == jlmap3dedit.mapdata.signallist.list[i].mesh.code){
|
||||
console.log("change");
|
||||
let num = i;
|
||||
|
||||
//判断是否修改模型
|
||||
console.log(changedata.id );
|
||||
console.log(jlmap3dedit.mapdata.signallist.list[i].mesh.name);
|
||||
if(changedata.id != jlmap3dedit.mapdata.signallist.list[i].mesh.name){
|
||||
|
||||
if(isnewmodel == true){
|
||||
console.log("new");
|
||||
return jlmap3dedit.assetloader.loadnewasset(jlmap3dedit,changedata,num);
|
||||
|
||||
}else{
|
||||
console.log("old");
|
||||
return jlmap3dedit.assetloader.loadoldasset(jlmap3dedit,changedata,num);
|
||||
|
||||
}
|
||||
}else{
|
||||
console.log("same");
|
||||
return jlmap3dedit.selectmodel;
|
||||
}
|
||||
|
||||
|
@ -48,11 +48,15 @@ export function Stationaction(){
|
||||
|
||||
raycaster.setFromCamera( mouse, data.camera );
|
||||
let intersects1;
|
||||
console.log( data.mapdata.stationstandlist);
|
||||
for(let i=0;i<data.mapdata.stationstandlist.group.children.length;i++){
|
||||
|
||||
intersects1 = raycaster.intersectObjects( data.mapdata.stationstandlist.group.children[i].children);
|
||||
|
||||
if(intersects1[0]){
|
||||
console.log(data.mapdata.stationstandlist.group);
|
||||
console.log(intersects1[0]);
|
||||
console.log(data.mapdata.stationstandlist.group.children[i]);
|
||||
if(intersects1[0].object.parent.code == data.mapdata.stationstandlist.group.children[i].code){
|
||||
return data.mapdata.stationstandlist.group.children[i];
|
||||
}
|
||||
|
@ -55,6 +55,7 @@ export function Switchaction(){
|
||||
if(intersects1[0]){
|
||||
|
||||
if(intersects1[0].object.code == data.mapdata.sectionlist.switchs.modellist[i].code){
|
||||
//console.log(intersects1[0].object.name);
|
||||
return data.mapdata.sectionlist.switchs.modellist[i];
|
||||
}
|
||||
}
|
||||
|
@ -55,6 +55,8 @@ export function Trainaction(){
|
||||
if(intersects1[0]){
|
||||
|
||||
if(intersects1[0].object.name == data.mapdata.trainlisttest.list[i].name){
|
||||
//console.log(intersects1[0].object.name);
|
||||
console.log(data.mapdata.trainlisttest.list[i]);
|
||||
return data.mapdata.trainlisttest.list[i];
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
//import request from '@/utils/request';
|
||||
|
||||
export function initDataSave(data) {
|
||||
console.log(data);
|
||||
let postmap = {
|
||||
id:data.mapdata.id,
|
||||
mapId:data.mapdata.mapId,
|
||||
@ -23,6 +24,7 @@ export function initDataSave(data) {
|
||||
}else{
|
||||
|
||||
let models = data.assetManager;
|
||||
console.log(data.assetManager);
|
||||
postmap.assets = JSON.stringify(models);
|
||||
|
||||
|
||||
@ -111,6 +113,7 @@ export function initDataSave(data) {
|
||||
postmap.signals = JSON.stringify(signals);
|
||||
//车站
|
||||
let stands = [];
|
||||
console.log(data.mapdata.stationstandlist);
|
||||
if(data.mapdata.stationstandlist){
|
||||
for(let i=0;i<data.mapdata.stationstandlist.list.length;i++){
|
||||
let station = {
|
||||
|
@ -1,5 +1,6 @@
|
||||
//import request from '@/utils/request';
|
||||
export function specilDataSave(data) {
|
||||
console.log(data);
|
||||
let postmap = {
|
||||
id:data.mapdata.id,
|
||||
mapId:data.mapdata.mapId,
|
||||
@ -54,6 +55,7 @@ export function specilDataSave(data) {
|
||||
|
||||
|
||||
let models = data.assetManager;
|
||||
console.log(data.assetManager);
|
||||
postmap.assets = JSON.stringify(models);
|
||||
|
||||
|
||||
|
@ -23,11 +23,13 @@ export function testgetmodels(data) {
|
||||
}else{
|
||||
|
||||
let models = data.assetManager;
|
||||
console.log(data.assetManager);
|
||||
postmap.assets = JSON.stringify(models);
|
||||
|
||||
|
||||
//section隧道
|
||||
let sections = [];
|
||||
// console.log(data.mapdata.sectionlist.sections.datalist);
|
||||
for(let i in data.mapdata.sectionlist.sections.datalist){
|
||||
let section = {
|
||||
// uuid:data.mapdata.sectionlist.sections.modellist[i].uuid,
|
||||
@ -45,6 +47,7 @@ export function testgetmodels(data) {
|
||||
}
|
||||
let nowmesh = data.mapdata.sectionlist.sectiongroup.getObjectByProperty("code",section.code);
|
||||
section.railpoint = nowmesh.railpoint;
|
||||
// console.log(nowmesh.railpoint);
|
||||
// if(data.mapdata.sectionlist.sections.datalist[i].rsection){
|
||||
// section.rsection = data.mapdata.sectionlist.sections.datalist[i].rsection;
|
||||
// }
|
||||
|
@ -27,6 +27,7 @@ export function jl3dEditorLoader(mapid,scope){
|
||||
get3dMapData(editmapid).then(data => {
|
||||
|
||||
if(data.data ){
|
||||
console.log(data);
|
||||
if(data.data.assets){
|
||||
// initData(editmapid,data.data.id);
|
||||
loadData(editmapid,data.data);
|
||||
@ -39,22 +40,26 @@ export function jl3dEditorLoader(mapid,scope){
|
||||
|
||||
set3dMapData(params).then(data => {
|
||||
if(data.code == "200"){
|
||||
//console.log("创建三维数据成功");
|
||||
// console.log(data);
|
||||
initData(editmapid,data.data.id);
|
||||
|
||||
}
|
||||
}).catch(error => {
|
||||
console.error(error);
|
||||
console.log(error);
|
||||
});
|
||||
}
|
||||
|
||||
}).catch(error => {
|
||||
console.error(error);
|
||||
console.log(error);
|
||||
});
|
||||
|
||||
function initData(mapid,data3did){
|
||||
|
||||
getMapDetail(mapid).then(data => {
|
||||
console.log(data);
|
||||
let mapdata = data.data;
|
||||
//console.log(data3did);
|
||||
jlmap3ddata.id = data3did;
|
||||
jlmap3ddata.mapId = mapid;
|
||||
|
||||
@ -66,9 +71,11 @@ export function jl3dEditorLoader(mapid,scope){
|
||||
jlmap3ddata.switchlist = new rSwitchList();
|
||||
assetloader.assetinit(scene)
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
return jlmap3ddata.sectionlist.initpromise(jlmap3ddata,assetloader,mapdata.sectionList,mapdata.switchList,scene);
|
||||
})
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
return jlmap3ddata.signallist.initpromise(jlmap3ddata,mapdata.signalList,scene,assetloader);
|
||||
})
|
||||
.then(function(data){
|
||||
@ -76,6 +83,7 @@ export function jl3dEditorLoader(mapid,scope){
|
||||
})
|
||||
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
loadingInstance.close();
|
||||
});
|
||||
}else{
|
||||
@ -92,12 +100,15 @@ export function jl3dEditorLoader(mapid,scope){
|
||||
jlmap3ddata.raillist.setrail();
|
||||
assetloader.assetinit(scene)
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
return jlmap3ddata.stationstandlist.initpromise(jlmap3ddata,mapdata.stationList,mapdata.stationStandList,scene,assetloader);
|
||||
})
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
return jlmap3ddata.sectionlist.initpromise(jlmap3ddata,assetloader,mapdata.sectionList,mapdata.switchList,scene);
|
||||
})
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
return jlmap3ddata.signallist.initpromise(jlmap3ddata,mapdata.signalList,scene,assetloader);
|
||||
})
|
||||
.then(function(data){
|
||||
@ -105,6 +116,7 @@ export function jl3dEditorLoader(mapid,scope){
|
||||
})
|
||||
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
loadingInstance.close();
|
||||
});
|
||||
}
|
||||
@ -139,10 +151,12 @@ export function jl3dEditorLoader(mapid,scope){
|
||||
assetloader.setModelListOver(jlmap3dasset.sceneAssetList,5,jlmap3dasset.others);
|
||||
assetloader.assetPromiseOver(scene)
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
// return jlmap3ddata.sectionlist.initpromise(jlmap3ddata,assetloader,mapdata.sectionList,mapdata.switchList,scene);
|
||||
return jlmap3ddata.sectionlist.loadpromise(jlmap3ddata,assetloader,sectiondata.section,mapdata.sectionList,mapdata.switchList,scene);
|
||||
})
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
// return jlmap3ddata.signallist.initpromise(jlmap3ddata,mapdata.signalList,scene,assetloader);
|
||||
return jlmap3ddata.signallist.loadpromise(signaldata,scene,assetloader,mapdata.signalList);
|
||||
})
|
||||
@ -151,6 +165,7 @@ export function jl3dEditorLoader(mapid,scope){
|
||||
return jlmap3ddata.switchlist.loadpromise(jlmap3ddata,switchdata,scene,assetloader);
|
||||
})
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
loadingInstance.close();
|
||||
});
|
||||
}else{
|
||||
@ -164,6 +179,7 @@ export function jl3dEditorLoader(mapid,scope){
|
||||
jlmap3ddata.switchlist = new SwitchList();
|
||||
|
||||
jlmap3ddata.raillist = new RailList();
|
||||
console.log(netdata);
|
||||
let sectiondata = JSON.parse(netdata.sections);
|
||||
let switchdata = JSON.parse(netdata.switchs);
|
||||
let signaldata = JSON.parse(netdata.signals);
|
||||
@ -180,10 +196,12 @@ export function jl3dEditorLoader(mapid,scope){
|
||||
return jlmap3ddata.stationstandlist.loadpromise(jlmap3ddata,standsdata,mapdata.stationStandList,scene,assetloader);
|
||||
})
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
// return jlmap3ddata.sectionlist.initpromise(jlmap3ddata,assetloader,mapdata.sectionList,mapdata.switchList,scene);
|
||||
return jlmap3ddata.sectionlist.loadpromise(jlmap3ddata,assetloader,sectiondata.section,scene);
|
||||
})
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
// return jlmap3ddata.signallist.initpromise(jlmap3ddata,mapdata.signalList,scene,assetloader);
|
||||
return jlmap3ddata.signallist.loadpromise(signaldata,scene,assetloader,mapdata.signalList);
|
||||
})
|
||||
@ -192,6 +210,7 @@ export function jl3dEditorLoader(mapid,scope){
|
||||
return jlmap3ddata.switchlist.loadpromise(jlmap3ddata,switchdata,scene,assetloader);
|
||||
})
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
loadingInstance.close();
|
||||
});
|
||||
}else{
|
||||
@ -203,10 +222,12 @@ export function jl3dEditorLoader(mapid,scope){
|
||||
return jlmap3ddata.stationstandlist.loadpromise(jlmap3ddata,standsdata,mapdata,scene,assetloader,jlmap3dasset.others);
|
||||
})
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
// return jlmap3ddata.sectionlist.initpromise(jlmap3ddata,assetloader,mapdata.sectionList,mapdata.switchList,scene);
|
||||
return jlmap3ddata.sectionlist.loadpromise(jlmap3ddata,assetloader,sectiondata.section,mapdata.sectionList,mapdata.switchList,scene);
|
||||
})
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
// return jlmap3ddata.signallist.initpromise(jlmap3ddata,mapdata.signalList,scene,assetloader);
|
||||
return jlmap3ddata.signallist.loadpromise(signaldata,scene,assetloader,mapdata.signalList);
|
||||
})
|
||||
@ -215,6 +236,7 @@ export function jl3dEditorLoader(mapid,scope){
|
||||
return jlmap3ddata.switchlist.loadpromise(jlmap3ddata,switchdata,scene,assetloader);
|
||||
})
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
loadingInstance.close();
|
||||
});
|
||||
}
|
||||
|
@ -29,6 +29,7 @@ import { jl3dEditorLoader } from '@/jlmap3d/edit/jl3dEditorLoader';
|
||||
import { Actionmanage } from '@/jlmap3d/edit/actionmanage';
|
||||
|
||||
export function JLmap3dEdit(dom, data, mapid) {
|
||||
console.log(data);
|
||||
|
||||
var scope = this;
|
||||
|
||||
@ -143,6 +144,7 @@ export function JLmap3dEdit(dom, data, mapid) {
|
||||
};
|
||||
|
||||
this.eventon = function(){
|
||||
//console.log("on");
|
||||
//raycaster交互模型点击事件
|
||||
document.getElementById("testdraw").addEventListener( "mousedown", onselect, false );
|
||||
//窗口自适应
|
||||
@ -152,6 +154,7 @@ export function JLmap3dEdit(dom, data, mapid) {
|
||||
};
|
||||
|
||||
this.eventoff = function(){
|
||||
//console.log("off");
|
||||
//raycaster交互模型点击事件
|
||||
document.getElementById("testdraw").removeEventListener( "mousedown", onselect, false );
|
||||
//窗口自适应
|
||||
@ -160,6 +163,7 @@ export function JLmap3dEdit(dom, data, mapid) {
|
||||
|
||||
this.exportsection = function(){
|
||||
let exporter = new THREE.OBJExporter();
|
||||
console.log(scope.mapdata);
|
||||
// let exportmodels = scope.mapdata.stationstandlist.group;
|
||||
let exportmodels = scope.mapdata.sectionlist.sectiongroup;
|
||||
// let exportmodels = scope.mapdata.stationstandlist.group;
|
||||
@ -180,6 +184,7 @@ export function JLmap3dEdit(dom, data, mapid) {
|
||||
|
||||
this.exportsection = function(){
|
||||
let exporter = new THREE.OBJExporter();
|
||||
console.log(scope.mapdata);
|
||||
// let exportmodels = scope.mapdata.stationstandlist.group;
|
||||
let exportSectionModel = scope.mapdata.sectionlist.sectiongroup;
|
||||
objDownload("section",exporter.parse( exportSectionModel ));
|
||||
@ -221,6 +226,10 @@ export function JLmap3dEdit(dom, data, mapid) {
|
||||
}
|
||||
|
||||
this.actiommode = function(changedata){
|
||||
console.log(changedata);
|
||||
console.log(scope.editmode);
|
||||
// console.log(scope.actionmode);
|
||||
// console.log(changedata);
|
||||
if(changedata == "trackreplace"){
|
||||
scope.editmode = "trackedit";
|
||||
scope.eventon();
|
||||
@ -265,6 +274,7 @@ export function JLmap3dEdit(dom, data, mapid) {
|
||||
// if(scope.editmode == "pathedit"){
|
||||
//
|
||||
// if(scope.actionmode == "drawrail"){
|
||||
// //console.log("drawrail");
|
||||
// scope.selectmodel = scope.action.pathaction.drawline(scope);
|
||||
// }
|
||||
//
|
||||
@ -295,14 +305,27 @@ export function JLmap3dEdit(dom, data, mapid) {
|
||||
for(let i=0,leni=scope.mapdata.stationstandlist.list.length;i<leni;i++){
|
||||
if(changeStation.code == scope.mapdata.stationstandlist.list[i].code){
|
||||
let changeData = scope.mapdata.stationstandlist.list[i];
|
||||
console.log(changeData);
|
||||
let topStandTrack = scope.mapdata.sectionlist.sections.datalist[changeData.stands[0].section];
|
||||
let downStandTrack = scope.mapdata.sectionlist.sections.datalist[changeData.stands[changeData.stands.length-1].section];
|
||||
|
||||
console.log(scope.mapdata.sectionlist.sections);
|
||||
console.log(topStandTrack.mesh.railpoint[0].x);
|
||||
console.log(topStandTrack.mesh.railpoint[2].x);
|
||||
console.log(downStandTrack.mesh.railpoint[0].x);
|
||||
console.log(downStandTrack.mesh.railpoint[2].x);
|
||||
|
||||
let rightpos = topStandTrack.leftStopPercent*(topStandTrack.mesh.railpoint[2].x -topStandTrack.mesh.railpoint[0].x)+topStandTrack.mesh.railpoint[0].x;
|
||||
let leftpos = downStandTrack.rightStopPercent*(downStandTrack.mesh.railpoint[2].x -downStandTrack.mesh.railpoint[0].x)+downStandTrack.mesh.railpoint[0].x;
|
||||
|
||||
let rightX = changeData.mesh.position.x-63.4 - rightpos;
|
||||
let leftX = changeData.mesh.position.x+63.4 - leftpos;
|
||||
console.log("----------------------------");
|
||||
console.log(rightpos);
|
||||
console.log(leftpos);
|
||||
console.log("----------------------------");
|
||||
console.log(rightX);
|
||||
console.log(leftX);
|
||||
topStandTrack.mesh.position.x = topStandTrack.mesh.position.z + rightX;
|
||||
downStandTrack.mesh.position.x = downStandTrack.mesh.position.x + leftX;
|
||||
//
|
||||
@ -344,6 +367,9 @@ export function JLmap3dEdit(dom, data, mapid) {
|
||||
plane2.rotation.y = Math.PI/2;
|
||||
let leftpos = scope.mapdata.sectionlist.sections.datalist[k].leftStopPercent*(scope.mapdata.sectionlist.sections.datalist[k].railpoint[2].x -scope.mapdata.sectionlist.sections.datalist[k].railpoint[0].x)+scope.mapdata.sectionlist.sections.datalist[k].railpoint[0].x;
|
||||
let rightpos = scope.mapdata.sectionlist.sections.datalist[k].rightStopPercent*(scope.mapdata.sectionlist.sections.datalist[k].railpoint[2].x -scope.mapdata.sectionlist.sections.datalist[k].railpoint[0].x)+scope.mapdata.sectionlist.sections.datalist[k].railpoint[0].x;
|
||||
// console.log("==========");
|
||||
// console.log(scope.mapdata.sectionlist.sections.datalist[k].leftStopPercent);
|
||||
// console.log(scope.mapdata.sectionlist.sections.datalist[k].rightStopPercent);
|
||||
plane1.position.set(leftpos,scope.mapdata.sectionlist.sections.datalist[k].railpoint[1].y,scope.mapdata.sectionlist.sections.datalist[k].railpoint[1].z);
|
||||
plane2.position.set(rightpos,scope.mapdata.sectionlist.sections.datalist[k].railpoint[1].y,scope.mapdata.sectionlist.sections.datalist[k].railpoint[1].z);
|
||||
stationStopGroup.add(plane1);
|
||||
@ -367,6 +393,8 @@ export function JLmap3dEdit(dom, data, mapid) {
|
||||
|
||||
//自动匹配轨道信号灯道岔
|
||||
this.autoss = function(){
|
||||
console.log("autoss");
|
||||
// console.log(scope.mapdata);
|
||||
scope.mapdata.signallist.resetsignal(scope.mapdata);
|
||||
scope.mapdata.switchlist.resetswitch(scope.mapdata);
|
||||
//old
|
||||
@ -466,6 +494,8 @@ export function JLmap3dEdit(dom, data, mapid) {
|
||||
newpointlist.push(new THREE.Vector3(alignmentModel.railpoint[1].x,alignmentModel.railpoint[0].y,alignmentModel.railpoint[0].z+0.001));
|
||||
newpointlist.push(new THREE.Vector3(alignmentModel.railpoint[2].x,alignmentModel.railpoint[0].y,alignmentModel.railpoint[0].z));
|
||||
|
||||
// console.log(oldobject);
|
||||
|
||||
let newSection = reCreatSection(newpointlist,oldobject);
|
||||
newSection.meshtype = "section";
|
||||
scope.mapdata.sectionlist.sections.datalist[alignmentCode].mesh = newSection;
|
||||
@ -539,6 +569,8 @@ export function JLmap3dEdit(dom, data, mapid) {
|
||||
|
||||
//三维交互点击事件函数
|
||||
function onselect(event) {
|
||||
//console.log("select");
|
||||
//console.log("select");
|
||||
if(scope.selectswitch == true){
|
||||
|
||||
scope.transcontrol.detach();
|
||||
@ -561,6 +593,7 @@ export function JLmap3dEdit(dom, data, mapid) {
|
||||
}
|
||||
|
||||
if(scope.editmode == "stationedit"){
|
||||
console.log("stat!!!!!!!!!!!!");
|
||||
scope.selectmodel = scope.action.stationaction.raycaster(scope);
|
||||
}
|
||||
|
||||
@ -574,9 +607,11 @@ export function JLmap3dEdit(dom, data, mapid) {
|
||||
|
||||
if(scope.editmode == "pathedit"){
|
||||
scope.selectmodel = scope.action.pathaction.raycaster(scope);
|
||||
//console.log(scope.selectmodel);
|
||||
}
|
||||
|
||||
if(scope.selectmodel != null){
|
||||
//console.log(scope.selectmodel.rotation);
|
||||
if(scalControls.scalon){
|
||||
|
||||
}else{
|
||||
|
@ -36,6 +36,7 @@ export function rSectionList() {
|
||||
if(sectiondata[i].type == "01" || sectiondata[i].type == "03"){
|
||||
//初始化区段对象数据
|
||||
let newsection = new SectionModel(sectiondata[i]);
|
||||
// console.log(sectiondata[i]);
|
||||
newsection.name = sectiondata[i].name;
|
||||
newsection.code = sectiondata[i].code;
|
||||
newsection.index = i;
|
||||
@ -48,6 +49,7 @@ export function rSectionList() {
|
||||
newsection.points = sectiondata[i].points;
|
||||
newsection.pointslength = sectiondata[i].points.length-1;
|
||||
newsection.railpoint = [];
|
||||
// console.log(sectiondata[i].points.length);
|
||||
newsection.standTrack = sectiondata[i].standTrack;
|
||||
|
||||
newsection.endbuild = false;
|
||||
@ -72,6 +74,7 @@ export function rSectionList() {
|
||||
let acode = switchdata[i].sectionACode;
|
||||
let bcode = switchdata[i].sectionBCode;
|
||||
let ccode = switchdata[i].sectionCCode;
|
||||
// console.log(switchdata[i]);
|
||||
|
||||
|
||||
let aposx = (scope.sections.datalist[acode].points[0].x + scope.sections.datalist[acode].points[scope.sections.datalist[acode].pointslength].x)/2;
|
||||
@ -80,6 +83,7 @@ export function rSectionList() {
|
||||
let aposy = (scope.sections.datalist[acode].points[0].y + scope.sections.datalist[acode].points[scope.sections.datalist[acode].pointslength].y)/2;
|
||||
let cposy = (scope.sections.datalist[ccode].points[0].y + scope.sections.datalist[ccode].points[scope.sections.datalist[ccode].pointslength].y)/2;
|
||||
|
||||
// console.log("----------------");
|
||||
if(aposx > cposx){
|
||||
if(aposy < cposy){
|
||||
// ——A
|
||||
@ -153,6 +157,8 @@ export function rSectionList() {
|
||||
y:0,
|
||||
z:0
|
||||
});
|
||||
console.log(scope.sections.datalist);
|
||||
console.log("START BUILD !!!!!!!!!!!!!!!!!");
|
||||
buildsectionall(scope.sections.datalist["T1"]);
|
||||
resolve("loadersection");
|
||||
});
|
||||
@ -240,7 +246,12 @@ export function rSectionList() {
|
||||
y:0,
|
||||
z:position.z
|
||||
};
|
||||
// console.log(origin+"******************************");
|
||||
// console.log(start);
|
||||
// console.log(origin);
|
||||
if(scope.sections.datalist[start].standTrack == true && start != origin){
|
||||
// console.log(start+"到达");
|
||||
// console.log("++++++++++++++++++++++++");
|
||||
return ;
|
||||
}else if(scope.sections.datalist[start].rsection == undefined){
|
||||
return ;
|
||||
@ -409,7 +420,11 @@ export function rSectionList() {
|
||||
];
|
||||
}
|
||||
|
||||
// console.log(data.ctype);
|
||||
if(type == "cross"){
|
||||
// console.log(data.ctype);
|
||||
// console.log(scope.sections.datalist[data.code].points.length);
|
||||
// console.log(scope.sections.datalist[data.code]);
|
||||
if(data.ctype == "1"||data.ctype == "2" ){
|
||||
|
||||
|
||||
@ -754,13 +769,16 @@ export function rSectionList() {
|
||||
let acode = switch2d[i].sectionACode;
|
||||
let bcode = switch2d[i].sectionBCode;
|
||||
let ccode = switch2d[i].sectionCCode;
|
||||
// console.log(switchdata[i]);
|
||||
|
||||
// console.log(scope.sections.datalist[acode]);
|
||||
let aposx = (scope.sections.datalist[acode].points[0].x + scope.sections.datalist[acode].points[scope.sections.datalist[acode].pointslength].x)/2;
|
||||
let cposx = (scope.sections.datalist[ccode].points[0].x + scope.sections.datalist[ccode].points[scope.sections.datalist[ccode].pointslength].x)/2;
|
||||
|
||||
let aposy = (scope.sections.datalist[acode].points[0].y + scope.sections.datalist[acode].points[scope.sections.datalist[acode].pointslength].y)/2;
|
||||
let cposy = (scope.sections.datalist[ccode].points[0].y + scope.sections.datalist[ccode].points[scope.sections.datalist[ccode].pointslength].y)/2;
|
||||
|
||||
// console.log("----------------");
|
||||
if(aposx > cposx){
|
||||
if(aposy < cposy){
|
||||
// ——A
|
||||
|
@ -13,6 +13,7 @@ export function rSignalList() {
|
||||
this.initpromise = function(jlmap3ddata,data,scene,assetloader,netdata){
|
||||
return new Promise(function(resolve, reject){
|
||||
scope.group.name = "signal";
|
||||
// console.log(data);
|
||||
//遍历信号数据
|
||||
let netsignal = null;
|
||||
let haddata = false;
|
||||
@ -31,6 +32,7 @@ export function rSignalList() {
|
||||
if(data[i].virtual == false){
|
||||
let newsignal = new SignalModel(data[i]);
|
||||
if(haddata == false){
|
||||
// console.log(data[i])
|
||||
let newmesh = assetloader.modellist[num].mesh.clone(true);
|
||||
|
||||
newmesh.name = data[i].name;
|
||||
@ -152,6 +154,7 @@ export function rSignalList() {
|
||||
if(data[n].virtual == false){
|
||||
let newsignal = new SignalModel(signaldata[i]);
|
||||
|
||||
// console.log(signaldata[i]);
|
||||
let newmesh = assetloader.modellist[num].mesh.clone(true);
|
||||
newmesh.sectionCode = data[n].sectionCode;
|
||||
newmesh.sectionOffset = data[n].sectionOffset;
|
||||
@ -188,6 +191,7 @@ export function rSignalList() {
|
||||
});
|
||||
};
|
||||
this.resetsignal = function(jlmap3ddata){
|
||||
// console.log(jlmap3ddata.linksgroup);
|
||||
let sectiondata = jlmap3ddata.sectionlist.sectiongroup.children;
|
||||
for(let i=0;i<scope.group.children.length;i++){
|
||||
let signaldata = scope.group.children[i];
|
||||
@ -196,6 +200,7 @@ export function rSignalList() {
|
||||
if(sectiondata[j].code == signaldata.sectionCode){
|
||||
let section = sectiondata[j];
|
||||
let posx = null;
|
||||
// console.log(section);
|
||||
|
||||
posx = section.railpoint[0].x + signaldata.sectionOffset;
|
||||
|
||||
|
@ -14,9 +14,11 @@ export function rSwitchList() {
|
||||
};
|
||||
|
||||
this.initpromise = function(jlmap3ddata,data,scene,assetloader,netdata){
|
||||
// console.log(jlmap3ddata);
|
||||
return new Promise(function(resolve, reject){
|
||||
scene.add( scope.switchgroup );
|
||||
let sectiondata = jlmap3ddata.sectionlist.sections.datalist;
|
||||
// console.log(sectiondata);
|
||||
let num;
|
||||
for(let j=0;j<assetloader.modellist.length;j++){
|
||||
if(assetloader.modellist[j].deviceType == "autoswitch"){
|
||||
@ -56,6 +58,7 @@ export function rSwitchList() {
|
||||
return new Promise(function(resolve, reject){
|
||||
scene.add( scope.switchgroup );
|
||||
// let sectiondata = jlmap3ddata.sectionlist.sections.datalist;
|
||||
// console.log(sectiondata);
|
||||
let num;
|
||||
for(let j=0;j<assetloader.modellist.length;j++){
|
||||
if(assetloader.modellist[j].type == "switch"){
|
||||
@ -67,6 +70,7 @@ export function rSwitchList() {
|
||||
}
|
||||
};
|
||||
for(let i=0,leni = switchdata.length;i<leni;i++){
|
||||
// console.log(switchdata[i]);
|
||||
let newswitch = {
|
||||
code:switchdata[i].code,
|
||||
name:switchdata[i].name,
|
||||
@ -75,6 +79,7 @@ export function rSwitchList() {
|
||||
pc:switchdata[i].pc
|
||||
};
|
||||
|
||||
// console.log(newswitch.pa);
|
||||
let autoswitch = assetloader.modellist[num].mesh.clone(true);
|
||||
autoswitch.code = switchdata[i].code;
|
||||
for(let j=0;j<autoswitch.children.length;j++){
|
||||
@ -96,6 +101,7 @@ export function rSwitchList() {
|
||||
}
|
||||
|
||||
this.resetswitch = function(data){
|
||||
// console.log("reset");
|
||||
let sectiondata = data.sectionlist.sectiongroup;
|
||||
for(let i=0;i<scope.switchs.datalist.length;i++){
|
||||
|
||||
|
@ -61,7 +61,12 @@ export function RailList(){
|
||||
x:circle1.position.x,
|
||||
z:circle1.position.z
|
||||
}];
|
||||
// console.log(i);
|
||||
// console.log(section[i].mesh);
|
||||
// console.log(mapdata.sectionlist.sections.datalist[i].rail);
|
||||
// console.log("=======================");
|
||||
}
|
||||
// console.log(n);
|
||||
// for(let i=0;i<mapdata.switchlist.switchgroup.children.length;i++){
|
||||
// var geometry = new THREE.CircleBufferGeometry( 1, 16 );
|
||||
// var material = new THREE.MeshBasicMaterial( { color: 0xff00ff } );
|
||||
|
@ -36,6 +36,7 @@ export function SectionList() {
|
||||
if(sectiondata[i].type == "01" || sectiondata[i].type == "03"){
|
||||
//初始化区段对象数据
|
||||
let newsection = new SectionModel(sectiondata[i]);
|
||||
// console.log(sectiondata[i]);
|
||||
newsection.name = sectiondata[i].name;
|
||||
newsection.code = sectiondata[i].code;
|
||||
newsection.index = i;
|
||||
@ -48,6 +49,7 @@ export function SectionList() {
|
||||
newsection.points = sectiondata[i].points;
|
||||
newsection.pointslength = sectiondata[i].points.length-1;
|
||||
newsection.railpoint = [];
|
||||
// console.log(sectiondata[i].points.length);
|
||||
newsection.standTrack = sectiondata[i].standTrack;
|
||||
|
||||
newsection.endbuild = false;
|
||||
@ -95,6 +97,7 @@ export function SectionList() {
|
||||
let acode = switchdata[i].sectionACode;
|
||||
let bcode = switchdata[i].sectionBCode;
|
||||
let ccode = switchdata[i].sectionCCode;
|
||||
// console.log(switchdata[i]);
|
||||
|
||||
|
||||
let aposx = (scope.sections.datalist[acode].points[0].x + scope.sections.datalist[acode].points[scope.sections.datalist[acode].pointslength].x)/2;
|
||||
@ -103,6 +106,7 @@ export function SectionList() {
|
||||
let aposy = (scope.sections.datalist[acode].points[0].y + scope.sections.datalist[acode].points[scope.sections.datalist[acode].pointslength].y)/2;
|
||||
let cposy = (scope.sections.datalist[ccode].points[0].y + scope.sections.datalist[ccode].points[scope.sections.datalist[ccode].pointslength].y)/2;
|
||||
|
||||
// console.log("----------------");
|
||||
if(aposx > cposx){
|
||||
if(aposy < cposy){
|
||||
// ——A
|
||||
@ -171,6 +175,7 @@ export function SectionList() {
|
||||
reals:[],
|
||||
posx:null,
|
||||
};
|
||||
// console.log(stationlist[i]);
|
||||
|
||||
// realstopsection.stands.push();
|
||||
for(let n=0,lenn = stationlist[i].stands.length;n<lenn;n++){
|
||||
@ -379,6 +384,7 @@ export function SectionList() {
|
||||
}
|
||||
//根据站台区段创建站台位置 120停车点距离
|
||||
for(let j=0,lenj=stations.length;j<lenj;j++){
|
||||
// console.log(j);
|
||||
let direction1 = scope.sections.datalist[stations[j].stands[0].section];
|
||||
let direction2 = scope.sections.datalist[stations[j].stands[1].section];
|
||||
|
||||
@ -398,6 +404,7 @@ export function SectionList() {
|
||||
}
|
||||
|
||||
// scope.sections.datalist[stations[0].stands[0].section].endbuild = true;
|
||||
console.log("START BUILD !!!!!!!!!!!!!!!!!");
|
||||
buildsectionall(scope.sections.datalist[stations[0].stands[0].section]);
|
||||
resolve("loadersection");
|
||||
});
|
||||
@ -485,7 +492,12 @@ export function SectionList() {
|
||||
y:0,
|
||||
z:position.z
|
||||
};
|
||||
// console.log(origin+"******************************");
|
||||
// console.log(start);
|
||||
// console.log(origin);
|
||||
if(scope.sections.datalist[start].standTrack == true && start != origin){
|
||||
// console.log(start+"到达");
|
||||
// console.log("++++++++++++++++++++++++");
|
||||
return ;
|
||||
}else if(scope.sections.datalist[start].rsection == undefined){
|
||||
return ;
|
||||
@ -654,7 +666,11 @@ export function SectionList() {
|
||||
];
|
||||
}
|
||||
|
||||
// console.log(data.ctype);
|
||||
if(type == "cross"){
|
||||
// console.log(data.ctype);
|
||||
// console.log(scope.sections.datalist[data.code].points.length);
|
||||
// console.log(scope.sections.datalist[data.code]);
|
||||
if(data.ctype == "1"||data.ctype == "2" ){
|
||||
|
||||
|
||||
@ -999,13 +1015,16 @@ export function SectionList() {
|
||||
let acode = switch2d[i].sectionACode;
|
||||
let bcode = switch2d[i].sectionBCode;
|
||||
let ccode = switch2d[i].sectionCCode;
|
||||
// console.log(switchdata[i]);
|
||||
|
||||
// console.log(scope.sections.datalist[acode]);
|
||||
let aposx = (scope.sections.datalist[acode].points[0].x + scope.sections.datalist[acode].points[scope.sections.datalist[acode].pointslength].x)/2;
|
||||
let cposx = (scope.sections.datalist[ccode].points[0].x + scope.sections.datalist[ccode].points[scope.sections.datalist[ccode].pointslength].x)/2;
|
||||
|
||||
let aposy = (scope.sections.datalist[acode].points[0].y + scope.sections.datalist[acode].points[scope.sections.datalist[acode].pointslength].y)/2;
|
||||
let cposy = (scope.sections.datalist[ccode].points[0].y + scope.sections.datalist[ccode].points[scope.sections.datalist[ccode].pointslength].y)/2;
|
||||
|
||||
// console.log("----------------");
|
||||
if(aposx > cposx){
|
||||
if(aposy < cposy){
|
||||
// ——A
|
||||
|
@ -13,6 +13,7 @@ export function SignalList() {
|
||||
this.initpromise = function(jlmap3ddata,data,scene,assetloader,netdata){
|
||||
return new Promise(function(resolve, reject){
|
||||
scope.group.name = "signal";
|
||||
// console.log(data);
|
||||
//遍历信号数据
|
||||
let netsignal = null;
|
||||
let haddata = false;
|
||||
@ -31,6 +32,7 @@ export function SignalList() {
|
||||
if(data[i].virtual == false){
|
||||
let newsignal = new SignalModel(data[i]);
|
||||
if(haddata == false){
|
||||
// console.log(data[i])
|
||||
let newmesh = assetloader.modellist[num].mesh.clone(true);
|
||||
|
||||
newmesh.name = data[i].name;
|
||||
@ -152,6 +154,7 @@ export function SignalList() {
|
||||
if(data[n].virtual == false){
|
||||
let newsignal = new SignalModel(signaldata[i]);
|
||||
|
||||
// console.log(signaldata[i]);
|
||||
let newmesh = assetloader.modellist[num].mesh.clone(true);
|
||||
newmesh.sectionCode = data[n].sectionCode;
|
||||
newmesh.sectionOffset = data[n].sectionOffset;
|
||||
@ -188,6 +191,7 @@ export function SignalList() {
|
||||
});
|
||||
};
|
||||
this.resetsignal = function(jlmap3ddata){
|
||||
// console.log(jlmap3ddata.linksgroup);
|
||||
let sectiondata = jlmap3ddata.sectionlist.sectiongroup.children;
|
||||
for(let i=0;i<scope.group.children.length;i++){
|
||||
let signaldata = scope.group.children[i];
|
||||
@ -196,6 +200,7 @@ export function SignalList() {
|
||||
if(sectiondata[j].code == signaldata.sectionCode){
|
||||
let section = sectiondata[j];
|
||||
let posx = null;
|
||||
// console.log(section);
|
||||
|
||||
posx = section.railpoint[0].x + signaldata.sectionOffset;
|
||||
|
||||
|
@ -83,14 +83,18 @@ export function StationStandList() {
|
||||
}
|
||||
|
||||
}
|
||||
console.log(scope.list);
|
||||
resolve("loadedstation");
|
||||
});
|
||||
}
|
||||
this.loadpromise = function(jlmap3ddata,standsdata,jlmapdata,scene,assetloader,otherStation){
|
||||
return new Promise(function(resolve, reject){
|
||||
// console.log(jlmap3ddata);
|
||||
let jlmapstationdata = jlmapdata.stationList;
|
||||
let jlmapstanddata = jlmapdata.stationStandList;
|
||||
// jlmapstationdata.splice(0,1);
|
||||
console.log(standsdata);
|
||||
console.log(jlmapstationdata);
|
||||
// for(let i=0;i<jlmapstationdata.length;i++){// || jlmapstationdata[i].subheadDisplay == false
|
||||
// if(jlmapstationdata[i].visible == false){
|
||||
// jlmapstationdata.splice(i,1);
|
||||
@ -99,19 +103,30 @@ export function StationStandList() {
|
||||
// standsdata[i].code = jlmapstationdata[i].code;
|
||||
// standsdata[i].name = jlmapstationdata[i].name;
|
||||
// }
|
||||
// // console.log(jlmapstationdata[i].subheadDisplay);
|
||||
// }
|
||||
|
||||
// console.log(jlmapstationdata);
|
||||
console.log(standsdata);
|
||||
//
|
||||
// console.log(jlmapstationdata);
|
||||
//
|
||||
// console.log(standsdata);
|
||||
// console.log(jlmapstationdata);
|
||||
for(let i=0;i<jlmapstationdata.length;i++){
|
||||
if(jlmapstationdata[i].visible == false || jlmapstationdata[i].depot == true){
|
||||
jlmapstationdata.splice(i,1);
|
||||
i--;
|
||||
}else{
|
||||
// console.log(jlmapstationdata[i]);
|
||||
// console.log(standsdata[i]);
|
||||
standsdata[i].code = jlmapstationdata[i].code;
|
||||
standsdata[i].name = jlmapstationdata[i].name;
|
||||
}
|
||||
}
|
||||
// console.log(otherStation);
|
||||
// console.log(standsdata);
|
||||
// console.log(assetloader.modellist);
|
||||
let stations = jlmap3ddata.stationstandlist.list;
|
||||
let num;
|
||||
let num2;
|
||||
@ -139,6 +154,9 @@ export function StationStandList() {
|
||||
num3 = j;
|
||||
}
|
||||
}
|
||||
// console.log("+++++++++++++");
|
||||
// console.log(jlmapstanddata);
|
||||
// console.log(standsdata);
|
||||
for(let i=0;i<standsdata.length;i++){
|
||||
let newstationstand = new StationStandModel(standsdata[i]);
|
||||
let newstationmesh;
|
||||
@ -168,6 +186,7 @@ export function StationStandList() {
|
||||
newstationstand.name = standsdata[i].name;
|
||||
newstationstand.inside = standsdata[i].inside;
|
||||
|
||||
// console.log(standsdata[i]);
|
||||
newstationmesh.code = standsdata[i].code;
|
||||
newstationmesh.name = standsdata[i].name;
|
||||
newstationmesh.meshtype = "station";
|
||||
@ -192,11 +211,13 @@ export function StationStandList() {
|
||||
}else{
|
||||
newstationmesh = assetloader.modellist[num2].mesh.clone(true);
|
||||
}
|
||||
// console.log(jlmapstanddata[j]);
|
||||
|
||||
newstationstand.code = standsdata[i].code;
|
||||
newstationstand.name = standsdata[i].name;
|
||||
newstationstand.inside = standsdata[i].inside;
|
||||
|
||||
// console.log(standsdata[i]);
|
||||
newstationmesh.code = standsdata[i].code;
|
||||
newstationmesh.name = standsdata[i].name;
|
||||
newstationmesh.meshtype = "station";
|
||||
@ -211,9 +232,11 @@ export function StationStandList() {
|
||||
scope.list.push(newstationstand);
|
||||
}else{
|
||||
newstationmesh = assetloader.modellist[num3].mesh.clone(true);
|
||||
// console.log(jlmapstanddata[j]);
|
||||
newstationstand.code = standsdata[i].code;
|
||||
newstationstand.name = standsdata[i].name;
|
||||
newstationstand.inside = standsdata[i].inside;
|
||||
// console.log(standsdata[i]);
|
||||
newstationmesh.code = standsdata[i].code;
|
||||
newstationmesh.name = standsdata[i].name;
|
||||
newstationmesh.position.x = standsdata[i].position.x;
|
||||
|
@ -14,9 +14,11 @@ export function SwitchList() {
|
||||
};
|
||||
|
||||
this.initpromise = function(jlmap3ddata,data,scene,assetloader,netdata){
|
||||
// console.log(jlmap3ddata);
|
||||
return new Promise(function(resolve, reject){
|
||||
scene.add( scope.switchgroup );
|
||||
let sectiondata = jlmap3ddata.sectionlist.sections.datalist;
|
||||
// console.log(sectiondata);
|
||||
let num;
|
||||
for(let j=0;j<assetloader.modellist.length;j++){
|
||||
if(assetloader.modellist[j].deviceType == "autoswitch"){
|
||||
@ -56,6 +58,7 @@ export function SwitchList() {
|
||||
return new Promise(function(resolve, reject){
|
||||
scene.add( scope.switchgroup );
|
||||
// let sectiondata = jlmap3ddata.sectionlist.sections.datalist;
|
||||
// console.log(sectiondata);
|
||||
let num;
|
||||
for(let j=0;j<assetloader.modellist.length;j++){
|
||||
if(assetloader.modellist[j].type == "switch"){
|
||||
@ -67,6 +70,7 @@ export function SwitchList() {
|
||||
}
|
||||
};
|
||||
for(let i=0,leni = switchdata.length;i<leni;i++){
|
||||
// console.log(switchdata[i]);
|
||||
let newswitch = {
|
||||
code:switchdata[i].code,
|
||||
name:switchdata[i].name,
|
||||
@ -75,6 +79,7 @@ export function SwitchList() {
|
||||
pc:switchdata[i].pc
|
||||
};
|
||||
|
||||
// console.log(newswitch.pa);
|
||||
let autoswitch = assetloader.modellist[num].mesh.clone(true);
|
||||
autoswitch.code = switchdata[i].code;
|
||||
for(let j=0;j<autoswitch.children.length;j++){
|
||||
@ -96,6 +101,7 @@ export function SwitchList() {
|
||||
}
|
||||
|
||||
this.resetswitch = function(data){
|
||||
// console.log("reset");
|
||||
let sectiondata = data.sectionlist.sectiongroup;
|
||||
for(let i=0;i<scope.switchs.datalist.length;i++){
|
||||
|
||||
|
@ -76,6 +76,7 @@ let onProgress = function ( xhr ) {
|
||||
if ( xhr.lengthComputable ) {
|
||||
|
||||
let percentComplete = xhr.loaded / xhr.total * 100;
|
||||
//console.log( Math.round( percentComplete, 2 ) + '% downloaded' );
|
||||
|
||||
}
|
||||
|
||||
|
@ -46,6 +46,7 @@ export function SetObj(data,scope) {
|
||||
if(data.sectionList[i].type == "01"){
|
||||
|
||||
if(data.sectionList[i].points.length>=3){
|
||||
console.log(data.sectionList[i]);
|
||||
|
||||
for(let j=1;j<data.sectionList[i].points.length;j++){
|
||||
point1 = data.sectionList[i].points[j-1];
|
||||
@ -202,5 +203,7 @@ export function SetObj(data,scope) {
|
||||
group.add(object);
|
||||
}
|
||||
|
||||
console.log("setobj");
|
||||
scope.exportmodel = group;
|
||||
console.log(group);
|
||||
}
|
||||
|
@ -15,12 +15,17 @@
|
||||
|
||||
var intersects4 = raycaster4.intersectObjects( helppoints[i] );
|
||||
|
||||
//// //console.log(raycaster1);
|
||||
if(intersects1[0] != undefined){
|
||||
// // //console.log("intersects1");
|
||||
// // //console.log(intersects1[0]);
|
||||
intersects1[0].name = "1";
|
||||
mindistance = intersects1[0].distance;
|
||||
result = intersects1[0];
|
||||
}
|
||||
if(intersects2[0] != undefined){
|
||||
// // //console.log("intersects2");
|
||||
// // //console.log(mindistance);
|
||||
intersects2[0].name = "2";
|
||||
if(mindistance == undefined){
|
||||
mindistance = intersects2[0].distance;
|
||||
@ -33,6 +38,8 @@
|
||||
|
||||
}
|
||||
if(intersects3[0] != undefined){
|
||||
// // //console.log("intersects3");
|
||||
// // //console.log(mindistance);
|
||||
intersects3[0].name = "3";
|
||||
if(mindistance == undefined){
|
||||
mindistance = intersects3[0].distance;
|
||||
@ -43,6 +50,8 @@
|
||||
}
|
||||
}
|
||||
if(intersects4[0] != undefined){
|
||||
// // //console.log("intersects4");
|
||||
// // //console.log(mindistance);
|
||||
intersects4[0].name = "4";
|
||||
if(mindistance == undefined){
|
||||
mindistance = intersects4[0].distance;
|
||||
|
@ -485,6 +485,7 @@ export function Moveanimate(main){
|
||||
}
|
||||
|
||||
}else{
|
||||
// console.log(scope.animatelist[k].connectmodel);
|
||||
if(scope.nowmodelname != scope.playlist[scope.playorder][i].connectmodel.name){
|
||||
scope.nowmodelname = scope.playlist[scope.playorder][i].connectmodel.name;
|
||||
main.animationmsgshowon(scope.playlist[scope.playorder][i].connectmodel);
|
||||
|
@ -10,6 +10,7 @@ export function Textconfig(){
|
||||
if(scope.devicelist.length>0){
|
||||
scope.devicelist = [];
|
||||
}
|
||||
console.log(selectmodel.deviceType);
|
||||
if(selectmodel.deviceType == "DeviceSwitch"){
|
||||
initSwitchText(selectmodel);
|
||||
}
|
||||
@ -91,6 +92,9 @@ export function Textconfig(){
|
||||
}
|
||||
|
||||
|
||||
// if(part.text == null){
|
||||
// console.log(selectmodel.children[i].name);
|
||||
// }
|
||||
if(part.text){
|
||||
scope.devicelist.push(part);
|
||||
}
|
||||
@ -188,6 +192,9 @@ export function Textconfig(){
|
||||
part.msg = "用于机内外电缆连接,方便更换转辙机。";
|
||||
selectmodel.children[i].text = "二十位插接件";
|
||||
}
|
||||
// if(part.text == null){
|
||||
// console.log(selectmodel.children[i].name);
|
||||
// }
|
||||
if(part.text){
|
||||
scope.devicelist.push(part);
|
||||
}
|
||||
|
@ -143,8 +143,11 @@ export function Jl3ddeviceNew(dom,group,token,skinCode) {
|
||||
stationList.push(mapnetdata.stationList[i]);
|
||||
}
|
||||
}
|
||||
// console.log(mapnetdata.stationList);
|
||||
for(let k in psdVoiceStationList){
|
||||
for(let i=0,leni=stationList.length;i<leni;i++){
|
||||
// console.log("---------------");
|
||||
// console.log("---------------");
|
||||
if(psdVoiceStationList[k].stationCode == stationList[i].code){
|
||||
psdVoiceStationList[k].nowStationName = stationList[i].name;
|
||||
|
||||
@ -291,6 +294,7 @@ export function Jl3ddeviceNew(dom,group,token,skinCode) {
|
||||
for (let i = 0; i < scope.mixers.length; i++) {
|
||||
if (scope.mixers[i]) {
|
||||
if( scope.mixers[i].staticType){
|
||||
// console.log(scope.mixers[i].time);
|
||||
if(scope.mixers[i]._actions[0].time<stopTime){
|
||||
scope.mixers[i].update(delta);
|
||||
}else{
|
||||
@ -339,6 +343,10 @@ export function Jl3ddeviceNew(dom,group,token,skinCode) {
|
||||
scope.raycasterstatus = false;
|
||||
scope.nowobject = null;
|
||||
updatemenulist();
|
||||
if(data._type == "Station"){
|
||||
|
||||
console.log(data);
|
||||
}
|
||||
|
||||
if (data._type == "Switch") {
|
||||
// scope.modelmanager.switchmodel.locateType = data.body.locateType;
|
||||
@ -485,6 +493,8 @@ export function Jl3ddeviceNew(dom,group,token,skinCode) {
|
||||
this.changeAnimate = function(type){
|
||||
//
|
||||
|
||||
console.log(type);
|
||||
// console.log(scope.modelmanager.staticswitchmodel);
|
||||
|
||||
// scope.modelmanager.staticswitchmodel.action["2kai"].reset();
|
||||
// scope.modelmanager.staticswitchmodel.action["5jiasuo"].reset();
|
||||
@ -510,6 +520,7 @@ export function Jl3ddeviceNew(dom,group,token,skinCode) {
|
||||
stopTime = 3.33;
|
||||
scope.modelmanager.staticswitchmodel.action.play();
|
||||
|
||||
console.log(scope.mixers);
|
||||
}
|
||||
if(type == "action2"){
|
||||
scope.camera.position.x = -7.23;
|
||||
@ -573,6 +584,8 @@ export function Jl3ddeviceNew(dom,group,token,skinCode) {
|
||||
scope.camera.position.y = 22.56;
|
||||
scope.camera.position.z = -1.348;
|
||||
scope.controls.target = new THREE.Vector3(-2.15,10,-1.348);
|
||||
// console.log(scope.camera.position);
|
||||
// console.log(scope.controls.target);
|
||||
scope.modelmanager.staticswitchmodel.action.reset();
|
||||
scope.modelmanager.staticswitchmodel.action.time = 23.36;
|
||||
stopTime = 26.66;
|
||||
|
@ -93,6 +93,7 @@ export function ModelManager(){
|
||||
Promise.all(initlist).then((result) => {
|
||||
resolve("success"); //['成功了', 'success']
|
||||
}).catch((error) => {
|
||||
//console.log(error);
|
||||
});
|
||||
|
||||
});
|
||||
|
@ -156,6 +156,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
|
||||
getPublishMapDetail(mapId).then(data => {
|
||||
let mapnetdata = data.data;
|
||||
getPublish3dMapDetail(mapId).then(netdata => {
|
||||
// console.log(netdata);
|
||||
let assetsdata = JSON.parse(netdata.data.sections);
|
||||
|
||||
scope.datatype = "new";
|
||||
@ -270,6 +271,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
|
||||
};
|
||||
|
||||
updatemmi.updatedrivingcode = function(code) {
|
||||
// console.log(trainlisttest);
|
||||
drivingcode = code;
|
||||
trainlisttest.group.children[0].children[0].add(controls3.getObject());
|
||||
controls3.getObject().position.x = 10;
|
||||
@ -311,6 +313,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
|
||||
if(driverWebWorker){
|
||||
driverWebWorker.terminate();
|
||||
}
|
||||
// console.log(scope);
|
||||
// scope = null;
|
||||
};
|
||||
|
||||
@ -383,6 +386,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
|
||||
realsectionlist = loadrealsectionlist;
|
||||
rails = loadrails;
|
||||
|
||||
console.log(trainlisttest);
|
||||
trainlisttest.group.children[0].getObjectByName("C6").add(cameracctv);
|
||||
}
|
||||
|
||||
@ -397,6 +401,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
|
||||
};
|
||||
|
||||
this.eventoff = function() {
|
||||
// console.log("off");
|
||||
// raycaster交互模型点击事件
|
||||
document.getElementById('jlsimulation').removeEventListener( 'mousedown', onselect, false );
|
||||
// 窗口自适应
|
||||
@ -415,6 +420,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
|
||||
camera.position.z = mesh.children[0].position.z;
|
||||
// controls.target = new THREE.Vector3(mesh.position.x,0,mesh.children[0].position.z);
|
||||
}
|
||||
// console.log(mesh);
|
||||
if (type == 'station') {
|
||||
camera.position.x = mesh.position.x;
|
||||
camera.position.y = mesh.position.y+800;
|
||||
@ -487,6 +493,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
|
||||
}
|
||||
|
||||
if (scope.raycasterswitch == 'section') {
|
||||
// console.log(sectionlist.sections.modellist);
|
||||
let intersects = raycaster.intersectObjects( sectionlist.sections.modellist, true);
|
||||
if (intersects[0]) {
|
||||
|
||||
|
@ -81,6 +81,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
|
||||
}
|
||||
|
||||
if(data.type == "DeviceCtrl_3D"){
|
||||
// console.log(data);
|
||||
if (data.body.type== 'SIGNAL' && signallist) {
|
||||
signalupdate(data.body);
|
||||
return;
|
||||
@ -200,6 +201,8 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
|
||||
|
||||
}
|
||||
this.updatamap = function(newsectionlist,newlinklist,newsignallist,newstationstandlist,newtrainlisttest,newrealsectionlist,newrails,newtdt, materiallist, nowaction, scene) {
|
||||
// console.log(mapdata);
|
||||
// console.log(newtrainlisttest);
|
||||
trainmodel = newtrainlisttest.group.children[0];
|
||||
trainlisttest = newtrainlisttest;
|
||||
sectionlist = newsectionlist;
|
||||
@ -219,6 +222,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
|
||||
|
||||
this.socketon = function(topic) {
|
||||
try {
|
||||
// console.log("teststomp");
|
||||
// scope.teststomp.subscribe(topic, callback, header);
|
||||
} catch (error) {
|
||||
console.error('websocket订阅失败');
|
||||
@ -251,11 +255,13 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
|
||||
|
||||
// 仿真socket接口回调函数
|
||||
function callback(Response) {
|
||||
// console.log(Response);
|
||||
// 对象化数据
|
||||
|
||||
let data = JSON.parse(Response.body);
|
||||
// stats.update();
|
||||
// 遍历后台数据
|
||||
// console.log(data);
|
||||
|
||||
if(data.type == "Train_Position"){
|
||||
nowTrainRun(data.body);
|
||||
@ -300,6 +306,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
|
||||
}
|
||||
|
||||
function DeviceDestroy(data){
|
||||
// console.log(data);
|
||||
for(let i=0,leni=data.length;i<leni;i++){
|
||||
|
||||
if(data[i].type == "SIGNAL"){
|
||||
@ -352,6 +359,10 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
|
||||
}
|
||||
|
||||
function otherTrainUpdate(data,updateTrainModel){
|
||||
// console.log(data);
|
||||
// if(data.code = "336"){
|
||||
// console.log(data);
|
||||
// }
|
||||
if(rails.sectionrail[data.section]){
|
||||
if(data.section != updateTrainModel.nowsection){
|
||||
updateTrainModel.nowsection = data.section;
|
||||
@ -407,6 +418,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
|
||||
// if(updateTrainModel.children[1].rotalist.length > 0 || updateTrainModel.children[2].rotalist.length > 0 || updateTrainModel.children[3].rotalist.length > 0 || updateTrainModel.children[4].rotalist.length > 0|| updateTrainModel.children[5].rotalist.length > 0){
|
||||
|
||||
for(let rs = 1;rs<updateTrainModel.children.length;rs++){
|
||||
//console.log(rs);
|
||||
if(updateTrainModel.children[rs].rotalist[0]){
|
||||
|
||||
let offsetz = parseFloat(updateTrainModel.children[rs].rotalist[0].posr.z) + parseFloat(updateTrainModel.children[rs].position.z);
|
||||
@ -429,11 +441,13 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
|
||||
xh = updateTrainModel.children[rs].rotalist.length;
|
||||
}
|
||||
}
|
||||
//console.log(trainmodel.children[rs].rotalist.length);
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
// console.log(trainmodel.rotalist);
|
||||
// }
|
||||
|
||||
}else{
|
||||
@ -479,6 +493,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
|
||||
|
||||
// if(updateTrainModel.children[1].rotalist.length > 0 || updateTrainModel.children[2].rotalist.length > 0 || updateTrainModel.children[3].rotalist.length > 0 || updateTrainModel.children[4].rotalist.length > 0|| updateTrainModel.children[5].rotalist.length > 0){
|
||||
for(let rs = 1;rs<updateTrainModel.children.length;rs++){
|
||||
//console.log(rs);
|
||||
if(updateTrainModel.children[rs].rotalist[0]){
|
||||
let offsetz = parseFloat(updateTrainModel.children[rs].rotalist[0].posr.z) - parseFloat(updateTrainModel.children[rs].matrixWorld.elements[14]);
|
||||
|
||||
@ -643,6 +658,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
|
||||
if(trainmodel.children[1].rotalist.length > 0 || trainmodel.children[2].rotalist.length > 0 || trainmodel.children[3].rotalist.length > 0 || trainmodel.children[4].rotalist.length > 0|| trainmodel.children[5].rotalist.length > 0){
|
||||
|
||||
for(let rs = 1;rs<trainmodel.children.length;rs++){
|
||||
//console.log(rs);
|
||||
if(trainmodel.children[rs].rotalist[0]){
|
||||
|
||||
let offsetz = parseFloat(trainmodel.children[rs].rotalist[0].posr.z) + parseFloat(trainmodel.children[rs].position.z);
|
||||
@ -669,10 +685,13 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
|
||||
xh = trainmodel.children[rs].rotalist.length;
|
||||
}
|
||||
}
|
||||
//console.log(trainmodel.children[rs].rotalist.length);
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
// console.log(trainmodel.rotalist);
|
||||
}
|
||||
|
||||
}else{
|
||||
@ -749,6 +768,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
|
||||
|
||||
if(trainmodel.children[1].rotalist.length > 0 || trainmodel.children[2].rotalist.length > 0 || trainmodel.children[3].rotalist.length > 0 || trainmodel.children[4].rotalist.length > 0|| trainmodel.children[5].rotalist.length > 0){
|
||||
for(let rs = 1;rs<trainmodel.children.length;rs++){
|
||||
//console.log(rs);
|
||||
if(trainmodel.children[rs].rotalist[0]){
|
||||
let offsetz = parseFloat(trainmodel.children[rs].rotalist[0].posr.z) - parseFloat(trainmodel.children[rs].matrixWorld.elements[14]);
|
||||
trainmodel.children[rs].position.z += offsetz;
|
||||
@ -774,6 +794,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
|
||||
xh = trainmodel.children[rs].rotalist.length;
|
||||
}
|
||||
}
|
||||
//console.log(trainmodel.children[rs].rotalist.length);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -796,6 +817,10 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
|
||||
|
||||
|
||||
function traindoorupdate(data){
|
||||
// console.log(data);
|
||||
// console.log("direct:"+trainmodel.right);
|
||||
// console.log(trainmodel.openleft);
|
||||
// console.log(trainmodel.openright);
|
||||
if(trainmodel.code == data.trainCode){
|
||||
if(trainmodel.right == "0"){
|
||||
if(data.code == "2"){
|
||||
|
@ -4,9 +4,11 @@ export function UpdateTrain(camera,traindata,control){
|
||||
if(traindata != undefined && traindata.group.children[0]){//traindata.group.children[0].dispose == false
|
||||
|
||||
if(traindata.group.children[0].progress != null){
|
||||
// console.log(traindata.group);
|
||||
let trainmodel = traindata.group.children[0];
|
||||
if(trainmodel.speeds > 0 && trainmodel.speeds){
|
||||
let speed = null;
|
||||
// console.log(traindata.group.children[0].progress);
|
||||
if(traindata.group.children[0].progress >=0&&traindata.group.children[0].progress<=1){
|
||||
|
||||
let movecurve = trainmodel.curve;
|
||||
@ -42,6 +44,7 @@ export function UpdateTrain(camera,traindata,control){
|
||||
|
||||
if(trainmodel.children[1].rotalist.length > 0 || trainmodel.children[2].rotalist.length > 0 || trainmodel.children[3].rotalist.length > 0 || trainmodel.children[4].rotalist.length > 0|| trainmodel.children[5].rotalist.length > 0){
|
||||
for(let rs = 1;rs<6;rs++){
|
||||
//console.log(rs);
|
||||
if(trainmodel.children[rs].rotalist[0]){
|
||||
let offsetz = parseFloat(trainmodel.children[rs].matrixWorld.elements[14]) - parseFloat(trainmodel.children[rs].rotalist[0].posr.z);
|
||||
|
||||
@ -63,6 +66,7 @@ export function UpdateTrain(camera,traindata,control){
|
||||
xh = trainmodel.children[rs].rotalist.length;
|
||||
}
|
||||
}
|
||||
//console.log(trainmodel.children[rs].rotalist.length);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -99,6 +103,7 @@ export function UpdateTrain(camera,traindata,control){
|
||||
if(trainmodel.children[1].rotalist.length > 0 || trainmodel.children[2].rotalist.length > 0 || trainmodel.children[3].rotalist.length > 0 || trainmodel.children[4].rotalist.length > 0|| trainmodel.children[5].rotalist.length > 0){
|
||||
|
||||
for(let rs = 1;rs<6;rs++){
|
||||
//console.log(rs);
|
||||
if(trainmodel.children[rs].rotalist[0]){
|
||||
|
||||
let offsetz = parseFloat(trainmodel.children[rs].rotalist[0].posr.z) - parseFloat(trainmodel.children[rs].matrixWorld.elements[14]);
|
||||
@ -121,10 +126,13 @@ export function UpdateTrain(camera,traindata,control){
|
||||
xh = trainmodel.children[rs].rotalist.length;
|
||||
}
|
||||
}
|
||||
//console.log(trainmodel.children[rs].rotalist.length);
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
// console.log(trainmodel.rotalist);
|
||||
}
|
||||
trainmodel.progress += trainmodel.speeds;
|
||||
}
|
||||
@ -144,6 +152,9 @@ export function UpdateTrain(camera,traindata,control){
|
||||
trainmodel.nextcode = null;
|
||||
}
|
||||
|
||||
// console.log(trainmodel.name);
|
||||
// console.log(trainmodel.progress);
|
||||
// console.log(trainmodel.nextcurve);
|
||||
// if(trainmodel.status == "02"){
|
||||
// trainmodel.progress = 0;
|
||||
// }else if(trainmodel.status == "03"){
|
||||
@ -186,6 +197,7 @@ export function UpdateTrain(camera,traindata,control){
|
||||
|
||||
if(trainmodel.children[1].rotalist.length > 0 || trainmodel.children[2].rotalist.length > 0 || trainmodel.children[3].rotalist.length > 0 || trainmodel.children[4].rotalist.length > 0|| trainmodel.children[5].rotalist.length > 0){
|
||||
for(let rs = 1;rs<6;rs++){
|
||||
//console.log(rs);
|
||||
if(trainmodel.children[rs].rotalist[0]){
|
||||
let offsetz = parseFloat(trainmodel.children[rs].matrixWorld.elements[14]) - parseFloat(trainmodel.children[rs].rotalist[0].posr.z);
|
||||
|
||||
@ -207,6 +219,7 @@ export function UpdateTrain(camera,traindata,control){
|
||||
xh = trainmodel.children[rs].rotalist.length;
|
||||
}
|
||||
}
|
||||
//console.log(trainmodel.children[rs].rotalist.length);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -243,6 +256,7 @@ export function UpdateTrain(camera,traindata,control){
|
||||
if(trainmodel.children[1].rotalist.length > 0 || trainmodel.children[2].rotalist.length > 0 || trainmodel.children[3].rotalist.length > 0 || trainmodel.children[4].rotalist.length > 0|| trainmodel.children[5].rotalist.length > 0){
|
||||
|
||||
for(let rs = 1;rs<6;rs++){
|
||||
//console.log(rs);
|
||||
if(trainmodel.children[rs].rotalist[0]){
|
||||
|
||||
let offsetz = parseFloat(trainmodel.children[rs].rotalist[0].posr.z) - parseFloat(trainmodel.children[rs].matrixWorld.elements[14]);
|
||||
@ -265,12 +279,16 @@ export function UpdateTrain(camera,traindata,control){
|
||||
xh = trainmodel.children[rs].rotalist.length;
|
||||
}
|
||||
}
|
||||
//console.log(trainmodel.children[rs].rotalist.length);
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
// console.log(trainmodel.rotalist);
|
||||
}
|
||||
|
||||
// console.log(trainmodel.nextcurve);
|
||||
if(trainmodel.progress > -(trainmodel.speeds)){
|
||||
trainmodel.progress += trainmodel.speeds;
|
||||
}
|
||||
|
@ -106,6 +106,7 @@ export function Jl3dfaultdevice(dom,group,token,skinCode) {
|
||||
let topic = '/user/queue/simulation/'+ group +'/jl3d';
|
||||
let header = {'X-Token': token};
|
||||
try {
|
||||
// console.log("teststomp");
|
||||
teststomp.subscribe(topic, callback, header);
|
||||
} catch (error) {
|
||||
console.error('websocket订阅失败');
|
||||
@ -119,6 +120,7 @@ export function Jl3dfaultdevice(dom,group,token,skinCode) {
|
||||
// scope.selectmodel(data);
|
||||
// }else{
|
||||
if(data.type == "DeviceCtrl_3D"){
|
||||
// console.log(data.body);
|
||||
if(data.body.code == scope.nowcode){
|
||||
scope.updateaction(data.body);
|
||||
}
|
||||
@ -141,6 +143,7 @@ export function Jl3dfaultdevice(dom,group,token,skinCode) {
|
||||
this.anime = null;
|
||||
|
||||
this.modelmanager = new ModelManager();
|
||||
console.log(skinCode);
|
||||
getPublish3dMapDetail(skinCode).then(netdata => {
|
||||
let netDataAssets = JSON.parse(netdata.data.assets);
|
||||
setpsdstationmap(JSON.parse(netdata.data.stands));
|
||||
@ -203,6 +206,7 @@ export function Jl3dfaultdevice(dom,group,token,skinCode) {
|
||||
}
|
||||
|
||||
this.selectmodel = function (data) {
|
||||
console.log(data);
|
||||
if (scope.showmodel) {
|
||||
|
||||
if (scope.showmodel.code != data.code) {
|
||||
@ -246,6 +250,7 @@ export function Jl3dfaultdevice(dom,group,token,skinCode) {
|
||||
}
|
||||
|
||||
if (data.type == "STAND") {
|
||||
// console.log(data);
|
||||
scope.modelmanager.standmodel.code = data.code;
|
||||
scope.showmodel = scope.modelmanager.standmodel.mesh;
|
||||
scope.scene.add(scope.showmodel);
|
||||
@ -262,6 +267,7 @@ export function Jl3dfaultdevice(dom,group,token,skinCode) {
|
||||
|
||||
}
|
||||
if (data.type == "SECTION") {
|
||||
// console.log(data);
|
||||
scope.modelmanager.sectionmodel.code = data.code;
|
||||
scope.showmodel = scope.modelmanager.sectionmodel.mesh;
|
||||
scope.scene.add(scope.showmodel);
|
||||
@ -279,6 +285,7 @@ export function Jl3dfaultdevice(dom,group,token,skinCode) {
|
||||
} else {
|
||||
scope.nowcode = data.code;
|
||||
if (data.type == "room") {
|
||||
// console.log(scope.modelmanager.roommodel.mesh);
|
||||
scope.showmodel = scope.modelmanager.roommodel.mesh;
|
||||
scope.scene.add(scope.showmodel);
|
||||
scope.camera.position.set(5, 7, -9);
|
||||
@ -402,6 +409,7 @@ export function Jl3dfaultdevice(dom,group,token,skinCode) {
|
||||
}
|
||||
|
||||
settext(scope.animationmodel,scope.animationmodel.position);
|
||||
// console.log(scope.animationmodel);
|
||||
helpbox = new THREE.BoxHelper( scope.animationmodel, 0xff0000 );
|
||||
moveanima.updatehelpbox(helpbox,textplane);
|
||||
// settext(intersects[0].object,intersects[0].point);
|
||||
@ -540,11 +548,13 @@ export function Jl3dfaultdevice(dom,group,token,skinCode) {
|
||||
scope.modelmanager.standmodel.action.play();
|
||||
}
|
||||
this.updateselect = function(updata){
|
||||
// console.log(updata);
|
||||
if(helpbox){
|
||||
scope.scene.remove( helpbox );
|
||||
helpbox = null;
|
||||
}
|
||||
helpbox = new THREE.BoxHelper( updata.mesh, 0xff0000 );
|
||||
// console.log(updata.mesh);
|
||||
let point = {
|
||||
x:updata.mesh.matrixWorld.elements[12],
|
||||
y:updata.mesh.matrixWorld.elements[13],
|
||||
@ -556,6 +566,7 @@ export function Jl3dfaultdevice(dom,group,token,skinCode) {
|
||||
}
|
||||
|
||||
function getdevicemsg(selectname){
|
||||
// console.log(selectname);
|
||||
for(let i=0,leni=scope.devicetext.devicelist.length;i<leni;i++){
|
||||
|
||||
if(selectname == scope.devicetext.devicelist[i].name){
|
||||
@ -719,6 +730,7 @@ export function Jl3dfaultdevice(dom,group,token,skinCode) {
|
||||
textplane.position.x = point.x;
|
||||
textplane.position.y = point.y+6;
|
||||
textplane.position.z = point.z;
|
||||
// console.log(textplane.position);
|
||||
// textplane.tcode = data[i].code;
|
||||
textplane.rotation.y = -Math.PI/2;
|
||||
textplane.lookAt(scope.camera.position);
|
||||
@ -752,6 +764,7 @@ export function Jl3dfaultdevice(dom,group,token,skinCode) {
|
||||
ctx.textAlign = 'center';
|
||||
ctx.textBaseline = 'middle';
|
||||
ctx.clearRect(0,0,256,128);
|
||||
//console.log(text.groupNumber);
|
||||
ctx.drawImage(beauty,0,0,256, 128);
|
||||
ctx.fillText("设备部件:"+text, 90,30);
|
||||
// ctx.fillText("车组人员:XXX", 40,20);
|
||||
|
@ -700,6 +700,7 @@ export function jl3dFaultDeviceVr(dom,group,skinCode) {
|
||||
function onSelectStart( event ) {
|
||||
|
||||
var controller = event.target;
|
||||
// console.log(event);
|
||||
let clickGui = getGuiButton(controller);
|
||||
if(clickGui.length > 0){
|
||||
if(positionStatus == "dm"){
|
||||
@ -852,7 +853,9 @@ export function jl3dFaultDeviceVr(dom,group,skinCode) {
|
||||
|
||||
}else{
|
||||
var intersections = getIntersections( controller );
|
||||
// console.log(intersections);
|
||||
if ( intersections) {
|
||||
// console.log(intersections);
|
||||
var intersection = intersections[ 0 ];
|
||||
if(intersection.distance <3.5){
|
||||
if(positionStatus != intersection.object.name){
|
||||
@ -883,12 +886,14 @@ export function jl3dFaultDeviceVr(dom,group,skinCode) {
|
||||
let posx = intersection.point.x - trainControl.toptrain.position.x;
|
||||
let posz = intersection.point.z - trainControl.toptrain.position.z;
|
||||
human.position.set( posx, intersection.point.y+0.6, posz);
|
||||
// console.log(human.position);
|
||||
}
|
||||
if(positionStatus == "downfloor"){
|
||||
let posx = trainControl.downtrain.position.x - intersection.point.x;
|
||||
let posz = trainControl.downtrain.position.z - intersection.point.z;
|
||||
|
||||
human.position.set( posx, intersection.point.y+0.6, posz);
|
||||
// console.log(human.position);
|
||||
}
|
||||
let postData = {
|
||||
type:"syn",
|
||||
@ -924,7 +929,9 @@ export function jl3dFaultDeviceVr(dom,group,skinCode) {
|
||||
// if ( intersections.length > 0 ) {
|
||||
//
|
||||
// // for(){}
|
||||
// // console.log(intersections);
|
||||
// var intersection = intersections[ 0 ];
|
||||
// // console.log(intersection);
|
||||
// // tempMatrix.getInverse( controller.matrixWorld );
|
||||
// //
|
||||
// // var object = intersection.object;
|
||||
@ -950,6 +957,7 @@ export function jl3dFaultDeviceVr(dom,group,skinCode) {
|
||||
}
|
||||
|
||||
function squeezeStart(){
|
||||
console.log("squeeze");
|
||||
scope.modelmanager.otherDevice.action.play();
|
||||
if(positionStatus == "dm"){
|
||||
if(vrPlaneStatus){
|
||||
@ -978,6 +986,7 @@ export function jl3dFaultDeviceVr(dom,group,skinCode) {
|
||||
// }
|
||||
|
||||
// settext(scope.animationmodel,scope.animationmodel.position);
|
||||
// console.log(scope.animationmodel);
|
||||
// helpbox = new THREE.BoxHelper( scope.animationmodel, 0xff0000 );
|
||||
// moveanima.updatehelpbox(helpbox,textplane);
|
||||
// settext(intersects[0].object,intersects[0].point);
|
||||
@ -1013,6 +1022,7 @@ export function jl3dFaultDeviceVr(dom,group,skinCode) {
|
||||
raycastervr.ray.direction.set( 0, 0, - 1 ).applyMatrix4( tempMatrix );
|
||||
for(let i=0;i<3;i++){
|
||||
let rayObject = raycastervr.intersectObject( floors[i]);
|
||||
// console.log(rayObject);
|
||||
if(rayObject.length>0){
|
||||
return rayObject;
|
||||
}
|
||||
@ -1063,6 +1073,7 @@ export function jl3dFaultDeviceVr(dom,group,skinCode) {
|
||||
if ( intersections) {
|
||||
|
||||
var intersection = intersections[ 0 ];
|
||||
// console.log(intersection);
|
||||
if(intersection.distance <3.5){
|
||||
var object = intersection.object;
|
||||
circle.position.set( intersection.point.x, intersection.point.y+0.05, intersection.point.z );
|
||||
@ -1120,6 +1131,7 @@ export function jl3dFaultDeviceVr(dom,group,skinCode) {
|
||||
}
|
||||
|
||||
function getdevicemsg(selectname){
|
||||
// console.log(selectname);
|
||||
for(let i=0,leni=scope.devicetext.devicelist.length;i<leni;i++){
|
||||
|
||||
if(selectname == scope.devicetext.devicelist[i].name){
|
||||
@ -1193,6 +1205,7 @@ export function jl3dFaultDeviceVr(dom,group,skinCode) {
|
||||
|
||||
|
||||
}
|
||||
// console.log(scope.nowstation);
|
||||
}
|
||||
|
||||
function initstationanimation(object){
|
||||
|
@ -299,6 +299,7 @@ export function MoveanimateVr(main){
|
||||
}
|
||||
//动画播放器
|
||||
this.animateupdate = function(){
|
||||
// console.log(scope.animatelist);
|
||||
|
||||
if(scope.enable){
|
||||
if(scope.playlist){
|
||||
@ -334,6 +335,7 @@ export function MoveanimateVr(main){
|
||||
|
||||
|
||||
}else{
|
||||
// console.log(scope.animatelist[k].connectmodel);
|
||||
if(scope.nowmodelname != scope.playlist[scope.playorder][i].connectmodel.name){
|
||||
scope.nowmodelname = scope.playlist[scope.playorder][i].connectmodel.name;
|
||||
main.animationmsgshowon(scope.playlist[scope.playorder][i].connectmodel);
|
||||
|
@ -18,6 +18,7 @@ function setTextVr(intersects,plane){
|
||||
textplane.position.x = 0;
|
||||
textplane.position.y = 1.55;
|
||||
textplane.position.z = 0.01;
|
||||
// console.log(textplane.position);
|
||||
// textplane.tcode = data[i].code;
|
||||
// textplane.rotation.y = -Math.PI/2;
|
||||
// scope.textlist.push(textplane);
|
||||
@ -50,6 +51,7 @@ function getTextCanvas(text){
|
||||
ctx.textAlign = 'center';
|
||||
ctx.textBaseline = 'middle';
|
||||
ctx.clearRect(0,0,256,128);
|
||||
//console.log(text.groupNumber);
|
||||
ctx.drawImage(beauty,0,0,256, 128);
|
||||
ctx.fillText("新的设备故障", 110,30);
|
||||
ctx.fillText(text.name, 110,65);
|
||||
|
@ -277,6 +277,8 @@ export function VrGui(){
|
||||
//
|
||||
// let nowGroupComponent = scope.homeGroup;
|
||||
this.setStationPlane = function(stations){
|
||||
// console.log(stations);
|
||||
// console.log(textures);
|
||||
let posX,posY;
|
||||
for(let i=0,leni = stations.length;i<leni;i++){
|
||||
|
||||
@ -366,6 +368,7 @@ export function VrGui(){
|
||||
}
|
||||
|
||||
this.updataDeviceFaultMsg = function(faultData){
|
||||
console.log(faultData);
|
||||
let textt = new THREE.CanvasTexture(getTextCanvas(faultData,"faultMsg"));
|
||||
scope.deviceGroup.getObjectByName("deviceText").material.map = textt;
|
||||
scope.deviceGroup.getObjectByName("deviceText").material.map.needsUpdate = true;
|
||||
@ -471,6 +474,7 @@ export function VrGui(){
|
||||
ctx.textAlign = 'center';
|
||||
ctx.textBaseline = 'middle';
|
||||
ctx.clearRect(0,0,128,64);
|
||||
//console.log(text.groupNumber);
|
||||
ctx.drawImage(beauty,0,0,128, 64);
|
||||
ctx.fillText(text.name, 64,32);
|
||||
//ctx.fillText(text.trainModel.name, width/2,height*3/4);
|
||||
@ -489,6 +493,7 @@ export function VrGui(){
|
||||
ctx.textAlign = 'center';
|
||||
ctx.textBaseline = 'middle';
|
||||
ctx.clearRect(0,0,128,64);
|
||||
//console.log(text.groupNumber);
|
||||
ctx.drawImage(beauty,0,0,128, 64);
|
||||
ctx.fillText("故障设备编号:", 64,16);
|
||||
ctx.fillText(text.name, 64,48);
|
||||
@ -508,6 +513,7 @@ export function VrGui(){
|
||||
ctx.textAlign = 'center';
|
||||
ctx.textBaseline = 'middle';
|
||||
ctx.clearRect(0,0,256,256);
|
||||
//console.log(text.groupNumber);
|
||||
ctx.drawImage(beauty,0,0,256, 256);
|
||||
ctx.fillText("当前车站信息", 128,32);
|
||||
ctx.fillText("车站名:"+text.name, 128,64);
|
||||
@ -534,6 +540,7 @@ export function VrGui(){
|
||||
ctx.textAlign = 'center';
|
||||
ctx.textBaseline = 'middle';
|
||||
ctx.clearRect(0,0,256,256);
|
||||
//console.log(text.groupNumber);
|
||||
ctx.drawImage(beauty,0,0,256, 256);
|
||||
ctx.fillText("当前故障信息", 128,32);
|
||||
ctx.fillText("故障设备:"+text.code, 128,64);
|
||||
|
@ -183,7 +183,9 @@ export function Jl3dOtherVR(dom,group,skinCode) {
|
||||
|
||||
otherVrViewWorker.onmessage = function (event) {
|
||||
// maintainerHuman
|
||||
console.log(event.data);
|
||||
if(event.data.type == "VR_Sync_3D"){
|
||||
console.log(event.data);
|
||||
|
||||
|
||||
humanMove(event.data);
|
||||
@ -266,6 +268,8 @@ export function Jl3dOtherVR(dom,group,skinCode) {
|
||||
}
|
||||
|
||||
if(event.data.type == "takeDownTrain"){
|
||||
console.log(event.data);
|
||||
console.log(stationList);
|
||||
for(let i=0,leni=stationList.length;i<leni;i++){
|
||||
if(stationList[i].code == event.data.stationcode){
|
||||
scope.nowstation = stationList[i];
|
||||
@ -290,6 +294,8 @@ export function Jl3dOtherVR(dom,group,skinCode) {
|
||||
}
|
||||
|
||||
if(event.data.type == "topTrain"){
|
||||
console.log(event.data);
|
||||
console.log(trainControl.toptrain.status);
|
||||
if(trainControl.toptrain.status != 1){
|
||||
trainControl.toptrain.position.copy(trainControl.toptrain.curve.getPointAt(event.data.offset));
|
||||
}
|
||||
@ -304,6 +310,8 @@ export function Jl3dOtherVR(dom,group,skinCode) {
|
||||
|
||||
if(event.data.type == "topTrainDoor"){
|
||||
|
||||
console.log(event.data);
|
||||
|
||||
if(event.data.open == "0"){
|
||||
trainControl.closetraindoor(trainControl.toptrain,event.data.doorCode,"top");
|
||||
// trainLeaveStation("top");
|
||||
@ -519,6 +527,7 @@ export function Jl3dOtherVR(dom,group,skinCode) {
|
||||
// }
|
||||
|
||||
// settext(scope.animationmodel,scope.animationmodel.position);
|
||||
// console.log(scope.animationmodel);
|
||||
// helpbox = new THREE.BoxHelper( scope.animationmodel, 0xff0000 );
|
||||
// moveanima.updatehelpbox(helpbox,textplane);
|
||||
// settext(intersects[0].object,intersects[0].point);
|
||||
@ -593,6 +602,7 @@ export function Jl3dOtherVR(dom,group,skinCode) {
|
||||
|
||||
|
||||
function getdevicemsg(selectname){
|
||||
// console.log(selectname);
|
||||
for(let i=0,leni=scope.devicetext.devicelist.length;i<leni;i++){
|
||||
|
||||
if(selectname == scope.devicetext.devicelist[i].name){
|
||||
@ -656,6 +666,7 @@ export function Jl3dOtherVR(dom,group,skinCode) {
|
||||
}
|
||||
|
||||
}
|
||||
console.log(stationList);
|
||||
scope.nowstation = stationList[0];
|
||||
let stationworket = {
|
||||
type:'station',
|
||||
@ -665,6 +676,7 @@ export function Jl3dOtherVR(dom,group,skinCode) {
|
||||
|
||||
|
||||
}
|
||||
// console.log(scope.nowstation);
|
||||
}
|
||||
|
||||
|
||||
@ -739,6 +751,7 @@ export function Jl3dOtherVR(dom,group,skinCode) {
|
||||
}
|
||||
|
||||
function humanMove(movedata){
|
||||
console.log(maintainerHuman);
|
||||
let distance = Math.sqrt(Math.pow(movedata.body.pos.x - maintainerGroup.position.x, 2) + Math.pow(movedata.body.pos.y - maintainerGroup.position.y, 2) + Math.pow(movedata.body.pos.z - maintainerGroup.position.z, 2));
|
||||
|
||||
if(distance <5){
|
||||
@ -776,6 +789,8 @@ export function Jl3dOtherVR(dom,group,skinCode) {
|
||||
}
|
||||
|
||||
function setTextVr(intersects,plane){
|
||||
console.log(intersects);
|
||||
console.log(plane);
|
||||
if(intersects.text){
|
||||
let textgeometry = new THREE.PlaneBufferGeometry( 1.2, 0.8, 1 );
|
||||
let textt = new THREE.CanvasTexture(getTextCanvas(intersects));
|
||||
@ -794,6 +809,7 @@ export function Jl3dOtherVR(dom,group,skinCode) {
|
||||
textplane.position.x = 0;
|
||||
textplane.position.y = 1.55;
|
||||
textplane.position.z = 0.01;
|
||||
// console.log(textplane.position);
|
||||
// textplane.tcode = data[i].code;
|
||||
// textplane.rotation.y = -Math.PI/2;
|
||||
// scope.textlist.push(textplane);
|
||||
@ -826,6 +842,7 @@ export function Jl3dOtherVR(dom,group,skinCode) {
|
||||
ctx.textAlign = 'center';
|
||||
ctx.textBaseline = 'middle';
|
||||
ctx.clearRect(0,0,256,128);
|
||||
//console.log(text.groupNumber);
|
||||
ctx.drawImage(beauty,0,0,256, 128);
|
||||
ctx.fillText("新的设备故障", 110,30);
|
||||
ctx.fillText(text.name, 110,65);
|
||||
|
@ -54,6 +54,7 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
|
||||
// this.renderer.shadowMap.type = THREE.PCFSoftShadowMap;
|
||||
this.renderer.gammaInput = true;
|
||||
this.renderer.gammaOutput = true;
|
||||
console.log( this.renderer);
|
||||
this.renderer.vr.enabled = true;
|
||||
this.dom.appendChild(this.renderer.domElement);
|
||||
document.body.appendChild( VRButton.createButton( human,{x:25,y:1.3,z:1},this.renderer ) );
|
||||
@ -138,6 +139,7 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
|
||||
|
||||
let timer=setInterval(function(){
|
||||
if(TrainRescueStatic.other.mesh){
|
||||
console.log(TrainRescueStatic);
|
||||
scope.scene.add(TrainRescueStatic.animatemodel.mesh);
|
||||
scope.scene.add(TrainRescueStatic.controlmodel.mesh);
|
||||
scope.scene.add(TrainRescueStatic.floorplane.mesh);
|
||||
@ -148,6 +150,7 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
|
||||
|
||||
// controller1.add(handrBox);
|
||||
controller1.add( TrainRescueStatic.handR.mesh );
|
||||
console.log(TrainRescueStatic.controlmodel.mesh);
|
||||
// floors.push(TrainRescueStatic.floorplane.mesh);
|
||||
animate();
|
||||
|
||||
@ -206,6 +209,8 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
|
||||
}
|
||||
|
||||
function onSelectStart( event ) {
|
||||
// console.log();
|
||||
console.log("select");
|
||||
var controller = event.target;
|
||||
var intersections = getIntersections( controller );
|
||||
|
||||
@ -247,6 +252,7 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
|
||||
let controlMoveSwitch = false;
|
||||
let nowControlModel = null;
|
||||
function squeezeStart(){
|
||||
console.log("squeezestart");
|
||||
TrainRescueStatic.handR.action.reset();
|
||||
TrainRescueStatic.handR.action.time = TrainRescueStatic.handR.action._clip.duration;
|
||||
TrainRescueStatic.handR.action.timeScale = 1;
|
||||
@ -269,6 +275,7 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
|
||||
|
||||
}
|
||||
function squeezeEnd(){
|
||||
console.log("squeezeend");
|
||||
TrainRescueStatic.handR.action.reset();
|
||||
TrainRescueStatic.handR.action.time = 0;
|
||||
TrainRescueStatic.handR.action.timeScale = -1;
|
||||
@ -290,6 +297,7 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
|
||||
}
|
||||
// for(let i=0;i<1;i++){
|
||||
// let rayObject = raycastervr.intersectObject( floors[i]);
|
||||
// console.log(rayObject);
|
||||
// if(rayObject.length>0){
|
||||
// return rayObject;
|
||||
// }
|
||||
@ -307,6 +315,7 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
|
||||
if ( intersections) {
|
||||
|
||||
var intersection = intersections[ 0 ];
|
||||
// console.log(intersection);
|
||||
var object = intersection.object;
|
||||
circle.position.set( intersection.point.x, intersection.point.y+0.2, intersection.point.z );
|
||||
}
|
||||
@ -385,8 +394,13 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
|
||||
let animateStage = "0";
|
||||
function updateControlModel(){
|
||||
if(controlMoveSwitch == true){
|
||||
console.log(nowControlModel.name);
|
||||
console.log(TrainRescueStatic.animatemodel.action.time);
|
||||
// console.log(nowControlModel);
|
||||
// console.log(TrainRescueStatic.handR.mesh);
|
||||
let originPoint = new THREE.Vector3(nowControlModel.matrixWorld.elements[12],nowControlModel.matrixWorld.elements[13],nowControlModel.matrixWorld.elements[14]);
|
||||
let overPoint = new THREE.Vector3(TrainRescueStatic.handR.mesh.matrixWorld.elements[12],TrainRescueStatic.handR.mesh.matrixWorld.elements[13],TrainRescueStatic.handR.mesh.matrixWorld.elements[14]);
|
||||
// console.log(originPoint);
|
||||
// rad *= ( endNorm.cross( startNorm ).dot( eye ) < 0 ? 1 : -1);
|
||||
if(nowControlModel.name == "5"){
|
||||
|
||||
@ -394,6 +408,7 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
|
||||
let v2 = new THREE.Vector3(overPoint.z-originPoint.z,overPoint.y-originPoint.y,overPoint.x-originPoint.x);
|
||||
|
||||
let rad = v1.angleTo(v2);
|
||||
console.log(rad);
|
||||
if(rad>0.725 && rad<2.37){
|
||||
if(TrainRescueStatic.animatemodel.action.time >= 7.8 && TrainRescueStatic.animatemodel.action.time <20){
|
||||
animateStage = "3";
|
||||
@ -495,6 +510,7 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
|
||||
let rad = v1.angleTo(v2);
|
||||
if(rad>0.546 && rad<2.4){
|
||||
if(TrainRescueStatic.animatemodel.action.time>=2.6 && TrainRescueStatic.animatemodel.action.time<5.2){
|
||||
console.log(animateStage);
|
||||
animateStage = "1";
|
||||
if(rad>1.3){
|
||||
if(controlStage == false){
|
||||
@ -588,6 +604,7 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
|
||||
textplane.position.x = 0;
|
||||
textplane.position.y = 1.55;
|
||||
textplane.position.z = 0.01;
|
||||
// console.log(textplane.position);
|
||||
// textplane.tcode = data[i].code;
|
||||
// textplane.rotation.y = -Math.PI/2;
|
||||
// scope.textlist.push(textplane);
|
||||
@ -620,6 +637,7 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
|
||||
ctx.textAlign = 'center';
|
||||
ctx.textBaseline = 'middle';
|
||||
ctx.clearRect(0,0,256,128);
|
||||
//console.log(text.groupNumber);
|
||||
ctx.drawImage(beauty,0,0,256, 128);
|
||||
ctx.fillText("新的设备故障", 110,30);
|
||||
ctx.fillText(text.name, 110,65);
|
||||
|
@ -200,6 +200,7 @@ export function JLmap3dMaintainer(dom, data,skinCode,storemod,routegroup,project
|
||||
|
||||
|
||||
if(camerarail.moveswitch == true){
|
||||
// console.log(camerarail.progress);
|
||||
if(camerarail.progress>=0.99){
|
||||
camerarail.moveswitch = false;
|
||||
camerarail.curve = null;
|
||||
@ -221,6 +222,7 @@ export function JLmap3dMaintainer(dom, data,skinCode,storemod,routegroup,project
|
||||
delta = clock.getDelta();
|
||||
for(let i=scope.mixers.length-1;i>=0;i--){
|
||||
if(scope.mixers[i]._actions[0].isRunning()){
|
||||
// console.log(scope.mixers[i]._actions[0].isRunning());
|
||||
scope.mixers[i].update( delta );
|
||||
}
|
||||
}
|
||||
@ -247,6 +249,7 @@ export function JLmap3dMaintainer(dom, data,skinCode,storemod,routegroup,project
|
||||
scope.mixers = null;
|
||||
scope.actions = null;
|
||||
scope.Subscribe = null;
|
||||
//console.log(scope);
|
||||
//scope = null;
|
||||
}
|
||||
|
||||
@ -317,6 +320,7 @@ export function JLmap3dMaintainer(dom, data,skinCode,storemod,routegroup,project
|
||||
};
|
||||
|
||||
this.eventoff = function(){
|
||||
//console.log("off");
|
||||
//raycaster交互模型点击事件
|
||||
document.getElementById("testjlmap3d").removeEventListener( "mousedown", onselect, false );
|
||||
//窗口自适应
|
||||
@ -324,6 +328,7 @@ export function JLmap3dMaintainer(dom, data,skinCode,storemod,routegroup,project
|
||||
};
|
||||
|
||||
this.updatecamera = function(mesh,type){
|
||||
//console.log(mesh);
|
||||
if(type == "station"){
|
||||
camera.position.x = mesh.position.x;
|
||||
camera.position.y = mesh.position.y+800;
|
||||
@ -393,9 +398,13 @@ export function JLmap3dMaintainer(dom, data,skinCode,storemod,routegroup,project
|
||||
if(intersects[0]){
|
||||
for(let j=0;j<trainlisttest.list.length;j++){
|
||||
if(intersects[0].object.name == trainlisttest.list[j].name){
|
||||
// console.log(trainlisttest.list[j].position.x);
|
||||
// console.log(trainlisttest.list[j].position.y);
|
||||
// console.log(trainlisttest.list[j].children[2].matrixWorld.elements[14]);
|
||||
camera.position.x = trainlisttest.list[j].position.x;
|
||||
camera.position.y = 200;
|
||||
camera.position.z = trainlisttest.list[j].children[2].matrixWorld.elements[14]+300;
|
||||
//console.log(camera.position);
|
||||
controls.target = new THREE.Vector3(trainlisttest.list[j].children[2].matrixWorld.elements[12],trainlisttest.list[j].children[2].matrixWorld.elements[13],trainlisttest.list[j].children[2].matrixWorld.elements[14]);
|
||||
controls.update();
|
||||
}
|
||||
@ -405,8 +414,10 @@ export function JLmap3dMaintainer(dom, data,skinCode,storemod,routegroup,project
|
||||
|
||||
if(scope.raycasterswitch == "section"){
|
||||
|
||||
//console.log(sectionlist.sections.modellist);
|
||||
let intersects = raycaster.intersectObjects( linklist.linksgroup.children,true);
|
||||
if(intersects[0]){
|
||||
// console.log(intersects[0].object);
|
||||
scope.helpbox = new THREE.BoxHelper( intersects[0].object, 0xff0000 );
|
||||
scene.add( scope.helpbox );
|
||||
}
|
||||
@ -416,6 +427,7 @@ export function JLmap3dMaintainer(dom, data,skinCode,storemod,routegroup,project
|
||||
let intersects = raycaster.intersectObjects( signallist.group.children,true);
|
||||
|
||||
if(intersects[0]){
|
||||
// console.log(intersects[0].object.matrixWorld);
|
||||
scope.helpbox = new THREE.BoxHelper( intersects[0].object, 0xff0000 );
|
||||
scene.add( scope.helpbox );
|
||||
}
|
||||
|
@ -55,7 +55,13 @@ export function Maintainerconnect(jlmap3d,routegroup,jsonwebwork,lablecodemap) {
|
||||
|
||||
|
||||
|
||||
// if(event.data.deviceType == "TRAIN"){
|
||||
// // console.log(event.data);
|
||||
//
|
||||
// }
|
||||
// console.log(event.data);
|
||||
if(event.data.type == "Device_Fault_Set_3D"){
|
||||
// console.log(event.data);
|
||||
let newfault = {
|
||||
code:event.data.body.code,
|
||||
name:'',
|
||||
@ -234,16 +240,19 @@ export function Maintainerconnect(jlmap3d,routegroup,jsonwebwork,lablecodemap) {
|
||||
// if(event.data.type == 'TrainRun_3D'){
|
||||
//
|
||||
// for(let i=0,leni=event.data.body.length;i<leni;i++){
|
||||
// // console.log(event.data.body[i]);
|
||||
// trainrunnew(event.data.body[i]);
|
||||
// }
|
||||
// return;
|
||||
// }
|
||||
|
||||
// if(event.data.type == 'TRAIN'){
|
||||
// console.log(event.data);
|
||||
// trainrun(event.data);
|
||||
// }
|
||||
// if (event.data.type== 'SIGNAL' && signallist) {
|
||||
// signalupdate(event.data);
|
||||
// // console.log(event.data);
|
||||
// return;
|
||||
// }
|
||||
//
|
||||
@ -288,6 +297,7 @@ export function Maintainerconnect(jlmap3d,routegroup,jsonwebwork,lablecodemap) {
|
||||
|
||||
this.socketon = function(topic) {
|
||||
try {
|
||||
// console.log("teststomp");
|
||||
// scope.teststomp.subscribe(topic, callback, header);
|
||||
} catch (error) {
|
||||
console.error('websocket订阅失败');
|
||||
@ -338,6 +348,7 @@ export function Maintainerconnect(jlmap3d,routegroup,jsonwebwork,lablecodemap) {
|
||||
}
|
||||
}
|
||||
|
||||
// console.log(data);
|
||||
|
||||
if(trainlisttest.list[code].dispose == "0"){
|
||||
if (data.right == '1') { // 向右
|
||||
@ -387,6 +398,7 @@ export function Maintainerconnect(jlmap3d,routegroup,jsonwebwork,lablecodemap) {
|
||||
}
|
||||
if(trainlisttest.list[code].children[1].rotalist.length > 0 || trainlisttest.list[code].children[2].rotalist.length > 0 || trainlisttest.list[code].children[3].rotalist.length > 0 || trainlisttest.list[code].children[4].rotalist.length > 0|| trainlisttest.list[code].children[5].rotalist.length > 0){
|
||||
for(let rs = 1;rs<6;rs++){
|
||||
//console.log(rs);
|
||||
if(trainlisttest.list[code].children[rs].rotalist[0]){
|
||||
let offsetz = parseFloat(trainlisttest.list[code].children[rs].rotalist[0].posr.z) - parseFloat(trainlisttest.list[code].children[rs].matrixWorld.elements[14]);
|
||||
|
||||
@ -394,6 +406,11 @@ export function Maintainerconnect(jlmap3d,routegroup,jsonwebwork,lablecodemap) {
|
||||
|
||||
for(let xh=0;xh<trainlisttest.list[code].children[rs].rotalist.length;xh++){
|
||||
if((trainlisttest.list[code].children[rs].matrixWorld.elements[12])>=trainlisttest.list[code].children[rs].rotalist[0].posr.x){
|
||||
// if(trainlisttest.list[code].groupNumber == "005"){
|
||||
// console.log("rs:"+rs);
|
||||
// console.log(trainlisttest.list[code].children[rs].matrixWorld.elements[12]);
|
||||
// console.log(trainlisttest.list[code].children[rs].rotalist[0].posr.x);
|
||||
// }
|
||||
if(rs != 5){
|
||||
let asd = trainlisttest.list[code].children[rs].rotalist[0];
|
||||
trainlisttest.list[code].children[rs+1].rotalist.push(asd);
|
||||
@ -407,6 +424,7 @@ export function Maintainerconnect(jlmap3d,routegroup,jsonwebwork,lablecodemap) {
|
||||
xh = trainlisttest.list[code].children[rs].rotalist.length;
|
||||
}
|
||||
}
|
||||
//console.log(trainlisttest.list[code].children[rs].rotalist.length);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -463,6 +481,7 @@ export function Maintainerconnect(jlmap3d,routegroup,jsonwebwork,lablecodemap) {
|
||||
if(trainlisttest.list[code].children[1].rotalist.length > 0 || trainlisttest.list[code].children[2].rotalist.length > 0 || trainlisttest.list[code].children[3].rotalist.length > 0 || trainlisttest.list[code].children[4].rotalist.length > 0|| trainlisttest.list[code].children[5].rotalist.length > 0){
|
||||
|
||||
for(let rs = 1;rs<6;rs++){
|
||||
//console.log(rs);
|
||||
if(trainlisttest.list[code].children[rs].rotalist[0]){
|
||||
|
||||
let offsetz = parseFloat(trainlisttest.list[code].children[rs].rotalist[0].posr.z) + parseFloat(trainlisttest.list[code].children[rs].position.z);
|
||||
@ -485,11 +504,13 @@ export function Maintainerconnect(jlmap3d,routegroup,jsonwebwork,lablecodemap) {
|
||||
xh = trainlisttest.list[code].children[rs].rotalist.length;
|
||||
}
|
||||
}
|
||||
//console.log(trainlisttest.list[code].children[rs].rotalist.length);
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
// console.log(trainlisttest.list[code].rotalist);
|
||||
}
|
||||
|
||||
}
|
||||
@ -502,6 +523,7 @@ export function Maintainerconnect(jlmap3d,routegroup,jsonwebwork,lablecodemap) {
|
||||
}
|
||||
function trainrun(data){
|
||||
let code = data.code;
|
||||
// console.log(data);
|
||||
if(trainlisttest.list[code].dispose == "0"){
|
||||
if(trainlisttest.list[code].curve == null){
|
||||
if (data.right == '1') { // 向右
|
||||
|
@ -135,6 +135,7 @@ export function MaintainerLoad(data,scope,netdata,mapdata,camera,controls,scene)
|
||||
// if(scope.assetloader.modellist[mn].name && scope.assetloader.modellist[mn].name == "suidao"){
|
||||
// // scope.assetloader.modellist[mn].mesh.rotation.x = Math.PI/2;
|
||||
// // scope.assetloader.modellist[mn].mesh.position.y -=0.1;
|
||||
// // console.log(scope.assetloader.modellist[mn].mesh);
|
||||
// scene.add(scope.assetloader.modellist[mn].mesh);
|
||||
// }
|
||||
// }
|
||||
@ -154,6 +155,7 @@ export function MaintainerLoad(data,scope,netdata,mapdata,camera,controls,scene)
|
||||
if ( xhr.lengthComputable ) {
|
||||
|
||||
let percentComplete = xhr.loaded / xhr.total * 100;
|
||||
//console.log( 'model ' + Math.round( percentComplete, 2 ) + '% downloaded' );
|
||||
|
||||
}
|
||||
|
||||
|
@ -76,6 +76,7 @@ export function PassflowConnect(deviceaction, toptrain, downtrain, routegroup, p
|
||||
|
||||
}
|
||||
if (downtrain.nowcode == data.body.trainCode) {
|
||||
// console.log(data.body);
|
||||
if (data.body.command == 'G') {
|
||||
closetraindoor(downtrain, data.body.code, 'down');
|
||||
|
||||
|
@ -221,6 +221,7 @@ export function Jl3dpassflow(dom,skinCode,routegroup,viewMap) {
|
||||
passerAi.initPasser(humanlist,passerHuman);
|
||||
let updateaianimate = setInterval(
|
||||
function(){
|
||||
// console.log("?");
|
||||
if(aiswitch == 0){
|
||||
passerHuman.moveAnimateUpdate(humanlist,olddataai,passerHuman);
|
||||
passerAi.aiUpdate(humanlist,passerHuman,passerCheckDoor,deviceaction);
|
||||
@ -243,6 +244,7 @@ export function Jl3dpassflow(dom,skinCode,routegroup,viewMap) {
|
||||
|
||||
passerWebWork.onmessage = function (event) {
|
||||
if(aiswitch == 0){
|
||||
// console.log(humanlist.children.length);
|
||||
if(humanlist.children.length < 80){
|
||||
let direct = Math.floor(Math.random()*(3-1+1))+1;
|
||||
//1--top
|
||||
|
@ -101,6 +101,7 @@ export function ModelManager(){
|
||||
Promise.all(initlist).then((result) => {
|
||||
resolve("success"); //['成功了', 'success']
|
||||
}).catch((error) => {
|
||||
//console.log(error);
|
||||
});
|
||||
|
||||
});
|
||||
|
@ -61,6 +61,7 @@ export function PasserHuman() {
|
||||
newhuman.speed = 0;
|
||||
newhuman.mixer = mixer;
|
||||
humanlist.add(newhuman);
|
||||
// console.log(humanlist.children.length);
|
||||
}
|
||||
//定义新模型走路动画
|
||||
this.initMoveAnimate = function(model,name,points,index){
|
||||
@ -72,6 +73,7 @@ export function PasserHuman() {
|
||||
// progress动画进度
|
||||
// enable当前动画开关
|
||||
// speed动画速度
|
||||
// console.log(curve);
|
||||
|
||||
model.action.play();
|
||||
model.progress = 0;
|
||||
@ -127,6 +129,7 @@ export function PasserHuman() {
|
||||
humanlist.children[i].stage = 2;
|
||||
|
||||
}else if(humanlist.children[i].stage == 0){
|
||||
// // console.log(humans[i].doors);
|
||||
// zhajiin[humanlist.children[i].doors].waiting = 0;
|
||||
humanlist.children[i].stage = 1;
|
||||
}
|
||||
@ -135,6 +138,9 @@ export function PasserHuman() {
|
||||
|
||||
}else{
|
||||
//根据动画进度获取动画轨迹上点
|
||||
// console.log(i);
|
||||
// console.log(humanlist.children[i].runrail);
|
||||
// console.log(humanlist.children[i].progress);
|
||||
let point = humanlist.children[i].runrail.getPointAt(humanlist.children[i].progress);
|
||||
|
||||
//更新模型坐标
|
||||
|
@ -87,6 +87,7 @@ export function PasserStation() {
|
||||
|
||||
} );
|
||||
scope.stationMesh = object;
|
||||
// console.log(deviceaction);
|
||||
scene.add(object);
|
||||
|
||||
}
|
||||
|
@ -188,8 +188,10 @@ export function ZoneManager() {
|
||||
}
|
||||
//获取区域范围内点
|
||||
this.getinitposition = function(name){
|
||||
// console.log(scope.list[name]);
|
||||
let randompoint = new THREE.Vector3(0,scope.list[name].randompoint.y,0);
|
||||
|
||||
// console.log(randompoint);
|
||||
if(name == "enter1"){
|
||||
randompoint.x = scope.list[name].randompoint.x + Math.random()*8;
|
||||
randompoint.z = scope.list[name].randompoint.z + Math.random()*8;
|
||||
|
@ -17,7 +17,9 @@ export function PasserAi(zone,finder) {
|
||||
let targetPosition = new THREE.Vector3();
|
||||
//生成下车出站人物
|
||||
this.passerout = function(direct){
|
||||
// console.log(direct);
|
||||
if(direct == "top"){
|
||||
// console.log("toppasser");
|
||||
scope.toppasseron = true;
|
||||
setTimeout(function(){
|
||||
scope.toppasseron = false
|
||||
@ -29,6 +31,7 @@ export function PasserAi(zone,finder) {
|
||||
}, 5000);
|
||||
}
|
||||
if(direct == "down"){
|
||||
// console.log("downpasser");
|
||||
scope.downpasseron = true;
|
||||
setTimeout(function(){
|
||||
scope.downpasseron = false;
|
||||
@ -68,6 +71,7 @@ export function PasserAi(zone,finder) {
|
||||
//人物站台阶段更新
|
||||
this.aiUpdate = function(humanlist,passerHuman,passerCheckDoor,deviceaction){
|
||||
for(let i=0;i<humanlist.children.length;i++){
|
||||
// console.log(humans[i]);
|
||||
|
||||
if(humanlist.children[i].status == 0){
|
||||
//stage = 0 进入车站
|
||||
@ -83,6 +87,7 @@ export function PasserAi(zone,finder) {
|
||||
points.push(new THREE.Vector3(path[i].x,path[i].y,path[i].z));
|
||||
}
|
||||
passerHuman.initMoveAnimate(humanlist.children[i],i,points,i);
|
||||
// console.log(path);
|
||||
}
|
||||
|
||||
//stage = 1 前往进站闸机
|
||||
@ -115,6 +120,7 @@ export function PasserAi(zone,finder) {
|
||||
if(humanlist.children[i].stage == 3){
|
||||
|
||||
let direct = Math.floor(Math.random()*(2))+1;
|
||||
// console.log(direct);
|
||||
let points = [];
|
||||
points.push(new THREE.Vector3(humanlist.children[i].position.x,humanlist.children[i].position.y,humanlist.children[i].position.z));
|
||||
// points.push(new THREE.Vector3(11.81,9.8,13.11));
|
||||
@ -172,6 +178,7 @@ export function PasserAi(zone,finder) {
|
||||
}else{
|
||||
passerHuman.initMoveAnimate(humanlist.children[i],i,points,i);
|
||||
}
|
||||
// console.log(points);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -243,8 +243,11 @@ export function Moveanimate(main){
|
||||
// points.push(new THREE.Vector3(switchmodel.children[i].position.x,switchmodel.children[i].position.y,switchmodel.children[i].position.z));
|
||||
// scope.initanimate(switchmodel.children[i],switchmodel.name+"select1",points,true);
|
||||
let modelorderlist = [];
|
||||
// for(let i=0;i<switchmodel.children.length;i++){
|
||||
// }
|
||||
console.log(switchmodel);
|
||||
for(let i=0;i<switchmodel.children.length;i++){
|
||||
console.log(switchmodel.children[i].name);
|
||||
console.log(switchmodel.children[i]);
|
||||
}
|
||||
modelorderlist[switchmodel.animacode] = [
|
||||
{name:"SJ",pos:[-3.5,0,-1]},
|
||||
{name:"ZZJJG",pos:[0,9,0]},
|
||||
@ -272,12 +275,16 @@ export function Moveanimate(main){
|
||||
|
||||
scope.animatelist[switchmodel.animacode+"on"] = [];
|
||||
scope.animatelist[switchmodel.animacode+"off"] = [];
|
||||
console.log("==========");
|
||||
for(let i=0,leni=modelorderlist[switchmodel.animacode].length;i<leni;i++){
|
||||
|
||||
let orderdata = modelorderlist[switchmodel.animacode];
|
||||
|
||||
console.log(switchmodel.animacode);
|
||||
console.log(orderdata[i].name);
|
||||
let modelon = switchmodel.getObjectByName(orderdata[i].name);
|
||||
// modelon.helpbox = undefined;
|
||||
console.log(modelon);
|
||||
let pointson = [];
|
||||
pointson.push(new THREE.Vector3(modelon.position.x,modelon.position.y,modelon.position.z));
|
||||
pointson.push(new THREE.Vector3(modelon.position.x+orderdata[i].pos[0],modelon.position.y+orderdata[i].pos[1],modelon.position.z+orderdata[i].pos[2]));
|
||||
@ -394,6 +401,7 @@ export function Moveanimate(main){
|
||||
}
|
||||
|
||||
}else{
|
||||
// console.log(scope.animatelist[k].connectmodel);
|
||||
if(scope.nowmodelname != scope.playlist[scope.playorder][i].connectmodel.name){
|
||||
scope.nowmodelname = scope.playlist[scope.playorder][i].connectmodel.name;
|
||||
main.animationmsgshowon(scope.playlist[scope.playorder][i].connectmodel);
|
||||
|
@ -232,6 +232,9 @@ export function Textconfig(){
|
||||
part.msg = "用于机内外电缆连接,方便更换转辙机。";
|
||||
selectmodel.children[i].text = "二十位插接件";
|
||||
}
|
||||
// if(part.text == null){
|
||||
// console.log(selectmodel.children[i].name);
|
||||
// }
|
||||
if(part.text){
|
||||
scope.devicelist.push(part);
|
||||
}
|
||||
|
@ -125,6 +125,7 @@ export function Jl3ddeviceNew(dom,group,token,skinCode) {
|
||||
stationList.push(mapnetdata.stationList[i]);
|
||||
}
|
||||
}
|
||||
// console.log(mapnetdata.stationList);
|
||||
|
||||
});
|
||||
|
||||
@ -148,6 +149,7 @@ export function Jl3ddeviceNew(dom,group,token,skinCode) {
|
||||
function callback(Response) {
|
||||
|
||||
let data = JSON.parse(Response.body);
|
||||
console.log(data);
|
||||
|
||||
if(data.srSignal){
|
||||
if(data.srSignal[0] == scope.nowcode){
|
||||
@ -225,6 +227,7 @@ export function Jl3ddeviceNew(dom,group,token,skinCode) {
|
||||
for (let i = 0; i < scope.mixers.length; i++) {
|
||||
if (scope.mixers[i]) {
|
||||
if( scope.mixers[i].staticType){
|
||||
// console.log(scope.mixers[i].time);
|
||||
if(scope.mixers[i]._actions[0].time<stopTime){
|
||||
scope.mixers[i].update(delta);
|
||||
}else{
|
||||
@ -396,6 +399,8 @@ export function Jl3ddeviceNew(dom,group,token,skinCode) {
|
||||
let switchActionMode = true;
|
||||
this.changeAnimate = function(type){
|
||||
|
||||
// console.log(scope.modelmanager.staticswitchmodel);
|
||||
|
||||
// scope.modelmanager.staticswitchmodel.action["2kai"].reset();
|
||||
// scope.modelmanager.staticswitchmodel.action["5jiasuo"].reset();
|
||||
// scope.modelmanager.staticswitchmodel.action["8shunyao"].reset();
|
||||
@ -419,6 +424,8 @@ export function Jl3ddeviceNew(dom,group,token,skinCode) {
|
||||
scope.modelmanager.staticswitchmodel.action.time = 0;
|
||||
stopTime = 3.33;
|
||||
scope.modelmanager.staticswitchmodel.action.play();
|
||||
|
||||
console.log(scope.mixers);
|
||||
}
|
||||
if(type == "action2"){
|
||||
scope.camera.position.x = -7.23;
|
||||
@ -482,6 +489,8 @@ export function Jl3ddeviceNew(dom,group,token,skinCode) {
|
||||
scope.camera.position.y = 22.56;
|
||||
scope.camera.position.z = -1.348;
|
||||
scope.controls.target = new THREE.Vector3(-2.15,10,-1.348);
|
||||
// console.log(scope.camera.position);
|
||||
// console.log(scope.controls.target);
|
||||
scope.modelmanager.staticswitchmodel.action.reset();
|
||||
scope.modelmanager.staticswitchmodel.action.time = 23.36;
|
||||
stopTime = 26.66;
|
||||
@ -856,6 +865,10 @@ export function Jl3ddeviceNew(dom,group,token,skinCode) {
|
||||
}
|
||||
}
|
||||
|
||||
if (data._type == "Signal") {
|
||||
console.log(data);
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@ -139,6 +139,7 @@ export function ModelManager(){
|
||||
Promise.all(initlist).then((result) => {
|
||||
resolve("success"); //['成功了', 'success']
|
||||
}).catch((error) => {
|
||||
//console.log(error);
|
||||
});
|
||||
|
||||
});
|
||||
|
@ -199,6 +199,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
|
||||
getPublishMapDetail(mapId).then(data => {
|
||||
let mapnetdata = data.data;
|
||||
getPublish3dMapDetail(mapId).then(netdata => {
|
||||
// console.log(netdata);
|
||||
let assetsdata = JSON.parse(netdata.data.sections);
|
||||
|
||||
scope.datatype = "new";
|
||||
@ -313,6 +314,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
|
||||
// };
|
||||
|
||||
updatemmi.updatedrivingcode = function(code) {
|
||||
// console.log(trainlisttest);
|
||||
drivingcode = code;
|
||||
trainlisttest.group.children[0].children[0].add(controls3.getObject());
|
||||
controls3.getObject().position.x = 10;
|
||||
@ -423,6 +425,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
|
||||
realsectionlist = loadrealsectionlist;
|
||||
rails = loadrails;
|
||||
|
||||
console.log(trainlisttest.group);
|
||||
trainlisttest.group.children[0].add(cameracctv);
|
||||
}
|
||||
|
||||
@ -437,6 +440,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
|
||||
};
|
||||
|
||||
this.eventoff = function() {
|
||||
// console.log("off");
|
||||
// raycaster交互模型点击事件
|
||||
document.getElementById('jlsimulation').removeEventListener( 'mousedown', onselect, false );
|
||||
// 窗口自适应
|
||||
@ -455,6 +459,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
|
||||
camera.position.z = mesh.children[0].position.z;
|
||||
// controls.target = new THREE.Vector3(mesh.position.x,0,mesh.children[0].position.z);
|
||||
}
|
||||
// console.log(mesh);
|
||||
if (type == 'station') {
|
||||
camera.position.x = mesh.position.x;
|
||||
camera.position.y = mesh.position.y+800;
|
||||
@ -527,6 +532,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
|
||||
}
|
||||
|
||||
if (scope.raycasterswitch == 'section') {
|
||||
// console.log(sectionlist.sections.modellist);
|
||||
let intersects = raycaster.intersectObjects( sectionlist.sections.modellist, true);
|
||||
if (intersects[0]) {
|
||||
|
||||
|
@ -115,6 +115,7 @@ export function AssetLoader(){
|
||||
|
||||
resolve("loaderassets"); //['成功了', 'success']
|
||||
}).catch((error) => {
|
||||
//console.log(error);
|
||||
});
|
||||
|
||||
});
|
||||
@ -134,6 +135,7 @@ export function AssetLoader(){
|
||||
|
||||
resolve("loaderassets"); //['成功了', 'success']
|
||||
}).catch((error) => {
|
||||
//console.log(error);
|
||||
});
|
||||
|
||||
});
|
||||
@ -168,30 +170,45 @@ export function AssetLoader(){
|
||||
|
||||
fbxpromise(signal)
|
||||
.then(function(data){
|
||||
////console.log(data);
|
||||
// console.log("test");
|
||||
return fbxpromise(train);
|
||||
})
|
||||
.then(function(data){
|
||||
////console.log(data);
|
||||
// console.log("test");
|
||||
return fbxpromise(station);
|
||||
})
|
||||
.then(function(data){
|
||||
////console.log(data);
|
||||
// console.log("test");
|
||||
return fbxpromise(wstation);
|
||||
})
|
||||
// .then(function(data){
|
||||
// ////console.log(data);
|
||||
// return fbxpromise(autorail);
|
||||
// })
|
||||
// .then(function(data){
|
||||
// ////console.log(data);
|
||||
// return fbxpromise(autosuidao);
|
||||
// })
|
||||
.then(function(data){
|
||||
////console.log(data);
|
||||
// console.log("defaultswitch1");
|
||||
return fbxpromise(defaultswitch1);
|
||||
})
|
||||
.then(function(data){
|
||||
// console.log("defaultswitch2");
|
||||
////console.log(data);
|
||||
return fbxpromise(defaultswitch2);
|
||||
})
|
||||
.then(function(data){
|
||||
////console.log(data);
|
||||
// console.log("autoswitchs");
|
||||
return fbxpromise(autoswitchs);
|
||||
})
|
||||
.then(function(data){
|
||||
////console.log(scope.modellist);
|
||||
resolve("loaderassets");
|
||||
});
|
||||
});
|
||||
@ -211,6 +228,7 @@ export function AssetLoader(){
|
||||
let newmesh = object;
|
||||
|
||||
//let mixer = new THREE.AnimationMixer( newmesh );
|
||||
////console.log(jlmap3ddata.sectionlist);
|
||||
for(let i=0;i<newmesh.children.length;i++){
|
||||
|
||||
let name = newmesh.children[i].name.split("_");
|
||||
@ -296,6 +314,7 @@ export function AssetLoader(){
|
||||
|
||||
scene.add(newmesh);
|
||||
loadingInstance.close();
|
||||
//console.log("add");
|
||||
} );
|
||||
|
||||
}
|
||||
@ -395,6 +414,7 @@ export function AssetLoader(){
|
||||
function fbxPromiseOver(asset){
|
||||
return new Promise(function(resolve, reject){
|
||||
var loader = new THREE.FBXLoader();
|
||||
console.log(asset);
|
||||
if(asset.type == "static"){
|
||||
loader.load(asset.url, function ( object ) {
|
||||
let mixer = new THREE.AnimationMixer( object );
|
||||
|
@ -15,6 +15,10 @@ import { Loading } from 'element-ui';
|
||||
// import {SwitchModel} from '@/jlmap3d/model/SwitchModel.js';
|
||||
|
||||
export function DriverLoadNew(data,scope,netdata,mapdata,sectionlist,signallist,switchlist,stationstandlist,trainlisttest,rails,camera,controls,scene,mixerss){
|
||||
//console.log(mapdata);
|
||||
|
||||
//console.log(data);
|
||||
//console.log(scope);
|
||||
let sceneload = scene;
|
||||
let backdata = scope;
|
||||
let assetloader = scope.assetloader;
|
||||
@ -29,12 +33,15 @@ export function DriverLoadNew(data,scope,netdata,mapdata,sectionlist,signallist,
|
||||
let isNewdata = false;
|
||||
if(netdata.assets){
|
||||
let assetsdata = JSON.parse(netdata.sections);
|
||||
// console.log(assetsdata.link);
|
||||
if(assetsdata.link){
|
||||
isSection = true;
|
||||
}else{
|
||||
isNewdata = true;
|
||||
}
|
||||
}
|
||||
// console.log(isNewdata);
|
||||
// console.log(netdata);
|
||||
if(isNewdata == true){
|
||||
initnew3d(data,netdata);
|
||||
}else{
|
||||
@ -93,6 +100,9 @@ export function DriverLoadNew(data,scope,netdata,mapdata,sectionlist,signallist,
|
||||
return trainlisttest.drivertrain(mapdata.trainList,sceneload,assetloader,mixers,actions,"01");
|
||||
})
|
||||
// .then(function(data){
|
||||
// //console.log(data);
|
||||
// //console.log(assetloader);
|
||||
// console.log(stationstandlist);
|
||||
// return tdt.initTdt(stationstandlist.list,mapdata.sectionList,rails.sectionrail,sceneload);
|
||||
// })
|
||||
.then(function(data){
|
||||
|
@ -12,6 +12,8 @@ export function RailListN(){
|
||||
};
|
||||
// this.init = function(section,linklist,scene){
|
||||
this.init = function(section,sectionList,switchdata,scene){
|
||||
// console.log(section);
|
||||
// console.log(switchdata);
|
||||
for(let i=0;i<section.length;i++){
|
||||
scope.sectionrail[section[i].code] = {
|
||||
lp:section[i].lp,
|
||||
@ -174,6 +176,7 @@ export function RailListN(){
|
||||
// circle2.rotation.x = -Math.PI/2;
|
||||
// scene.add( circle1 );
|
||||
// scene.add( circle2 );
|
||||
// console.log(scope.sectionrail[section[i].code]);
|
||||
}else{
|
||||
scope.sectionrail[section[i].code].standTrack = false;
|
||||
}
|
||||
@ -183,6 +186,8 @@ export function RailListN(){
|
||||
// var geometry = new THREE.CircleGeometry( 0.05, 16 );
|
||||
// var material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
|
||||
// var circle = new THREE.Mesh( geometry, material );
|
||||
// // console.log(n);
|
||||
// // console.log(scope.sectionrail[section[i].code].lineleft.points[n]);
|
||||
// circle.position.x = scope.sectionrail[section[i].code].lineleft.points[n].x;
|
||||
// circle.position.y = scope.sectionrail[section[i].code].lineleft.points[n].y;
|
||||
// circle.position.z = scope.sectionrail[section[i].code].lineleft.points[n].z;
|
||||
@ -240,6 +245,8 @@ export function RailListN(){
|
||||
// var geometry = new THREE.CircleGeometry( 0.05, 16 );
|
||||
// var material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
|
||||
// var circle = new THREE.Mesh( geometry, material );
|
||||
// // console.log(n);
|
||||
// // console.log(scope.sectionrail[section[i].code].lineleft.points[n]);
|
||||
// circle.position.x = scope.sectionrail[sectioncode].lineleft.points[n].x;
|
||||
// circle.position.y = scope.sectionrail[sectioncode].lineleft.points[n].y;
|
||||
// circle.position.z = scope.sectionrail[sectioncode].lineleft.points[n].z;
|
||||
|
@ -49,6 +49,7 @@ this.loadpromise = function(sectionList,sectiondata,rails,scene,assetloader){
|
||||
// autorail.leftlist = leftlist;
|
||||
scene.add(scope.sectiongroup);
|
||||
return new Promise(function(resolve, reject){
|
||||
// console.log(sectiondata);
|
||||
let mergegeometry = new THREE.Geometry();
|
||||
for(let i=0,leni = sectiondata.length;i<leni;i++){
|
||||
|
||||
@ -100,6 +101,7 @@ this.loadpromise = function(sectionList,sectiondata,rails,scene,assetloader){
|
||||
// testmesh2 = null;
|
||||
|
||||
if(newsection.railpoint.length>=3){
|
||||
// console.log(newsection);
|
||||
let height = Math.random()/1000;
|
||||
var closedSpline;
|
||||
|
||||
|
@ -37,6 +37,7 @@ export function SignalListN() {
|
||||
for(let j=0,lenj = data.length;j<lenj;j++){
|
||||
if(data[j].code == signaldata[i].code){
|
||||
if(data[j].virtual == false){
|
||||
// console.log(signaldata[i]);
|
||||
let newsignal = new SignalModel(signaldata[i]);
|
||||
let newmesh;
|
||||
if(data[j].type == "ARRIVAL"){
|
||||
|
@ -135,12 +135,14 @@ export function StationStandListN() {
|
||||
}
|
||||
this.loadpromise = function(stationdata,standsdata,psddata,scene,assetloader,mixers,actionss,mode,otherStation){
|
||||
return new Promise(function(resolve, reject){
|
||||
// console.log(standsdata);
|
||||
let stations = stationdata;
|
||||
let selectmesh1;
|
||||
let selectmesh2;
|
||||
let selectmesh3;
|
||||
let specilmesh;
|
||||
for(let j=0;j<assetloader.modellist.length;j++){
|
||||
// console.log(assetloader.modellist[j].type);
|
||||
if(assetloader.modellist[j].type == "stationInside"){
|
||||
selectmesh1 = assetloader.modellist[j].mesh;
|
||||
}
|
||||
@ -200,6 +202,7 @@ export function StationStandListN() {
|
||||
}
|
||||
//
|
||||
//
|
||||
// console.log(psddata);
|
||||
for(let i=0;i<standsdata.length;i++){
|
||||
|
||||
|
||||
@ -265,6 +268,8 @@ export function StationStandListN() {
|
||||
|
||||
newstationmesh.code = standsdata[i].code;
|
||||
newstationmesh.name = standsdata[i].code;
|
||||
// console.log(newstationmesh.name);
|
||||
// console.log(standsdata[i].inside);
|
||||
newstationmesh.inside = standsdata[i].inside;
|
||||
newstationmesh.position.x = standsdata[i].position.x;
|
||||
newstationmesh.position.y = standsdata[i].position.y;
|
||||
|
@ -17,6 +17,7 @@ export function SwitchListN() {
|
||||
return new Promise(function(resolve, reject){
|
||||
scene.add( scope.switchgroup );
|
||||
// let sectiondata = jlmap3ddata.sectionlist.sections.datalist;
|
||||
// console.log(sectiondata);
|
||||
let num;
|
||||
for(let j=0;j<assetloader.modellist.length;j++){
|
||||
if(assetloader.modellist[j].type == "switch"){
|
||||
@ -24,6 +25,7 @@ export function SwitchListN() {
|
||||
}
|
||||
};
|
||||
for(let i=0,leni = switchdata.length;i<leni;i++){
|
||||
// console.log(switchdata[i]);
|
||||
let newswitch = {
|
||||
code:switchdata[i].code,
|
||||
name:switchdata[i].name,
|
||||
@ -56,6 +58,7 @@ export function SwitchListN() {
|
||||
actions[autoswitch.code].action.clampWhenFinished = true;
|
||||
mixers.push(mixer);
|
||||
}
|
||||
// console.log(scope.switchs.modellist);
|
||||
resolve("loadedswitch");
|
||||
});
|
||||
|
||||
|
@ -17,6 +17,7 @@ export function TdtList() {
|
||||
stopSections[sectionData[i].code] = sectionData[i];
|
||||
}
|
||||
}
|
||||
// console.log(stationData);
|
||||
for(let k in stationData){
|
||||
for(let i=0;i<stationData[k].stands.length;i++){
|
||||
let newmesh = object.clone(true);
|
||||
@ -89,6 +90,7 @@ export function TdtList() {
|
||||
ctx.textAlign = 'center';
|
||||
ctx.textBaseline = 'middle';
|
||||
ctx.clearRect(0,0,128,64);
|
||||
//console.log(text.groupNumber);
|
||||
ctx.drawImage(beauty,0,0,128, 64);
|
||||
ctx.fillText(text, 64,32);
|
||||
return canvas;
|
||||
|
@ -60,6 +60,8 @@ export function TrainListN() {
|
||||
}
|
||||
|
||||
this.removeDriveTrain = function(removeLength){
|
||||
console.log(removeLength);
|
||||
|
||||
scope.group.remove(scope.otherTrainmodels[0]);
|
||||
scope.otherTrainmodels.splice(0,removeLength);
|
||||
}
|
||||
@ -67,6 +69,7 @@ export function TrainListN() {
|
||||
this.drivertrain = function(data,scene,assetloader,mixers,actionss,mode){
|
||||
|
||||
return new Promise(function(resolve, reject){
|
||||
// console.log(data);
|
||||
|
||||
let selectmesh,ntracks1,ntracks2,tclip,fclip;
|
||||
for(let n=assetloader.modellist.length-1;n>=0;n--){
|
||||
@ -102,12 +105,15 @@ export function TrainListN() {
|
||||
newmesh.mixer = [];
|
||||
|
||||
for(let j=0;j<newmesh.children.length;j++){
|
||||
// console.log("===================");
|
||||
for(let n=0,lenn = newmesh.children[j].children.length;n<lenn;n++){
|
||||
|
||||
if(newmesh.children[j].children[n].name == "top"){
|
||||
newmesh.children[j].children[n].animations = [];
|
||||
newmesh.children[j].children[n].animations.push(tclip.clone());
|
||||
let mixer = new THREE.AnimationMixer( newmesh.children[j].children[n] );
|
||||
// console.log(n);
|
||||
// console.log(newmesh.children[j].children[n]);
|
||||
newmesh.mixer.push(mixer);
|
||||
newmesh.mixerpush = false;
|
||||
|
||||
@ -145,6 +151,7 @@ export function TrainListN() {
|
||||
// pos.position.x = -73.5;
|
||||
// newmesh.children[j].add( pos );
|
||||
newmesh.children[j].rotalist = [];
|
||||
// console.log(newmesh);
|
||||
}
|
||||
|
||||
newmesh.first = false;
|
||||
@ -207,6 +214,7 @@ export function TrainListN() {
|
||||
} );
|
||||
|
||||
//遍历列车数据
|
||||
// console.log(data.length);
|
||||
for(let i=0;i<data.length;i++){
|
||||
|
||||
|
||||
@ -216,14 +224,19 @@ export function TrainListN() {
|
||||
};
|
||||
let newmesh = selectmesh.clone(true);
|
||||
newmesh.mixer = [];
|
||||
// console.log("-------------------------");
|
||||
// console.log(data[i]);
|
||||
for(let j=0;j<newmesh.children.length;j++){
|
||||
|
||||
// console.log("===================");
|
||||
for(let n=0,lenn = newmesh.children[j].children.length;n<lenn;n++){
|
||||
|
||||
if(newmesh.children[j].children[n].name == "top"){
|
||||
newmesh.children[j].children[n].animations = [];
|
||||
newmesh.children[j].children[n].animations.push(tclip.clone());
|
||||
let mixer = new THREE.AnimationMixer( newmesh.children[j].children[n] );
|
||||
// console.log(n);
|
||||
// console.log(newmesh.children[j].children[n]);
|
||||
newmesh.mixer.push(mixer);
|
||||
newmesh.mixerpush = false;
|
||||
// mixers.push(mixer);
|
||||
@ -261,6 +274,7 @@ export function TrainListN() {
|
||||
// pos.position.x = -73.5;
|
||||
// newmesh.children[j].add( pos );
|
||||
newmesh.children[j].rotalist = [];
|
||||
// console.log(newmesh);
|
||||
}
|
||||
|
||||
//
|
||||
@ -329,6 +343,7 @@ export function TrainListN() {
|
||||
scope.list[data[i].groupNumber] = newmesh;
|
||||
//scene.add(newmesh);
|
||||
}
|
||||
// console.log(selectmesh);
|
||||
// for(let i=0,leni=selectmesh.children.length;i<leni;i++){
|
||||
// selectmesh.children[i].geometry.dispose();
|
||||
// selectmesh.children[i].material.dispose();
|
||||
@ -346,6 +361,7 @@ let onProgress = function ( xhr ) {
|
||||
if ( xhr.lengthComputable ) {
|
||||
|
||||
let percentComplete = xhr.loaded / xhr.total * 100;
|
||||
console.log( Math.round( percentComplete, 2 ) + '% downloaded' );
|
||||
|
||||
}
|
||||
|
||||
@ -373,6 +389,7 @@ function getTextCanvas(text){
|
||||
ctx.textAlign = 'center';
|
||||
ctx.textBaseline = 'middle';
|
||||
ctx.clearRect(0,0,128,64);
|
||||
//console.log(text.groupNumber);
|
||||
ctx.drawImage(beauty,0,0,128, 64);
|
||||
ctx.fillText("车组号:"+text.groupNumber, 40,10);
|
||||
ctx.fillText("车组人员:XXX", 40,20);
|
||||
|
@ -38,6 +38,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,sta
|
||||
var datatype = '00';
|
||||
this.teststomp = new StompClient();
|
||||
// let toppic = '/app/topic/simulation/client/'+routegroup+'/drive';
|
||||
console.log(routegroup);
|
||||
this.topic = '/queue/simulation/'+routegroup+'/trainPosition';
|
||||
let allDeviceTopic = '/queue/simulation/'+routegroup+'/srDeviceState';
|
||||
let hmiTopic = '/queue/simulation/'+routegroup+'/train/001/Hmi';
|
||||
@ -51,6 +52,8 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,sta
|
||||
|
||||
//切换车辆修改列车属性
|
||||
this.updatamap = function(newsectionlist,newlinklist,newsignallist,newstationstandlist,newtrainlisttest,newrealsectionlist,newrails,newtdt, materiallist, nowaction, scene) {
|
||||
// console.log(mapdata);
|
||||
// console.log(newtrainlisttest);
|
||||
trainmodel = newtrainlisttest.group.children[0];
|
||||
trainlisttest = newtrainlisttest;
|
||||
sectionlist = newsectionlist;
|
||||
@ -99,6 +102,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,sta
|
||||
let initStatus = true;
|
||||
// 仿真socket接口回调函数
|
||||
function callback(Response) {
|
||||
// console.log(Response);
|
||||
// 对象化数据
|
||||
|
||||
let data = JSON.parse(Response.body);
|
||||
@ -127,6 +131,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,sta
|
||||
}
|
||||
// stats.update();
|
||||
// 遍历后台数据
|
||||
// console.log(data);
|
||||
|
||||
|
||||
}
|
||||
@ -223,6 +228,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,sta
|
||||
// if(updateTrainModel.children[1].rotalist.length > 0 || updateTrainModel.children[2].rotalist.length > 0 || updateTrainModel.children[3].rotalist.length > 0 || updateTrainModel.children[4].rotalist.length > 0|| updateTrainModel.children["black"].rotalist.length > 0){
|
||||
|
||||
for(let rs = 1;rs<updateTrainModel.children.length;rs++){
|
||||
//console.log(rs);
|
||||
if(updateTrainModel.children[rs].rotalist[0]){
|
||||
|
||||
let offsetz = parseFloat(updateTrainModel.children[rs].rotalist[0].posr.z) + parseFloat(updateTrainModel.children[rs].position.z);
|
||||
@ -245,11 +251,13 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,sta
|
||||
xh = updateTrainModel.children[rs].rotalist.length;
|
||||
}
|
||||
}
|
||||
//console.log(trainmodel.children[rs].rotalist.length);
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
// console.log(trainmodel.rotalist);
|
||||
// }
|
||||
|
||||
}else{
|
||||
@ -295,6 +303,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,sta
|
||||
|
||||
// if(updateTrainModel.children[1].rotalist.length > 0 || updateTrainModel.children[2].rotalist.length > 0 || updateTrainModel.children[3].rotalist.length > 0 || updateTrainModel.children[4].rotalist.length > 0|| updateTrainModel.children["black"].rotalist.length > 0){
|
||||
for(let rs = 1;rs<updateTrainModel.children.length;rs++){
|
||||
//console.log(rs);
|
||||
if(updateTrainModel.children[rs].rotalist[0]){
|
||||
let offsetz = parseFloat(updateTrainModel.children[rs].rotalist[0].posr.z) - parseFloat(updateTrainModel.children[rs].matrixWorld.elements[14]);
|
||||
|
||||
|
@ -4,9 +4,11 @@ export function UpdateTrain(camera,traindata,control){
|
||||
if(traindata != undefined && traindata.group.children[0]){//traindata.group.children[0].dispose == false
|
||||
|
||||
if(traindata.group.children[0].progress != null){
|
||||
// console.log(traindata.group);
|
||||
let trainmodel = traindata.group.children[0];
|
||||
if(trainmodel.speeds > 0 && trainmodel.speeds){
|
||||
let speed = null;
|
||||
// console.log(traindata.group.children[0].progress);
|
||||
if(traindata.group.children[0].progress >=0&&traindata.group.children[0].progress<=1){
|
||||
|
||||
let movecurve = trainmodel.curve;
|
||||
@ -42,6 +44,7 @@ export function UpdateTrain(camera,traindata,control){
|
||||
|
||||
if(trainmodel.children[1].rotalist.length > 0 || trainmodel.children[2].rotalist.length > 0 || trainmodel.children[3].rotalist.length > 0 || trainmodel.children[4].rotalist.length > 0|| trainmodel.children[5].rotalist.length > 0){
|
||||
for(let rs = 1;rs<6;rs++){
|
||||
//console.log(rs);
|
||||
if(trainmodel.children[rs].rotalist[0]){
|
||||
let offsetz = parseFloat(trainmodel.children[rs].matrixWorld.elements[14]) - parseFloat(trainmodel.children[rs].rotalist[0].posr.z);
|
||||
|
||||
@ -63,6 +66,7 @@ export function UpdateTrain(camera,traindata,control){
|
||||
xh = trainmodel.children[rs].rotalist.length;
|
||||
}
|
||||
}
|
||||
//console.log(trainmodel.children[rs].rotalist.length);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -99,6 +103,7 @@ export function UpdateTrain(camera,traindata,control){
|
||||
if(trainmodel.children[1].rotalist.length > 0 || trainmodel.children[2].rotalist.length > 0 || trainmodel.children[3].rotalist.length > 0 || trainmodel.children[4].rotalist.length > 0|| trainmodel.children[5].rotalist.length > 0){
|
||||
|
||||
for(let rs = 1;rs<6;rs++){
|
||||
//console.log(rs);
|
||||
if(trainmodel.children[rs].rotalist[0]){
|
||||
|
||||
let offsetz = parseFloat(trainmodel.children[rs].rotalist[0].posr.z) - parseFloat(trainmodel.children[rs].matrixWorld.elements[14]);
|
||||
@ -121,10 +126,13 @@ export function UpdateTrain(camera,traindata,control){
|
||||
xh = trainmodel.children[rs].rotalist.length;
|
||||
}
|
||||
}
|
||||
//console.log(trainmodel.children[rs].rotalist.length);
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
// console.log(trainmodel.rotalist);
|
||||
}
|
||||
trainmodel.progress += trainmodel.speeds;
|
||||
}
|
||||
@ -144,6 +152,9 @@ export function UpdateTrain(camera,traindata,control){
|
||||
trainmodel.nextcode = null;
|
||||
}
|
||||
|
||||
// console.log(trainmodel.name);
|
||||
// console.log(trainmodel.progress);
|
||||
// console.log(trainmodel.nextcurve);
|
||||
// if(trainmodel.status == "02"){
|
||||
// trainmodel.progress = 0;
|
||||
// }else if(trainmodel.status == "03"){
|
||||
@ -186,6 +197,7 @@ export function UpdateTrain(camera,traindata,control){
|
||||
|
||||
if(trainmodel.children[1].rotalist.length > 0 || trainmodel.children[2].rotalist.length > 0 || trainmodel.children[3].rotalist.length > 0 || trainmodel.children[4].rotalist.length > 0|| trainmodel.children[5].rotalist.length > 0){
|
||||
for(let rs = 1;rs<6;rs++){
|
||||
//console.log(rs);
|
||||
if(trainmodel.children[rs].rotalist[0]){
|
||||
let offsetz = parseFloat(trainmodel.children[rs].matrixWorld.elements[14]) - parseFloat(trainmodel.children[rs].rotalist[0].posr.z);
|
||||
|
||||
@ -207,6 +219,7 @@ export function UpdateTrain(camera,traindata,control){
|
||||
xh = trainmodel.children[rs].rotalist.length;
|
||||
}
|
||||
}
|
||||
//console.log(trainmodel.children[rs].rotalist.length);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -243,6 +256,7 @@ export function UpdateTrain(camera,traindata,control){
|
||||
if(trainmodel.children[1].rotalist.length > 0 || trainmodel.children[2].rotalist.length > 0 || trainmodel.children[3].rotalist.length > 0 || trainmodel.children[4].rotalist.length > 0|| trainmodel.children[5].rotalist.length > 0){
|
||||
|
||||
for(let rs = 1;rs<6;rs++){
|
||||
//console.log(rs);
|
||||
if(trainmodel.children[rs].rotalist[0]){
|
||||
|
||||
let offsetz = parseFloat(trainmodel.children[rs].rotalist[0].posr.z) - parseFloat(trainmodel.children[rs].matrixWorld.elements[14]);
|
||||
@ -265,12 +279,16 @@ export function UpdateTrain(camera,traindata,control){
|
||||
xh = trainmodel.children[rs].rotalist.length;
|
||||
}
|
||||
}
|
||||
//console.log(trainmodel.children[rs].rotalist.length);
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
// console.log(trainmodel.rotalist);
|
||||
}
|
||||
|
||||
// console.log(trainmodel.nextcurve);
|
||||
if(trainmodel.progress > -(trainmodel.speeds)){
|
||||
trainmodel.progress += trainmodel.speeds;
|
||||
}
|
||||
|
@ -55,9 +55,12 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
jsonwebwork.onmessage = function (event) {
|
||||
|
||||
|
||||
// console.log(event.data);
|
||||
// if(event.data.deviceType == "TRAIN"){
|
||||
// // console.log(event.data);
|
||||
//
|
||||
// }
|
||||
// console.log(event.data);
|
||||
if(event.data.type == "Device_Load_Destroy_3D"){
|
||||
DeviceDestroy(event.data);
|
||||
return;
|
||||
@ -66,16 +69,19 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
if(event.data.type == 'TrainRun_3D'){
|
||||
|
||||
for(let i=0,leni=event.data.body.length;i<leni;i++){
|
||||
// console.log(event.data.body[i]);
|
||||
trainRunNew(event.data.body[i]);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
// if(event.data.type == 'TRAIN'){
|
||||
// console.log(event.data);
|
||||
// trainrun(event.data);
|
||||
// }
|
||||
if (event.data.type== 'SIGNAL' && signallist) {
|
||||
signalupdate(event.data);
|
||||
// console.log(event.data);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -125,6 +131,7 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
|
||||
this.socketon = function(topic) {
|
||||
try {
|
||||
// console.log("teststomp");
|
||||
// scope.teststomp.subscribe(topic, callback, header);
|
||||
} catch (error) {
|
||||
console.error('websocket订阅失败');
|
||||
@ -159,9 +166,11 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
|
||||
function trainRunNew(data){
|
||||
let code = data.code;
|
||||
// console.log(rails.sectionrail[data.section],data.section,code,'--------')
|
||||
if(rails.sectionrail[data.section]){
|
||||
if(trainlisttest.list[code].right != data.right){
|
||||
if(data.right == "0"){
|
||||
console.log('right==0')
|
||||
trainlisttest.list[code].right = "0";
|
||||
trainlisttest.list[code].rotation.y = Math.PI;
|
||||
let point = rails.sectionrail[data.section].lineleft.getPointAt(data.offset);
|
||||
@ -203,6 +212,7 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
|
||||
}
|
||||
if(data.right == "1"){
|
||||
console.log('right==1')
|
||||
trainlisttest.list[code].right = "1";
|
||||
trainlisttest.list[code].rotation.y = 0;
|
||||
let point = rails.sectionrail[data.section].lineleft.getPointAt(data.offset);
|
||||
@ -242,7 +252,10 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
}
|
||||
}
|
||||
|
||||
// console.log(data);
|
||||
console.log(trainlisttest.list[code].dispose,'88888888');
|
||||
if(trainlisttest.list[code].dispose == "0") {
|
||||
console.log(trainlisttest.list[code].dispose,'-----------');
|
||||
if (data.right == '1') { // 向右
|
||||
trainlisttest.list[code].right = '1';
|
||||
trainlisttest.list[code].progress = data.offset;
|
||||
@ -297,6 +310,7 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
}
|
||||
// if(trainlisttest.list[code].children[1].rotalist.length > 0 || trainlisttest.list[code].children[2].rotalist.length > 0 || trainlisttest.list[code].children[3].rotalist.length > 0 || trainlisttest.list[code].children[4].rotalist.length > 0|| trainlisttest.list[code].children[5].rotalist.length > 0){
|
||||
for(let rs = 1;rs<trainlisttest.list[code].children.length;rs++){
|
||||
//console.log(rs);
|
||||
if(trainlisttest.list[code].children[rs].rotalist[0]){
|
||||
let offsetz = parseFloat(trainlisttest.list[code].children[rs].rotalist[0].posr.z) - parseFloat(trainlisttest.list[code].children[rs].matrixWorld.elements[14]);
|
||||
trainlisttest.list[code].children[rs].position.z += offsetz;
|
||||
@ -306,6 +320,9 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
for(let xh=0;xh<trainlisttest.list[code].children[rs].rotalist.length;xh++){
|
||||
if((trainlisttest.list[code].children[rs].matrixWorld.elements[12])>=trainlisttest.list[code].children[rs].rotalist[0].posr.x){
|
||||
// if(trainlisttest.list[code].groupNumber == "005"){
|
||||
// console.log("rs:"+rs);
|
||||
// console.log(trainlisttest.list[code].children[rs].matrixWorld.elements[12]);
|
||||
// console.log(trainlisttest.list[code].children[rs].rotalist[0].posr.x);
|
||||
// }
|
||||
if(rs != (trainlisttest.list[code].children.length-1)){
|
||||
let asd = trainlisttest.list[code].children[rs].rotalist[0];
|
||||
@ -321,6 +338,7 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
xh = trainlisttest.list[code].children[rs].rotalist.length;
|
||||
}
|
||||
}
|
||||
//console.log(trainlisttest.list[code].children[rs].rotalist.length);
|
||||
}
|
||||
}
|
||||
// }
|
||||
@ -384,6 +402,7 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
// if(trainlisttest.list[code].children[1].rotalist.length > 0 || trainlisttest.list[code].children[2].rotalist.length > 0 || trainlisttest.list[code].children[3].rotalist.length > 0 || trainlisttest.list[code].children[4].rotalist.length > 0|| trainlisttest.list[code].children[5].rotalist.length > 0){
|
||||
|
||||
for(let rs = 1;rs<trainlisttest.list[code].children.length;rs++){
|
||||
//console.log(rs);
|
||||
if(trainlisttest.list[code].children[rs].rotalist[0]){
|
||||
|
||||
let offsetz = parseFloat(trainlisttest.list[code].children[rs].rotalist[0].posr.z) + parseFloat(trainlisttest.list[code].children[rs].position.z);
|
||||
@ -407,23 +426,28 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
xh = trainlisttest.list[code].children[rs].rotalist.length;
|
||||
}
|
||||
}
|
||||
//console.log(trainlisttest.list[code].children[rs].rotalist.length);
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
// console.log(trainlisttest.list[code].rotalist);
|
||||
// }
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
console.log(code,trainlisttest.list[code].position.x,trainlisttest.list[code].position.y,trainlisttest.list[code].position.z, '666666')
|
||||
}else{
|
||||
// console.log(code,'trainlisttest.list[code].position.x = -1000000')
|
||||
trainlisttest.list[code].position.x = -1000000;
|
||||
}
|
||||
|
||||
}
|
||||
function trainrun(data){
|
||||
let code = data.code;
|
||||
// console.log(data);
|
||||
if(trainlisttest.list[code].dispose == "0"){
|
||||
if(trainlisttest.list[code].curve == null){
|
||||
if (data.right == '1') { // 向右
|
||||
|
@ -128,6 +128,7 @@ export function JLmap3d(dom, data,skinCode,storemod,routegroup,project) {
|
||||
}
|
||||
|
||||
weatherManager.update(controlManager.orbitCamera.position);
|
||||
// console.log(controlManager.orbitCamera.position);
|
||||
// stats.update();
|
||||
}
|
||||
|
||||
@ -146,12 +147,14 @@ export function JLmap3d(dom, data,skinCode,storemod,routegroup,project) {
|
||||
delta = clock.getDelta();
|
||||
for(let i=scope.mixers.length-1;i>=0;i--){
|
||||
if(scope.mixers[i]._actions[0].isRunning()){
|
||||
// console.log(scope.mixers[i]._actions[0].isRunning());
|
||||
scope.mixers[i].update( delta );
|
||||
}
|
||||
}
|
||||
|
||||
//开启车站漫游
|
||||
if(camerarail.moveswitch == true){
|
||||
// console.log(camerarail.progress);
|
||||
if(camerarail.progress>=0.99){
|
||||
camerarail.moveswitch = false;
|
||||
camerarail.curve = null;
|
||||
@ -190,6 +193,7 @@ export function JLmap3d(dom, data,skinCode,storemod,routegroup,project) {
|
||||
scope.mixers = null;
|
||||
scope.actions = null;
|
||||
scope.Subscribe = null;
|
||||
//console.log(scope);
|
||||
//scope = null;
|
||||
}
|
||||
|
||||
@ -220,6 +224,7 @@ export function JLmap3d(dom, data,skinCode,storemod,routegroup,project) {
|
||||
}
|
||||
};
|
||||
this.changeweather = function(weathertype){
|
||||
// console.log(weathertype);
|
||||
weatherManager.changeweather(weathertype);
|
||||
}
|
||||
//开启轨道镜头交互
|
||||
|