[Backend] 取得房間資訊 , 更新至forge_room資料表
This commit is contained in:
parent
6ece49d36b
commit
4b89b14fac
@ -800,9 +800,6 @@ namespace Backend.Controllers
|
|||||||
device.Add("@forge_dbid", idfc.forge_dbid);
|
device.Add("@forge_dbid", idfc.forge_dbid);
|
||||||
await backendRepository.UpdateOneByCustomTable(device, "device", $@" device_number = '{idfc.device_number}'");
|
await backendRepository.UpdateOneByCustomTable(device, "device", $@" device_number = '{idfc.device_number}'");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
apiResult.Code = "0000";
|
apiResult.Code = "0000";
|
||||||
@ -823,5 +820,91 @@ namespace Backend.Controllers
|
|||||||
|
|
||||||
return apiResult;
|
return apiResult;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 更新forge_room room_id(dbid), room_name
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpPost]
|
||||||
|
public async Task<ApiResult<string>> ImportForgeRoom([FromBody] List<ImportForgeRoom> post)
|
||||||
|
{
|
||||||
|
ApiResult<string> apiResult = new ApiResult<string>();
|
||||||
|
//var device_guid_record = "";
|
||||||
|
try
|
||||||
|
{
|
||||||
|
if (post != null)
|
||||||
|
{
|
||||||
|
if (post.Count > 0)
|
||||||
|
{
|
||||||
|
//清空device_node資料表
|
||||||
|
await backendRepository.TruncateTable("forge_room");
|
||||||
|
|
||||||
|
foreach (var idfc in post)
|
||||||
|
{
|
||||||
|
// var room_name_arr = idfc.room_name.Split('_');
|
||||||
|
string full_name = idfc.room_name;
|
||||||
|
char first = full_name[0];
|
||||||
|
if (first != 'B' && first != 'R' && first != 'U')
|
||||||
|
{
|
||||||
|
full_name = 'U' + full_name;
|
||||||
|
}
|
||||||
|
|
||||||
|
//var param = new { floor_name = floor_name };
|
||||||
|
|
||||||
|
//房間 新增Data至forge_room資料表
|
||||||
|
Dictionary<string, object> room = new Dictionary<string, object>();
|
||||||
|
room.Add("@room_id", idfc.room_id);
|
||||||
|
room.Add("@deleted", 0);
|
||||||
|
room.Add("@room_name", full_name);
|
||||||
|
room.Add("@created_at", DateTime.Now);
|
||||||
|
|
||||||
|
await backendRepository.AddOneByCustomTableReturnId(room, "forge_room", false);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
//更新forge_room資料表 building_tag, floor_guid欄位
|
||||||
|
string sql = @"
|
||||||
|
update forge_room a
|
||||||
|
join (
|
||||||
|
select building_tag, floor_guid,
|
||||||
|
case when right(floor_name, 1) = 'F' then floor_name
|
||||||
|
else CONCAT(floor_name, 'F') end floor_name , priority
|
||||||
|
from (
|
||||||
|
SELECT
|
||||||
|
a.building_tag,
|
||||||
|
a.floor_guid, a.full_name,
|
||||||
|
case when left(a.full_name, 1) = 'B' then a.full_name
|
||||||
|
when left(a.full_name, 1) = 'R' then a.full_name
|
||||||
|
when left(a.full_name, 1) = 'U' then a.full_name
|
||||||
|
else CONCAT('U', a.full_name) end as floor_name,
|
||||||
|
a.priority
|
||||||
|
FROM floor AS a
|
||||||
|
INNER JOIN building AS b ON a.building_tag = b.building_tag
|
||||||
|
WHERE a.deleted = 0 AND b.deleted = 0
|
||||||
|
)y
|
||||||
|
)x on SUBSTRING_INDEX(a.room_name, '_', 1) = x.floor_name
|
||||||
|
set a.building_tag = x.building_tag,
|
||||||
|
a.floor_guid = x.floor_guid";
|
||||||
|
await backendRepository.ExecuteSql(sql);
|
||||||
|
}
|
||||||
|
apiResult.Code = "0000";
|
||||||
|
apiResult.Msg = "編輯成功";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
apiResult.Code = "0001";
|
||||||
|
apiResult.Msg = "無資料輸入";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (Exception exception)
|
||||||
|
{
|
||||||
|
apiResult.Code = "9999";
|
||||||
|
apiResult.Msg = "系統內部錯誤,請聯絡管理者。";
|
||||||
|
Logger.LogError("【" + controllerName + "/" + actionName + "】" + exception.Message);
|
||||||
|
}
|
||||||
|
|
||||||
|
return apiResult;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -270,4 +270,23 @@ namespace Backend.Models
|
|||||||
public string device_coordinate_3d { get; set; }
|
public string device_coordinate_3d { get; set; }
|
||||||
public int forge_dbid { get; set; }
|
public int forge_dbid { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class ImportForgeRoom
|
||||||
|
{
|
||||||
|
public string building_tag { get; set; }
|
||||||
|
public string floor_guid { get; set; }
|
||||||
|
public int room_id { get; set; }
|
||||||
|
public int deleted { get; set; }
|
||||||
|
public string room_name { get; set; }
|
||||||
|
public string created_at { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public class Import_floor_data
|
||||||
|
{
|
||||||
|
public string building_tag { get; set; }
|
||||||
|
public string floor_guid { get; set; }
|
||||||
|
public string floor_name { get; set; }
|
||||||
|
public int priority { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -40,7 +40,7 @@
|
|||||||
<button type="button" class="btn btn-dark" onclick="cancelTransparentModel()">取消透明物件</button>
|
<button type="button" class="btn btn-dark" onclick="cancelTransparentModel()">取消透明物件</button>
|
||||||
<button type="button" class="btn btn-danger" onclick="proFile()">剖面</button>
|
<button type="button" class="btn btn-danger" onclick="proFile()">剖面</button>
|
||||||
<button type="button" class="btn btn-dark" onclick="getLevels()">取得levels</button>
|
<button type="button" class="btn btn-dark" onclick="getLevels()">取得levels</button>
|
||||||
<button type="button" class="btn btn-success" onclick="importDevCor()">匯入設備座標及dbid</button>
|
<button type="button" class="btn btn-success" onclick="importDevCor()">匯入設備座標及房間等dbid</button>
|
||||||
<!--<input id="lightBar" type="range" min="0" max="100" step="5" onchange="changeLightPower()">亮度-->
|
<!--<input id="lightBar" type="range" min="0" max="100" step="5" onchange="changeLightPower()">亮度-->
|
||||||
<!-- <input type="range">Main Axis</input> -->
|
<!-- <input type="range">Main Axis</input> -->
|
||||||
</div>
|
</div>
|
||||||
@ -240,7 +240,10 @@
|
|||||||
//launchViewer('dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6dGEzaHFzZmZ6cWJub3V4a3BsZGt1a3NldzRzajIxdzUtYmltc19tb2RlbHMvJUUzJTgwJTkwJUU1JThGJUIwJUU1JThDJTk3JUU0JUI4JUFEJUU4JThGJUIxJUU1JUE0JUE3JUU2JUE4JTkzJUUzJTgwJTkxQVJDJUU5JTlCJTk5JUU2JUE4JUExJUU1JUJDJThGK01FUCVFNiU4QiU4NiVFNyVCMyVCQiVFNyVCNSVCMV8yMDIyXzEyXzMxLm53ZA');
|
//launchViewer('dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6dGEzaHFzZmZ6cWJub3V4a3BsZGt1a3NldzRzajIxdzUtYmltc19tb2RlbHMvJUUzJTgwJTkwJUU1JThGJUIwJUU1JThDJTk3JUU0JUI4JUFEJUU4JThGJUIxJUU1JUE0JUE3JUU2JUE4JTkzJUUzJTgwJTkxQVJDJUU5JTlCJTk5JUU2JUE4JUExJUU1JUJDJThGK01FUCVFNiU4QiU4NiVFNyVCMyVCQiVFNyVCNSVCMV8yMDIyXzEyXzMxLm53ZA');
|
||||||
|
|
||||||
//雙模式
|
//雙模式
|
||||||
launchViewer('dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6dGEzaHFzZmZ6cWJub3V4a3BsZGt1a3NldzRzajIxdzUtYmltc19tb2RlbHMvJUUzJTgwJTkwJUU1JThGJUIwJUU1JThDJTk3JUU0JUI4JUFEJUU4JThGJUIxJUU1JUE0JUE3JUU2JUE4JTkzJUUzJTgwJTkxQVJDJUU5JTlCJTk5JUU2JUE4JUExJUU1JUJDJThGK01FUCVFNiU4QiU4NiVFNyVCMyVCQiVFNyVCNSVCMV8yMDIyXzEyXzMxLm53ZA==');
|
//launchViewer('dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6dGEzaHFzZmZ6cWJub3V4a3BsZGt1a3NldzRzajIxdzUtYmltc19tb2RlbHMvJUUzJTgwJTkwJUU1JThGJUIwJUU1JThDJTk3JUU0JUI4JUFEJUU4JThGJUIxJUU1JUE0JUE3JUU2JUE4JTkzJUUzJTgwJTkxQVJDJUU5JTlCJTk5JUU2JUE4JUExJUU1JUJDJThGK01FUCVFNiU4QiU4NiVFNyVCMyVCQiVFNyVCNSVCMV8yMDIyXzEyXzMxLm53ZA==');
|
||||||
|
|
||||||
|
//01.06 樓層刪除燈具
|
||||||
|
launchViewer('dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6LW1vZGVsX3Rlc3QxMTIxLyVFMyU4MCU5MCVFNSU4RiVCMCVFNSU4QyU5NyVFNCVCOCVBRCVFOCU4RiVCMSVFNSVBNCVBNyVFNiVBOCU5MyVFMyU4MCU5MUFSQyVFOSU5QiU5OSVFNiVBOCVBMSVFNSVCQyU4RitNRVAlRTYlOEIlODYlRTclQjMlQkIlRTclQjUlQjFfJUU1JTg4JUFBJUU3JTg3JTg4JUU1JTg1JUI3XzIwMjNfMDFfMDYubndk');
|
||||||
|
|
||||||
|
|
||||||
//launchViewer('dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6dnNjb2RlX2ZvcmdlX3Rlc3QvJUUzJTgwJTkwQVJDJUUzJTgwJTkxXzIwMjJfMTJfMTMubndk');//new ARC
|
//launchViewer('dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6dnNjb2RlX2ZvcmdlX3Rlc3QvJUUzJTgwJTkwQVJDJUUzJTgwJTkxXzIwMjJfMTJfMTMubndk');//new ARC
|
||||||
@ -381,6 +384,7 @@
|
|||||||
|
|
||||||
function importDevCor() {
|
function importDevCor() {
|
||||||
ImportDevForCor();
|
ImportDevForCor();
|
||||||
|
ImportForgeRoom();
|
||||||
}
|
}
|
||||||
|
|
||||||
function ImportDevForCor() {//callback = null
|
function ImportDevForCor() {//callback = null
|
||||||
@ -412,9 +416,38 @@
|
|||||||
fail: function (xhr, status, error) {
|
fail: function (xhr, status, error) {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function ImportForgeRoom() {
|
||||||
|
var url = "/DeviceImport/ImportForgeRoom";
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
method: "POST",
|
||||||
|
url: url,
|
||||||
|
data: JSON.stringify(roomDataList),
|
||||||
|
cache: false,
|
||||||
|
async: false,
|
||||||
|
contentType: "application/json; charset=UTF-8",
|
||||||
|
dataType: 'json',
|
||||||
|
success: function (rel) {
|
||||||
|
if (rel.code != "0000") {
|
||||||
|
if (rel.code == "9999") {
|
||||||
|
console.log(rel.msg);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
console.log(rel.msg);
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
console.log(rel.msg);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
fail: function (xhr, status, error) {
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
@ -13,7 +13,8 @@ var levels;//剖面用
|
|||||||
var baseApiUrl = "http://localhost:3604";
|
var baseApiUrl = "http://localhost:3604";
|
||||||
var instanceTree;
|
var instanceTree;
|
||||||
//var objSendData = { Data: null };
|
//var objSendData = { Data: null };
|
||||||
var tagIdDevList = [];
|
var tagIdDevList = [];//模型設備List: device_number、device_coordinate_3d、forge_dbid
|
||||||
|
var roomDataList = [];//模型房間List: room_id、room_name
|
||||||
|
|
||||||
function launchViewer(urn) {
|
function launchViewer(urn) {
|
||||||
var av = Autodesk.Viewing;
|
var av = Autodesk.Viewing;
|
||||||
@ -274,39 +275,36 @@ function onDocumentLoadSuccess(doc) {
|
|||||||
e.properties.forEach(function (item) {
|
e.properties.forEach(function (item) {
|
||||||
if (item.displayName == "【tag_id】") { // Tag_name tag_id 【tag_id】
|
if (item.displayName == "【tag_id】") { // Tag_name tag_id 【tag_id】
|
||||||
if (item.displayValue != "") {
|
if (item.displayValue != "") {
|
||||||
//if ((item.displayValue).indexOf('TPE_B1_ME_M10') > -1) {
|
////if ((item.displayValue).indexOf('TPE_B1_LT_L1') > -1) {// TPE_B1_ME_M10
|
||||||
console.log("--------------------------------------------------");
|
//console.log("--------------------------------------------------");
|
||||||
console.log("Tag_name dbid: " + e.dbId);
|
//console.log("Tag_name dbid: " + e.dbId);
|
||||||
console.log("value: " + item.displayValue);
|
//console.log("value: " + item.displayValue);
|
||||||
|
////}
|
||||||
//myDataList.forEach((myData, index) => {
|
var str = item.displayValue.split('_');
|
||||||
// devices.push({ id: index, position: JSON.parse(myData.device_coordinate_3d), sensorTypes: ["temperature", "humidity"] });
|
if (str.length == 2) { //兩段為房間 ex: U7F_01
|
||||||
//});
|
roomDataList.push({ room_id: e.dbId, room_name: item.displayValue });
|
||||||
//}
|
}
|
||||||
|
else if (str.length == 8) { //八段為設備 ex: TPE_B1_ME_M10_U7F_NA_FCU_N1
|
||||||
let bounds = new THREE.Box3();
|
//取得座標
|
||||||
|
let bounds = new THREE.Box3();
|
||||||
|
instanceTree.enumNodeFragments(e.dbId, (fragId) => {
|
||||||
|
let box = new THREE.Box3();
|
||||||
|
fragList.getWorldBounds(fragId, box);
|
||||||
|
bounds.union(box);
|
||||||
|
}, true);
|
||||||
|
var position = bounds.center();
|
||||||
|
////if ((item.displayValue).indexOf('TPE_B1_LT_L1') > -1) {
|
||||||
|
//console.log("position: (" + (position.x).toFixed(2) + ", " + (position.y).toFixed(2) + ", " + (position.z).toFixed(2) + ")");
|
||||||
|
//console.log("--------------------------------------------------");
|
||||||
|
////}
|
||||||
|
tagIdDevList.push({ device_number: item.displayValue, device_coordinate_3d: '{ "x": ' + (position.x).toFixed(2) + ', "y": ' + (position.y).toFixed(2) + ', "z": ' + (position.z).toFixed(2) + ' }', forge_dbid: e.dbId });
|
||||||
|
}
|
||||||
|
|
||||||
instanceTree.enumNodeFragments(e.dbId, (fragId) => {
|
|
||||||
let box = new THREE.Box3();
|
|
||||||
fragList.getWorldBounds(fragId, box);
|
|
||||||
bounds.union(box);
|
|
||||||
}, true);
|
|
||||||
var position = bounds.center();
|
|
||||||
//if ((item.displayValue).indexOf('TPE_B1_ME_M10') > -1) {
|
|
||||||
console.log("position: (" + (position.x).toFixed(2) + ", " + (position.y).toFixed(2) + ", " + (position.z).toFixed(2) + ")");
|
|
||||||
tagIdDevList.push({ device_number: item.displayValue, device_coordinate_3d: '{ "x": ' + (position.x).toFixed(2) + ', "y": ' + (position.y).toFixed(2) + ', "z": ' + (position.z).toFixed(2) + ' }', forge_dbid: e.dbId });
|
|
||||||
console.log("--------------------------------------------------");
|
|
||||||
//}
|
|
||||||
}
|
}
|
||||||
//getFragmentWorldMatrixByNodeId(e.dbId, viewer);
|
|
||||||
//let fragProxy = viewer.impl.getFragmentProxy(viewer.model, frag);
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|
||||||
//---------------------- end ---------------------------------------------------
|
//---------------------- end ---------------------------------------------------
|
||||||
@ -792,8 +790,6 @@ function setElevatorSpeed(speed) { //0.01 ~ 1
|
|||||||
}
|
}
|
||||||
|
|
||||||
function movElevator() {
|
function movElevator() {
|
||||||
|
|
||||||
|
|
||||||
let tree = viewer.model.getData().instanceTree;//三組:(749,750,751),(755,756,757),(761,762,763)
|
let tree = viewer.model.getData().instanceTree;//三組:(749,750,751),(755,756,757),(761,762,763)
|
||||||
let nodeId = 12112;//12104; //749; //10952;
|
let nodeId = 12112;//12104; //749; //10952;
|
||||||
let nodeId2 = 12111;//12105; //750;
|
let nodeId2 = 12111;//12105; //750;
|
||||||
@ -908,64 +904,6 @@ function hideColor(nodeId) {//顏色改成透明
|
|||||||
viewer.setThemingColor(nodeId, color);
|
viewer.setThemingColor(nodeId, color);
|
||||||
}
|
}
|
||||||
|
|
||||||
//function movElevator() {
|
|
||||||
|
|
||||||
|
|
||||||
// let tree = viewer.model.getData().instanceTree;
|
|
||||||
// let nodeId = 750;// 10952;
|
|
||||||
// let fragProxyZ = 0;
|
|
||||||
// var movStatus = 0; // 0=no 1=up 2=down
|
|
||||||
|
|
||||||
|
|
||||||
// if (fragProxy.position.z > targetFloorZ) {
|
|
||||||
// movStatus = 2
|
|
||||||
// }
|
|
||||||
// else if (fragProxy.position.z < targetFloorZ) {
|
|
||||||
// movStatus = 1
|
|
||||||
// }
|
|
||||||
|
|
||||||
// if (movStatus == 0) {
|
|
||||||
// return;
|
|
||||||
// }
|
|
||||||
|
|
||||||
// tree.enumNodeFragments(nodeId, function (frag) {
|
|
||||||
// fragProxy = viewer.impl.getFragmentProxy(viewer.model, frag);
|
|
||||||
// fragProxy.getAnimTransform();
|
|
||||||
// //let fragPosition = new THREE.Vector3(0, 0, 15);// 一樓0 二樓15 三樓 26
|
|
||||||
// if (movStatus == 2) {
|
|
||||||
// fragProxy.position.z -= elevatorSpeed;
|
|
||||||
// }
|
|
||||||
// else if (movStatus == 1) {
|
|
||||||
// fragProxy.position.z += elevatorSpeed;
|
|
||||||
// }
|
|
||||||
|
|
||||||
// fragProxyZ = fragProxy.position.z;
|
|
||||||
// fragProxy.updateAnimTransform()
|
|
||||||
|
|
||||||
// });
|
|
||||||
// viewer.impl.sceneUpdated(true);
|
|
||||||
|
|
||||||
// if (movStatus == 2) {
|
|
||||||
// if (fragProxyZ >= targetFloorZ) {
|
|
||||||
// requestAnimationFrame(movElevator);
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// else if (movStatus == 1) {
|
|
||||||
// if (fragProxyZ <= targetFloorZ) {
|
|
||||||
// requestAnimationFrame(movElevator);
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
|
|
||||||
// //let fragPosition = new THREE.Vector3(position);// 一樓0 二樓15 三樓 26
|
|
||||||
|
|
||||||
// //fragProxy.position = fragPosition;
|
|
||||||
|
|
||||||
// //fragProxy.updateAnimTransform();
|
|
||||||
|
|
||||||
// //viewer.impl.sceneUpdated(true);
|
|
||||||
//}
|
|
||||||
|
|
||||||
function getAllDbIds(viewer) {
|
function getAllDbIds(viewer) {
|
||||||
var instanceTree = viewer.model.getData().instanceTree;
|
var instanceTree = viewer.model.getData().instanceTree;
|
||||||
|
|
||||||
@ -1025,10 +963,6 @@ function onButtonClicked() {
|
|||||||
this.viewer.setCutPlanes([upperCutPlaneParam, lowerCutPlaneParam]);
|
this.viewer.setCutPlanes([upperCutPlaneParam, lowerCutPlaneParam]);
|
||||||
}
|
}
|
||||||
|
|
||||||
function displayCuttedPlane() {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Autodesk.Viewing.Document.load() failuire callback.
|
* Autodesk.Viewing.Document.load() failuire callback.
|
||||||
*/
|
*/
|
||||||
@ -1082,27 +1016,7 @@ async function loadHeatmaps(model) {
|
|||||||
position: { x: 6.98, y: -2.24, z: 16.86 }, // x: 0, y: 25.03, z: -2.52 (-4.93, -3.85, 16.86)
|
position: { x: 6.98, y: -2.24, z: 16.86 }, // x: 0, y: 25.03, z: -2.52 (-4.93, -3.85, 16.86)
|
||||||
sensorTypes: ["temperature", "humidity"]
|
sensorTypes: ["temperature", "humidity"]
|
||||||
}
|
}
|
||||||
|
|
||||||
//{
|
|
||||||
// id: "Oficina 5",
|
|
||||||
// //name: "Oficina-",
|
|
||||||
// position: { x: 3.35, y: -4.81, z: 12.88 }, // x: 0, y: 25, z: -2.5 (3.35, -4.81, 12.88
|
|
||||||
// sensorTypes: ["temperature", "humidity"]
|
|
||||||
//},
|
|
||||||
//{
|
|
||||||
// id: "Oficina 4",
|
|
||||||
// //name: "Oficina-",
|
|
||||||
// position: { x: 37.03, y: -4.81, z: 12.88 }, // x: 0, y: 25.03, z: -2.52 (37.03, -4.81, 12.88)
|
|
||||||
// sensorTypes: ["temperature", "humidity"]
|
|
||||||
//},
|
|
||||||
//{
|
|
||||||
// id: "Oficina 3",
|
|
||||||
// //name: "Oficina-",
|
|
||||||
// position: { x: 2.83, y: -22.60, z: 12.88 }, // x: 0, y: 25.03, z: -2.52 (2.83, -22.60, 12.88)
|
|
||||||
// sensorTypes: ["temperature", "humidity"]
|
|
||||||
//}
|
|
||||||
];
|
];
|
||||||
//冷氣N5: (6.98, -19.00, 16.86), N4: (35.85, -2.24, 16.86), N3: (6.98, -2.24, 16.86)
|
|
||||||
|
|
||||||
// Initialize sensor values
|
// Initialize sensor values
|
||||||
let sensorVals = [];
|
let sensorVals = [];
|
||||||
@ -1228,11 +1142,6 @@ async function loadHeatmap() {
|
|||||||
|
|
||||||
function hideObject() {
|
function hideObject() {
|
||||||
//viewer.hide(4);
|
//viewer.hide(4);
|
||||||
//viewer.hide(58);
|
|
||||||
//viewer.hide(613);
|
|
||||||
//viewer.hide(640);
|
|
||||||
//viewer.hide(560);
|
|
||||||
|
|
||||||
for (var i = 0; i < allDbIdsStr.length; i++) {
|
for (var i = 0; i < allDbIdsStr.length; i++) {
|
||||||
viewer.hide(parseInt(allDbIdsStr[i]));
|
viewer.hide(parseInt(allDbIdsStr[i]));
|
||||||
}
|
}
|
||||||
@ -1240,11 +1149,6 @@ function hideObject() {
|
|||||||
|
|
||||||
function openObject() {
|
function openObject() {
|
||||||
//viewer.show(4);
|
//viewer.show(4);
|
||||||
//viewer.show(58);
|
|
||||||
//viewer.show(613);
|
|
||||||
//viewer.show(640);
|
|
||||||
//viewer.show(560);
|
|
||||||
|
|
||||||
for (var i = 0; i < allDbIdsStr.length; i++) {
|
for (var i = 0; i < allDbIdsStr.length; i++) {
|
||||||
viewer.show(parseInt(allDbIdsStr[i]));
|
viewer.show(parseInt(allDbIdsStr[i]));
|
||||||
}
|
}
|
||||||
@ -1252,67 +1156,11 @@ function openObject() {
|
|||||||
|
|
||||||
async function setObjectTransparent() {
|
async function setObjectTransparent() {
|
||||||
//setTransparency(4, 0);
|
//setTransparency(4, 0);
|
||||||
//setTransparency(58, 0);
|
|
||||||
//setTransparency(613, 0);
|
|
||||||
//setTransparency(640, 0);
|
|
||||||
//setTransparency(560, 0);
|
|
||||||
//setTransparency(parseInt(515), 0);
|
|
||||||
|
|
||||||
//for (var i = 0; i < allDbIdsStr.length; i++) {
|
|
||||||
// setTransparency(parseInt(allDbIdsStr[i]), 0);
|
|
||||||
//}
|
|
||||||
|
|
||||||
//setTransparency(parseInt(515), 0);
|
|
||||||
//setTransparency(parseInt(516), 0);
|
|
||||||
//setTransparency(parseInt(517), 0);
|
|
||||||
//setTransparency(parseInt(518), 0);
|
|
||||||
//setTransparency(parseInt(519), 0);
|
|
||||||
//setTransparency(parseInt(399), 0);
|
|
||||||
//setTransparency(parseInt(101), 0);
|
|
||||||
//setTransparency(parseInt(100), 0);
|
|
||||||
//setTransparency(parseInt(58), 0);
|
|
||||||
|
|
||||||
//setTransparency(parseInt(587), 0);
|
|
||||||
//setTransparency(parseInt(586), 0);
|
|
||||||
//setTransparency(parseInt(585), 0);
|
|
||||||
//setTransparency(parseInt(584), 0);
|
|
||||||
//setTransparency(parseInt(583), 0);
|
|
||||||
//setTransparency(parseInt(562), 0);
|
|
||||||
//setTransparency(parseInt(361), 0);
|
|
||||||
|
|
||||||
//test();
|
|
||||||
//hideColor(587);
|
|
||||||
//hideColor(586);
|
|
||||||
//hideColor(585);
|
|
||||||
//hideColor(584);
|
|
||||||
//hideColor(583);
|
|
||||||
//hideColor(562);
|
|
||||||
//hideColor(361);
|
|
||||||
|
|
||||||
setTransparentBuilding();
|
setTransparentBuilding();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async function cancelObjectTransparent() {
|
async function cancelObjectTransparent() {
|
||||||
//setTransparency(4, 1);
|
//setTransparency(4, 1);
|
||||||
//setTransparency(58, 1);
|
|
||||||
//setTransparency(613, 1);
|
|
||||||
//setTransparency(640, 1);
|
|
||||||
//setTransparency(560, 1);
|
|
||||||
//for (var i = 0; i < allDbIdsStr.length; i++) {
|
|
||||||
// setTransparency(parseInt(allDbIdsStr[i]), 1);
|
|
||||||
//}
|
|
||||||
|
|
||||||
//setTransparency(515, 0.2);
|
|
||||||
//setTransparency(516, 0.2);
|
|
||||||
//setTransparency(517, 0.2);
|
|
||||||
//setTransparency(518, 0.2);
|
|
||||||
//setTransparency(519, 0.2);
|
|
||||||
//setTransparency(399, 0.2);
|
|
||||||
//setTransparency(101, 0.2);
|
|
||||||
//setTransparency(100, 0.2);
|
|
||||||
//setTransparency(58, 0.2);
|
|
||||||
|
|
||||||
recoverTransparentBuilding();
|
recoverTransparentBuilding();
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -1348,7 +1196,6 @@ async function test() {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//------------ 剖面 ----------------------
|
//------------ 剖面 ----------------------
|
||||||
async function getRemoteLevels() {
|
async function getRemoteLevels() {
|
||||||
const aecData = await Autodesk.Viewing.Document.getAecModelData(this.viewer.model.getDocumentNode());
|
const aecData = await Autodesk.Viewing.Document.getAecModelData(this.viewer.model.getDocumentNode());
|
||||||
@ -1364,26 +1211,6 @@ async function getLevelsData() {
|
|||||||
this.levels = data;
|
this.levels = data;
|
||||||
}
|
}
|
||||||
|
|
||||||
//function getCutPlaneParam(idx, n) {
|
|
||||||
// if (idx < 0 || !n) return;
|
|
||||||
|
|
||||||
// const level = this.levels[idx];
|
|
||||||
// if (!level) return;
|
|
||||||
|
|
||||||
// //const precision = Autodesk.Viewing.Private.calculatePrecision( level.elevation );
|
|
||||||
// const model = this.viewer.model;
|
|
||||||
// const globalOffset = model.getData().globalOffset;
|
|
||||||
// const units = model.getUnitString();
|
|
||||||
// const elevRaw = Autodesk.Viewing.Private.convertUnits('ft', units, 1, level.elevation);
|
|
||||||
|
|
||||||
// let d = elevRaw - globalOffset.z - 0.5;
|
|
||||||
// if (n == 1)
|
|
||||||
// d = -1 * d;
|
|
||||||
|
|
||||||
// return new THREE.Vector4(0, 0, n, d);
|
|
||||||
//}
|
|
||||||
|
|
||||||
|
|
||||||
function profile() {
|
function profile() {
|
||||||
const upperIdx = 6;
|
const upperIdx = 6;
|
||||||
const upperCutPlaneParam = this.getCutPlaneParam(upperIdx, 1);
|
const upperCutPlaneParam = this.getCutPlaneParam(upperIdx, 1);
|
||||||
@ -1393,71 +1220,3 @@ function profile() {
|
|||||||
}
|
}
|
||||||
//----------------- end -----------------------------------------------
|
//----------------- end -----------------------------------------------
|
||||||
|
|
||||||
// 設備的dbid和3D座標 存進 資料庫
|
|
||||||
//function ImportDevForCor() {//callback = null
|
|
||||||
// var url = "/DeviceImport/ImportDevForCor";
|
|
||||||
// //let sendData = {
|
|
||||||
// // "device_number": pageAct.AreaTag,
|
|
||||||
// // "device_coordinate_3d": "",
|
|
||||||
// // "device_dbid": "",
|
|
||||||
// //};
|
|
||||||
// objSendData.Data = tagIdDevList;
|
|
||||||
// //ytAjax = new YourTeam.Ajax(url, objSendData, function (res) {
|
|
||||||
// // if (!res || res.code != "0000" || !res.data) {
|
|
||||||
|
|
||||||
// // } else {
|
|
||||||
|
|
||||||
// // }
|
|
||||||
// //}, null, "POST").send();
|
|
||||||
|
|
||||||
// //$.post(url, objSendData, function (rel) {
|
|
||||||
// // if (rel.code != "0000") {
|
|
||||||
// // if (rel.code == "9999") {
|
|
||||||
// // toast_error(rel.msg);
|
|
||||||
// // }
|
|
||||||
// // else {
|
|
||||||
// // toast_warning(rel.msg);
|
|
||||||
// // }
|
|
||||||
// // return;
|
|
||||||
// // }
|
|
||||||
// // else {
|
|
||||||
// // toast_ok(rel.msg);
|
|
||||||
// // //ReloadRawDataCheckTable();
|
|
||||||
// // }
|
|
||||||
|
|
||||||
// //}, 'json');
|
|
||||||
|
|
||||||
// //headers={'content-type': 'application/json'}
|
|
||||||
|
|
||||||
// $.ajax({
|
|
||||||
// type: "POST",
|
|
||||||
// url: url,
|
|
||||||
// data: objSendData,
|
|
||||||
// cache: false,
|
|
||||||
// contentType: 'application/json',
|
|
||||||
// processData: false,
|
|
||||||
// success: function (rel) {
|
|
||||||
// //$("#save-building-btn").html('確定').attr("disabled", false);
|
|
||||||
// if (rel.code != "0000") {
|
|
||||||
// if (rel.code == "9999") {
|
|
||||||
// toast_error(rel.msg);
|
|
||||||
// }
|
|
||||||
// else {
|
|
||||||
// toast_warning(rel.msg);
|
|
||||||
// }
|
|
||||||
// return;
|
|
||||||
// }
|
|
||||||
// else {
|
|
||||||
// toast_ok(rel.msg);
|
|
||||||
// //buildInfoTable.ajax.reload(null, false);
|
|
||||||
// //$('#build-modal').modal('hide');
|
|
||||||
// return;
|
|
||||||
// }
|
|
||||||
// },
|
|
||||||
// fail: function (xhr, status, error) {
|
|
||||||
// //$("#save-building-btn").html('確定').attr("disabled", false);
|
|
||||||
// //toast_error(rel.msg);
|
|
||||||
// }
|
|
||||||
// });
|
|
||||||
|
|
||||||
//}
|
|
Loading…
Reference in New Issue
Block a user