[前台] forge 突擊平面圖原點配合點位顏色
This commit is contained in:
parent
7a6b2068bd
commit
7169c33dc3
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
3927
Frontend/index.html
3927
Frontend/index.html
File diff suppressed because it is too large
Load Diff
@ -922,9 +922,9 @@ async function addHotPoint(data) {
|
|||||||
return;
|
return;
|
||||||
} else {
|
} else {
|
||||||
spriteColor = new THREE.Color(0xffffff);
|
spriteColor = new THREE.Color(0xffffff);
|
||||||
spriteIcon = "/file/img/forge/hotspot.svg";
|
spriteIcon = "/file/img/forge/sensor_circle.svg";
|
||||||
if (location.href.indexOf("localhost:5966") != -1) {
|
if (location.href.indexOf("localhost:5966") != -1) {
|
||||||
spriteIcon = "/img/forge/hotspot.svg";
|
spriteIcon = "/img/forge/sensor_circle.svg";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -973,7 +973,7 @@ async function addHotPoint(data) {
|
|||||||
// console.log(`Sprite clicked: ${event.dbId}`);
|
// console.log(`Sprite clicked: ${event.dbId}`);
|
||||||
|
|
||||||
for (let i = dbIdStart; i <= myDataList.length + 10; i++) {
|
for (let i = dbIdStart; i <= myDataList.length + 10; i++) {
|
||||||
!alarmDbIdList.some((dbId) => dbId == i) &&
|
!alarmDbIdList.some(({ spriteDbid }) => spriteDbid == i) &&
|
||||||
pageAct.sysSubTag !== "L1" &&
|
pageAct.sysSubTag !== "L1" &&
|
||||||
changeColorForHotspot(i);
|
changeColorForHotspot(i);
|
||||||
changeScaleForHotspot(i, true);
|
changeScaleForHotspot(i, true);
|
||||||
@ -990,7 +990,7 @@ async function addHotPoint(data) {
|
|||||||
}
|
}
|
||||||
$(selector).trigger("autodesk:click:sprite", { event, myData });
|
$(selector).trigger("autodesk:click:sprite", { event, myData });
|
||||||
} else {
|
} else {
|
||||||
!alarmDbIdList.some((dbId) => dbId == i) &&
|
!alarmDbIdList.some(({ spriteDbid }) => spriteDbid == event.dbId) &&
|
||||||
pageAct.sysSubTag !== "L1" &&
|
pageAct.sysSubTag !== "L1" &&
|
||||||
changeColorForHotspot(event.dbId, null);
|
changeColorForHotspot(event.dbId, null);
|
||||||
changeScaleForHotspot(event.dbId, false);
|
changeScaleForHotspot(event.dbId, false);
|
||||||
@ -1038,25 +1038,47 @@ async function addHotPoint(data) {
|
|||||||
//}
|
//}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//hex -> rgbsensor_circle
|
||||||
|
function hexToRgb(hex) {
|
||||||
|
return (
|
||||||
|
"rgb(" +
|
||||||
|
parseInt("0x" + hex.slice(1, 3)) +
|
||||||
|
"," +
|
||||||
|
parseInt("0x" + hex.slice(3, 5)) +
|
||||||
|
"," +
|
||||||
|
parseInt("0x" + hex.slice(5, 7)) +
|
||||||
|
")"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
// 熱點 更換顏色
|
// 熱點 更換顏色
|
||||||
async function changeColorForHotspot(dbId, type = null, lightOn = false) {
|
async function changeColorForHotspot(dbId, type = null, OnOff = false) {
|
||||||
const dataVizExtn = await viewer.loadExtension("Autodesk.DataVisualization");
|
const dataVizExtn = await viewer.loadExtension("Autodesk.DataVisualization");
|
||||||
let spriteColorFocus = new THREE.Color(0xffffff);
|
let spriteColorFocus = new THREE.Color(0xffffff);
|
||||||
if (pageAct.sysSubTag == "L1") {
|
|
||||||
spriteColorFocus = lightOn
|
spriteColorFocus = OnOff
|
||||||
? new THREE.Color(0xffd524)
|
? pageAct.sysSubObj.device_normal_color
|
||||||
: new THREE.Color(0x40525e);
|
? new THREE.Color(hexToRgb(pageAct.sysSubObj.device_normal_color))
|
||||||
if (lightOn) {
|
: new THREE.Color(0xffffff)
|
||||||
console.log(dbId);
|
: pageAct.sysSubObj.device_close_color
|
||||||
}
|
? new THREE.Color(hexToRgb(pageAct.sysSubObj.device_close_color))
|
||||||
} else if (type == "focus" && pageAct.sysSubTag !== "M12") {
|
: new THREE.Color(0xffffff);
|
||||||
|
|
||||||
|
if (type == "focus") {
|
||||||
spriteColorFocus = new THREE.Color(0x00ffe1);
|
spriteColorFocus = new THREE.Color(0x00ffe1);
|
||||||
} else if (type == "error") {
|
} else if (type == "error") {
|
||||||
spriteColorFocus = new THREE.Color(0xff0000);
|
spriteColorFocus = new THREE.Color(
|
||||||
|
hexToRgb(pageAct.sysSubObj.device_error_color)
|
||||||
|
);
|
||||||
|
spriteErrIcon = baseForgeApiUrl + "/file/img/forge/sensor_circle.svg";
|
||||||
|
if (location.href.indexOf("localhost:5966") != -1) {
|
||||||
|
spriteErrIcon = baseForgeApiUrl + "/img/forge/sensor_circle.svg";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
const viewablesToUpdate = dbId;
|
const viewablesToUpdate = dbId;
|
||||||
dataVizExtn.invalidateViewables(viewablesToUpdate, (viewable) => {
|
dataVizExtn.invalidateViewables(viewablesToUpdate, (viewable) => {
|
||||||
return {
|
return {
|
||||||
|
url: "/file/img/forge/sensor_circle.svg",
|
||||||
color: spriteColorFocus,
|
color: spriteColorFocus,
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
2153
Frontend/js/site.js
2153
Frontend/js/site.js
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user