From ddc0888b0510334604c4f506f20026433b546818 Mon Sep 17 00:00:00 2001 From: BujarMuharemi Date: Mon, 8 Nov 2021 21:16:39 +0100 Subject: [PATCH 01/56] test push: fixed pdf directory --- public/main.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/main.html b/public/main.html index 5a536f0..30bb35e 100644 --- a/public/main.html +++ b/public/main.html @@ -211,7 +211,7 @@
-

+

-- GitLab From aabf5e17ce4c557d7752ab9c8b323d61fabfcbe2 Mon Sep 17 00:00:00 2001 From: Medjen <91izme1bif@hft-stuttgart.de> Date: Mon, 8 Nov 2021 21:45:40 +0100 Subject: [PATCH 02/56] test commit added git ignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..91b4c97 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +public/node_modules/ \ No newline at end of file -- GitLab From e238b100bfceb4f472c6ed4302b559d1ba05e064 Mon Sep 17 00:00:00 2001 From: BujarMuharemi Date: Thu, 11 Nov 2021 11:19:29 +0100 Subject: [PATCH 03/56] small fixes --- public/js/connectToAPI.js | 6 ++++-- public/js/globe.js | 34 +++++++++++++++++++++++++++++++++- public/main.html | 8 +++++++- 3 files changed, 44 insertions(+), 4 deletions(-) diff --git a/public/js/connectToAPI.js b/public/js/connectToAPI.js index c3d879b..f3482eb 100644 --- a/public/js/connectToAPI.js +++ b/public/js/connectToAPI.js @@ -1,5 +1,7 @@ var coordinatesBB = [] -var url = "https://simstadt-api.iaf-ex.hft-stuttgart.de:8080/workflow/execute" +//var url = "https://simstadt-api.iaf-ex.hft-stuttgart.de:8080/workflow/execute" //old link +var url = "http://vm24.fkc.hft-stuttgart.de:8080/workflow/execute" + var buildingFunctionSort var constructionYearSortPick @@ -25,7 +27,7 @@ async function fetchDataJSON() { "rightLng": rightLng, //9.175336684, "topLat": topLat //48.7822869656 }, - // "cityGMLRef": "campus", + "cityGMLRef": "campusLOD2", "interestedAttributes": [ "uValue", "volume", diff --git a/public/js/globe.js b/public/js/globe.js index 393b68b..ea89cff 100644 --- a/public/js/globe.js +++ b/public/js/globe.js @@ -1,10 +1,13 @@ Cesium.Ion.defaultAccessToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJjNjM5YzFjNC03NWNmLTQ2M2YtOWJiNC0xODNmMTY2ZjkwNTkiLCJpZCI6MzY3NjEsImlhdCI6MTYwMzk4NTU3Nn0.G3fnwzZ50towP1Nv9goyvu0JxJW5GtiudTR7X67Zo84'; +var roofTiles= ["PolyIDGeo755601","PolyIDGeo787622","PolyIDGeo135906","PolyIDGeo534180","PolyIDGeo1597157","PolyIDGeo1628130","PolyIDGeo570789","PolyIDGeo206785","PolyIDGeo785307","PolyIDGeo1096586","PolyIDGeo25714307","PolyIDGeo772461","PolyIDGeo25430590"]; + + var viewer = new Cesium.Viewer('cesiumContainer', { homeButton: false, baseLayerPicker: false, navigationHelpButton: false, - timeline: false, + timeline: true, animation: false, sceneModePicker: false, geocoder: false, @@ -137,6 +140,35 @@ viewer.screenSpaceEventHandler.setInputAction(function onMouseMove(movement) { } } + + //TODO: add roof selection + else if(document.getElementById("roof").checked){ + tileContent.forEach(t => { + + if (t === pickedFeature) { + console.log(t.getProperty("gml_id")); + console.log(t); + } + + roofTiles.forEach(rt =>{ + if(t.getProperty("gml_id")===rt){ + var a = Math.floor(Math.random() * 3); + if(a==1){ + t.color = Cesium.Color.RED; + }else if(0){ + t.color = Cesium.Color.YELLOW; + }else{ + t.color = Cesium.Color.GREEN; + } + + } + }) + + + }); + } + + else { // A feature was picked, so show it's overlay content diff --git a/public/main.html b/public/main.html index 30bb35e..134f095 100644 --- a/public/main.html +++ b/public/main.html @@ -36,6 +36,7 @@ + + + + -- GitLab From 0468704c84ec8fa3b66288e4a962a00dcbdfb70d Mon Sep 17 00:00:00 2001 From: BujarMuharemi Date: Sat, 4 Dec 2021 11:38:57 +0100 Subject: [PATCH 23/56] painting shadows on roof works correctly --- public/js/globe.js | 7 +++---- public/js/shadowPalette.js | 21 ++++++++++++++++----- 2 files changed, 19 insertions(+), 9 deletions(-) diff --git a/public/js/globe.js b/public/js/globe.js index f9ce889..981bf1f 100644 --- a/public/js/globe.js +++ b/public/js/globe.js @@ -398,12 +398,11 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { //looping threw all surfaces tileContent.forEach(t => { if(t.getProperty("description").includes("Roof")){ //HACK: checking if the are a roof surface (should come from feature_type) - - for (const [key, value] of Object.entries(shadowdata)) { //looping threw the shadowdata array + for (const [key, value] of Object.entries(shadowdata)) { //looping threw the shadowdata array if(key === t.getProperty("gml_id")){ //checking the id + console.log(value); shadowHourValue = value[chosenDate.hour-1]; //getting the current chosen hour from the timeline - t.color = Cesium.Color.fromCssColorString(getShadowPalette(shadowHourValue)); //coloring the surface - + t.color = Cesium.Color.fromCssColorString(getShadowPalette(shadowHourValue)); //coloring the surface } } diff --git a/public/js/shadowPalette.js b/public/js/shadowPalette.js index 7b7ed6a..8fab0ad 100644 --- a/public/js/shadowPalette.js +++ b/public/js/shadowPalette.js @@ -1,13 +1,17 @@ //Shadow palette for coloring the roofs //color pallet white->black -var shadowPalette = ['#ffffff','#f0f0f0','#d9d9d9','#bdbdbd','#969696','#737373','#525252','#252525']; -//const shadowPalette = colorPalette.reverse(); +var colorPalette = ['#ffffff','#f0f0f0','#d9d9d9','#bdbdbd','#969696','#737373','#525252','#252525']; +const shadowPalette = colorPalette.reverse(); //returns the responding color from the shadowPalette, depending on the inputShadowValue(0 to 1 in float) -function getShadowPalette(inputShadowValue){ - //TODO: add check for wrong inputShadowValues +function getShadowPalette(inputShadowValue){ //checking for the float values + var index = Math.ceil((shadowPalette.length-1)*inputShadowValue); + //console.log(inputShadowValue,"---",shadowPalette[index]); + return shadowPalette[index]; + + /* Can be ignored for now if(!Number.isInteger(inputShadowValue)){ var index = Math.ceil((shadowPalette.length-1)*inputShadowValue); //console.log(shadowPalette[index]); @@ -15,9 +19,16 @@ function getShadowPalette(inputShadowValue){ } //edge case for 0 and 1 else{ + //console.log(inputShadowValue); + if(inputShadowValue===0){ + //console.log(inputShadowValue); + return shadowPalette[shadowPalette.length-1]; + }else{ + return shadowPalette[0]; + } //console.log("black",shadowPalette[shadowPalette.length-1]); return shadowPalette[shadowPalette.length-1]; - } + }*/ } -- GitLab From 580115957dc2aabe845c634455b2e1b680ba83c2 Mon Sep 17 00:00:00 2001 From: BujarMuharemi Date: Sat, 4 Dec 2021 11:52:02 +0100 Subject: [PATCH 24/56] roof shadow color get reset, when changing modes --- public/js/globe.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/public/js/globe.js b/public/js/globe.js index 981bf1f..e2f36be 100644 --- a/public/js/globe.js +++ b/public/js/globe.js @@ -273,7 +273,7 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { //Surface View if (document.getElementById("surface").checked) { - + resetRoofColors(); //save the selected feature's original color if (pickedhigh) { highlightedFeatures.forEach(h => { @@ -339,6 +339,7 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { //Building View else if(document.getElementById("building").checked){ + resetRoofColors(); //save the selected feature's original color if (pickedhigh) { highlightedFeatures.forEach(h => { @@ -480,3 +481,16 @@ function fillTableProperties(gID, sID) { } } + + +function resetRoofColors(){ + tileContent.forEach(t => { + if(t.getProperty("description").includes("Roof")){ + for (const [key, value] of Object.entries(shadowdata)) { + if(key === t.getProperty("gml_id")){ + t.color = Cesium.Color.WHITE; + } + } + } + }); +} -- GitLab From 980a8b0c4d345ee7abee3822fbd2d6525bbdb90e Mon Sep 17 00:00:00 2001 From: Medjen <91izme1bif@hft-stuttgart.de> Date: Mon, 6 Dec 2021 22:55:03 +0100 Subject: [PATCH 25/56] added percent shadowvalue --- public/js/globe.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/public/js/globe.js b/public/js/globe.js index e2f36be..e292bf6 100644 --- a/public/js/globe.js +++ b/public/js/globe.js @@ -126,7 +126,7 @@ viewer.screenSpaceEventHandler.setInputAction(function onMouseMove(movement) { var name = pickedFeature.getProperty("gml_id"); - nameOverlay.textContent = "ID: " + name + "\t shadowvalue:" + shadowHourValue; + nameOverlay.textContent = "ID: " + name + "\t shadowvalue:" + shadowhourvaluepercent; // Highlight the feature if it's not already selected. selectedFeatures.forEach(s => { if (s.feature === pickedFeature) { @@ -266,7 +266,7 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { pickTotalSurfaceArea = 0 pickRoofType = "Not Defined" pickUValue = "Not Defined" - + //fill variables for Single Building Properties fillTableProperties(gmlID, surID) @@ -317,7 +317,7 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { }); } - + var shadowhourvaluepercent = 100-(shadowHourValue*100) //set feature infobox description (surface view) var featureName = pickedFeature.getProperty("name"); selectedEntity.name = featureName; @@ -329,7 +329,7 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { "u_Value" + pickUValue + "" + "description" + pickedFeature.getProperty("description") + "" + "feature_type" + pickedFeature.getProperty("feature_type") + "" + - "shadow value" + shadowHourValue + "" + + "shadow value" + shadowhourvaluepercent.toFixed(1) + "%" + "" + ""; -- GitLab From 8776f62e14fd181bee0cdad13c06e56a9b265dc8 Mon Sep 17 00:00:00 2001 From: Beyza Turbil <91tube1bif@hft-stuttgart.de> Date: Wed, 8 Dec 2021 12:31:50 +0100 Subject: [PATCH 26/56] clean --- public/js/shadowPalette.js | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-) diff --git a/public/js/shadowPalette.js b/public/js/shadowPalette.js index 8fab0ad..978f49e 100644 --- a/public/js/shadowPalette.js +++ b/public/js/shadowPalette.js @@ -11,24 +11,7 @@ function getShadowPalette(inputShadowValue){ //console.log(inputShadowValue,"---",shadowPalette[index]); return shadowPalette[index]; - /* Can be ignored for now - if(!Number.isInteger(inputShadowValue)){ - var index = Math.ceil((shadowPalette.length-1)*inputShadowValue); - //console.log(shadowPalette[index]); - return shadowPalette[index]; - } - //edge case for 0 and 1 - else{ - //console.log(inputShadowValue); - if(inputShadowValue===0){ - //console.log(inputShadowValue); - return shadowPalette[shadowPalette.length-1]; - }else{ - return shadowPalette[0]; - } - //console.log("black",shadowPalette[shadowPalette.length-1]); - return shadowPalette[shadowPalette.length-1]; - }*/ + } -- GitLab From 12b3ad9dec8e010b1e5d8cdec637d91ab111eb46 Mon Sep 17 00:00:00 2001 From: Beyza Turbil <91tube1bif@hft-stuttgart.de> Date: Wed, 8 Dec 2021 12:40:04 +0100 Subject: [PATCH 27/56] clean --- public/js/shadowPalette.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/public/js/shadowPalette.js b/public/js/shadowPalette.js index 978f49e..8dbe915 100644 --- a/public/js/shadowPalette.js +++ b/public/js/shadowPalette.js @@ -11,7 +11,5 @@ function getShadowPalette(inputShadowValue){ //console.log(inputShadowValue,"---",shadowPalette[index]); return shadowPalette[index]; - - } -- GitLab From 163080e6455ed44324e74e0ea0c01c01a869e3f9 Mon Sep 17 00:00:00 2001 From: Daria Kolokolnikova <72koda1bif@hft-stuttgart.de> Date: Thu, 16 Dec 2021 11:48:39 +0100 Subject: [PATCH 28/56] added json shadowdata --- public/test/APIdata/shadowData.json | 12677 ++++++++++++++++++++++++++ 1 file changed, 12677 insertions(+) create mode 100644 public/test/APIdata/shadowData.json diff --git a/public/test/APIdata/shadowData.json b/public/test/APIdata/shadowData.json new file mode 100644 index 0000000..21b08d3 --- /dev/null +++ b/public/test/APIdata/shadowData.json @@ -0,0 +1,12677 @@ +{ + "UUID_7753455f-b228-4d14-82a5-1c6d82c6089a": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_81c329c6-2b16-4212-b445-996339d651af": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_cd7ddbba-1fbf-4959-8e4e-f3014c856729": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_bbc2ba9d-360c-42b7-8a02-31c8f2bd6c95": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.8888889, + 0.22222222, + 0.11111111, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_58d6aa81-04a5-410b-bc65-63906a3cad61": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_fae27fce-397f-4f75-b97d-81b268f27ae5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.0625, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_268a6045-e081-4c5d-86bc-86faffe986e0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a948ac35-b7ab-4c45-b3ee-74868bb347e5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_fa637b98-2a4f-4ae5-bc6a-32635539aa05": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f26d47c6-1f24-4b9d-9c70-47f38730bab0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0.328125, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_6ce73cf1-124a-4fc2-ad2a-2cdc9b88c126": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_5ecf8a34-2fa1-4490-9b03-56c984956899": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.36923078, + 0.25384617, + 0.053846154, + 0.43076923, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9af1029c-105f-4c93-8334-4dde238f59d0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_5d9af607-5703-4d16-a8a5-94feda8c5a9f": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_1d0197d3-0fe3-4f8c-82d5-228fac7c348c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_ab7bcd45-1843-4df5-8a5a-0b336d1a05b0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_07a78d67-21af-4876-a67d-cd4097a1afad": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.72727275, + 0.6363636, + 0.6363636, + 0.54545456, + 0.36363637, + 0.6363636, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_55a0322f-41f1-45bd-b3f3-1c4d6d40c2a1": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_0aa74a00-507f-4c92-80a9-121dda3017f7": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a7553205-b36d-47b2-b1e9-502abe1372d2": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.15625, + 1, + 0.75, + 0.1875, + 0, + 0, + 0.25, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_8025c453-9082-488a-9bbd-e1d2182b6fc4": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.76171875, + 0.9316406, + 0.7636719, + 0.33984375, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d58b99c0-420e-453c-8177-b76f2d0d88f2": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_3d359140-97c6-46da-bdb6-9fcfdc464495": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0.5, + 0.875, + 0.5, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_8b66fb42-297a-4c0c-a33b-eebc317423f0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_2fb42705-1cae-4df3-925c-1f2399a15b82": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_fbf3b023-9368-4454-ae31-e327e416924b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.25, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_84f6f179-8b1b-44d6-a2e2-978134474c76": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_40ac62ab-a174-4f6d-8964-254b281b7df2": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 0.875, + 0.375, + 0.375, + 0.125, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_457835a9-a43f-4e27-9dfa-1a5b1cdcc111": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.44444445, + 0.8194444, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f041736c-8d40-47eb-a117-da79a6bec1a0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.375, + 0, + 0.125, + 0.25, + 0.375, + 0.5, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_812d40e7-944e-4e18-9df9-72820aa2d9c5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.25, + 0.40625, + 0.1875, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_566cb98c-1d42-4155-bbcb-d08453b3925b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_3fd60066-68da-4fa8-9489-0235456ffda8": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_1a7b499d-2600-40e3-b7fd-c3a77b4efc6f": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.2890625, + 0.671875, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_195f6e4e-24b1-4916-a975-4a490fa582aa": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.22916667, + 0.5104167, + 0.27604166, + 0.3125, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_c4c232ab-6a50-4faf-b92d-65c0891d7cdb": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0.4375, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f9679991-ae42-44db-86dd-a055b01e2abc": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9a5dfff2-4fe3-48e5-86ab-16d7fad7a11d": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_957491ca-7a74-473b-b405-ba22aa2cb07c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.8333333, + 0.6666667, + 0.16666667, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e7cc0d59-4931-40b3-9573-b95cba2af83c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4ef37b51-6a25-4519-92f2-6fe6c5c89916": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_992d99b4-f927-4728-b7a9-afd275064704": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0.9375, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_02cdee5e-6c89-407d-897c-dc779eb775fb": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0.9375, + 0.953125, + 0.953125, + 0.953125, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_3ee52434-4977-4c5a-a50f-b5b187447788": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_ae67f56c-8b4f-4b28-8720-a3a096ecf464": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_5af7a752-2312-46dc-821d-f17983cfed27": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_c962fbb2-6640-4aef-9d5e-3a8362f12ea5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_bcbacc00-4b9c-45b5-b1a8-65bb6f738970": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_ddee6b34-492a-4393-96c1-240e2dde4295": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_3015cfed-0098-4ee0-8e86-315a40c10eda": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0.9375, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_c436083f-4e14-4a84-89c7-2e7d079e7070": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9a44c20a-36f1-4a1d-8f6a-d535817bc2d0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.2576923, + 0.15769231, + 0.08846154, + 0.09615385, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_32bf1d42-5859-4bb5-b75c-310e495d83fb": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_21222635-2165-48e8-8749-2305a95c88fb": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_78f4e665-a9f8-4727-b94b-e9d24a34c919": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_2566de59-2b92-4543-99ca-32b4c2a11ef4": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.5, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a492b21f-54ed-4ec3-b1e4-51594d1450ba": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.359375, + 0.34375, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_fbc17b7f-1591-452f-8672-9d2a4519dd6c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_71dbb92e-3534-4ab4-af1e-d71dc1539de5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_08808105-bfae-4fcb-8651-95034c5c906e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.055555556, + 0, + 0, + 0, + 0, + 0.16666667, + 0.7037037, + 0.9259259, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_c7d0a352-2926-4e80-92c1-2ae3f05a89d0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.52, + 0.02, + 0.24, + 0.4, + 0.56, + 0.72, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f4004977-3c56-4273-b04d-9d1bed613c82": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9bd17619-2904-4892-9d4a-d83f9e09e4c8": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.890625, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_0b0e8df5-34ef-4fa0-a275-4766d2c648b3": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.5, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_b406d56b-7716-4bc1-9629-f37fb06f153a": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_72887ef8-6750-4b71-a583-a2cb1421f1df": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_ee21145f-6e08-44f9-b8ed-72e5993e1f3c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e6636055-522b-4ee6-abb1-c276661807d6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_707e753b-fa6b-4414-aa0b-db7379b6272e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_97070ee3-970e-4b88-82ce-0ecb03454b4d": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_43da4b31-dc92-4aa6-a603-5a2659e339f0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_3492f7b0-b627-4177-9f87-04970f522c0d": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_3f992b63-a3f7-4ccb-bb64-74a4105c204a": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_99384841-3058-42c6-a06c-07eacbe05b17": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4dd91845-8919-4be0-ad15-a80864c197a6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_7f1f7ad0-bec4-4039-b904-331f958a4e41": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.53125, + 0.21875, + 0.1484375, + 0.65625, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e1923cef-8460-4c13-b4f3-073e9fb43189": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_44135809-0819-4036-84ea-a9e288342802": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_38f710d1-ca2b-4cdd-b53f-0a78ac52c907": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_25603369-42be-4e48-a163-43422d60899f": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_991aa7dd-af72-4773-b2a5-aa8e6c1bc69a": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 0.75, + 0.4375, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_de28b317-eb06-4483-a9d3-39984324e860": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.5, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_3f7ae0c8-e4be-4e7c-a8df-de2f38cb56a0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_57f4c05e-1eba-4c9d-8854-fa1c3d6b659c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0.4140625, + 0.921875, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_6ec91cda-91b8-4eb2-8546-35a7cb7496e3": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0.5294118, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_761ed60d-dcb1-4425-b4ce-de72c96c9d7b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_8b64968d-208a-4952-87d7-710ddf9a529b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0.5, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4839e8df-8e91-44f5-b39f-451284e6c2f7": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9e2280d0-171c-4960-a0f8-eeb8c5d92b08": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_6b59a9e8-c707-40ef-a362-87c32554a3f3": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_67b77878-07b5-4592-b922-849453b0e580": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.5, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_af1a958f-fa41-445a-b05b-d51e9a3ef52c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_02f0d8f6-0a62-4ea5-9474-902fef69c4c9": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.9583333, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_56325d4f-fc63-40ff-8f3a-441f6b5c6462": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_31b2280a-7cbf-410e-a876-88eb7bf53343": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9481d2f2-6b99-47fb-94d5-f37892142139": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_82cbf957-e8b3-4ee4-a292-0c5f4d5e3dea": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_0e99ad9a-09d3-435e-a682-ce2a5eacf6f0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.765625, + 1, + 0.5625, + 0.5, + 0.0625, + 0, + 0.609375, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_99c8db61-028b-4806-9267-5b409ac598ab": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_32b10ca5-11b9-4991-90ec-4e29f4e00320": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_18c4df88-8e9b-46f1-a6cf-df652963ad8c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_55f93cac-ec2c-4afc-b500-526f565159d7": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_0fe420c5-0c9a-4b08-ba3c-aff0d8935f6c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_5da23783-4c49-4f6c-bc10-ff875c814ad0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_7f286497-51e8-4946-9c9a-fe1cad3a3f43": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e7e998e4-72be-4e3b-96e5-f7518dac0ac9": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.03125, + 0, + 0, + 0, + 0, + 0, + 0.28125, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9612afe0-4896-44ab-a03e-798a07cbf21c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.28125, + 0, + 0, + 0, + 0, + 0, + 0, + 0.9375, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_3910101c-34ea-44d2-834a-89188102f90a": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_5e672374-fe2c-4ba9-a01b-d5e11fd14d54": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0.9375, + 0.5, + 0.25, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_b0ec28e7-9429-43cb-a9de-2c8b4a69393c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.875, + 0.75, + 0.625, + 0.875, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_c3bc680d-b681-4265-9aee-861554b24c93": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_5a545385-27a6-47cc-bfff-2c875f0f0b9c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.359375, + 0.90625, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_14ef45dc-3006-4359-ac91-917ac3fddc47": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d9f30c13-fd53-45a4-a729-859743d79035": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e9e5666a-fc1c-4e35-aa2c-2a8453fbd41b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e9cab54e-004b-4549-a86f-c9a14fdbd585": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9e21f367-cb0a-49f7-be1c-c9eb75aab09b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0.5862069, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9e4abf3c-f402-432e-9936-392607f7f972": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_eeda7956-1b07-4eab-88e6-9666cb1a7450": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_fbdb2ee9-f66f-4433-905d-2e848a0545b6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.9375, + 0.578125, + 0.21875, + 0.546875, + 0.765625, + 0.84375, + 0.984375, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_825f105f-ea73-47e5-9430-5f982717a75b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.65625, + 0.375, + 0.1875, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_1fea13d0-cdd3-4dd5-82f5-61b961862df0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.1875, + 1, + 0.9765625, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_6e99ec64-1dbd-4aa1-bd46-22f265eefbe5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.7894737, + 0.65789473, + 0.55263156, + 0.7105263, + 0.68421054, + 0.68421054, + 0.69736844, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_818d4c6b-7d70-4ebe-a394-c97683a4ba4d": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_6fb0a2d8-c109-4296-8522-8127c278ded5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e1a0308a-12ce-4033-a6db-c4a0a553273b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e8017e76-dc99-4096-b7bd-48c1925d9577": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0.25, + 0.25, + 0, + 0, + 0.5, + 0.5, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4615edda-87b7-4201-b608-f7d4368621c4": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.9404297, + 0.3310547, + 0.09277344, + 0.12011719, + 0.13867188, + 0.15136719, + 0.19628906, + 0.4189453, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_78b26692-2e4b-4ec8-9ae1-1402c4238f2f": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_6bba801d-02e7-4484-8597-2838f6f3d9ec": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_3203ae83-9ef9-44f7-ab14-f99559251a2f": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_0491f818-47fa-44de-95f9-41d8ed1113ac": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_7f139a0b-0f45-4176-8f44-04da877614f6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_da0ad132-9a0e-47b5-91db-50593a4d618d": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_52c547f2-b8fb-45b1-8de5-6c1074b7a52b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e0a01435-4206-4624-8431-901eb40a1c2d": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_85fbfdc3-2671-46d0-9a73-8917b6dcb7c6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.15625, + 0.1171875, + 0, + 0, + 0, + 0.546875, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_b9731284-ce7e-450a-8a10-f3ad7ba4ae79": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d195b981-ee88-4630-b7de-cc371426653b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.75, + 0.5, + 0.5, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_fb95932b-f518-4cfb-9156-675fa13cbdc5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_384929e2-22af-4fbd-886d-75845720a459": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a5dcfd4c-4424-4994-8156-2df75496fce4": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.125, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_21bfc431-48ff-4ad2-a93b-a9b358c717c0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.25, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_27cfadbe-6434-45ae-b608-edcc118115bb": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e11bbeed-80b5-40a4-ba65-c78bc3b96782": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0.75, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_8c02e481-aafd-469a-92f7-01e3c5124975": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_c190dc5c-0306-4e45-b202-37235c81dcd6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_964718c2-cea8-40bd-96af-f1ee8b3f4c5c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.5, + 0.25, + 0.21875, + 0.125, + 0, + 0.28125, + 0.5625, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a9515456-e155-46ce-ab01-da5ec7068af7": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0.8333333, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4a035182-97de-404a-a85c-26add42e8e87": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_603a7e7a-e438-4c23-a1f2-710742ade2ac": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0.0625, + 0.125, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_2617d41c-09a5-44ab-8f9c-404493dbac7d": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.25, + 0.375, + 0.625, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_17bf3d18-e68c-487b-b8d3-15d8f87f37bb": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d71da9a3-9e63-4a64-8a58-b9ea23d02600": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_33d12cce-99ba-430d-97df-0a306f7bdaec": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.5, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_5116b4b5-608a-4a94-b919-3548809b660f": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.2614679, + 0.16055046, + 0.22018349, + 0.3119266, + 0.6559633, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_938001b0-e7cf-4502-ac0a-a672dcb8b93b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a2437a39-ad88-4bcb-86eb-46cdc8fe5340": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_964d86db-acea-49e9-b46a-f798216f46cf": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d68b1526-4f9c-465c-aaf5-18638a0bf301": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0.96875, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_b30843f4-d8aa-4ae2-b178-e686f7835d0b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_11b3fbdf-fecc-4195-882d-19aff567dcd7": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_6e08a48f-7a76-46b5-aa7d-7d8d69c889b0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.5, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_106920fa-b003-40d5-891b-e8747f5aed09": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.7578125, + 0.3515625, + 0.109375, + 0.1796875, + 0.390625, + 0.8046875, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e1ada066-caab-4c86-9c9b-51676221796c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_1adfada5-b8f5-441a-b9e0-f3b9bcb25d77": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_52dac0bd-27b5-4ee4-b556-e025f1a42332": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_15bcff36-c555-4396-a8ae-8f9137274ac8": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.20930232, + 0.1627907, + 0.11627907, + 0.81395346, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a4499fa6-b42c-4e0f-8d1e-7cb63dad0a38": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.5, + 0, + 0, + 0.5, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_b3be2340-2ec5-4bd0-88dd-0ba086bd7865": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.0625, + 0.0625, + 0.15625, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_7789fb3a-b0ad-4422-9cda-c11829e0cf84": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_de9398da-b939-4b8a-9d67-8a9cc1f021cc": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_bdabd334-3b5e-4178-b3e8-65c569217a23": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_03052136-c998-444d-b9d6-6807762ce854": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_3dd51113-c55e-4503-adbe-cbf71ee16d14": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.75, + 0.5, + 0.25, + 0.9166667, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_37fc9a8e-a277-4097-b227-d9dab98573f2": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_cb915a82-9549-4487-96a4-17d1e3227f09": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0.27083334, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_229a3c9d-e551-4253-9fbc-e2315eca12fd": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e4591002-d9ce-4ebd-b9e4-1e6285f0de55": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_471bd23b-5227-447d-8ff8-83f65d1bc9d4": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d980bf57-48ed-4b47-a049-965e11f103f7": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_0261686b-855c-4891-babd-aa7f90c69276": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.5, + 0, + 0, + 0, + 0, + 0, + 0.875, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_19cb5eb7-4dc1-47dd-8a90-b63ca6d3518e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.25, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_1fcd85d5-e05b-4a99-80db-9110d524803a": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.8888889, + 0.22222222, + 0.3888889, + 0.6111111, + 0.9444444, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_fdd9aa04-4a2a-47ef-9820-3595f31ffff2": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.9902344, + 0.6328125, + 0.44335938, + 0.4248047, + 0.36621094, + 0.17285156, + 0.5595703, + 0.5800781, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_caeee7d5-0cf8-4f03-bb4d-334306500a9c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.14285715, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_cafc345f-83e9-4720-bc99-f1a2663a7609": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.75, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_af99c84c-6e13-4260-b0f4-5ed7506a944a": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.09375, + 0, + 0, + 0, + 0, + 0, + 0.875, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_1bf1b11d-2f12-4528-8b46-15f5df31e06c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.75, + 0.875, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e3d9a287-37f0-4bcb-9a87-381eca5c33f7": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e54401f4-068a-4b9a-927b-0beddcffcf4e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_79c28f1e-e8af-4d06-9b40-17e7d333bc91": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_b3f424df-8891-423a-8986-44ba3efe2a58": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_acdad893-b3bc-4ab3-8059-0bc004059341": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d0037f74-f1c9-4761-88bb-4650bf972694": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_620d338c-9230-41e0-88e1-cb9082c3be88": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.11637931, + 0.21982759, + 0.42672414, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_34f61645-d6e6-4259-96b3-ff80b17db90c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_94f060f7-afd6-4354-8b54-8f9189aca486": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_ac8b9ae6-5e0f-470f-b8e1-4797892863e4": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.6015625, + 0.5, + 0.3515625, + 0.6953125, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_5893b6d3-e2f4-490b-9745-7231a9d8540d": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.7083333, + 0.5555556, + 0.22222222, + 0.41666666, + 0.3888889, + 0.4027778, + 0.45833334, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_383a1a79-3875-41fc-8525-abeec6819d2c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4adb424c-92eb-4969-9865-b9f5cc562071": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.3846154, + 0.96153843, + 0.42307693, + 0.96153843, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_c9ed39e2-0c9b-4540-bdac-fb07de5859ff": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_492084a9-9b4e-437a-b5ee-8da466d4755c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9bb8ff19-83c2-48a6-98e0-a38e8084f388": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_2e14e4f7-7c80-4c3b-8700-9ff2c739f734": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_19744aae-4044-42c5-8111-5b7ecd92815c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.5, + 0.5, + 0.5, + 0.5, + 0.5, + 0.25, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_461d82b4-f922-470d-a713-12bd2d14bed6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_920d5ac3-b3d1-474f-99d2-e48a173561fb": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.0625, + 0, + 0, + 0, + 0, + 0, + 0.90625, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4aa4f039-c488-43a0-9a53-836ecac0b9b4": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.875, + 0.5, + 0.125, + 0.875, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d9bb44fb-42bb-4ac6-b3c5-6269435858a4": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_ab2a6d3a-4a68-41df-8e08-f6b2cc988aa8": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_62bce822-e437-4f12-997f-ff12c31e8378": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_5dc7e947-aff0-4f61-bb50-39741ff4d506": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0.11111111, + 1, + 0.33333334, + 0.8888889, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_771ef0ac-f3e9-481b-9321-1d968b0a58da": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.8, + 0.6, + 0.6, + 0.6, + 0.6, + 0.6, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_cec8871d-3484-4d74-a79e-da6e6f23772f": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9930f62d-05d9-4a18-bb8a-c6794ecbfaaf": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_ef4a88da-ecc3-45e9-ae6a-50b727c09745": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.0625, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_42191fd2-1700-44e9-8c18-655d93154d67": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_cbbe8a48-ea79-471a-96e8-802e7994dac6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0.5, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_1d7277c6-742d-4896-b728-5d78f3f02c7f": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.75, + 0.625, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_893f5615-40f9-4903-8da4-b871454e010e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_045bb409-cb00-4a65-a26e-33e617eb3abc": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_358fb21a-2970-4d14-b2fa-ec229ebe3718": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.8125, + 0.84375, + 0.46875, + 0.4375, + 0.25, + 0, + 0.25, + 0.5625, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_47d81209-51f2-4a86-830e-df8cc5869a39": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 0.75, + 0.4375, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_813df8da-ed8a-474a-b9e0-eb80a42bc175": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_8e8f6ed0-0bd6-4fed-9ddb-f42374233b21": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_225e825a-ed9d-4602-9f86-4dac18d332ad": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_8b584524-805d-4257-99bd-cee34fe34b48": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.9, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_73042dc5-9f00-4335-aaea-5123d7ec4d7b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_fefd0522-1d71-4f8d-a763-3f1bac6424a0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e6c2fe0c-6c81-4462-8900-bb3446e97d18": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_ab07a1ae-6db1-4545-82d9-6df113711bc8": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_01937e4f-9d4d-4699-9f46-2a30ff8438dd": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a0adeee5-69fb-48a4-925a-981ce8ba5d42": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.5683594, + 0.23242188, + 0.23242188, + 0.24707031, + 0.26757812, + 0.28515625, + 0.30566406, + 0.4248047, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_7d013d84-7733-4c92-b2e8-3b90794f09c5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.8203125, + 0.94921875, + 0.796875, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d8f4b5c7-b3e5-440e-a192-77c8959f25f3": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.421875, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9b9f93a4-b778-4df9-b4b4-ea8cd36de6bc": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a847afec-d1df-474e-a2e9-68351d968307": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.6875, + 0.125, + 0.125, + 0.0625, + 0, + 0.125, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_6f31e587-a590-49af-a311-1af52704ac9c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_b96f542c-19ac-43d7-bf1e-c6226d17d834": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e7cb68e0-f877-4a3f-ab98-2501ad376db3": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_5ea61c7d-0a1c-49d8-9f22-587d489925be": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_cbe4ea07-c7df-4e61-9614-dd289be0867f": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.9910714, + 0.91964287, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d27ee47e-783c-4431-a8d3-4c748b4eecf7": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_c704ade8-847f-4ed4-824d-caf06679001e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.5, + 0.1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4f053e98-ae06-4546-b632-3d5e0bf7146c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_094dddfe-d049-492b-abae-03aa008bb7c4": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_fcc29cd4-88e1-4c7f-bffc-f40d6aeb7497": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9426d148-d78b-44ff-b611-6ae0a4398cf1": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_daba712e-d469-420e-a4ea-a4e13a50f4b1": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.9765625, + 0.9453125, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_34d5e2a3-9566-4331-8d72-08fef4d23fbf": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.22222222, + 0.8888889, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_31eeda1b-5782-4600-ab50-f40f67adc081": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.953125, + 0.4921875, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_ec1bc033-bb52-442c-9268-5420fdcda903": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f660c680-dea2-4064-8cd2-435a390d9e49": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.6550388, + 0.8217054, + 0.6802326, + 0.7248062, + 0.7790698, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_991d419d-0892-4e1c-bce5-1dad0cc81f51": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d3b37212-cf42-47b9-bbd3-eb44b4a599f4": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_1745073d-9487-4778-9b76-b66e6cd48548": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0.125, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_04ad9b4e-bb77-4aab-8cb2-2c60ce820e19": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.34375, + 0.3125, + 0.21875, + 0.375, + 0.96875, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d4ea091a-97c2-470f-a9af-d8d4eb7081db": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_c6d6f7e1-d84d-42e7-8c06-233714f82665": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_b4cfd102-698c-43d9-83a8-fb7922dd6c41": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.89855075, + 0.8586956, + 0.8297101, + 0.942029, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_119b693b-6a3c-45be-9120-a750afc2cc19": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0.25, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_0c2caf0d-3e5a-4f7b-83da-3089337c84ad": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d9f56d35-ed77-41fe-8e50-69ebe3072506": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_6364e70a-f3aa-4e2d-ba29-5dab28c6b9f4": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.875, + 0.1875, + 0.015625, + 0.0078125, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_dce64529-f5d6-4ff9-b81d-d42df12adf87": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9d5c0747-b370-4039-899f-727b75b04598": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_79b56ca7-63b6-46a3-bb04-08061e9a9084": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_7a7ce949-4552-48b2-bd3b-dd0be3042cf5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_ac61607a-33ea-44f1-b88a-1a641ba5abbd": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_54ec49cd-92c9-4fce-ad6f-815dd3fb0c41": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.3885135, + 0.6959459, + 0.14527027, + 0.18243243, + 0.48986486, + 0.6418919, + 0.9358108, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4f9d0be5-9ec6-4f67-aa6f-f32507b757c2": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9a679588-1ccf-4abd-8858-e209ebda2887": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_95022f8a-6655-4986-9d29-a2c23c9c2466": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4a5a9118-fdcf-4f5a-9431-318c34f155b8": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.97445256, + 0.97445256, + 0.9781022, + 0.99452555, + 0.9817518, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_cce35785-4686-4b5a-ae7b-69ec34d65e8c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0.75, + 0.5, + 0.75, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_aeef8d6c-de4c-4270-b960-03834ae87965": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_8c7932a6-d130-4cfb-b957-7f39770dc371": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f26b8cd8-0073-499b-a72d-c589eebeefbe": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_01316ea8-48ab-41a5-bc34-a5a073534ba0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9f2ed48f-a1db-40d9-a105-ff0fc5c30be1": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_20c07571-3720-4823-8ad1-865a8e0e98ab": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.875, + 0.875, + 0.625, + 0.625, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_5dbdf276-de8c-4f45-9b07-44213470899b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_14756508-c489-4467-8d49-aa6a7bd8b42c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_b28dd7ce-0af9-4ba1-beaa-ac700edada6c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.875, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_cb1e16e1-d5f4-4627-87b0-7c1849509683": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.5, + 0.875, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_fb6c84e9-cd6b-4eec-9c90-39ef68a45ddc": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.625, + 0.5, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_95b3af8a-636c-47d2-ad1b-112ea3b57176": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.734375, + 0.171875, + 0, + 0, + 0, + 0, + 0.09375, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_6d715dc1-af1b-4a40-814d-4aae583ea85d": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_5ea53f4a-d4d7-46d3-b320-157b54617b66": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_5e0764dd-2969-45b0-8f4d-7b13ba06696e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.75, + 0.25, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_c8eda24d-3365-42c0-bcc4-edc46c09f86d": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.09090909, + 0.10909091, + 0.16363636, + 0.3272727, + 0.3272727, + 0.3272727, + 0.3272727, + 0.4181818, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_280e7094-de41-4ae6-93d5-350e9297fa17": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.25, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_1bd457cb-73b4-4c4e-b5f2-76fa564919c7": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.121875, + 0.0125, + 0.0125, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4a11fb7f-b4d2-4d23-95ea-e6ea363537d9": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.6875, + 0.5, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_329643be-9b80-4a8c-bb6e-8e03ddb0626f": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_938299d0-d17c-4095-ae47-4399ce912f6c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_2ebd41dd-b72a-4039-bf86-a75c28b53159": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_bf2ba53e-11c8-4925-96a5-d928deb208f7": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_1eef98c8-aa67-4c55-b687-7897544aba30": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_0d3b51de-2938-4349-8ebd-c3e880473e05": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_01a7e672-ec3c-4f88-b94d-b1c6e394a9d6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_ea145b1a-cee1-4e73-9ac0-e090f687c480": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.2361111, + 0.2361111, + 0.2361111, + 0.4027778, + 0.6111111, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_48cb8833-7ce7-42e6-8f8f-96acabcd18b6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.28125, + 0.1875, + 0.09375, + 0.09375, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_cd2f3664-64a7-4dfe-aee2-98ae8c8fd548": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_128e4998-b9d1-46cc-b941-e7e9a9398c08": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.0625, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f9140348-f8d3-44c1-b115-513260f5e482": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9982d59a-a52a-4c23-9b7a-e4b8ebbd658e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.6818182, + 1, + 1, + 1, + 1, + 0.97727275, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_64bfc94e-3ace-401c-9dd4-451e0553fd93": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_c2d20aba-ab16-412e-8b36-44eccd5ec348": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.015625, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9b9ebc7f-b123-4abe-9f78-bea3db0fe15c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.0625, + 0.3125, + 0.625, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e2ee4b40-2889-4c56-b061-f6f0c7c4500c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_fa73ac87-7cbc-4b0c-8839-cb6641073c56": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 0.9375, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_146be5f4-cd97-4df5-876c-62856b0ac96a": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_3828b874-3acd-476f-b0d8-e84da23e2867": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_fe3dec2a-f589-43a3-8b67-a75655305efa": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_82a1e50e-7133-4632-8f73-ed5fe52c4d7b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.45454547, + 0.27272728, + 0.90909094, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_bc851a60-f353-41ea-a7a7-b2613de08b98": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.84249085, + 0.54212457, + 0.46520147, + 0.37362638, + 0.3003663, + 0.43223444, + 0.5934066, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_b6fe212c-e761-4d9f-91b4-da11d091da59": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.71875, + 0.875, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a244c37d-2c4d-4bc4-8716-9309fbffe992": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.10526316, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_2b729e0e-278f-4636-8eb5-95643e8e2427": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.5, + 0.375, + 0.3125, + 0.5, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_cff58a98-ac56-49e9-b8ff-dd4017c71e0c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.9375, + 0.5, + 0.25, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4e0cd282-3ff4-478e-b9ab-9c40cc2bde93": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_8acf7a41-9c97-4ce9-b809-e9a46e923270": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.5, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e2229ce2-1fba-4e9f-8189-a0849e140d19": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_dc693ec6-2d3a-4e2f-8dad-09290a1d80a4": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_925b1142-09bf-4acb-9979-a7562413cc44": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d5a030f4-d8e8-49be-9483-9977bc6b384d": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_872a9288-d67d-4891-ab6d-6123baf87401": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_04839b19-65b7-49e6-a24e-b2e9c2f86320": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0.4375, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_82189676-65a5-4315-9d4c-374057900c77": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.03125, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e35d0f57-1724-424a-b009-930cd6775317": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_12fd3d72-92f5-4cb2-8f8f-de312a95af59": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.125, + 0, + 0.125, + 0.5, + 0.75, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d596e517-a221-43cc-9c42-b37a4b3e0d0f": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0.40625, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f6e522b6-6ef7-4f88-bb3f-6792333dda05": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.859375, + 0.765625, + 1, + 0.46875, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f3562347-25e9-470b-9f00-966609cfef88": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_56575c83-25be-4271-b0be-5c44e7991904": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d92fcf67-c9e3-496d-b212-a49576cb8239": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0.083333336, + 0.16666667, + 0.33333334, + 0.5, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_95845041-4873-4e56-bf6c-f91611241d0e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.875, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a7aff2cd-3ac1-48f9-81e9-04af0a10f0ef": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_7bbe1fe2-89a2-4c11-b392-e52104b94d87": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_415d3e1a-c76f-4e8f-9e61-d5b211ac3fa2": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e7f6ba18-1b2b-48f1-a7d6-7c520fc0064b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0.875, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_754db639-0f12-4ef4-a485-e7a32e4380a6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_612e69c4-9a1f-49d5-8345-cd4cc3a76310": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.9765625, + 0.9609375, + 0.8828125, + 0.984375, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_b3d4dcd9-8412-4703-a536-1899739900ed": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e3df9194-aef6-4b08-bdf5-52b5cdbffa51": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9c3b34c9-e143-4f3d-947c-a685b65a5716": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_cf5059b4-a066-4c14-95ff-d44f6de83472": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.125, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_810b623c-c6b1-435b-a202-ede92d0efa3e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_ee6d5be5-0e75-47ad-b7df-974398675bb2": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_11524850-3fa8-4580-a0c4-b8181bbf66a4": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.703125, + 0.390625, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_7203c0b0-3a7a-4dd1-9ff7-d76be141c18f": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_371abbaf-56ba-4f3c-84c5-21dc6bea7cb8": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_268612e8-aeed-4026-af1a-406c25e6c722": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_98e19f4d-9e51-4b9c-8859-9f1c64390fbc": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_ab69e8cf-3a66-40ca-83b8-75291a1c568e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_04c2c852-010a-49db-88d6-29c8806bcbcf": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d14baada-ed27-4f48-b924-ca61d59617ee": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_650f25d6-843e-4379-9fdd-a0a96cc2adfb": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.75, + 0.75, + 0.25, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_18452535-d2d4-4fe9-a8e2-3bbca396e0bf": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.4, + 0.4, + 0.4, + 0.4, + 0.4, + 0.6, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f13a17f8-5611-410b-8575-16d2de7a2954": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4d58725e-2cab-40a5-8564-07f81b5a2cfa": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.7109375, + 0.15625, + 0.08984375, + 0.0859375, + 0.08203125, + 0.0859375, + 0.265625, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_6ffb876b-5968-40c9-aca4-f20910b2725d": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0.22222222, + 0.44444445, + 0.5555556, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a7288d2e-50b7-4396-ac70-d59971397c64": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_12437aa1-0345-4c34-b837-4e0cef8ac558": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_cea44eaf-15ce-41ae-8178-cd081bf2e9d7": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_2de8aff6-b2df-492f-b4af-31ed1d8af3d1": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_56b96340-ec2e-475d-bdc4-4ecb60528d64": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_121fe722-ea5a-406f-9df3-8ecde33a584d": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4e96f790-e538-4d51-8a60-6f2d9f20c0ac": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.21875, + 0.3125, + 0.75, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_0b4d68bb-abd3-4458-8501-b6c6d1ff5cf5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_93926817-454d-45f2-8592-467fadd59020": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_b5a642bf-e83c-410b-ad95-b302deeb4651": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.5, + 0, + 0, + 0, + 0, + 0, + 0.6875, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d40f2e0c-8129-435d-ad1e-4930e86d0ab9": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.3, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_37054018-386d-4fd8-8bc1-cd3c9009eb29": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_05afe1be-b936-4cd1-933e-3f8587527449": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_2d57fb17-7510-4044-b828-39a9f8052b65": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0.8125, + 0.78125, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_e069f818-29fa-4a2c-a82d-16a3c444d762": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_fe5cf5c2-f978-42ab-8c03-b36fe93f11ef": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_7b9f8319-bd38-4959-b912-4f09fe91b0e7": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.125, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_71191f1c-fb86-452a-80f5-607c3c707b0b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_54c09df4-de90-440e-9fe4-6969b631a227": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0.9, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a6b63935-761e-4a54-946f-d455caf7958b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_87eaee31-153a-43f5-b6b3-b6609d13200b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_08c4bd6c-c8cd-4fb8-9a1c-c1ad96de660b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_170d96b3-a806-4125-ac7e-ff532cdd48a1": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_32e37c74-ceaa-47eb-a43e-a4e2186920b4": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_ec690f9f-e024-4d88-9897-941e21daadf6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_fad8df35-b513-4114-9038-d81b2ec540fe": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.46484375, + 0.03125, + 0.03515625, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4347fa87-1eae-4158-8db9-dd0bf486277c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_79057ea8-b7be-4e98-ad38-bc9abe841252": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0.33333334, + 1, + 0.33333334, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_48bbb424-f047-4f50-bebf-7aec6380d8f7": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.25, + 0, + 0, + 0, + 0, + 0, + 0, + 0.75, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d5ba6929-c83f-427e-bd2d-2c723a93b600": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.9807692, + 0.75, + 0.63461536, + 0.8076923, + 0.96153843, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4c2ed09f-7e83-4d73-960e-d770c12508d5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_0094115d-cbe6-48e1-b500-1f4cb2dd69c6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.007017544, + 0.003508772, + 0.003508772, + 0.003508772, + 0.47894737, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4b1d52f0-59eb-40f9-b72a-d95704691795": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_3d3ebd95-4d16-4ea9-a75c-035b214f90af": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.84375, + 0.99609375, + 0.87109375, + 0.7578125, + 0.56640625, + 0.25, + 0.3828125, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_1f5ed191-5557-4f0e-9491-d2f101673ed5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0.9375, + 0.953125, + 0.953125, + 0.953125, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f4cdbc57-6fa8-4007-b263-c68fe8c44bf4": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_b7540e4f-9b8b-4b24-a045-a1addb3b2178": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_0100ebad-b91a-45b5-8865-e2586cb5b215": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0.375, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d32ec391-544b-4ced-a5e8-4c8cd3f71ca6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_232a0296-4e18-4e84-b159-748c37ef3b27": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_35455a4c-95e8-40ae-a36f-9c522cd063fa": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4ea067bb-7a54-4030-b966-5d164c12129a": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.22222222, + 0.22222222, + 0.5555556, + 0.8888889, + 0.44444445, + 1, + 0.22222222, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_5aa9f490-bf9b-4be5-9b75-d9661cea3a1c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_271cec23-6e64-4e70-9cd4-002c0165b5fe": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_94832d82-506b-4397-9cd7-7bd223220604": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f1416ef0-b847-427b-b70e-9caa28e9acb6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.5555556, + 0.8888889, + 0.44444445, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_654c48e7-7645-4946-8317-8944bec9dcd3": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.9170507, + 0.6267281, + 0.39170507, + 0.34101382, + 0.29493088, + 0.24884793, + 0.24884793, + 0.2764977, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_72534f4a-f09d-40f2-b7fa-90f3e77d2e94": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.6875, + 0.25, + 0.125, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_08405868-c8be-41a2-95cc-608a33db0e11": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_80ba4c7e-dc37-44a6-94af-382dd5138525": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a28d5962-844c-41ec-82eb-32d5b4652026": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_749684b2-3cbd-46ec-b042-d4256fbb73a7": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_b6f09119-88c3-48bd-a9e1-e41ba3441f59": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.875, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_78ee7a28-61fe-4220-80bb-0f6ded415a30": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0.96875, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_01ca696c-b28e-4bae-a8cf-57786c07b3f5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_348faa05-1db7-490a-b1f8-0a420a9161cd": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.765625, + 0.0234375, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f19e18d1-b214-4dfc-b4f4-5e91a0b725c9": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a92ed232-589f-4176-bad7-e9711d000d0f": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_961c8b8d-57f9-4618-a909-164c0a94862d": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.47560975, + 0.17073171, + 0.036585364, + 0.036585364, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_6748595f-0f2d-4748-82b9-8d58165933ca": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.4375, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_30d18516-6121-4c32-8e91-3d72cac991e6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0.5, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_2d483758-e375-4e10-957c-8ff95536658e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_b8dcfb23-cb36-4873-80b3-2bfa9d1a923f": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a84f544f-cbc9-4105-aaf3-b90c9a5927db": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.15625, + 0.015625, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_34fffbeb-77c1-4f8e-8772-237ea57ab560": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_3fc23039-9fd5-4c97-bbf0-a749fb82b980": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_13d00cdd-c3b2-4a5e-aed9-be2e771ee79e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f3b30fee-b7e1-402d-bf70-08bf554c21b2": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_c3001b9e-3c82-4fc1-8acc-0ef8bebb2723": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.375, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4b6f6570-9103-4f8d-949d-8b7a628f0f66": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_46a4d6e9-8f2a-474e-a586-dea6c5163f40": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_da03c969-0522-4fed-8be0-a6343145bdfe": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_383b1edc-ec37-4091-9c77-bab10a9c77b6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_05b5cba2-cd5d-404b-b04c-921e7717b3e8": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_28b808b3-d921-4693-99ea-39231f47d281": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_63fe10cc-383a-4f46-a03f-e8c9ce918521": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_57f7c6fc-9009-4239-b77f-89e96709a5f5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_b578d333-92c1-4543-b581-a716d862180e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.25, + 0.125, + 0.125, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_0eb2221b-1c5d-496c-be19-3dcf774358e5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.75, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4443ca2b-d282-4ef8-88d5-f05ca4cc21f5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f12b4b21-d16c-4b3c-bfe2-090c03703ccc": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_016b4d02-b7a0-4c73-aaf7-75a6fae3bf3d": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.25, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f857968b-98d9-4d8d-accd-d8e484e3600e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_42f81aac-e23e-4d87-b4f2-47ec5512251f": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_bcb39b4b-67f9-4bfb-84f2-b09c9e1b9fa5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_c6c2d79e-d1c4-40c5-86a5-2580036c4ff6": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_ad4aa5e2-160d-4fcb-a1ba-96587358c615": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a0938d1b-bc6a-4540-83e8-64168f69e16e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.375, + 0, + 0.125, + 0.25, + 0.375, + 0.5625, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_466c758c-3bf8-4998-9786-3f0329558ee0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.75, + 0.859375, + 0.359375, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_54f01beb-2944-40bb-ad58-5eff5e449a81": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_60738826-46bd-4485-88bc-6a72ffa11e0b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.5, + 0, + 0, + 0, + 0.33333334, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_2ca24573-6377-4ae7-83a6-729a2e756539": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.44791666, + 0.390625, + 0.49739584, + 0.7838542, + 0.8463542, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_adb3b361-1fb5-445d-80b2-22f9067661dd": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.375, + 0.0625, + 0.0625, + 0, + 0, + 0.09375, + 0.28125, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_b2c81e65-a504-46af-857e-85a6d1b6ee1f": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.90625, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_82fd7b48-2c4a-4eac-b42f-78877bd90c0a": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.3125, + 1, + 0.9921875, + 0.828125, + 0.8984375, + 0.375, + 0.5, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_43e72240-b03e-46bc-b2aa-b49c559d06d8": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9c33c2d8-c301-40bb-871f-5038e778be80": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.59375, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4b0b444a-4029-4964-8d89-3301a10b0ff4": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_085d6bab-1e47-4ba0-87dc-a09ed9ddb1dc": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_9c50c737-8b30-4260-9d29-b8ac48ae8bda": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a7eb3c35-eba9-4d51-9382-908aa211d8a7": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f51b62b8-3c82-41a9-952a-43b5793f0a99": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0.9, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_6b164df2-0a31-45ec-9f44-2a530d220adb": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_091c6d44-0e8c-4cff-9f65-3f2b39ae9782": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_effe54c5-92c1-4fb8-8916-2078a8357cad": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.5, + 0.6666667, + 0.16666667, + 0.33333334, + 0.5, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_fe968b94-03dd-4786-9442-c7b4838afd06": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a530287a-654b-4aed-965a-545177149ad9": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0.5, + 0.375, + 0.25, + 0.5, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_28824fbc-e5cf-4f33-a473-c2c6a30e24ee": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a1962cce-6fd4-4290-819f-7f3cd0f45940": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0.33333334, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_2b10d56a-4cb7-494a-a247-1018dbfba660": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.020833334, + 0, + 0, + 0, + 0, + 0, + 0, + 0.875, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_87391a45-a77d-4b19-93d6-65be4c92e178": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_f1501c2c-fd63-4287-be48-137b2025a637": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_bfa5f73d-561a-40d8-9ccd-3fe751448873": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_5a2e79d9-d60d-4b3a-bc96-748f2f299ecc": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_21efd857-0bea-4ad6-a812-0db76fde74d1": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_5d4cab01-3ef1-4cd1-8579-dbafa8f2b348": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d410031f-750f-4a98-a601-1849fd3c6d22": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_cc139c04-8dc1-44a6-b696-5996dd3bdab1": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_61e310bb-95fd-406d-89da-0d7d3973afd0": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 0.9375, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_a628c1f6-9b7c-43fb-b4fc-d35ab1e05bb5": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0.75, + 0.75, + 0.5, + 0, + 0.5, + 0.5, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_83523888-8936-4054-9d95-42621a4b60ed": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0.93359375, + 0.72265625, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_5b95b854-2848-45fc-82fb-767ee9d49991": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_1baa9f23-8eea-42b3-bcfe-b7fe98404bdb": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_2e648693-bdd9-4fe2-900c-dc799a1232e4": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d29e8eb8-4c51-49e0-a311-1a46173fb8cf": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_0d34569c-53e1-4600-b371-1f466550b31a": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d63cbef2-f97c-4d74-bf69-54c9a45ecb07": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_7c40d484-f258-4ddd-98bb-f7683e6d707d": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_fd51d8c4-ce31-4ebb-8528-1033dc39092b": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_0dce0aac-d1e1-4b43-a741-eab711adc0be": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.125, + 0.890625, + 0.8046875, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_2696caa2-5050-4a5f-9439-8276900d6e2e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_662e7bec-56c0-47b1-8828-9529b601a59e": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.3125, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_8df12314-b4b2-47e5-817c-ab23d4fe1e39": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_1a021481-935d-4979-b7d3-776357528bf8": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_d5f81628-144c-4f01-8dea-069706cbcb7c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_06dc581a-6d8c-4bc7-9d5e-8240db9f9613": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_1896e4ff-1af5-4d57-8e19-b340c8661ab1": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.0625, + 0.9609375, + 0.921875, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_18ffdd3f-b512-497e-b652-a8088305d0c3": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_1e34af99-a64d-4e39-8939-c5b78a5d185c": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_71574107-33b5-4e78-9519-e1630e652574": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.25, + 0.25, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_4468518d-61c9-46c1-aee5-45c4e5889076": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "UUID_aa1e360f-c36e-4759-9ad2-176cfd93e604": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ] + } \ No newline at end of file -- GitLab From 47a4c7d8903a407741071d1fbd80e56766931312 Mon Sep 17 00:00:00 2001 From: Daria Kolokolnikova <72koda1bif@hft-stuttgart.de> Date: Thu, 16 Dec 2021 12:00:54 +0100 Subject: [PATCH 29/56] fixed access to userguide --- public/main.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/main.html b/public/main.html index fef43da..034e67c 100644 --- a/public/main.html +++ b/public/main.html @@ -212,7 +212,7 @@ -- GitLab From 3e74ace58662a90e4d3e8bd73ded00fd4e7f6144 Mon Sep 17 00:00:00 2001 From: Daria Kolokolnikova <72koda1bif@hft-stuttgart.de> Date: Thu, 16 Dec 2021 13:26:40 +0100 Subject: [PATCH 30/56] implemented getLocalShadowData() --- public/js/connectToAPI.js | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/public/js/connectToAPI.js b/public/js/connectToAPI.js index 714407c..a514281 100644 --- a/public/js/connectToAPI.js +++ b/public/js/connectToAPI.js @@ -5,7 +5,7 @@ var url2 = "http://vm24.fkc.hft-stuttgart.de:8082/workflow/timedShadowValueByDay /*TODO#1: -get current data from the api and create local test data (apiData foler) -add connection handeling (error messages when there isnt a connection and then using the local test data) */ - +var localShadowData = "/3dclient4simstadtapi/public/test/APIdata/shadowData.json" var buildingFunctionSort var constructionYearSortPick @@ -91,19 +91,25 @@ const response = await fetch(url, { document.getElementById("loader").style.visibility = "hidden" +async function getLocalShadowdata(){ + // gets the response from the api and put it inside a constant + const response = await fetch(localShadowData); + //the response have to be converted to json type file, so it can be used + const data = await response.json(); + console.log(data) + // shadowData=data; + return data; + } function processData() { console.log(coordinatesBB) console.log("Waiting for data....") - - - timeout(25000, fetchshadowDataJSON()).then((response)=>{ console.log(response) shadowdata = response ; }).catch((error)=>{ //catching the error(no connection)/ timeout and displaying an alert for the user - - console.log("Using local test data"); + // shadowdata= getLocalShadowdata(); + console.log(shadowdata); //loadLocalAPIshadowData here... }) -- GitLab From 613d453402ddb772da848e3b076fe28a268eb25a Mon Sep 17 00:00:00 2001 From: BujarMuharemi Date: Thu, 16 Dec 2021 13:45:40 +0100 Subject: [PATCH 31/56] pvPotential data can be fetched from the API --- public/js/connectToAPI.js | 50 ++++++++++++++++++++++++++++++++++++--- 1 file changed, 47 insertions(+), 3 deletions(-) diff --git a/public/js/connectToAPI.js b/public/js/connectToAPI.js index a514281..37d6ee9 100644 --- a/public/js/connectToAPI.js +++ b/public/js/connectToAPI.js @@ -2,6 +2,8 @@ var coordinatesBB = [] //var url = "https://simstadt-api.iaf-ex.hft-stuttgart.de:8080/workflow/execute" //old link var url = "http://vm24.fkc.hft-stuttgart.de:8082/workflow/execute" // URL to API var url2 = "http://vm24.fkc.hft-stuttgart.de:8082/workflow/timedShadowValueByDay/" +var pvURL = "http://vm24.fkc.hft-stuttgart.de:8082/workflow/readPVPotential" + /*TODO#1: -get current data from the api and create local test data (apiData foler) -add connection handeling (error messages when there isnt a connection and then using the local test data) */ @@ -16,6 +18,35 @@ var roofTypeSortPick var uValueSortPick var shadowdata + +async function fetchPvPotentialJSON() { + var bottomLat = coordinatesBB[1] + var leftLng = coordinatesBB[0] + var rightLng = coordinatesBB[2] + var topLat = coordinatesBB[3] + + const response = await fetch(pvURL, { + method: "POST", + body: JSON.stringify({ + "boundingBox": { + "bottomLat": bottomLat, //48.779004965, + "leftLng": leftLng, //9.1686843081, + "lodType": "LOD2", + "rightLng": rightLng, //9.175336684, + "topLat": topLat //48.7822869656 + }, + "cityGMLRef": "campusLOD2" + }), + headers: { + "Content-Type": "application/json", + "Authorization": "Basic YWRtaW46YWRtaW4xMjM=" + } + }) + + const data = await response.json(); + return data +} + async function fetchshadowDataJSON() { var bottomLat = coordinatesBB[1] var leftLng = coordinatesBB[0] @@ -45,7 +76,6 @@ async function fetchshadowDataJSON() { } - async function fetchDataJSON() { var bottomLat = coordinatesBB[1] var leftLng = coordinatesBB[0] @@ -104,6 +134,7 @@ async function getLocalShadowdata(){ function processData() { console.log(coordinatesBB) console.log("Waiting for data....") + timeout(25000, fetchshadowDataJSON()).then((response)=>{ console.log(response) shadowdata = response ; @@ -112,16 +143,28 @@ function processData() { console.log(shadowdata); //loadLocalAPIshadowData here... }) + + timeout(10000, fetchPvPotentialJSON()).then((response)=>{ + console.log(response) + }).catch((error) => { + console.log(error) + }) - timeout(1000, fetchDataJSON()).then((response)=>{ + timeout(10000, fetchDataJSON()).then((response)=>{ calculateData(response); }).catch((error) => { console.log(error) + /* fetch("/3dclient4simstadtapi/public/test/APIdata/buildingInformation.json") .then(response => response.text()) .then(text => calculateData( JSON.parse(text))) + */ }) + + + + } @@ -407,7 +450,8 @@ function loadAndZoomToTileset(url){ tileset=viewer.scene.primitives.add(new Cesium.Cesium3DTileset({ url: url })); - + + viewer.zoomTo(tileset, new Cesium.HeadingPitchRange(0, -0.5, 0)); modal.style.display = "none"; saveTilesetContent(tileset) -- GitLab From b045e62363b1ef153d07694b37f24c374dfaf830 Mon Sep 17 00:00:00 2001 From: BujarMuharemi Date: Sun, 19 Dec 2021 14:05:34 +0100 Subject: [PATCH 32/56] added beautify extension and formated all files --- .jsbeautifyrc | 22 ++ public/js/connectToAPI.js | 138 ++++----- public/js/globe.js | 550 +++++++++++++++++----------------- public/js/shadowPalette.js | 9 +- public/js/sidebar.js | 124 ++++---- public/js/testingAPIValues.js | 7 +- 6 files changed, 434 insertions(+), 416 deletions(-) create mode 100644 .jsbeautifyrc diff --git a/.jsbeautifyrc b/.jsbeautifyrc new file mode 100644 index 0000000..1f0e79b --- /dev/null +++ b/.jsbeautifyrc @@ -0,0 +1,22 @@ +{ + "indent_size": 4, + "indent_char": " ", + "indent_level": 0, + "end-with-newline": true, + "indent_with_tabs": false, + "preserve_newlines": true, + "max_preserve_newlines": 10, + "jslint_happy": false, + "space_after_anon_function": false, + "brace_style": "collapse,preserve-inline", + "keep_array_indentation": false, + "keep_function_indentation": false, + "space_before_conditional": true, + "break_chained_methods": false, + "eval_code": false, + "unescape_strings": false, + "wrap_line_length": 0, + "css": { + "selector_separator_newline": false + } +} \ No newline at end of file diff --git a/public/js/connectToAPI.js b/public/js/connectToAPI.js index 37d6ee9..8ae2e99 100644 --- a/public/js/connectToAPI.js +++ b/public/js/connectToAPI.js @@ -19,23 +19,23 @@ var uValueSortPick var shadowdata -async function fetchPvPotentialJSON() { +async function fetchPvPotentialJSON() { var bottomLat = coordinatesBB[1] var leftLng = coordinatesBB[0] var rightLng = coordinatesBB[2] var topLat = coordinatesBB[3] - const response = await fetch(pvURL, { + const response = await fetch(pvURL, { method: "POST", body: JSON.stringify({ "boundingBox": { "bottomLat": bottomLat, //48.779004965, - "leftLng": leftLng, //9.1686843081, + "leftLng": leftLng, //9.1686843081, "lodType": "LOD2", - "rightLng": rightLng, //9.175336684, - "topLat": topLat //48.7822869656 - }, - "cityGMLRef": "campusLOD2" + "rightLng": rightLng, //9.175336684, + "topLat": topLat //48.7822869656 + }, + "cityGMLRef": "campusLOD2" }), headers: { "Content-Type": "application/json", @@ -51,17 +51,17 @@ async function fetchshadowDataJSON() { var bottomLat = coordinatesBB[1] var leftLng = coordinatesBB[0] var rightLng = coordinatesBB[2] - var topLat = coordinatesBB[3]// + var topLat = coordinatesBB[3] // var day = "1"; - const response = await fetch(url2 + day, { + const response = await fetch(url2 + day, { method: "POST", body: JSON.stringify({ "boundingBox": { "bottomLat": bottomLat, //48.779004965, - "leftLng": leftLng, //9.1686843081, + "leftLng": leftLng, //9.1686843081, "lodType": "LOD2", - "rightLng": rightLng, //9.175336684, - "topLat": topLat //48.7822869656 + "rightLng": rightLng, //9.175336684, + "topLat": topLat //48.7822869656 }, "cityGMLRef": "campusLOD2" }), @@ -80,17 +80,17 @@ async function fetchDataJSON() { var bottomLat = coordinatesBB[1] var leftLng = coordinatesBB[0] var rightLng = coordinatesBB[2] - var topLat = coordinatesBB[3]// + var topLat = coordinatesBB[3] // -const response = await fetch(url, { + const response = await fetch(url, { method: "POST", body: JSON.stringify({ "boundingBox": { "bottomLat": bottomLat, //48.779004965, - "leftLng": leftLng, //9.1686843081, + "leftLng": leftLng, //9.1686843081, "lodType": "LOD2", - "rightLng": rightLng, //9.175336684, - "topLat": topLat //48.7822869656 + "rightLng": rightLng, //9.175336684, + "topLat": topLat //48.7822869656 }, "cityGMLRef": "campusLOD2", "interestedAttributes": [ @@ -104,7 +104,7 @@ const response = await fetch(url, { "monthlyCooling", "pvPotential", "roofType", - "totalSurfaceArea" + "totalSurfaceArea" ], "properies": { "physicsUseScenario": false @@ -121,39 +121,39 @@ const response = await fetch(url, { document.getElementById("loader").style.visibility = "hidden" -async function getLocalShadowdata(){ +async function getLocalShadowdata() { // gets the response from the api and put it inside a constant const response = await fetch(localShadowData); //the response have to be converted to json type file, so it can be used - const data = await response.json(); + const data = await response.json(); console.log(data) - // shadowData=data; + // shadowData=data; return data; - } +} function processData() { console.log(coordinatesBB) console.log("Waiting for data....") - timeout(25000, fetchshadowDataJSON()).then((response)=>{ - console.log(response) - shadowdata = response ; - }).catch((error)=>{ //catching the error(no connection)/ timeout and displaying an alert for the user - // shadowdata= getLocalShadowdata(); + timeout(25000, fetchshadowDataJSON()).then((response) => { + console.log(response) + shadowdata = response; + }).catch((error) => { //catching the error(no connection)/ timeout and displaying an alert for the user + // shadowdata= getLocalShadowdata(); console.log(shadowdata); //loadLocalAPIshadowData here... - }) + }) - timeout(10000, fetchPvPotentialJSON()).then((response)=>{ - console.log(response) - }).catch((error) => { + timeout(10000, fetchPvPotentialJSON()).then((response) => { + console.log(response) + }).catch((error) => { console.log(error) - }) - - - timeout(10000, fetchDataJSON()).then((response)=>{ - calculateData(response); - }).catch((error) => { + }) + + + timeout(10000, fetchDataJSON()).then((response) => { + calculateData(response); + }).catch((error) => { console.log(error) /* fetch("/3dclient4simstadtapi/public/test/APIdata/buildingInformation.json") @@ -162,14 +162,14 @@ function processData() { */ }) - - + + } -function calculateData(data){ +function calculateData(data) { console.log(data); document.getElementById("cesiumContainer").style.opacity = "1"; document.getElementById("loader").style.visibility = "hidden" @@ -199,7 +199,7 @@ function calculateData(data){ p.attributes.monthlyCooling, p.attributes.roofType))) - buildingsMAP.set(bu.id, new Building(bu.id, partsArray)) //puts buildings with parts and surfaces in a map + buildingsMAP.set(bu.id, new Building(bu.id, partsArray)) //puts buildings with parts and surfaces in a map }) @@ -299,7 +299,7 @@ function calculateData(data){ availableAttributes() //color buildings with heating demand - document.getElementById("checkbox2").addEventListener("change", function () { + document.getElementById("checkbox2").addEventListener("change", function() { if (this.checked) { tileContent.forEach(t => { let tileID = t.getProperty("gml_parent_id") @@ -318,7 +318,7 @@ function calculateData(data){ }) //color surfaces with uValue - document.getElementById("checkbox1").addEventListener("change", function () { + document.getElementById("checkbox1").addEventListener("change", function() { if (this.checked) { tileContent.forEach(t => { let tileID = t.getProperty("gml_id") @@ -377,13 +377,13 @@ var modal = document.getElementById("myModal"); var span = document.getElementsByClassName("close")[0]; //close the modal -span.onclick = function () { +span.onclick = function() { modal.style.display = "none"; deleteTilesetButtons() } // modal closes, when the user clicks anywhere outside of the modal -window.onclick = function (event) { +window.onclick = function(event) { if (event.target == modal) { modal.style.display = "none"; deleteTilesetButtons() @@ -401,24 +401,24 @@ var localTestTileset = '/3dclient4simstadtapi/public/test/gmlTileset_v1.json'; function timeout(ms, promise) { return new Promise(function(resolve, reject) { - setTimeout(function() { - reject(new Error("timeout")) - }, ms) - promise.then(resolve, reject) + setTimeout(function() { + reject(new Error("timeout")) + }, ms) + promise.then(resolve, reject) }) } - + //fetching the tileset and handling the connection -async function fetchTileset(){ - timeout(1000, fetch(tilesetURL)).then((response)=>{ - loadAndZoomToTileset(tilesetURL); - }).catch((error)=>{ //catching the error(no connection)/ timeout and displaying an alert for the user +async function fetchTileset() { + timeout(1000, fetch(tilesetURL)).then((response) => { + loadAndZoomToTileset(tilesetURL); + }).catch((error) => { //catching the error(no connection)/ timeout and displaying an alert for the user //var errorString = error["stack"]+"\n"+error["message"]; // formatting the error array - swal({text:"Could not connect to Server. Using now: local data",icon:"info" } ); + swal({ text: "Could not connect to Server. Using now: local data", icon: "info" }); console.log("Using local test data"); loadAndZoomToTileset(localTestTileset); //TODO#3: fix the link so the local tileset can be loaded - }) + }) } @@ -436,26 +436,26 @@ async function fetchTileset(){ //loads tileset after submit button is clicked -function loadTileset() { +function loadTileset() { viewer.scene.primitives.remove(tileset); tileContent = []; modal.style.display = "block"; - + fetchTileset(); - + //var userurl = document.getElementById("3Durl").value; //returns the chosen area from the dropdown } //loads the tileset from the url into the cesium viewer and zooms to it -function loadAndZoomToTileset(url){ - tileset=viewer.scene.primitives.add(new Cesium.Cesium3DTileset({ +function loadAndZoomToTileset(url) { + tileset = viewer.scene.primitives.add(new Cesium.Cesium3DTileset({ url: url })); - + viewer.zoomTo(tileset, new Cesium.HeadingPitchRange(0, -0.5, 0)); - modal.style.display = "none"; - saveTilesetContent(tileset) - deleteTilesetButtons() + modal.style.display = "none"; + saveTilesetContent(tileset) + deleteTilesetButtons() } @@ -469,7 +469,7 @@ function useContent(content) { document.getElementById("myList").appendChild(element); - element.onclick = function () { + element.onclick = function() { tileset = viewer.scene.primitives.add(new Cesium.Cesium3DTileset({ url: cont.href })); @@ -494,13 +494,13 @@ function saveTilesetContent(tileset) { function deleteTilesetButtons() { var x = document.getElementsByName("individualTileset") var len = x.length - + //checking if there are even tileset to delete - if(x.length>0){ + if (x.length > 0) { parentNode = x[0].parentNode; for (var i = 0; i < len; i++) { parentNode.removeChild(x[0]); } } - + } diff --git a/public/js/globe.js b/public/js/globe.js index e292bf6..c1a6367 100644 --- a/public/js/globe.js +++ b/public/js/globe.js @@ -9,7 +9,7 @@ var viewer = new Cesium.Viewer('cesiumContainer', { animation: false, sceneModePicker: false, geocoder: false, - + }); viewer.scene.globe.depthTestAgainstTerrain = true; @@ -31,11 +31,11 @@ nameOverlay.style.padding = "4px"; nameOverlay.style.backgroundColor = "white"; -var chosenDate = new Cesium.GregorianDate(2021,12,2,11); //the chosen Date from the Timeline +var chosenDate = new Cesium.GregorianDate(2021, 12, 2, 11); //the chosen Date from the Timeline //getting clicked Date from the timeline element viewer.timeline.container.onmouseup = (e) => { - var julianDate=viewer.clock.currentTime; + var julianDate = viewer.clock.currentTime; Cesium.JulianDate.toGregorianDate(julianDate, chosenDate); //console.log(chosenDate); } @@ -69,7 +69,7 @@ var radio = document.getElementById('radio-group'); var gmlID; -radio.addEventListener('click', function () { +radio.addEventListener('click', function() { //hide chart for individual buildings singleChart.style.visibility = 'hidden'; @@ -89,105 +89,105 @@ radio.addEventListener('click', function () { // Color a feature yellow on hover. viewer.screenSpaceEventHandler.setInputAction(function onMouseMove(movement) { - pickedselect = true; + pickedselect = true; - // If a feature was previously highlighted, undo the highlight - tileContent.forEach(t => { - if (t.getProperty("gml_parent_id") === hoverpid) { - highlightedFeatures.forEach(h => { - if (Cesium.defined(h.feature) && (t.getProperty("gml_id") === h.feature.getProperty("gml_id"))) { - t.color = h.originalColor; + // If a feature was previously highlighted, undo the highlight + tileContent.forEach(t => { + if (t.getProperty("gml_parent_id") === hoverpid) { + highlightedFeatures.forEach(h => { + if (Cesium.defined(h.feature) && (t.getProperty("gml_id") === h.feature.getProperty("gml_id"))) { + t.color = h.originalColor; + } + }); + } + }); + highlightedFeatures = []; + hoverpid = 0; + + // Pick a new feature + var pickedFeature = viewer.scene.pick(movement.endPosition); + if (!Cesium.defined(pickedFeature)) { + nameOverlay.style.display = "none"; + return; + } + + //SURFACE-VIEW + if (document.getElementById("surface").checked) { + + // A feature was picked, so show it's overlay content + nameOverlay.style.display = "block"; + nameOverlay.style.bottom = viewer.canvas.clientHeight - movement.endPosition.y + "px"; + nameOverlay.style.left = movement.endPosition.x + "px"; + + if (!Cesium.defined(pickedFeature) || !(pickedFeature instanceof Cesium.Cesium3DTileFeature)) { + nameOverlay.style.display = 'none'; + return; + } + + var name = pickedFeature.getProperty("gml_id"); + var shadowhourvaluepercent = 0; + nameOverlay.textContent = "ID: " + name + "\t shadowvalue:" + shadowhourvaluepercent; + // Highlight the feature if it's not already selected. + selectedFeatures.forEach(s => { + if (s.feature === pickedFeature) { + pickedselect = false; } }); - } - }); - highlightedFeatures = []; - hoverpid = 0; - - // Pick a new feature - var pickedFeature = viewer.scene.pick(movement.endPosition); - if (!Cesium.defined(pickedFeature)) { - nameOverlay.style.display = "none"; - return; - } - //SURFACE-VIEW - if (document.getElementById("surface").checked) { + hoverpid = pickedFeature.getProperty("gml_parent_id"); - // A feature was picked, so show it's overlay content - nameOverlay.style.display = "block"; - nameOverlay.style.bottom = viewer.canvas.clientHeight - movement.endPosition.y + "px"; - nameOverlay.style.left = movement.endPosition.x + "px"; + if (pickedselect) { + tileContent.forEach(t => { + if (t === pickedFeature) { + if (t.getProperty("feature_type") === "RoofSurface") { + highlightedFeatures.push(new featurevar(t, t.color)); + t.color = Cesium.Color.GREEN; + + } else { + highlightedFeatures.push(new featurevar(t, t.color)); + t.color = Cesium.Color.YELLOW; + } + + } + }); + } - if (!Cesium.defined(pickedFeature) || !(pickedFeature instanceof Cesium.Cesium3DTileFeature)) { - nameOverlay.style.display = 'none'; - return; } - var name = pickedFeature.getProperty("gml_id"); + //Building View + else if (document.getElementById("building").checked) { + // A feature was picked, so show it's overlay content + nameOverlay.style.display = "block"; + nameOverlay.style.bottom = viewer.canvas.clientHeight - movement.endPosition.y + "px"; + nameOverlay.style.left = movement.endPosition.x + "px"; - nameOverlay.textContent = "ID: " + name + "\t shadowvalue:" + shadowhourvaluepercent; - // Highlight the feature if it's not already selected. - selectedFeatures.forEach(s => { - if (s.feature === pickedFeature) { - pickedselect = false; + if (!Cesium.defined(pickedFeature) || !(pickedFeature instanceof Cesium.Cesium3DTileFeature)) { + nameOverlay.style.display = 'none'; + return; } - }); - hoverpid = pickedFeature.getProperty("gml_parent_id"); - if (pickedselect) { - tileContent.forEach(t => { - if (t === pickedFeature) { - if(t.getProperty("feature_type")==="RoofSurface"){ - highlightedFeatures.push(new featurevar(t, t.color)); - t.color = Cesium.Color.GREEN; + name = pickedFeature.getProperty("gml_parent_id"); + hoverpid = name; - }else{ + nameOverlay.textContent = name; + // Highlight the feature if it's not already selected. + if (hoverpid !== selectpid) { + tileContent.forEach(t => { + if (t.getProperty("gml_parent_id") === hoverpid) { highlightedFeatures.push(new featurevar(t, t.color)); t.color = Cesium.Color.YELLOW; } - - } - }); - } - - } - - //Building View - else if(document.getElementById("building").checked){ - // A feature was picked, so show it's overlay content - nameOverlay.style.display = "block"; - nameOverlay.style.bottom = viewer.canvas.clientHeight - movement.endPosition.y + "px"; - nameOverlay.style.left = movement.endPosition.x + "px"; - - if (!Cesium.defined(pickedFeature) || !(pickedFeature instanceof Cesium.Cesium3DTileFeature)) { - nameOverlay.style.display = 'none'; - return; + }); + } } - - name = pickedFeature.getProperty("gml_parent_id"); - hoverpid = name; - - nameOverlay.textContent = name; - // Highlight the feature if it's not already selected. - if (hoverpid !== selectpid) { - tileContent.forEach(t => { - if (t.getProperty("gml_parent_id") === hoverpid) { - highlightedFeatures.push(new featurevar(t, t.color)); - t.color = Cesium.Color.YELLOW; - } - }); + //Roof View + else if (document.getElementById("roof").checked) { + console.log("clicked when in roof view and on hover"); } - } - //Roof View - else if(document.getElementById("roof").checked){ - console.log("clicked when in roof view and on hover"); - } - -}, + }, Cesium.ScreenSpaceEventType.MOUSE_MOVE); @@ -199,220 +199,220 @@ var pickHeatedVolume var pickTotalSurfaceArea = 0 var pickRoofType var pickUValue -var shadowHourValue=0; +var shadowHourValue = 0; //Color a feature on selection and show metadata in the InfoBox viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { - //hide chart for individual buildings - singleChart.style.visibility = 'hidden'; + //hide chart for individual buildings + singleChart.style.visibility = 'hidden'; - pickedhigh = false; + pickedhigh = false; - pickedalreadyselect = false; + pickedalreadyselect = false; - // If a feature was previously selected, undo the highlight - tileContent.forEach(t => { - if (t.getProperty("gml_parent_id") === selectpid) { - selectedFeatures.forEach(s => { - if (Cesium.defined(s.feature) && (t.getProperty("gml_id") === s.feature.getProperty("gml_id"))) { - t.color = s.originalColor; - } - }); + // If a feature was previously selected, undo the highlight + tileContent.forEach(t => { + if (t.getProperty("gml_parent_id") === selectpid) { + selectedFeatures.forEach(s => { + if (Cesium.defined(s.feature) && (t.getProperty("gml_id") === s.feature.getProperty("gml_id"))) { + t.color = s.originalColor; + } + }); + } + }); + selectpid = 0; + selectedFeatures = []; + + //pick a new feature + var pickedFeature = viewer.scene.pick(movement.position); + if (!Cesium.defined(pickedFeature)) { + clickHandler(movement); + return; } - }); - selectpid = 0; - selectedFeatures = []; + selectpid = pickedFeature.getProperty("gml_parent_id"); - //pick a new feature - var pickedFeature = viewer.scene.pick(movement.position); - if (!Cesium.defined(pickedFeature)) { - clickHandler(movement); - return; - } - selectpid = pickedFeature.getProperty("gml_parent_id"); + //Show chart for individual buildings. But only if building view is activated + if (Cesium.defined(pickedFeature) && (!document.getElementById("surface").checked)) { + singleChart.style.visibility = 'visible'; + } - //Show chart for individual buildings. But only if building view is activated - if (Cesium.defined(pickedFeature) && (!document.getElementById("surface").checked)) { - singleChart.style.visibility = 'visible'; - } + /*select the feature if it's not already selected + selectedFeatures.forEach(s => { + if (pickedFeature === s.feature) { + console.log("return"); + pickedalreadyselect = true; + } + }); - /*select the feature if it's not already selected - selectedFeatures.forEach(s => { - if (pickedFeature === s.feature) { - console.log("return"); - pickedalreadyselect = true; - } - }); + if(pickedalreadyselect){ + return; + }*/ - if(pickedalreadyselect){ - return; - }*/ + highlightedFeatures.forEach(h => { + if (h.feature === pickedFeature) { + pickedhigh = true; + } + }); - highlightedFeatures.forEach(h => { - if (h.feature === pickedFeature) { - pickedhigh = true; - } - }); + //fill individual charts + gmlID = pickedFeature.getProperty("gml_parent_id"); + surID = pickedFeature.getProperty("gml_id") + + pickBuildingFunction = "Not Defined" + pickYearOfConstruction = "Not Defined" + pickHeight = "Not Defined" + pickHeatedVolume = "Not Defined" + pickTotalSurfaceArea = 0 + pickRoofType = "Not Defined" + pickUValue = "Not Defined" + + //fill variables for Single Building Properties + fillTableProperties(gmlID, surID) + + + //Surface View + if (document.getElementById("surface").checked) { + resetRoofColors(); + //save the selected feature's original color + if (pickedhigh) { + highlightedFeatures.forEach(h => { + if (h.feature === pickedFeature) { + selectedFeatures.push(new featurevar(h.feature, h.originalColor)); + } + }); + highlightedFeatures = []; - //fill individual charts - gmlID = pickedFeature.getProperty("gml_parent_id"); - surID = pickedFeature.getProperty("gml_id") - - pickBuildingFunction = "Not Defined" - pickYearOfConstruction = "Not Defined" - pickHeight = "Not Defined" - pickHeatedVolume = "Not Defined" - pickTotalSurfaceArea = 0 - pickRoofType = "Not Defined" - pickUValue = "Not Defined" - - //fill variables for Single Building Properties - fillTableProperties(gmlID, surID) - - - //Surface View - if (document.getElementById("surface").checked) { - resetRoofColors(); - //save the selected feature's original color - if (pickedhigh) { - highlightedFeatures.forEach(h => { - if (h.feature === pickedFeature) { - selectedFeatures.push(new featurevar(h.feature, h.originalColor)); - } - }); - highlightedFeatures = []; + //highlight newly selected feature + tileContent.forEach(t => { + if (t === pickedFeature) { + console.log(t.getProperty("description") + "\n" + t.getProperty("feature_type") + "\n" + t.getProperty("gml_id") + "\n" + t.getProperty("gml_parent_id")); - //highlight newly selected feature - tileContent.forEach(t => { - if (t === pickedFeature) { - console.log(t.getProperty("description")+"\n"+t.getProperty("feature_type")+"\n" + t.getProperty("gml_id") + "\n" + t.getProperty("gml_parent_id")); - - t.color = Cesium.Color.LIME; - - //color surfaces depending on their shadow value - for (const [key, value] of Object.entries(shadowdata)) { //looping threw the shadowdata array - if(key === t.getProperty("gml_id")){ //checking if the ids of the current surface match the id in the shadowdata array - //console.log("hour:",chosenDate.hour); - shadowHourValue = value[chosenDate.hour-1] //getting the current chosen hour from the timeline - //console.log("shadowHourValue",shadowHourValue); - - t.color = Cesium.Color.fromCssColorString(getShadowPalette(shadowHourValue)); //coloring the surface - - } - } - } - }); - } else { - tileContent.forEach(t => { - if (t === pickedFeature) { - selectedFeatures.push(new featurevar(t, t.color)); - } - }); - //highlight newly selected feature - tileContent.forEach(t => { - if (t === pickedFeature) { - t.color = Cesium.Color.LIME; - } - }); - } + t.color = Cesium.Color.LIME; - var shadowhourvaluepercent = 100-(shadowHourValue*100) - //set feature infobox description (surface view) - var featureName = pickedFeature.getProperty("name"); - selectedEntity.name = featureName; - selectedEntity.description = 'Loading
'; - viewer.selectedEntity = selectedEntity; - selectedEntity.description = - '' + - "" + - "" + - "" + - "" + - "" + - - - "
Surface_ID" + pickedFeature.getProperty("gml_id") + "
u_Value" + pickUValue + "
description" + pickedFeature.getProperty("description") + "
feature_type" + pickedFeature.getProperty("feature_type") + "
shadow value" + shadowhourvaluepercent.toFixed(1) + "%" + "
"; - + //color surfaces depending on their shadow value + for (const [key, value] of Object.entries(shadowdata)) { //looping threw the shadowdata array + if (key === t.getProperty("gml_id")) { //checking if the ids of the current surface match the id in the shadowdata array + //console.log("hour:",chosenDate.hour); + shadowHourValue = value[chosenDate.hour - 1] //getting the current chosen hour from the timeline + //console.log("shadowHourValue",shadowHourValue); - } + t.color = Cesium.Color.fromCssColorString(getShadowPalette(shadowHourValue)); //coloring the surface - //Building View - else if(document.getElementById("building").checked){ - resetRoofColors(); - //save the selected feature's original color - if (pickedhigh) { - highlightedFeatures.forEach(h => { - if (h.feature.getProperty("gml_parent_id") === selectpid) { - selectedFeatures.push(new featurevar(h.feature, h.originalColor)); - } - }); - highlightedFeatures = []; + } + } + } + }); + } else { + tileContent.forEach(t => { + if (t === pickedFeature) { + selectedFeatures.push(new featurevar(t, t.color)); + } + }); + //highlight newly selected feature + tileContent.forEach(t => { + if (t === pickedFeature) { + t.color = Cesium.Color.LIME; + } + }); + } - //highlight newly selected feature - tileContent.forEach(t => { - if (t.getProperty("gml_parent_id") === selectpid) { - t.color = Cesium.Color.LIME; - } - }); + var shadowhourvaluepercent = 100 - (shadowHourValue * 100) + //set feature infobox description (surface view) + var featureName = pickedFeature.getProperty("name"); + selectedEntity.name = featureName; + selectedEntity.description = 'Loading
'; + viewer.selectedEntity = selectedEntity; + selectedEntity.description = + '' + + "" + + "" + + "" + + "" + + "" + + + + "
Surface_ID" + pickedFeature.getProperty("gml_id") + "
u_Value" + pickUValue + "
description" + pickedFeature.getProperty("description") + "
feature_type" + pickedFeature.getProperty("feature_type") + "
shadow value" + shadowhourvaluepercent.toFixed(1) + "%" + "
"; - } else { - tileContent.forEach(t => { - if (t.getProperty("gml_parent_id") === selectpid) { - selectedFeatures.push(new featurevar(t, t.color)); - } - }); - //highlight newly selected feature - tileContent.forEach(t => { - if (t.getProperty("gml_parent_id") === selectpid) { - t.color = Cesium.Color.LIME; - } - }); } - buildings(gmlID) - - //set feature infobox description (building view) - var featureName = pickedFeature.getProperty("name"); - selectedEntity.name = featureName; - selectedEntity.description = 'Loading
'; - viewer.selectedEntity = selectedEntity; - selectedEntity.description = - '' + - "" + - "" + - "" + - "" + - "" + - "" + - "" + - "
Building_ID" + pickedFeature.getProperty("gml_parent_id") + "
buildingFunction" + pickBuildingFunction + "
yearOfConstruction" + pickYearOfConstruction + "
height" + pickHeight + "
heatedVolume" + pickHeatedVolume + "
Total_Surface_Area" + pickTotalSurfaceArea + "
rooftype" + pickRoofType + "
"; + //Building View + else if (document.getElementById("building").checked) { + resetRoofColors(); + //save the selected feature's original color + if (pickedhigh) { + highlightedFeatures.forEach(h => { + if (h.feature.getProperty("gml_parent_id") === selectpid) { + selectedFeatures.push(new featurevar(h.feature, h.originalColor)); + } + }); + highlightedFeatures = []; - } + //highlight newly selected feature + tileContent.forEach(t => { + if (t.getProperty("gml_parent_id") === selectpid) { + t.color = Cesium.Color.LIME; + } + }); - //Roof View - //BUG: shows random attributes ui element ?? - else if(document.getElementById("roof").checked){ - console.log("clicked when in roof view and on click"); + } else { + tileContent.forEach(t => { + if (t.getProperty("gml_parent_id") === selectpid) { + selectedFeatures.push(new featurevar(t, t.color)); + } + }); - //looping threw all surfaces - tileContent.forEach(t => { - if(t.getProperty("description").includes("Roof")){ //HACK: checking if the are a roof surface (should come from feature_type) - for (const [key, value] of Object.entries(shadowdata)) { //looping threw the shadowdata array - if(key === t.getProperty("gml_id")){ //checking the id - console.log(value); - shadowHourValue = value[chosenDate.hour-1]; //getting the current chosen hour from the timeline - t.color = Cesium.Color.fromCssColorString(getShadowPalette(shadowHourValue)); //coloring the surface + //highlight newly selected feature + tileContent.forEach(t => { + if (t.getProperty("gml_parent_id") === selectpid) { + t.color = Cesium.Color.LIME; } - } - + }); } - - }); - } -}, + buildings(gmlID) + + //set feature infobox description (building view) + var featureName = pickedFeature.getProperty("name"); + selectedEntity.name = featureName; + selectedEntity.description = 'Loading
'; + viewer.selectedEntity = selectedEntity; + selectedEntity.description = + '' + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "
Building_ID" + pickedFeature.getProperty("gml_parent_id") + "
buildingFunction" + pickBuildingFunction + "
yearOfConstruction" + pickYearOfConstruction + "
height" + pickHeight + "
heatedVolume" + pickHeatedVolume + "
Total_Surface_Area" + pickTotalSurfaceArea + "
rooftype" + pickRoofType + "
"; + + } + + //Roof View + //BUG: shows random attributes ui element ?? + else if (document.getElementById("roof").checked) { + console.log("clicked when in roof view and on click"); + + //looping threw all surfaces + tileContent.forEach(t => { + if (t.getProperty("description").includes("Roof")) { //HACK: checking if the are a roof surface (should come from feature_type) + for (const [key, value] of Object.entries(shadowdata)) { //looping threw the shadowdata array + if (key === t.getProperty("gml_id")) { //checking the id + //console.log(value); + shadowHourValue = value[chosenDate.hour - 1]; //getting the current chosen hour from the timeline + t.color = Cesium.Color.fromCssColorString(getShadowPalette(shadowHourValue)); //coloring the surface + } + } + + } + + }); + } + + }, Cesium.ScreenSpaceEventType.LEFT_CLICK); @@ -483,14 +483,14 @@ function fillTableProperties(gID, sID) { } -function resetRoofColors(){ +function resetRoofColors() { tileContent.forEach(t => { - if(t.getProperty("description").includes("Roof")){ - for (const [key, value] of Object.entries(shadowdata)) { - if(key === t.getProperty("gml_id")){ - t.color = Cesium.Color.WHITE; + if (t.getProperty("description").includes("Roof")) { + for (const [key, value] of Object.entries(shadowdata)) { + if (key === t.getProperty("gml_id")) { + t.color = Cesium.Color.WHITE; } - } - } + } + } }); } diff --git a/public/js/shadowPalette.js b/public/js/shadowPalette.js index 8dbe915..0482acd 100644 --- a/public/js/shadowPalette.js +++ b/public/js/shadowPalette.js @@ -1,15 +1,14 @@ //Shadow palette for coloring the roofs //color pallet white->black -var colorPalette = ['#ffffff','#f0f0f0','#d9d9d9','#bdbdbd','#969696','#737373','#525252','#252525']; -const shadowPalette = colorPalette.reverse(); +var colorPalette = ['#ffffff', '#f0f0f0', '#d9d9d9', '#bdbdbd', '#969696', '#737373', '#525252', '#252525']; +const shadowPalette = colorPalette.reverse(); //returns the responding color from the shadowPalette, depending on the inputShadowValue(0 to 1 in float) -function getShadowPalette(inputShadowValue){ +function getShadowPalette(inputShadowValue) { //checking for the float values - var index = Math.ceil((shadowPalette.length-1)*inputShadowValue); + var index = Math.ceil((shadowPalette.length - 1) * inputShadowValue); //console.log(inputShadowValue,"---",shadowPalette[index]); return shadowPalette[index]; } - diff --git a/public/js/sidebar.js b/public/js/sidebar.js index 6416ddb..05931d0 100644 --- a/public/js/sidebar.js +++ b/public/js/sidebar.js @@ -4,75 +4,73 @@ var radio = document.getElementById('radio-group'); var filterswitches = document.getElementById('filterswitches'); //Show / hide chart -chartButton.addEventListener('click', function () { - //sets as default attribute building function - myChartArea("bar", "Building Function", 1, "Building Type", "Frequency", coloR); - addGlobalData(areaChart, buildingType, btFrequency, btFrequency.length) +chartButton.addEventListener('click', function() { + //sets as default attribute building function + myChartArea("bar", "Building Function", 1, "Building Type", "Frequency", coloR); + addGlobalData(areaChart, buildingType, btFrequency, btFrequency.length) - if (drawBox === false) { - swal("CAN'T LOAD DATA!", "mark an area first!", "error"); - } else { - var x = document.getElementById('areaChartContainer'); - - if (x.style.visibility === 'visible') { - //button.firstChild.data = "Show chart"; - x.style.visibility = 'hidden'; + if (drawBox === false) { + swal("CAN'T LOAD DATA!", "mark an area first!", "error"); } else { - //button.firstChild.data = "Hide chart"; - x.style.visibility = 'visible'; - } - } -}, false); + var x = document.getElementById('areaChartContainer'); -heatingdemand.addEventListener('click', function () { - var x = document.getElementById('heat-demand-legend'); - if (!document.getElementById('checkbox2').checked) { - x.style.visibility = 'hidden'; - } else { - x.style.visibility = 'visible'; - } + if (x.style.visibility === 'visible') { + //button.firstChild.data = "Show chart"; + x.style.visibility = 'hidden'; + } else { + //button.firstChild.data = "Hide chart"; + x.style.visibility = 'visible'; + } + } }, false); -radio.addEventListener('click', function () { - if (document.getElementById("surface").checked) { - document.getElementById("checkbox1").disabled = false; - document.getElementById("checkbox2").disabled = true; - if (document.getElementById("checkbox2").checked) { - document.getElementById("checkbox2").checked = false; - document.getElementById('heat-demand-legend').style.visibility = 'hidden'; - tileContent.forEach(t => t.color = new Cesium.Color(1, 1, 1, 1)) - } - } - else { - document.getElementById("checkbox1").disabled = true; - document.getElementById("checkbox2").disabled = false; - if (document.getElementById("checkbox1").checked) { - document.getElementById("checkbox1").checked = false; - tileContent.forEach(t => t.color = new Cesium.Color(1, 1, 1, 1)) +heatingdemand.addEventListener('click', function() { + var x = document.getElementById('heat-demand-legend'); + if (!document.getElementById('checkbox2').checked) { + x.style.visibility = 'hidden'; + } else { + x.style.visibility = 'visible'; } - } }, false); -filterswitches.addEventListener('click', function () { - if (drawBox === false) { - swal("CAN'T LOAD DATA!", "mark an area first!", "error"); - document.getElementById("checkbox2").disabled = true; - document.getElementById("checkbox1").disabled = true; - } else { +radio.addEventListener('click', function() { if (document.getElementById("surface").checked) { - document.getElementById("checkbox1").disabled = false; - document.getElementById("checkbox2").disabled = true; + document.getElementById("checkbox1").disabled = false; + document.getElementById("checkbox2").disabled = true; + if (document.getElementById("checkbox2").checked) { + document.getElementById("checkbox2").checked = false; + document.getElementById('heat-demand-legend').style.visibility = 'hidden'; + tileContent.forEach(t => t.color = new Cesium.Color(1, 1, 1, 1)) + } + } else { + document.getElementById("checkbox1").disabled = true; + document.getElementById("checkbox2").disabled = false; + if (document.getElementById("checkbox1").checked) { + document.getElementById("checkbox1").checked = false; + tileContent.forEach(t => t.color = new Cesium.Color(1, 1, 1, 1)) + } } - else { - document.getElementById("checkbox1").disabled = true; - document.getElementById("checkbox2").disabled = false; +}, false); + +filterswitches.addEventListener('click', function() { + if (drawBox === false) { + swal("CAN'T LOAD DATA!", "mark an area first!", "error"); + document.getElementById("checkbox2").disabled = true; + document.getElementById("checkbox1").disabled = true; + } else { + if (document.getElementById("surface").checked) { + document.getElementById("checkbox1").disabled = false; + document.getElementById("checkbox2").disabled = true; + } else { + document.getElementById("checkbox1").disabled = true; + document.getElementById("checkbox2").disabled = false; + } } - } }, false); function toggleSidebar(ref) { - document.getElementById("sidebar").classList.toggle('active'); + document.getElementById("sidebar").classList.toggle('active'); } //loop through all dropdown buttons to toggle between hiding and showing its dropdown content @@ -80,13 +78,13 @@ var dropdown = document.getElementsByClassName("dropdown-btn"); var i; for (i = 0; i < dropdown.length; i++) { - dropdown[i].addEventListener("click", function () { - this.classList.toggle("active"); - var dropdownContent = this.nextElementSibling; - if (dropdownContent.style.display === "block") { - dropdownContent.style.display = "none"; - } else { - dropdownContent.style.display = "block"; - } - }); + dropdown[i].addEventListener("click", function() { + this.classList.toggle("active"); + var dropdownContent = this.nextElementSibling; + if (dropdownContent.style.display === "block") { + dropdownContent.style.display = "none"; + } else { + dropdownContent.style.display = "block"; + } + }); } diff --git a/public/js/testingAPIValues.js b/public/js/testingAPIValues.js index f9c39c6..83840d7 100644 --- a/public/js/testingAPIValues.js +++ b/public/js/testingAPIValues.js @@ -27,7 +27,7 @@ function test() { p.attributes.monthlyHeating, p.attributes.monthlyCooling))) - buildingsMAP.set(bu.id, new Building(bu.id, partsArray)) //puts buildings with parts and surfaces in a map + buildingsMAP.set(bu.id, new Building(bu.id, partsArray)) //puts buildings with parts and surfaces in a map }) @@ -104,7 +104,7 @@ function test() { sortMap() //color buildings with heating demand - document.getElementById("checkbox2").addEventListener("change", function () { + document.getElementById("checkbox2").addEventListener("change", function() { if (this.checked) { tileContent.forEach(t => { let tileID = t.getProperty("gml_parent_id") @@ -124,7 +124,7 @@ function test() { }) //color surfaces with uValue - document.getElementById("checkbox1").addEventListener("change", function () { + document.getElementById("checkbox1").addEventListener("change", function() { if (this.checked) { tileContent.forEach(t => { let tileID = t.getProperty("gml_id") @@ -143,4 +143,3 @@ function test() { } }) } - -- GitLab From e3030f47594fb32c747a021ce68b78917f262419 Mon Sep 17 00:00:00 2001 From: Daria Kolokolnikova <72koda1bif@hft-stuttgart.de> Date: Wed, 22 Dec 2021 00:32:44 +0100 Subject: [PATCH 33/56] -fixed bug in localshadowdata and localbuildinginformation --- public/js/connectToAPI.js | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/public/js/connectToAPI.js b/public/js/connectToAPI.js index 8ae2e99..28d88cb 100644 --- a/public/js/connectToAPI.js +++ b/public/js/connectToAPI.js @@ -122,24 +122,23 @@ async function fetchDataJSON() { document.getElementById("loader").style.visibility = "hidden" async function getLocalShadowdata() { - // gets the response from the api and put it inside a constant + // gets the response from localShadowData and put it inside a constant const response = await fetch(localShadowData); //the response have to be converted to json type file, so it can be used const data = await response.json(); console.log(data) - // shadowData=data; return data; } -function processData() { +async function processData() { console.log(coordinatesBB) console.log("Waiting for data....") + shadowdata= await getLocalShadowdata() - timeout(25000, fetchshadowDataJSON()).then((response) => { + timeout(25000, getLocalShadowdata()).then((response) => { console.log(response) shadowdata = response; }).catch((error) => { //catching the error(no connection)/ timeout and displaying an alert for the user - // shadowdata= getLocalShadowdata(); console.log(shadowdata); //loadLocalAPIshadowData here... }) @@ -155,11 +154,11 @@ function processData() { calculateData(response); }).catch((error) => { console.log(error) - /* + fetch("/3dclient4simstadtapi/public/test/APIdata/buildingInformation.json") .then(response => response.text()) .then(text => calculateData( JSON.parse(text))) - */ + }) -- GitLab From e6b8e7a95ad99abcc7b7deb8a5131b7ce3b2910a Mon Sep 17 00:00:00 2001 From: BujarMuharemi Date: Thu, 23 Dec 2021 19:24:25 +0100 Subject: [PATCH 34/56] fixed paths to all local test data --- public/js/connectToAPI.js | 23 ++++++++++++++++++++--- public/test/gmlTileset_v1.json | 22 +++++++++++----------- 2 files changed, 31 insertions(+), 14 deletions(-) diff --git a/public/js/connectToAPI.js b/public/js/connectToAPI.js index 28d88cb..9fce792 100644 --- a/public/js/connectToAPI.js +++ b/public/js/connectToAPI.js @@ -7,7 +7,8 @@ var pvURL = "http://vm24.fkc.hft-stuttgart.de:8082/workflow/readPVPotential" /*TODO#1: -get current data from the api and create local test data (apiData foler) -add connection handeling (error messages when there isnt a connection and then using the local test data) */ -var localShadowData = "/3dclient4simstadtapi/public/test/APIdata/shadowData.json" +var localShadowData = "/public/test/APIdata/shadowData.json" +var localPvpotentialData = "/public/test/APIdata/buildingInformation.json" var buildingFunctionSort var constructionYearSortPick @@ -155,7 +156,7 @@ async function processData() { }).catch((error) => { console.log(error) - fetch("/3dclient4simstadtapi/public/test/APIdata/buildingInformation.json") + fetch(localPvpotentialData) .then(response => response.text()) .then(text => calculateData( JSON.parse(text))) @@ -395,7 +396,8 @@ var tileset = null; //var tilesetURL = 'http://vm24.fkc.hft-stuttgart.de:8081/CampusLOD2Old/tileset.json'; var tilesetURL = 'http://vm24.fkc.hft-stuttgart.de:8081/CampusLOD2/tileset.json'; -var localTestTileset = '/3dclient4simstadtapi/public/test/gmlTileset_v1.json'; +//var localTestTileset = '/3dclient4simstadtapi/public/test/gmlTileset_v1.json'; +var localTestTileset = getAbsoulteTestPath("/test/gmlTileset_v1.json"); function timeout(ms, promise) { @@ -503,3 +505,18 @@ function deleteTilesetButtons() { } } + +//expects path to test data, from the 'public' folder as origin +// for example: getAbsoulteTestPath("/test/gmlTileset_v1.json") +function getAbsoulteTestPath(path){ + var a = window.location.pathname.split("/") + a.pop();a.reverse();a.pop(); + + var path; + a.forEach(element => path+"/"+element); + var path = window.location.origin+"/"+a[0]+path; + console.log(path); + + return path; +} + diff --git a/public/test/gmlTileset_v1.json b/public/test/gmlTileset_v1.json index 236b24b..4befd74 100644 --- a/public/test/gmlTileset_v1.json +++ b/public/test/gmlTileset_v1.json @@ -19,7 +19,7 @@ "boundingVolume" : { "box" : [ 4157183.0913853333, 671276.9167505095, 4774688.139831596, 208.88327595870942, 0, 0, 0, 198.420072172652, 0, 0, 0, 159.76538479700685 ] }, - "url" : "/3dclient4simstadtapi/public/test/tileset/data/data0.b3dm" + "url" : "/public/test/tileset/data/data0.b3dm" }, "children" : [ { @@ -31,7 +31,7 @@ "boundingVolume" : { "box" : [ 4157228.114850776, 671251.5544893676, 4774660.327885907, 43.80110447667539, 0, 0, 0, 12.856712591368705, 0, 0, 0, 53.52015439514071 ] }, - "url" : "/3dclient4simstadtapi/public/test/tileset/data/data1.b3dm" + "url" : "/public/test/tileset/data/data1.b3dm" } }, { @@ -43,7 +43,7 @@ "boundingVolume" : { "box" : [ 4157259.0075245854, 671237.0161895596, 4774633.671508187, 58.36289628734812, 0, 0, 0, 60.476301041897386, 0, 0, 0, 50.82873797882348 ] }, - "url" : "/3dclient4simstadtapi/public/test/tileset/data/data2.b3dm" + "url" : "/public/test/tileset/data/data2.b3dm" } }, { @@ -55,7 +55,7 @@ "boundingVolume" : { "box" : [ 4157260.196087419, 671251.9858865617, 4774636.8328062985, 25.79576786607504, 0, 0, 0, 29.950261512654833, 0, 0, 0, 44.506141755729914 ] }, - "url" : "/3dclient4simstadtapi/public/test/tileset/data/data3.b3dm" + "url" : "/public/test/tileset/data/data3.b3dm" } }, { @@ -67,7 +67,7 @@ "boundingVolume" : { "box" : [ 4157223.877246985, 671278.8423610204, 4774660.5079447515, 20.377759689930826, 0, 0, 0, 193.8928428903455, 0, 0, 0, 22.34141970332712 ] }, - "url" : "/3dclient4simstadtapi/public/test/tileset/data/data4.b3dm" + "url" : "/public/test/tileset/data/data4.b3dm" } }, { @@ -79,7 +79,7 @@ "boundingVolume" : { "box" : [ 4157211.0689755557, 671179.0722945668, 4774667.161378037, 61.64202992897481, 0, 0, 0, 58.29674572101794, 0, 0, 0, 57.427568226121366 ] }, - "url" : "/3dclient4simstadtapi/public/test/tileset/data/data5.b3dm" + "url" : "/public/test/tileset/data/data5.b3dm" } }, { @@ -91,7 +91,7 @@ "boundingVolume" : { "box" : [ 4157225.063591961, 671175.3949235276, 4774673.084528787, 21.286791074555367, 0, 0, 0, 20.521639954065904, 0, 0, 0, 20.94711357820779 ] }, - "url" : "/3dclient4simstadtapi/public/test/tileset/data/data6.b3dm" + "url" : "/public/test/tileset/data/data6.b3dm" } }, { @@ -103,7 +103,7 @@ "boundingVolume" : { "box" : [ 4157172.530755615, 671226.8655617537, 4774696.573534641, 138.71846981020644, 0, 0, 0, 106.83504467795137, 0, 0, 0, 116.25188143644482 ] }, - "url" : "/3dclient4simstadtapi/public/test/tileset/data/data7.b3dm" + "url" : "/public/test/tileset/data/data7.b3dm" } }, { @@ -115,7 +115,7 @@ "boundingVolume" : { "box" : [ 4157234.735237984, 671184.0981509301, 4774663.504809576, 1.9434990277513862, 0, 0, 0, 3.1151851491304114, 0, 0, 0, 1.7876751571893692 ] }, - "url" : "/3dclient4simstadtapi/public/test/tileset/data/data8.b3dm" + "url" : "/public/test/tileset/data/data8.b3dm" } }, { @@ -127,7 +127,7 @@ "boundingVolume" : { "box" : [ 4157192.6996459886, 671343.1874950464, 4774673.3595239995, 76.89431473286822, 0, 0, 0, 65.87858309876174, 0, 0, 0, 87.54443842731416 ] }, - "url" : "/3dclient4simstadtapi/public/test/tileset/data/data9.b3dm" + "url" : "/public/test/tileset/data/data9.b3dm" } }, { @@ -139,7 +139,7 @@ "boundingVolume" : { "box" : [ 4157146.0018855724, 671293.6001087409, 4774719.744891234, 134.70427643693984, 0, 0, 0, 99.23852986039128, 0, 0, 0, 96.55526552256197 ] }, - "url" : "/3dclient4simstadtapi/public/test/tileset/data/data10.b3dm" + "url" : "/public/test/tileset/data/data10.b3dm" } } ] -- GitLab From a0a1c873d0d86cc85c2ef731f121ceaa450ecf16 Mon Sep 17 00:00:00 2001 From: BujarMuharemi Date: Thu, 23 Dec 2021 21:32:58 +0100 Subject: [PATCH 35/56] getting surface and their pvPotential in one array --- public/js/connectToAPI.js | 54 ++++++++++++++++++++++----------------- public/js/globe.js | 2 +- 2 files changed, 32 insertions(+), 24 deletions(-) diff --git a/public/js/connectToAPI.js b/public/js/connectToAPI.js index 9fce792..4ffe90a 100644 --- a/public/js/connectToAPI.js +++ b/public/js/connectToAPI.js @@ -134,7 +134,7 @@ async function getLocalShadowdata() { async function processData() { console.log(coordinatesBB) console.log("Waiting for data....") - shadowdata= await getLocalShadowdata() + shadowdata = await getLocalShadowdata() timeout(25000, getLocalShadowdata()).then((response) => { console.log(response) @@ -145,30 +145,25 @@ async function processData() { }) timeout(10000, fetchPvPotentialJSON()).then((response) => { - console.log(response) + //console.log("fetchPvPotentialJSON:", response); + getPvPotentialOfSurfaces(response["buildings"]); }).catch((error) => { console.log(error) }) - + timeout(10000, fetchDataJSON()).then((response) => { calculateData(response); }).catch((error) => { console.log(error) - + fetch(localPvpotentialData) - .then(response => response.text()) - .then(text => calculateData( JSON.parse(text))) - + .then(response => response.text()) + .then(text => calculateData(JSON.parse(text))) }) - - - - } - function calculateData(data) { console.log(data); document.getElementById("cesiumContainer").style.opacity = "1"; @@ -409,9 +404,23 @@ function timeout(ms, promise) { }) } +function getPvPotentialOfSurfaces(pvPotentialarray){ + var pvPotentialArray=[]; + + pvPotentialarray.forEach( + building => building["parts"].forEach( + parts => parts["surfaces"].forEach( + surface => pvPotentialArray.push(surface) + //console.log(surface) + ) + ) + ); + console.log(pvPotentialArray); +} + //fetching the tileset and handling the connection -async function fetchTileset() { +function fetchTileset() { timeout(1000, fetch(tilesetURL)).then((response) => { loadAndZoomToTileset(tilesetURL); }).catch((error) => { //catching the error(no connection)/ timeout and displaying an alert for the user @@ -422,8 +431,6 @@ async function fetchTileset() { }) } - - /* NOTE #1: -load the models but the are in the too high in the "air" -building view doesn´t work because all buildings are grouped together @@ -432,7 +439,6 @@ async function fetchTileset() { -->this fixme is the problem of the backendteam ! ? maybe add old menu back and the option to also load the new ones - */ @@ -508,15 +514,17 @@ function deleteTilesetButtons() { //expects path to test data, from the 'public' folder as origin // for example: getAbsoulteTestPath("/test/gmlTileset_v1.json") -function getAbsoulteTestPath(path){ +function getAbsoulteTestPath(testdataPath) { var a = window.location.pathname.split("/") - a.pop();a.reverse();a.pop(); + a.pop(); + a.reverse(); + a.pop(); + a.reverse() + + var path = ""; + a.forEach(element => path += "/" + element); - var path; - a.forEach(element => path+"/"+element); - var path = window.location.origin+"/"+a[0]+path; - console.log(path); + var path = window.location.origin + "/" + path + testdataPath; return path; } - diff --git a/public/js/globe.js b/public/js/globe.js index c1a6367..30df0d9 100644 --- a/public/js/globe.js +++ b/public/js/globe.js @@ -16,7 +16,7 @@ viewer.scene.globe.depthTestAgainstTerrain = true; //--------------------hover over surfaces-------------------- var singleChart = document.getElementById('singleChartContainer'); -console.log(viewer.ShadowMap); +//console.log(viewer.ShadowMap); // HTML overlay for showing feature name on mouseover var nameOverlay = document.createElement("div"); -- GitLab From 4d223fc2a6f66a1410c2b920e6bfa0e03b1ed45e Mon Sep 17 00:00:00 2001 From: BujarMuharemi Date: Thu, 23 Dec 2021 22:56:52 +0100 Subject: [PATCH 36/56] finished issue#89 show pvPotentialData of surface --- public/js/connectToAPI.js | 17 +++++++++++------ public/js/globe.js | 16 ++++++++++++++-- 2 files changed, 25 insertions(+), 8 deletions(-) diff --git a/public/js/connectToAPI.js b/public/js/connectToAPI.js index 4ffe90a..c573ac7 100644 --- a/public/js/connectToAPI.js +++ b/public/js/connectToAPI.js @@ -19,6 +19,8 @@ var roofTypeSortPick var uValueSortPick var shadowdata +var pvPotentialSurfaces; //array which holds the pvpotential of all surfaces + async function fetchPvPotentialJSON() { var bottomLat = coordinatesBB[1] @@ -127,17 +129,17 @@ async function getLocalShadowdata() { const response = await fetch(localShadowData); //the response have to be converted to json type file, so it can be used const data = await response.json(); - console.log(data) + //console.log(data) return data; } async function processData() { - console.log(coordinatesBB) + console.log("Waiting for data....") shadowdata = await getLocalShadowdata() timeout(25000, getLocalShadowdata()).then((response) => { - console.log(response) + //console.log(response) shadowdata = response; }).catch((error) => { //catching the error(no connection)/ timeout and displaying an alert for the user console.log(shadowdata); @@ -146,7 +148,8 @@ async function processData() { timeout(10000, fetchPvPotentialJSON()).then((response) => { //console.log("fetchPvPotentialJSON:", response); - getPvPotentialOfSurfaces(response["buildings"]); + pvPotentialSurfaces = getPvPotentialOfSurfaces(response["buildings"]); + //console.log("pvPotentialSurfaces:",pvPotentialSurfaces); }).catch((error) => { console.log(error) }) @@ -165,7 +168,7 @@ async function processData() { function calculateData(data) { - console.log(data); + //console.log(data); document.getElementById("cesiumContainer").style.opacity = "1"; document.getElementById("loader").style.visibility = "hidden" console.log("....received data") @@ -404,6 +407,7 @@ function timeout(ms, promise) { }) } +//getting the pvPotential of all surfaces from the pvPotential array, which the api returns function getPvPotentialOfSurfaces(pvPotentialarray){ var pvPotentialArray=[]; @@ -415,7 +419,8 @@ function getPvPotentialOfSurfaces(pvPotentialarray){ ) ) ); - console.log(pvPotentialArray); + //console.log(pvPotentialArray); + return pvPotentialArray; } diff --git a/public/js/globe.js b/public/js/globe.js index 30df0d9..f15ec8e 100644 --- a/public/js/globe.js +++ b/public/js/globe.js @@ -199,7 +199,9 @@ var pickHeatedVolume var pickTotalSurfaceArea = 0 var pickRoofType var pickUValue + var shadowHourValue = 0; +var SurfacePvPotential=[]; //Color a feature on selection and show metadata in the InfoBox @@ -286,7 +288,8 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { //highlight newly selected feature tileContent.forEach(t => { if (t === pickedFeature) { - console.log(t.getProperty("description") + "\n" + t.getProperty("feature_type") + "\n" + t.getProperty("gml_id") + "\n" + t.getProperty("gml_parent_id")); + //used for debugging, when clicking on a surface + //console.log(t.getProperty("description") + "\n" + t.getProperty("feature_type") + "\n" + t.getProperty("gml_id") + "\n" + t.getProperty("gml_parent_id")); t.color = Cesium.Color.LIME; @@ -301,6 +304,15 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { } } + + //coloring surfaces on pv potential + for (const [key, value] of Object.entries(pvPotentialSurfaces)) { //looping threw the shadowdata array + if (value["id"] === t.getProperty("gml_id")) { //checking if the ids of the current surface match the id in the shadowdata array + //console.log("hour:",chosenDate.hour); + console.log(value); + SurfacePvPotential = value["attributes"]["pvPotential"]["totalInvestment"]; + } + } } }); } else { @@ -330,7 +342,7 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { "description" + pickedFeature.getProperty("description") + "" + "feature_type" + pickedFeature.getProperty("feature_type") + "" + "shadow value" + shadowhourvaluepercent.toFixed(1) + "%" + "" + - + "totalInvestment" + SurfacePvPotential + "" + ""; -- GitLab From 86e5b7df6f11a8e2ad2845d960fcc5d38aa4e41a Mon Sep 17 00:00:00 2001 From: Medjen <91izme1bif@hft-stuttgart.de> Date: Thu, 30 Dec 2021 17:34:16 +0100 Subject: [PATCH 37/56] add search address --- public/js/globe.js | 38 ++++++++++++++++++++++++++++++++++++-- public/main.html | 7 +++++++ 2 files changed, 43 insertions(+), 2 deletions(-) diff --git a/public/js/globe.js b/public/js/globe.js index f15ec8e..e863868 100644 --- a/public/js/globe.js +++ b/public/js/globe.js @@ -9,14 +9,48 @@ var viewer = new Cesium.Viewer('cesiumContainer', { animation: false, sceneModePicker: false, geocoder: false, - + sceneMode : Cesium.SceneMode.SCENE3D }); viewer.scene.globe.depthTestAgainstTerrain = true; //--------------------hover over surfaces-------------------- var singleChart = document.getElementById('singleChartContainer'); -//console.log(viewer.ShadowMap); + +//load address +var request = new XMLHttpRequest(); +request.onreadystatechange = function(){ + if(this.readyState == 4 && this.status == 200){ + +var coordinate = JSON.parse(request.responseText); +var lat = coordinate.results[0].geometry.lat; +var lng = coordinate.results[0].geometry.lng; +console.log(lat + " " + lng); +fly(lat, lng); + } +} +function searchaddress(){ + var query = document.getElementById('SearchAddress').value; + request.open("GET",'https://api.opencagedata.com/geocode/v1/json?key=c73da14969e6408ab4535b3ad6dc43ea&pretty=1&no_annotations=1&q=' + query, true); + request.send(); +} + +function fly( lat, lng){ + var pinBuilder = new Cesium.PinBuilder(); + +var bluePin = viewer.entities.add({ + name: "Blank blue pin", + position: Cesium.Cartesian3.fromDegrees(lng, lat), + billboard: { + image: pinBuilder.fromColor(Cesium.Color.ROYALBLUE, 48).toDataURL(), + verticalOrigin: Cesium.VerticalOrigin.BOTTOM, + }, +}); + viewer.zoomTo(bluePin); + + viewer.flyTo(bluePin); + +} // HTML overlay for showing feature name on mouseover var nameOverlay = document.createElement("div"); diff --git a/public/main.html b/public/main.html index 034e67c..e0489ec 100644 --- a/public/main.html +++ b/public/main.html @@ -236,6 +236,13 @@

+ +
+ + +

+ +
-- GitLab From 2f22e52d1d83bff9631bfb760d737ac51f3b7335 Mon Sep 17 00:00:00 2001 From: Beyza Turbil <91tube1bif@hft-stuttgart.de> Date: Mon, 10 Jan 2022 23:06:59 +0100 Subject: [PATCH 38/56] Attribute button for PV- and shadow-value added --- public/main.html | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/public/main.html b/public/main.html index e0489ec..a7e0ba8 100644 --- a/public/main.html +++ b/public/main.html @@ -260,7 +260,24 @@
- + + + - - @@ -369,7 +369,7 @@ integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"> - + -- GitLab From 37365f2e1026e18151f8efcdba90794adfe5800e Mon Sep 17 00:00:00 2001 From: Daria Kolokolnikova <72koda1bif@hft-stuttgart.de> Date: Wed, 12 Jan 2022 00:13:30 +0100 Subject: [PATCH 42/56] deleted unnecessary code --- public/js/connectToAPI.js | 48 +++++++++------------------------------ 1 file changed, 11 insertions(+), 37 deletions(-) diff --git a/public/js/connectToAPI.js b/public/js/connectToAPI.js index 00d6c01..6ce1202 100644 --- a/public/js/connectToAPI.js +++ b/public/js/connectToAPI.js @@ -132,32 +132,26 @@ async function getLocalShadowdata() { } async function processData() { - console.log("Waiting for data....") shadowdata = await getLocalShadowdata() - - timeout(25000, getLocalShadowdata()).then((response) => { - //console.log(response) + + //waiting 25sec for the shadowData fetch from server: catching error if no answer in 25sec + timeout(25000, fetchshadowDataJSON()).then((response) => { shadowdata = response; }).catch((error) => { //catching the error(no connection)/ timeout and displaying an alert for the user console.log(shadowdata); - //loadLocalAPIshadowData here... }) timeout(10000, fetchPvPotentialJSON()).then((response) => { - //console.log("fetchPvPotentialJSON:", response); pvPotentialSurfaces = getPvPotentialOfSurfaces(response["buildings"]); - //console.log("pvPotentialSurfaces:",pvPotentialSurfaces); }).catch((error) => { console.log(error) }) - timeout(10000, fetchDataJSON()).then((response) => { calculateData(response); }).catch((error) => { console.log(error) - fetch(localPvpotentialData) .then(response => response.text()) .then(text => calculateData(JSON.parse(text))) @@ -166,15 +160,11 @@ async function processData() { function calculateData(data) { - //console.log(data); document.getElementById("cesiumContainer").style.opacity = "1"; document.getElementById("loader").style.visibility = "hidden" console.log("....received data") - var buildingsMAP = new Map() - data.buildings.forEach(bu => { - var partsArray = [] var surefacesArray = [] @@ -196,7 +186,6 @@ function calculateData(data) { p.attributes.roofType))) buildingsMAP.set(bu.id, new Building(bu.id, partsArray)) //puts buildings with parts and surfaces in a map - }) var partHeightMAP = new Map() @@ -389,10 +378,7 @@ window.onclick = function(event) { //------------------------------------------------------------------------------- var tileData = null; var tileset = null; -//var tilesetURL = 'http://vm24.fkc.hft-stuttgart.de:8081/CampusLOD2Old/tileset.json'; var tilesetURL = 'http://vm24.fkc.hft-stuttgart.de:8081/CampusLOD2/tileset.json'; - -//var localTestTileset = '/3dclient4simstadtapi/public/test/gmlTileset_v1.json'; var localTestTileset = getAbsoulteTestPath("/test/gmlTileset_v1.json"); @@ -406,31 +392,29 @@ function timeout(ms, promise) { } //getting the pvPotential of all surfaces from the pvPotential array, which the api returns -function getPvPotentialOfSurfaces(pvPotentialarray){ - var pvPotentialArray=[]; +function getPvPotentialOfSurfaces(pvPotentialarray) { + var pvPotentialArray = []; pvPotentialarray.forEach( - building => building["parts"].forEach( + building => building["parts"].forEach( parts => parts["surfaces"].forEach( surface => pvPotentialArray.push(surface) - //console.log(surface) - ) - ) + ) + ) ); - //console.log(pvPotentialArray); return pvPotentialArray; } //fetching the tileset and handling the connection +//waiting 1sec for the tileSetData fetch from server: catching error if no answer in 1sec function fetchTileset() { timeout(1000, fetch(tilesetURL)).then((response) => { loadAndZoomToTileset(tilesetURL); }).catch((error) => { //catching the error(no connection)/ timeout and displaying an alert for the user - //var errorString = error["stack"]+"\n"+error["message"]; // formatting the error array swal({ text: "Could not connect to Server. Using now: local data", icon: "info" }); console.log("Using local test data"); - loadAndZoomToTileset(localTestTileset); + loadAndZoomToTileset(localTestTileset); }) } @@ -450,18 +434,15 @@ function loadTileset() { viewer.scene.primitives.remove(tileset); tileContent = []; modal.style.display = "block"; - fetchTileset(); - - //var userurl = document.getElementById("3Durl").value; //returns the chosen area from the dropdown } + //loads the tileset from the url into the cesium viewer and zooms to it function loadAndZoomToTileset(url) { tileset = viewer.scene.primitives.add(new Cesium.Cesium3DTileset({ url: url })); - viewer.zoomTo(tileset, new Cesium.HeadingPitchRange(0, -0.5, 0)); modal.style.display = "none"; saveTilesetContent(tileset) @@ -476,9 +457,7 @@ function useContent(content) { element.value = cont.title element.value = cont.title element.name = "individualTileset" - document.getElementById("myList").appendChild(element); - element.onclick = function() { tileset = viewer.scene.primitives.add(new Cesium.Cesium3DTileset({ url: cont.href @@ -504,7 +483,6 @@ function saveTilesetContent(tileset) { function deleteTilesetButtons() { var x = document.getElementsByName("individualTileset") var len = x.length - //checking if there are even tileset to delete if (x.length > 0) { parentNode = x[0].parentNode; @@ -512,7 +490,6 @@ function deleteTilesetButtons() { parentNode.removeChild(x[0]); } } - } //expects path to test data, from the 'public' folder as origin @@ -523,11 +500,8 @@ function getAbsoulteTestPath(testdataPath) { a.reverse(); a.pop(); a.reverse() - var path = ""; a.forEach(element => path += "/" + element); - var path = window.location.origin + "/" + path + testdataPath; - return path; } -- GitLab From 051527695d216bfe3a7ae3dcf1077810d4004ae7 Mon Sep 17 00:00:00 2001 From: Beyza Turbil <91tube1bif@hft-stuttgart.de> Date: Wed, 12 Jan 2022 17:46:44 +0100 Subject: [PATCH 43/56] update --- public/main.html | 1 - 1 file changed, 1 deletion(-) diff --git a/public/main.html b/public/main.html index fd36b2f..4dd14b5 100644 --- a/public/main.html +++ b/public/main.html @@ -262,7 +262,6 @@ -
-- GitLab From 8b532b4080a05a4be929782b63c508aae1c4b2ec Mon Sep 17 00:00:00 2001 From: BujarMuharemi Date: Thu, 13 Jan 2022 13:54:56 +0100 Subject: [PATCH 48/56] fixed pvPotential radio btn controller; works now --- public/js/colorPalettes.js | 2 +- public/js/globe.js | 10 +- public/js/pvPotentialNormalization.js | 1 + public/main.html | 740 +++++++++++++------------- 4 files changed, 375 insertions(+), 378 deletions(-) diff --git a/public/js/colorPalettes.js b/public/js/colorPalettes.js index 712af39..10ddff4 100644 --- a/public/js/colorPalettes.js +++ b/public/js/colorPalettes.js @@ -1,7 +1,7 @@ //Shadow palette for coloring the roofs // color pallet from https://colorbrewer2.org/#type=sequential&scheme=BuGn&n=3 -var pvPotentialPallet = ['#fff7fb', '#ece7f2', '#d0d1e6', '#a6bddb', '#74a9cf', '#3690c0', '#0570b0', '#034e7b'] +var pvPotentialPallet = ['#d0d1e6', '#a6bddb', '#74a9cf', '#3690c0', '#0570b0', '#034e7b'] pvPotentialPallet = pvPotentialPallet.reverse(); //color pallet white->black diff --git a/public/js/globe.js b/public/js/globe.js index 8b0740e..3ee0bd6 100644 --- a/public/js/globe.js +++ b/public/js/globe.js @@ -20,6 +20,7 @@ var roofViewActivated = false; var chosenAttributeRadioBtnFlag = "shadowValue"; + function chosenAttributeHandler(radioBtnValue) { chosenAttributeRadioBtnFlag = radioBtnValue.value; } @@ -319,6 +320,7 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { //Surface View @onLeftClick if (document.getElementById("surface").checked) { resetRoofColors(); + setMinAndMax(chosenAttributeRadioBtnFlag); //save the selected feature's original color if (pickedhigh) { highlightedFeatures.forEach(h => { @@ -334,7 +336,7 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { //used for debugging, when clicking on a surface //console.log(t.getProperty("description") + "\n" + t.getProperty("feature_type") + "\n" + t.getProperty("gml_id") + "\n" + t.getProperty("gml_parent_id")); - t.color = Cesium.Color.LIME; + //t.color = Cesium.Color.LIME; //color surfaces depending on their shadow value for (const [key, value] of Object.entries(shadowdata)) { //looping threw the shadowdata array @@ -353,15 +355,15 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { console.log(pvPotentialSurfaces); //coloring surfaces on pv potential - setMinAndMax(chosenAttributeRadioBtnFlag); + console.log("minie maus", minAndMaxPvPotentials); for (const [key, value] of Object.entries(pvPotentialSurfaces)) { if (value["id"] === t.getProperty("gml_id")) { //checking if the ids of the current surface match the id in the shadowdata array //console.log("hour:",chosenDate.hour); var normalizedPvValue; chosenPvPotentialValue = value["attributes"]["pvPotential"][chosenAttributeRadioBtnFlag]; - //console.log("normalisierter",chosenPvPotentialValue); - console.log("klick"); + console.log("chosenPvPotentialValue",chosenPvPotentialValue); + normalizedPvValue = getNormalizedValue(chosenPvPotentialValue); console.log("normalisierter", normalizedPvValue); t.color = Cesium.Color.fromCssColorString(getColorFromPalette(normalizedPvValue, "pvPotential")); //coloring the surface diff --git a/public/js/pvPotentialNormalization.js b/public/js/pvPotentialNormalization.js index 80d462f..e1442ba 100644 --- a/public/js/pvPotentialNormalization.js +++ b/public/js/pvPotentialNormalization.js @@ -18,6 +18,7 @@ function setMinAndMax(pvPotentialValue) { minAndMaxPvPotentials=[]; minAndMaxPvPotentials.push(pvPotentials[0]); minAndMaxPvPotentials.push(pvPotentials[pvPotentials.length - 1]); + console.log("setMinAndMax calculated"); } function getNormalizedValue(selectedPvPotentialValue) { diff --git a/public/main.html b/public/main.html index 2755f62..5b8e717 100644 --- a/public/main.html +++ b/public/main.html @@ -3,407 +3,401 @@ - - - - - - - - Team3dViewer! - - + + + + + + + + Team3dViewer! + + - - - - - - - + + + + + + + - - - - - + + + + if (lang === "de") { + document.getElementById("submitID").value = "Senden"; + } else if (lang === "en") { + document.getElementById("submitID").value = "Submit"; + } + + $('.lang').each(function(index, item) { + $(this).text(arrLang[lang][$(this).attr('key')]); + }); + }); + }); + + - -
-
+ +
+
- -
+ +
- -
+ +
- - + + - -
-
- - -
-
- - - - -
- -
+ +
+
+ + +
+
+ + + + +
+ +
- - + + -
- - -
+
+ + +
-
-

+ - - + + + -
-
-

-
Heating Demand [kWh/yr]
-

-
-
A
-
|
-
B
-
|
-
C
-
|
-
D
-
|
-
E
-
|
-
F
-
|
-
G
-
|
-
H
-
-
-
0
-
200
-
400
-
600
-
800
-
1000
-
1200
-
1400
-
-
-
-
⇑
-
-
-
-
+ - - - - - - - - - - - - + + + + + + + -- GitLab From 84e8a9216a2775c949496f134249b9237594ca5e Mon Sep 17 00:00:00 2001 From: Daria Kolokolnikova <72koda1bif@hft-stuttgart.de> Date: Mon, 17 Jan 2022 00:03:16 +0100 Subject: [PATCH 49/56] Displaying of selected surfacePvPotential value --- public/js/globe.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/public/js/globe.js b/public/js/globe.js index 3ee0bd6..ae8a3e9 100644 --- a/public/js/globe.js +++ b/public/js/globe.js @@ -244,7 +244,7 @@ var pickRoofType var pickUValue var shadowHourValue = 0; -var SurfacePvPotential = []; +var SurfacePvPotential; var SurfacePvPotentialObject = []; //object which stores all the pvPotential data @@ -367,8 +367,8 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { normalizedPvValue = getNormalizedValue(chosenPvPotentialValue); console.log("normalisierter", normalizedPvValue); t.color = Cesium.Color.fromCssColorString(getColorFromPalette(normalizedPvValue, "pvPotential")); //coloring the surface - - // SurfacePvPotential = value["attributes"]["pvPotential"][chosenAttributeRadioBtnFlag]; + SurfacePvPotential = chosenPvPotentialValue; + SurfacePvPotentialObject = value["attributes"]["pvPotential"]; console.log(SurfacePvPotentialObject); } @@ -403,7 +403,7 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { "description" + pickedFeature.getProperty("description") + "" + "feature_type" + pickedFeature.getProperty("feature_type") + "" + "shadow value" + shadowhourvaluepercent.toFixed(1) + "%" + "" + - "totalInvestment" + SurfacePvPotential + "" + + ""+chosenAttributeRadioBtnFlag+"" + SurfacePvPotential + "" + ""; -- GitLab From d8296f271fa4ef69af428a6c9a4a7ab82b165259 Mon Sep 17 00:00:00 2001 From: BujarMuharemi Date: Mon, 17 Jan 2022 22:43:27 +0100 Subject: [PATCH 50/56] fixed shadow coloring;fixed showing of chosen att. --- public/js/colorPalettes.js | 4 ++-- public/js/globe.js | 23 ++++++++++++++--------- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/public/js/colorPalettes.js b/public/js/colorPalettes.js index 10ddff4..5540167 100644 --- a/public/js/colorPalettes.js +++ b/public/js/colorPalettes.js @@ -5,8 +5,8 @@ var pvPotentialPallet = ['#d0d1e6', '#a6bddb', '#74a9cf', '#3690c0', '#0570b0', pvPotentialPallet = pvPotentialPallet.reverse(); //color pallet white->black -var colorPalette = ['#ffffff', '#f0f0f0', '#d9d9d9', '#bdbdbd', '#969696', '#737373', '#525252', '#252525']; -const shadowPalette = colorPalette.reverse(); +var colorPalette = ['#bdbdbd', '#969696', '#737373', '#525252', '#252525']; +const shadowPalette = colorPalette; //returns the responding color from the shadowPalette, depending on the inputShadowValue(0 to 1 in float) function getShadowPalette(inputShadowValue) { diff --git a/public/js/globe.js b/public/js/globe.js index ae8a3e9..0fc7010 100644 --- a/public/js/globe.js +++ b/public/js/globe.js @@ -347,9 +347,7 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { if (chosenAttributeRadioBtnFlag === "shadowValue") { t.color = Cesium.Color.fromCssColorString(getColorFromPalette(shadowHourValue, "shadowValue")); //coloring the surface } - //t.color = Cesium.Color.fromCssColorString(getShadowPalette(shadowHourValue)); //coloring the surface - } } console.log(pvPotentialSurfaces); @@ -358,14 +356,14 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { console.log("minie maus", minAndMaxPvPotentials); for (const [key, value] of Object.entries(pvPotentialSurfaces)) { - if (value["id"] === t.getProperty("gml_id")) { //checking if the ids of the current surface match the id in the shadowdata array + if (value["id"] === t.getProperty("gml_id") && chosenAttributeRadioBtnFlag !== "shadowValue") { //checking if the ids of the current surface match the id in the shadowdata array //console.log("hour:",chosenDate.hour); - var normalizedPvValue; + var normalizedPvValue=""; chosenPvPotentialValue = value["attributes"]["pvPotential"][chosenAttributeRadioBtnFlag]; console.log("chosenPvPotentialValue",chosenPvPotentialValue); normalizedPvValue = getNormalizedValue(chosenPvPotentialValue); - console.log("normalisierter", normalizedPvValue); + console.log("normalisierter", normalizedPvValue); t.color = Cesium.Color.fromCssColorString(getColorFromPalette(normalizedPvValue, "pvPotential")); //coloring the surface SurfacePvPotential = chosenPvPotentialValue; @@ -390,7 +388,16 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { }); } - var shadowhourvaluepercent = 100 - (shadowHourValue * 100) + var chosenAttribute2Show = ""; + var shadowhourvaluepercent = shadowHourValue * 100; + console.log("shadowHourValue:",shadowHourValue*100,"\n shadowhourvaluepercent:",shadowhourvaluepercent); + + if(chosenAttributeRadioBtnFlag==="shadowValue"){ + chosenAttribute2Show ="shadow value" + shadowhourvaluepercent.toFixed(1) + "%" + ""; + }else{ + chosenAttribute2Show = ""+chosenAttributeRadioBtnFlag+"" + SurfacePvPotential + ""; + } + //set feature infobox description (surface view) var featureName = pickedFeature.getProperty("name"); selectedEntity.name = featureName; @@ -402,9 +409,7 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { "u_Value" + pickUValue + "" + "description" + pickedFeature.getProperty("description") + "" + "feature_type" + pickedFeature.getProperty("feature_type") + "" + - "shadow value" + shadowhourvaluepercent.toFixed(1) + "%" + "" + - ""+chosenAttributeRadioBtnFlag+"" + SurfacePvPotential + "" + - + chosenAttribute2Show; ""; -- GitLab From c9736cf651e9ee9dd7d2b4cdd3484ce52fcdf8b5 Mon Sep 17 00:00:00 2001 From: BujarMuharemi Date: Tue, 18 Jan 2022 18:00:52 +0100 Subject: [PATCH 51/56] split up codebase; adden base for solarPlanner --- public/js/draw.js | 4 +- public/js/fillTableProperties.js | 65 +++++++++ public/js/globe.js | 195 +++++++------------------- public/js/pvPotentialNormalization.js | 23 +-- public/js/searchadress.js | 40 ++++++ public/main.html | 16 ++- 6 files changed, 187 insertions(+), 156 deletions(-) create mode 100644 public/js/fillTableProperties.js create mode 100644 public/js/searchadress.js diff --git a/public/js/draw.js b/public/js/draw.js index c4bc9fc..74bd526 100644 --- a/public/js/draw.js +++ b/public/js/draw.js @@ -8,7 +8,7 @@ var rectVisible = false; var Pickers_3DTile_Activated = true; var bboxactivated = false; var currentLayer; -var drawBox = false +var drawBox = false; //draw rectangle function drawBounding() { @@ -19,6 +19,8 @@ function drawBounding() { drawBox = true } + + //fills coordinates array (used to fetch data) function createRequest_BB() { console.log("-->clicked confirm button") diff --git a/public/js/fillTableProperties.js b/public/js/fillTableProperties.js new file mode 100644 index 0000000..fa2ab17 --- /dev/null +++ b/public/js/fillTableProperties.js @@ -0,0 +1,65 @@ +//filling the table in the info sidebar with data +function fillTableProperties(gID, sID) { + + if (drawBox === false) { + swal("CAN'T LOAD DATA!", "mark an area first!", "error"); + document.getElementById("singleChartContainer").style.visibility = "hidden" + document.getElementsByClassName('cesium-infoBox-defaultTable').style.display = 'none'; + + } else { + + //Property BuildingFunction + buildingFunctionSortPick.forEach((value, key) => { + if (key === gID) { + pickBuildingFunction = value + } + }) + + //Property Year of Construction + constructionYearSortPick.forEach((value, key) => { + if (key === gID) { + pickYearOfConstruction = value + } + }) + + //Property height + heightSortPick.forEach((value, key) => { + if (key === gID) { + pickHeight = value + } + }) + + //Property HeatedVolume + heatedVolumeSortPick.forEach((value, key) => { + if (key === gID) { + pickHeatedVolume = value + } + }) + + //Property TotalSurfaceArea + totalSurfaceAreaSortPick.forEach((value, key) => { + if (key === gID) { + var sum = 0 + value.forEach(element => { + sum += element.totalSurfaceArea + }); + pickTotalSurfaceArea = sum + } + }) + + //Property RoofType + roofTypeSortPick.forEach((value, key) => { + if (key === gID) { + pickRoofType = value + } + }) + + //Property UValue + uValueSortPick.forEach((value, key) => { + if (key === sID) { + pickUValue = value + } + }) + } + +} \ No newline at end of file diff --git a/public/js/globe.js b/public/js/globe.js index 0fc7010..1c7db6f 100644 --- a/public/js/globe.js +++ b/public/js/globe.js @@ -19,47 +19,10 @@ var singleChart = document.getElementById('singleChartContainer'); var roofViewActivated = false; var chosenAttributeRadioBtnFlag = "shadowValue"; - - function chosenAttributeHandler(radioBtnValue) { chosenAttributeRadioBtnFlag = radioBtnValue.value; } -//load address -var request = new XMLHttpRequest(); -request.onreadystatechange = function() { - if (this.readyState == 4 && this.status == 200) { - - var coordinate = JSON.parse(request.responseText); - var lat = coordinate.results[0].geometry.lat; - var lng = coordinate.results[0].geometry.lng; - console.log(lat + " " + lng); - fly(lat, lng); - } -} - -function searchaddress() { - var query = document.getElementById('SearchAddress').value; - request.open("GET", 'https://api.opencagedata.com/geocode/v1/json?key=c73da14969e6408ab4535b3ad6dc43ea&pretty=1&no_annotations=1&q=' + query, true); - request.send(); -} - -function fly(lat, lng) { - var pinBuilder = new Cesium.PinBuilder(); - - var bluePin = viewer.entities.add({ - name: "Blank blue pin", - position: Cesium.Cartesian3.fromDegrees(lng, lat), - billboard: { - image: pinBuilder.fromColor(Cesium.Color.ROYALBLUE, 48).toDataURL(), - verticalOrigin: Cesium.VerticalOrigin.BOTTOM, - }, - }); - viewer.zoomTo(bluePin); - - viewer.flyTo(bluePin); - -} // HTML overlay for showing feature name on mouseover var nameOverlay = document.createElement("div"); @@ -169,7 +132,8 @@ viewer.screenSpaceEventHandler.setInputAction(function onMouseMove(movement) { var name = pickedFeature.getProperty("gml_id"); var shadowhourvaluepercent = 0; - nameOverlay.textContent = "ID: " + name + "\t shadowvalue:" + shadowhourvaluepercent; + nameOverlay.textContent = "ID: " + name; + //nameOverlay.textContent = "ID: " + name + "\t shadowvalue:" + shadowhourvaluepercent; // Highlight the feature if it's not already selected. selectedFeatures.forEach(s => { if (s.feature === pickedFeature) { @@ -190,11 +154,9 @@ viewer.screenSpaceEventHandler.setInputAction(function onMouseMove(movement) { highlightedFeatures.push(new featurevar(t, t.color)); t.color = Cesium.Color.YELLOW; } - } }); } - } //Building View @@ -226,7 +188,10 @@ viewer.screenSpaceEventHandler.setInputAction(function onMouseMove(movement) { } //Roof View - else if (document.getElementById("roof").checked) { + // else if (document.getElementById("roof").checked) { + // console.log("clicked when in roof view and on hover"); + // } + else if (document.getElementById("solarPlanner").checked) { console.log("clicked when in roof view and on hover"); } @@ -235,12 +200,12 @@ viewer.screenSpaceEventHandler.setInputAction(function onMouseMove(movement) { //----------------------------------------------------------------------------------------------- -var pickBuildingFunction -var pickYearOfConstruction -var pickHeight -var pickHeatedVolume -var pickTotalSurfaceArea = 0 -var pickRoofType +var pickBuildingFunction; +var pickYearOfConstruction; +var pickHeight; +var pickHeatedVolume; +var pickTotalSurfaceArea = 0; +var pickRoofType; var pickUValue var shadowHourValue = 0; @@ -276,25 +241,14 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { clickHandler(movement); return; } + selectpid = pickedFeature.getProperty("gml_parent_id"); - + //Show chart for individual buildings. But only if building view is activated if (Cesium.defined(pickedFeature) && (!document.getElementById("surface").checked)) { singleChart.style.visibility = 'visible'; } - /*select the feature if it's not already selected - selectedFeatures.forEach(s => { - if (pickedFeature === s.feature) { - console.log("return"); - pickedalreadyselect = true; - } - }); - - if(pickedalreadyselect){ - return; - }*/ - highlightedFeatures.forEach(h => { if (h.feature === pickedFeature) { pickedhigh = true; @@ -316,11 +270,14 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { //fill variables for Single Building Properties fillTableProperties(gmlID, surID) + //######################################################################################################################## + //Different Views from here //Surface View @onLeftClick if (document.getElementById("surface").checked) { resetRoofColors(); setMinAndMax(chosenAttributeRadioBtnFlag); + //save the selected feature's original color if (pickedhigh) { highlightedFeatures.forEach(h => { @@ -336,8 +293,6 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { //used for debugging, when clicking on a surface //console.log(t.getProperty("description") + "\n" + t.getProperty("feature_type") + "\n" + t.getProperty("gml_id") + "\n" + t.getProperty("gml_parent_id")); - //t.color = Cesium.Color.LIME; - //color surfaces depending on their shadow value for (const [key, value] of Object.entries(shadowdata)) { //looping threw the shadowdata array if (key === t.getProperty("gml_id")) { //checking if the ids of the current surface match the id in the shadowdata array @@ -350,17 +305,16 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { //t.color = Cesium.Color.fromCssColorString(getShadowPalette(shadowHourValue)); //coloring the surface } } - console.log(pvPotentialSurfaces); + //console.log(pvPotentialSurfaces); //coloring surfaces on pv potential - - console.log("minie maus", minAndMaxPvPotentials); + //console.log("minie maus", minAndMaxPvPotentials); for (const [key, value] of Object.entries(pvPotentialSurfaces)) { if (value["id"] === t.getProperty("gml_id") && chosenAttributeRadioBtnFlag !== "shadowValue") { //checking if the ids of the current surface match the id in the shadowdata array //console.log("hour:",chosenDate.hour); var normalizedPvValue=""; chosenPvPotentialValue = value["attributes"]["pvPotential"][chosenAttributeRadioBtnFlag]; - console.log("chosenPvPotentialValue",chosenPvPotentialValue); + //console.log("chosenPvPotentialValue",chosenPvPotentialValue); normalizedPvValue = getNormalizedValue(chosenPvPotentialValue); console.log("normalisierter", normalizedPvValue); @@ -388,6 +342,7 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { }); } + //show the attributes of the chosen surface in the table var chosenAttribute2Show = ""; var shadowhourvaluepercent = shadowHourValue * 100; console.log("shadowHourValue:",shadowHourValue*100,"\n shadowhourvaluepercent:",shadowhourvaluepercent); @@ -469,12 +424,40 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { } - //DEPRECATED: Roof View - //BUG: shows random attributes ui element ?? - //TODO: Remove this deprecated code bit - else if (document.getElementById("roof").checked && roofViewActivated) { - console.log("clicked when in roof view and on click"); + //solarPlanner View + else if (document.getElementById("solarPlanner").checked) { + resetRoofColors(); + + //looping threw all surfaces + tileContent.forEach(t => { + for (const [key, value] of Object.entries(pvPotentialSurfaces)) { + if (value["id"] === t.getProperty("gml_id") && chosenAttributeRadioBtnFlag !== "shadowValue") { //checking if the ids of the current surface match the id in the shadowdata array + //console.log("hour:",chosenDate.hour); + var normalizedPvValue=""; + chosenPvPotentialValue = value["attributes"]["pvPotential"][chosenAttributeRadioBtnFlag]; + //console.log("chosenPvPotentialValue",chosenPvPotentialValue); + + normalizedPvValue = getNormalizedValue(chosenPvPotentialValue); + console.log("normalisierter", normalizedPvValue); + t.color = Cesium.Color.fromCssColorString(getColorFromPalette(normalizedPvValue, "pvPotential")); //coloring the surface + SurfacePvPotential = chosenPvPotentialValue; + SurfacePvPotentialObject = value["attributes"]["pvPotential"]; + console.log(SurfacePvPotentialObject); + } + } + }); + + + } + + /** + * @deprecated roofview is not used anymore, maybe later for "color all surface, depending on one attribute" + */ + else if (document.getElementById("roofView").checked){ + console.log(pickedhigh,highlightedFeatures,tileContent); + resetRoofColors(); + //looping threw all surfaces tileContent.forEach(t => { if (t.getProperty("description").includes("Roof")) { //HACK: checking if the are a roof surface (should come from feature_type) @@ -485,84 +468,14 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { t.color = Cesium.Color.fromCssColorString(getShadowPalette(shadowHourValue)); //coloring the surface } } - } - }); } - //DEPRECATED: Roof View }, Cesium.ScreenSpaceEventType.LEFT_CLICK); -//filling the table in the info sidebar with data -function fillTableProperties(gID, sID) { - - if (drawBox === false) { - swal("CAN'T LOAD DATA!", "mark an area first!", "error"); - document.getElementById("singleChartContainer").style.visibility = "hidden" - document.getElementsByClassName('cesium-infoBox-defaultTable').style.display = 'none'; - - } else { - - //Property BuildingFunction - buildingFunctionSortPick.forEach((value, key) => { - if (key === gID) { - pickBuildingFunction = value - } - }) - - //Property Year of Construction - constructionYearSortPick.forEach((value, key) => { - if (key === gID) { - pickYearOfConstruction = value - } - }) - - //Property height - heightSortPick.forEach((value, key) => { - if (key === gID) { - pickHeight = value - } - }) - - //Property HeatedVolume - heatedVolumeSortPick.forEach((value, key) => { - if (key === gID) { - pickHeatedVolume = value - } - }) - - //Property TotalSurfaceArea - totalSurfaceAreaSortPick.forEach((value, key) => { - if (key === gID) { - var sum = 0 - value.forEach(element => { - sum += element.totalSurfaceArea - }); - pickTotalSurfaceArea = sum - } - }) - - //Property RoofType - roofTypeSortPick.forEach((value, key) => { - if (key === gID) { - pickRoofType = value - } - }) - - //Property UValue - uValueSortPick.forEach((value, key) => { - if (key === sID) { - pickUValue = value - } - }) - } - -} - - function resetRoofColors() { tileContent.forEach(t => { if (t.getProperty("description").includes("Roof")) { diff --git a/public/js/pvPotentialNormalization.js b/public/js/pvPotentialNormalization.js index e1442ba..58de127 100644 --- a/public/js/pvPotentialNormalization.js +++ b/public/js/pvPotentialNormalization.js @@ -1,10 +1,11 @@ -/* TODO: issue #128 -write a function which normalizes each value from the pvPotential array -and -*/ -var minAndMaxPvPotentials = []; +/** Documentation: + * Function is used to calculate normalized pvPotential data + * it normalizes every value from the array + */ +var minAndMaxPvPotentials = []; +//getting the min and max for each attributes function setMinAndMax(pvPotentialValue) { let pvPotentials = []; pvPotentialSurfaces.forEach(t => { @@ -15,19 +16,19 @@ function setMinAndMax(pvPotentialValue) { } }); pvPotentials = pvPotentials.sort(function(a, b) { return a - b; }); - minAndMaxPvPotentials=[]; + minAndMaxPvPotentials = []; minAndMaxPvPotentials.push(pvPotentials[0]); minAndMaxPvPotentials.push(pvPotentials[pvPotentials.length - 1]); console.log("setMinAndMax calculated"); } +//calculating the normalized value for the selected pvPotential value function getNormalizedValue(selectedPvPotentialValue) { var normalizedValue; - if(minAndMaxPvPotentials[1]-minAndMaxPvPotentials[0]!==0){ - normalizedValue = (selectedPvPotentialValue-minAndMaxPvPotentials[0])/(minAndMaxPvPotentials[1]-minAndMaxPvPotentials[0]); - } - else{ - normalizedValue=1; + if (minAndMaxPvPotentials[1] - minAndMaxPvPotentials[0] !== 0) { + normalizedValue = (selectedPvPotentialValue - minAndMaxPvPotentials[0]) / (minAndMaxPvPotentials[1] - minAndMaxPvPotentials[0]); + } else { + normalizedValue = 1; } return normalizedValue; } diff --git a/public/js/searchadress.js b/public/js/searchadress.js new file mode 100644 index 0000000..2015c39 --- /dev/null +++ b/public/js/searchadress.js @@ -0,0 +1,40 @@ +/** + * Used for the search address feature + */ + +//load address +var request = new XMLHttpRequest(); +request.onreadystatechange = function() { + if (this.readyState == 4 && this.status == 200) { + + var coordinate = JSON.parse(request.responseText); + var lat = coordinate.results[0].geometry.lat; + var lng = coordinate.results[0].geometry.lng; + console.log(lat + " " + lng); + fly(lat, lng); + } +} + +//sending a request to the opencage api to convert the input to coordinates +function searchaddress() { + var query = document.getElementById('SearchAddress').value; + request.open("GET", 'https://api.opencagedata.com/geocode/v1/json?key=c73da14969e6408ab4535b3ad6dc43ea&pretty=1&no_annotations=1&q=' + query, true); + request.send(); +} + +//used to fly to the found position +function fly(lat, lng) { + var pinBuilder = new Cesium.PinBuilder(); + + var bluePin = viewer.entities.add({ + name: "Blank blue pin", + position: Cesium.Cartesian3.fromDegrees(lng, lat), + billboard: { + image: pinBuilder.fromColor(Cesium.Color.ROYALBLUE, 48).toDataURL(), + verticalOrigin: Cesium.VerticalOrigin.BOTTOM, + }, + }); + viewer.zoomTo(bluePin); + + viewer.flyTo(bluePin); +} \ No newline at end of file diff --git a/public/main.html b/public/main.html index 5b8e717..3be891f 100644 --- a/public/main.html +++ b/public/main.html @@ -251,6 +251,10 @@
Surface-View
+ +
Solar-Planner
+ +
+ +
+
Chart
+
@@ -389,6 +395,10 @@ + + + + -- GitLab From 2d66da972457a4482ac60995f6f0082e3f27e336 Mon Sep 17 00:00:00 2001 From: BujarMuharemi Date: Tue, 18 Jan 2022 19:22:10 +0100 Subject: [PATCH 52/56] removed solarPlanner --- public/js/globe.js | 2 +- public/main.html | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/public/js/globe.js b/public/js/globe.js index 1c7db6f..b18775e 100644 --- a/public/js/globe.js +++ b/public/js/globe.js @@ -454,7 +454,7 @@ viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) { /** * @deprecated roofview is not used anymore, maybe later for "color all surface, depending on one attribute" */ - else if (document.getElementById("roofView").checked){ + else if (document.getElementById("roofView").checked && roofViewActivated){ console.log(pickedhigh,highlightedFeatures,tileContent); resetRoofColors(); diff --git a/public/main.html b/public/main.html index 3be891f..554f8ec 100644 --- a/public/main.html +++ b/public/main.html @@ -251,9 +251,9 @@
Surface-View
- + - - - + + +
+
- +
Chart
-- GitLab