telecom-forum
Telecom Knowledge Sharing
219 posts
Hello, This blog is created for sharing knowledge on telecommunication technology, getting the update, sharing the experiences, get the news about technology, get the job announcement, we would appreciate you share us your experience and teach the new coming engineer with fresh experiences.
Don't wanna be here? Send us removal request.
telecom-forum · 3 years ago
Photo
Tumblr media
TRIANGULATION #map { max-width: 100%; height: 480px; margin-top: 0; border-radius: 12px; } #floating-link { position: absolute; top: 115px; left: 17%; z-index: 5; padding: 1px; border: 0px solid #999; text-align: center; font-family: 'Arial','sans-serif'; line-height: 26px; width: 26px; padding-left: 5px; } #display-panel { background-color: #cccccc; border-radius: 12px; padding: 5px; margin-bottom: 4px; } #panel { background-color: #f2f2f2; border-radius: 12px; padding: 5px; line-height: 30px; border: 1px solid #999; font-family: 'Arial','sans-serif'; text-align: center; border-radius: 12px; width: 360px; } #floating-panel { position: absolute; top: 30px; left: 50%; z-index: 5; background-color: #fff; padding: 5px; border: 1px solid #999; text-align: center; font-family: 'Roboto','sans-serif'; line-height: 30px; padding-left: 5px; border-radius: 12px; } #floating-panel { position: absolute; top: 30px; left: 50%; margin-left: -180px; width: 375px; z-index: 5; background-color: #fff; padding: 5px; border: 1px solid #999; border-radius: 12px; } #latlng { width: 150px; text-align: center; } #azimuth { width: 30px; text-align: center; } #err { width: 25px; text-align: center; }
Tips: Right Click on map to get Lat/Lng
Lat, Long: Azimuth: °deg
Error:Azimuth ± °deg
Tumblr media
.divbanneradv_bg { background-color:#550055; width: 100%; border: 0px solid white; padding-top: 0px;" padding: 0px; padding-left: 0px; padding-right: 0px; } var labels = '123456789'; var labelIndex = 0; var color1 = ["#ff0000", "#3333cc", "#00ff00", "#ff9900", "#cc0099", "#ffff00", "#00ffff", "#009933", "#ff0066"]; var color1Index = 0; function initMap() { var map = new google.maps.Map(document.getElementById('map'), { zoom: 4, center: {lat: 12.793639, lng: 104.830108} }); var infowindow = new google.maps.InfoWindow; //add draw tool var drawingManager = new google.maps.drawing.DrawingManager({ drawingMode: google.maps.drawing.OverlayType, drawingControl: true, drawingControlOptions: { position: google.maps.ControlPosition.RIGHT_TOP, drawingModes: ['marker', 'circle', 'polygon', 'polyline', 'rectangle'] }, markerOptions: { icon: 'https://1.bp.blogspot.com/-FFxpZvp3zEw/V_sJfJzsLPI/AAAAAAAAHNM/Qnclhlt_gmEOMhuzwyKpzlpnRVwF4o3VgCLcB/s1600/1475834166_mobile_net.png', clickable: false, draggable: true }, circleOptions: { fillColor: '#ffff00', fillOpacity: 1, strokeWeight: 5, clickable: false, editable: true, zIndex: 1 } }); drawingManager.setMap(map); // end draw tool document.getElementById('submit').addEventListener('click', function() { geocodeLatLng(map, infowindow); }); // end // right click get location on map google.maps.event.addListener(map, "rightclick", function(event) { var lat1 = event.latLng.lat(); var lng1 = event.latLng.lng(); // populate yor box/field with lat, lng //alert("Lat,Lng = " + lat1 + ", " + lng1); contentString = 'Lat,Lng = ' + (lat1).toFixed(6) + ', ' + (lng1).toFixed(6) ; //contentString = 'Hello'; myLatLng = {lat: lat1, lng: lng1}; var infowindow = new google.maps.InfoWindow({ content: contentString, position: myLatLng }); infowindow.open(map); }); // end } function geocodeLatLng(map, infowindow) { var input = document.getElementById('latlng').value; var latlngStr = input.split(',', 2); var latlng = {lat: parseFloat(latlngStr[0]), lng: parseFloat(latlngStr[1])}; var input = document.getElementById('azimuth').value; var azimuth = Number(input); var input = document.getElementById('err').value; var errorazimuth = Number(input); var lat1 = parseFloat(latlngStr[0]); var lng1 = parseFloat(latlngStr[1]); var az1 = azimuth + errorazimuth; var az2 = azimuth - errorazimuth; var az = azimuth; var dist = 5000000; var R = 16371000; //if (az1 > 360) { //az1 = 0 + errorazimuth; } //if (az2 < 0) { //az2 = 360 - errorazimuth; } if (azimuth < 0) { window.alert('Azimuth must be between 0 and 360'); initMap(); } if (azimuth > 360) { window.alert('Azimuth must be between 0 and 360'); initMap(); } map.setZoom(12); map.setCenter(latlng); var image = 'https://1.bp.blogspot.com/-FFxpZvp3zEw/V_sJfJzsLPI/AAAAAAAAHNM/Qnclhlt_gmEOMhuzwyKpzlpnRVwF4o3VgCLcB/s1600/1475834166_mobile_net.png' var marker = new google.maps.Marker({ position: latlng, center:latlng, label: labels[labelIndex++ % labels.length], map: map, icon: image, clickable: false, title: 'Station of Measurement' }); GetEndpoint(lat1, lng1, az, dist, R); var lat2 = x2; var lng2 = y2; GetEndpoint(lat1, lng1, az1, dist, R); var lat3 = x2; var lng3 = y2; GetEndpoint(lat1, lng1, az2, dist, R); var lat4 = x2; var lng4 = y2; var flightPlanCoordinates = [ {lat: lat1, lng: lng1}, {lat: lat2, lng: lng2} ]; var flightPath = new google.maps.Polyline({ path: flightPlanCoordinates, geodesic: false, //strokeColor: '#FF0000', strokeColor: color1[color1Index++ % color1.length], strokeOpacity: 1.0, strokeWeight: 2, clickable: false }); flightPath.setMap(map); // Define the LatLng coordinates for the polygon's path. var triangleCoords = [ {lat: lat1, lng: lng1}, {lat: lat3, lng: lng3}, {lat: lat4, lng: lng4} ]; // Construct the polygon. var bermudaTriangle = new google.maps.Polygon({ paths: triangleCoords, strokeColor: '#FF0000', strokeOpacity: 0.1, strokeWeight: 1, fillColor: '#FF0000', fillOpacity: 0.3, clickable: false }); bermudaTriangle.setMap(map); } function GetEndpoint (x1, y1, angle, d, R) { var δ = Number(d)/Number(R); var θ = (Number(angle)*Math.PI)/180; var φ1 = x1*Math.PI/180; var λ1 = y1*Math.PI/180; var φ2 = Math.asin(Math.sin(φ1)*Math.cos(δ) + Math.cos(φ1)*Math.sin(δ)*Math.cos(θ)); var x = Math.cos(δ) - Math.sin(φ1) * Math.sin(φ2); var y = Math.sin(θ) * Math.sin(δ) * Math.cos(φ1); var λ2 = λ1 + Math.atan2(y, x); x2 = φ2*180/Math.PI; y2 = (λ2*180/Math.PI + 540)%360-180; } function resetMap () { var labelIndex = 0; initMap(); }
(adsbygoogle = window.adsbygoogle || []).push({});
Triangulation
The tracing and measurement of a series or network of triangles in order to determine the distances and relative positions of points spread over an area, especially by measuring the length of one side of each triangle and deducing its angles and the length of the other two sides by observation from this baseline.
Concept and application for Triangulation:
To define the transmitter source or interference source while you are hunting for. By the determine the location and azimuth while performing the signal strenght measurement for at least two location in orther to determine location of target source.
Tumblr media
hr { display: block; margin-top: 0.1em; margin-bottom: 0.5em; margin-left: 2px; margin-right: auto; border-style: double; border-width: 3px; color: lightgrey; }
SEE MORE TELECOM TOOLS: OTHERS RF TOOLS
https://ift.tt/P26ozXy
0 notes
telecom-forum · 3 years ago
Link
#map { max-width: 100%; height: 480px; margin-top: 0; border-radius: 12px; } #floating-link { position: absolute; top: 115px; left: 17%; z-index: 5; padding: 1px; border: 0px solid #999; text-align: center; font-family: 'Arial','sans-serif'; line-height: 26px; width: 26px; padding-left: 5px; } #display-panel { background-color: #cccccc; border-radius: 12px; padding: 5px; margin-bottom: 4px; } #panel { background-color: #f2f2f2; border-radius: 12px; padding: 5px; line-height: 30px; border: 1px solid #999; font-family: 'Arial','sans-serif'; text-align: center; border-radius: 12px; width: 360px; } #floating-panel { position: absolute; top: 30px; left: 50%; z-index: 5; background-color: #fff; padding: 5px; border: 1px solid #999; text-align: center; font-family: 'Roboto','sans-serif'; line-height: 30px; padding-left: 5px; border-radius: 12px; } #floating-panel { position: absolute; top: 30px; left: 50%; margin-left: -180px; width: 375px; z-index: 5; background-color: #fff; padding: 5px; border: 1px solid #999; border-radius: 12px; } #latlng { width: 150px; text-align: center; } #azimuth { width: 30px; text-align: center; } #err { width: 25px; text-align: center; }
Tips: Right Click on map to get Lat/Lng
Lat, Long: Azimuth: °deg
Error:Azimuth ± °deg
Tumblr media
.divbanneradv_bg { background-color:#550055; width: 100%; border: 0px solid white; padding-top: 0px;" padding: 0px; padding-left: 0px; padding-right: 0px; } var labels = '123456789'; var labelIndex = 0; var color1 = ["#ff0000", "#3333cc", "#00ff00", "#ff9900", "#cc0099", "#ffff00", "#00ffff", "#009933", "#ff0066"]; var color1Index = 0; function initMap() { var map = new google.maps.Map(document.getElementById('map'), { zoom: 4, center: {lat: 12.793639, lng: 104.830108} }); var infowindow = new google.maps.InfoWindow; //add draw tool var drawingManager = new google.maps.drawing.DrawingManager({ drawingMode: google.maps.drawing.OverlayType, drawingControl: true, drawingControlOptions: { position: google.maps.ControlPosition.RIGHT_TOP, drawingModes: ['marker', 'circle', 'polygon', 'polyline', 'rectangle'] }, markerOptions: { icon: 'https://1.bp.blogspot.com/-FFxpZvp3zEw/V_sJfJzsLPI/AAAAAAAAHNM/Qnclhlt_gmEOMhuzwyKpzlpnRVwF4o3VgCLcB/s1600/1475834166_mobile_net.png', clickable: false, draggable: true }, circleOptions: { fillColor: '#ffff00', fillOpacity: 1, strokeWeight: 5, clickable: false, editable: true, zIndex: 1 } }); drawingManager.setMap(map); // end draw tool document.getElementById('submit').addEventListener('click', function() { geocodeLatLng(map, infowindow); }); // end // right click get location on map google.maps.event.addListener(map, "rightclick", function(event) { var lat1 = event.latLng.lat(); var lng1 = event.latLng.lng(); // populate yor box/field with lat, lng //alert("Lat,Lng = " + lat1 + ", " + lng1); contentString = 'Lat,Lng = ' + (lat1).toFixed(6) + ', ' + (lng1).toFixed(6) ; //contentString = 'Hello'; myLatLng = {lat: lat1, lng: lng1}; var infowindow = new google.maps.InfoWindow({ content: contentString, position: myLatLng }); infowindow.open(map); }); // end } function geocodeLatLng(map, infowindow) { var input = document.getElementById('latlng').value; var latlngStr = input.split(',', 2); var latlng = {lat: parseFloat(latlngStr[0]), lng: parseFloat(latlngStr[1])}; var input = document.getElementById('azimuth').value; var azimuth = Number(input); var input = document.getElementById('err').value; var errorazimuth = Number(input); var lat1 = parseFloat(latlngStr[0]); var lng1 = parseFloat(latlngStr[1]); var az1 = azimuth + errorazimuth; var az2 = azimuth - errorazimuth; var az = azimuth; var dist = 5000000; var R = 16371000; //if (az1 > 360) { //az1 = 0 + errorazimuth; } //if (az2 < 0) { //az2 = 360 - errorazimuth; } if (azimuth < 0) { window.alert('Azimuth must be between 0 and 360'); initMap(); } if (azimuth > 360) { window.alert('Azimuth must be between 0 and 360'); initMap(); } map.setZoom(12); map.setCenter(latlng); var image = 'https://1.bp.blogspot.com/-FFxpZvp3zEw/V_sJfJzsLPI/AAAAAAAAHNM/Qnclhlt_gmEOMhuzwyKpzlpnRVwF4o3VgCLcB/s1600/1475834166_mobile_net.png' var marker = new google.maps.Marker({ position: latlng, center:latlng, label: labels[labelIndex++ % labels.length], map: map, icon: image, clickable: false, title: 'Station of Measurement' }); GetEndpoint(lat1, lng1, az, dist, R); var lat2 = x2; var lng2 = y2; GetEndpoint(lat1, lng1, az1, dist, R); var lat3 = x2; var lng3 = y2; GetEndpoint(lat1, lng1, az2, dist, R); var lat4 = x2; var lng4 = y2; var flightPlanCoordinates = [ {lat: lat1, lng: lng1}, {lat: lat2, lng: lng2} ]; var flightPath = new google.maps.Polyline({ path: flightPlanCoordinates, geodesic: false, //strokeColor: '#FF0000', strokeColor: color1[color1Index++ % color1.length], strokeOpacity: 1.0, strokeWeight: 2, clickable: false }); flightPath.setMap(map); // Define the LatLng coordinates for the polygon's path. var triangleCoords = [ {lat: lat1, lng: lng1}, {lat: lat3, lng: lng3}, {lat: lat4, lng: lng4} ]; // Construct the polygon. var bermudaTriangle = new google.maps.Polygon({ paths: triangleCoords, strokeColor: '#FF0000', strokeOpacity: 0.1, strokeWeight: 1, fillColor: '#FF0000', fillOpacity: 0.3, clickable: false }); bermudaTriangle.setMap(map); } function GetEndpoint (x1, y1, angle, d, R) { var δ = Number(d)/Number(R); var θ = (Number(angle)*Math.PI)/180; var φ1 = x1*Math.PI/180; var λ1 = y1*Math.PI/180; var φ2 = Math.asin(Math.sin(φ1)*Math.cos(δ) + Math.cos(φ1)*Math.sin(δ)*Math.cos(θ)); var x = Math.cos(δ) - Math.sin(φ1) * Math.sin(φ2); var y = Math.sin(θ) * Math.sin(δ) * Math.cos(φ1); var λ2 = λ1 + Math.atan2(y, x); x2 = φ2*180/Math.PI; y2 = (λ2*180/Math.PI + 540)%360-180; } function resetMap () { var labelIndex = 0; initMap(); }
(adsbygoogle = window.adsbygoogle || []).push({});
Triangulation
The tracing and measurement of a series or network of triangles in order to determine the distances and relative positions of points spread over an area, especially by measuring the length of one side of each triangle and deducing its angles and the length of the other two sides by observation from this baseline.
Concept and application for Triangulation:
To define the transmitter source or interference source while you are hunting for. By the determine the location and azimuth while performing the signal strenght measurement for at least two location in orther to determine location of target source.
Tumblr media
hr { display: block; margin-top: 0.1em; margin-bottom: 0.5em; margin-left: 2px; margin-right: auto; border-style: double; border-width: 3px; color: lightgrey; }
SEE MORE TELECOM TOOLS: OTHERS RF TOOLS
https://ift.tt/Ak5VYTc
0 notes
telecom-forum · 3 years ago
Photo
Tumblr media
POINT TO POINT ALIGNMETN #map { max-width: 100%; height: 365px; margin-top: 2px; border-radius: 12px; background-color: #f2f2f2; color: white; } #container { background-color: #cccccc; border-radius: 12px; padding: 6px; max-width: 100% } #elevation_chart { background-color: #cccccc; border-radius: 12px; padding: 2px; margin-top: 2px; margin-bottom: 2px; margin-right: 2px; } #display-panel { background-color: #f2f2f2; padding: 2px; border: 1px solid #999; font-family: 'Arial','sans-serif'; font-size: 13px; font-weight: bold; line-height: 32px; text-align: center; max-width: 98%; border-radius: 12px; } #latlngA { width: 130px; text-align: center; font-size:11px; color: blue; } #latlngB { width: 130px; text-align: center; font-size:11px; color: blue; } #azimuthA { width: 35px; text-align: center; font-size:11px; color: blue; } #azimuthB { width: 38px; text-align: center; font-size:12px; } #DistAB { width: 35px; text-align: left; font-size:11px; color: blue; } #HeightA { width: 35px; text-align: left; font-size:11px; color: blue; } #HeightB { width: 35px; text-align: left; font-size:11px; color: blue; } #Obstacle { width: 35px; text-align: left; font-size:11px; color: blue; } hr { display: block; margin-top: 0.1em; margin-bottom: 0.5em; margin-left: 2px; margin-right: auto; border-style: double; border-width: 1px; color: lightgrey; }
INPUT :
A: Lat,Lng Height  (m)
B: Lat,Lng Height  (m)
Height obstacle: (m) such as tree,building,..
RESULT :
➥ Azimuth (°deg)  A ➪ B :   B ➪ A:
➥ Dist A ⇔ B: Km
* Tips: Right Click on map to get Lat/Lng   
(adsbygoogle = window.adsbygoogle || []).push({});
Elevation Profile will show after Path Profile is created
Tumblr media Tumblr media Tumblr media
SEE MORE TELECOM TOOLS: OTHERS RF TOOLS
google.charts.load('current', {packages: ['corechart']}); google.charts.setOnLoadCallback(drawChart); var labels = '123456789'; var labelIndex = 0; var color1 = ["#ff0000", "#3333cc", "#00ff00", "#ff9900", "#cc0099", "#ffff00", "#00ffff", "#009933", "#ff0066"]; var color1Index = 0; google.load('visualization', '1', {packages: ['columnchart']}); var obstacle = 0; var heightA = 1; var heightB = 1; function initMap() { var map = new google.maps.Map(document.getElementById('map'), { zoom: 4, center: {lat: 12.793639, lng: 104.830108} }); var infowindow = new google.maps.InfoWindow; //add draw tool var drawingManager = new google.maps.drawing.DrawingManager({ drawingMode: google.maps.drawing.OverlayType, drawingControl: true, drawingControlOptions: { position: google.maps.ControlPosition.RIGHT_TOP, drawingModes: ['marker', 'circle', 'polygon', 'polyline', 'rectangle'] }, markerOptions: { icon: 'https://4.bp.blogspot.com/-s75nbkxOCUo/V7v2jFfc-cI/AAAAAAAAG94/xQC6oQFiLwcw0NcuwW86J5Y3xciqtXvJACLcB/s1600/icon-tower-gif.gif', clickable: false, draggable: true }, circleOptions: { fillColor: '#ffff00', fillOpacity: 1, strokeWeight: 5, clickable: false, editable: true, zIndex: 1 } }); drawingManager.setMap(map); //end draw tool //Path Profile click document.getElementById('submit').addEventListener('click', function() { geocodeLatLng(map, infowindow); }); // end // right click get location on map google.maps.event.addListener(map, "rightclick", function(event) { var lat1 = event.latLng.lat(); var lng1 = event.latLng.lng(); // populate yor box/field with lat, lng //alert("Lat,Lng = " + lat1 + ", " + lng1); contentString = 'Lat,Lng = ' + lat1.toFixed(6) + ', ' + lng1.toFixed(6) ; //contentString = 'Hello'; myLatLng = {lat: lat1, lng: lng1}; var infowindow = new google.maps.InfoWindow({ content: contentString, position: myLatLng }); infowindow.open(map); }); // end // Create an ElevationService. var elevator = new google.maps.ElevationService; } // end initMap //function get input data function geocodeLatLng(map, infowindow) { var inputA = document.getElementById('latlngA').value; var latlngStrA = inputA.split(',', 2); var latlngA = {lat: parseFloat(latlngStrA[0]), lng: parseFloat(latlngStrA[1])}; var latA = parseFloat(latlngStrA[0]); var lngA = parseFloat(latlngStrA[1]); var inputB = document.getElementById('latlngB').value; var latlngStrB = inputB.split(',', 2); var latlngB = {lat: parseFloat(latlngStrB[0]), lng: parseFloat(latlngStrB[1])}; var latB = parseFloat(latlngStrB[0]); var lngB = parseFloat(latlngStrB[1]); var HeightA = document.getElementById('HeightA').value; var HeightB = document.getElementById('HeightB').value; var Obstacle = document.getElementById('Obstacle').value; obstacle = parseInt(Obstacle); heightA = parseInt(HeightA); heightB = parseInt(HeightB); map.setZoom(10); map.setCenter(latlngA); var image = 'https://4.bp.blogspot.com/-s75nbkxOCUo/V7v2jFfc-cI/AAAAAAAAG94/xQC6oQFiLwcw0NcuwW86J5Y3xciqtXvJACLcB/s1600/icon-tower-gif.gif'; var marker1 = new google.maps.Marker({ position: latlngA, center:latlngA, label: 'AP-1', map: map, icon: image, clickable: false, title: 'Access Point' }); var marker2 = new google.maps.Marker({ position: latlngB, center: latlngB, label: 'AP-2', map: map, icon: image, clickable: false, title: 'Access Point' }); var path1 = [marker1.getPosition(), marker2.getPosition()]; var heading1 = google.maps.geometry.spherical.computeHeading(path1[0], path1[1]); var path2 = [marker2.getPosition(), marker1.getPosition()]; var heading2 = google.maps.geometry.spherical.computeHeading(path2[0], path2[1]); var distanceAB = google.maps.geometry.spherical.computeDistanceBetween(path1[0], path1[1]); if (heading1 < 0) { heading1 = 360 + heading1; } if (heading2 < 0) { heading2 = 360 + heading2; } document.getElementById('azimuthA').value = heading1.toFixed(2); document.getElementById('azimuthB').value = heading2.toFixed(2); document.getElementById('DistAB').value = (distanceAB/1000).toFixed(2); var path = [ {lat: latA, lng: lngA}, {lat: latB, lng: lngB} ]; // Create an ElevationService. var elevator = new google.maps.ElevationService; // Draw the path, using the Visualization API and the Elevation service. displayPathElevation(path, elevator, map, heightA, heightB, obstacle); } //end function get input data function resetMap () { var labelIndex = 0; document.getElementById('azimuthA').value = ""; document.getElementById('azimuthB').value = ""; document.getElementById('DistAB').value = ""; document.getElementById('elevation_chart').textContent = "Reset, please run it again!"; initMap(); } https://ift.tt/3p44KGj
0 notes
telecom-forum · 3 years ago
Link
#map { max-width: 100%; height: 365px; margin-top: 2px; border-radius: 12px; background-color: #f2f2f2; color: white; } #container { background-color: #cccccc; border-radius: 12px; padding: 6px; max-width: 100% } #elevation_chart { background-color: #cccccc; border-radius: 12px; padding: 2px; margin-top: 2px; margin-bottom: 2px; margin-right: 2px; } #display-panel { background-color: #f2f2f2; padding: 2px; border: 1px solid #999; font-family: 'Arial','sans-serif'; font-size: 13px; font-weight: bold; line-height: 32px; text-align: center; max-width: 98%; border-radius: 12px; } #latlngA { width: 130px; text-align: center; font-size:11px; color: blue; } #latlngB { width: 130px; text-align: center; font-size:11px; color: blue; } #azimuthA { width: 35px; text-align: center; font-size:11px; color: blue; } #azimuthB { width: 38px; text-align: center; font-size:12px; } #DistAB { width: 35px; text-align: left; font-size:11px; color: blue; } #HeightA { width: 35px; text-align: left; font-size:11px; color: blue; } #HeightB { width: 35px; text-align: left; font-size:11px; color: blue; } #Obstacle { width: 35px; text-align: left; font-size:11px; color: blue; } hr { display: block; margin-top: 0.1em; margin-bottom: 0.5em; margin-left: 2px; margin-right: auto; border-style: double; border-width: 1px; color: lightgrey; }
INPUT :
A: Lat,Lng Height  (m)
B: Lat,Lng Height  (m)
Height obstacle: (m) such as tree,building,..
RESULT :
➥ Azimuth (°deg)  A ➪ B :   B ➪ A:
➥ Dist A ⇔ B: Km
* Tips: Right Click on map to get Lat/Lng   
(adsbygoogle = window.adsbygoogle || []).push({});
Elevation Profile will show after Path Profile is created
Tumblr media Tumblr media Tumblr media
SEE MORE TELECOM TOOLS: OTHERS RF TOOLS
google.charts.load('current', {packages: ['corechart']}); google.charts.setOnLoadCallback(drawChart); var labels = '123456789'; var labelIndex = 0; var color1 = ["#ff0000", "#3333cc", "#00ff00", "#ff9900", "#cc0099", "#ffff00", "#00ffff", "#009933", "#ff0066"]; var color1Index = 0; google.load('visualization', '1', {packages: ['columnchart']}); var obstacle = 0; var heightA = 1; var heightB = 1; function initMap() { var map = new google.maps.Map(document.getElementById('map'), { zoom: 4, center: {lat: 12.793639, lng: 104.830108} }); var infowindow = new google.maps.InfoWindow; //add draw tool var drawingManager = new google.maps.drawing.DrawingManager({ drawingMode: google.maps.drawing.OverlayType, drawingControl: true, drawingControlOptions: { position: google.maps.ControlPosition.RIGHT_TOP, drawingModes: ['marker', 'circle', 'polygon', 'polyline', 'rectangle'] }, markerOptions: { icon: 'https://4.bp.blogspot.com/-s75nbkxOCUo/V7v2jFfc-cI/AAAAAAAAG94/xQC6oQFiLwcw0NcuwW86J5Y3xciqtXvJACLcB/s1600/icon-tower-gif.gif', clickable: false, draggable: true }, circleOptions: { fillColor: '#ffff00', fillOpacity: 1, strokeWeight: 5, clickable: false, editable: true, zIndex: 1 } }); drawingManager.setMap(map); //end draw tool //Path Profile click document.getElementById('submit').addEventListener('click', function() { geocodeLatLng(map, infowindow); }); // end // right click get location on map google.maps.event.addListener(map, "rightclick", function(event) { var lat1 = event.latLng.lat(); var lng1 = event.latLng.lng(); // populate yor box/field with lat, lng //alert("Lat,Lng = " + lat1 + ", " + lng1); contentString = 'Lat,Lng = ' + lat1.toFixed(6) + ', ' + lng1.toFixed(6) ; //contentString = 'Hello'; myLatLng = {lat: lat1, lng: lng1}; var infowindow = new google.maps.InfoWindow({ content: contentString, position: myLatLng }); infowindow.open(map); }); // end // Create an ElevationService. var elevator = new google.maps.ElevationService; } // end initMap //function get input data function geocodeLatLng(map, infowindow) { var inputA = document.getElementById('latlngA').value; var latlngStrA = inputA.split(',', 2); var latlngA = {lat: parseFloat(latlngStrA[0]), lng: parseFloat(latlngStrA[1])}; var latA = parseFloat(latlngStrA[0]); var lngA = parseFloat(latlngStrA[1]); var inputB = document.getElementById('latlngB').value; var latlngStrB = inputB.split(',', 2); var latlngB = {lat: parseFloat(latlngStrB[0]), lng: parseFloat(latlngStrB[1])}; var latB = parseFloat(latlngStrB[0]); var lngB = parseFloat(latlngStrB[1]); var HeightA = document.getElementById('HeightA').value; var HeightB = document.getElementById('HeightB').value; var Obstacle = document.getElementById('Obstacle').value; obstacle = parseInt(Obstacle); heightA = parseInt(HeightA); heightB = parseInt(HeightB); map.setZoom(10); map.setCenter(latlngA); var image = 'https://4.bp.blogspot.com/-s75nbkxOCUo/V7v2jFfc-cI/AAAAAAAAG94/xQC6oQFiLwcw0NcuwW86J5Y3xciqtXvJACLcB/s1600/icon-tower-gif.gif'; var marker1 = new google.maps.Marker({ position: latlngA, center:latlngA, label: 'AP-1', map: map, icon: image, clickable: false, title: 'Access Point' }); var marker2 = new google.maps.Marker({ position: latlngB, center: latlngB, label: 'AP-2', map: map, icon: image, clickable: false, title: 'Access Point' }); var path1 = [marker1.getPosition(), marker2.getPosition()]; var heading1 = google.maps.geometry.spherical.computeHeading(path1[0], path1[1]); var path2 = [marker2.getPosition(), marker1.getPosition()]; var heading2 = google.maps.geometry.spherical.computeHeading(path2[0], path2[1]); var distanceAB = google.maps.geometry.spherical.computeDistanceBetween(path1[0], path1[1]); if (heading1 < 0) { heading1 = 360 + heading1; } if (heading2 < 0) { heading2 = 360 + heading2; } document.getElementById('azimuthA').value = heading1.toFixed(2); document.getElementById('azimuthB').value = heading2.toFixed(2); document.getElementById('DistAB').value = (distanceAB/1000).toFixed(2); var path = [ {lat: latA, lng: lngA}, {lat: latB, lng: lngB} ]; // Create an ElevationService. var elevator = new google.maps.ElevationService; // Draw the path, using the Visualization API and the Elevation service. displayPathElevation(path, elevator, map, heightA, heightB, obstacle); } //end function get input data function resetMap () { var labelIndex = 0; document.getElementById('azimuthA').value = ""; document.getElementById('azimuthB').value = ""; document.getElementById('DistAB').value = ""; document.getElementById('elevation_chart').textContent = "Reset, please run it again!"; initMap(); } https://ift.tt/3E2lbJu
0 notes
telecom-forum · 3 years ago
Link
PathRF - RF Line Of Site
#map_canvas img{max-width:none} .infoDiv { height: 200px; width: 300px; -webkit-user-select: none; background-color: white; }
Radio 1 (Blue Marker) Latitude: Longitude:
Radio 2 (Green Marker) Latitude: Longitude:
jQuery(function(){jQuery("#windowGraph").kendoWindow({"open":LOSmap.mymap.onOpen,"modal":false,"iframe":false,"draggable":true,"pinned":false,"title":"Elevation Map","resizable":true,"content":null,"actions":["Close"]});});
$(document).ready(function () { var map = new LOSmap.mymap.Initialize(); });
https://ift.tt/eA8V8J
0 notes
telecom-forum · 3 years ago
Photo
Tumblr media
POINT TO POINT ALIGNMENT #map { max-width: 100%; height: 365px; margin-top: 2px; border-radius: 12px; background-color: #f2f2f2; } #container { background-color: #cccccc; border-radius: 12px; padding: 6px; max-width: 100% } #elevation_chart { background-color: #cccccc; border-radius: 12px; padding: 2px; margin-top: 2px; margin-bottom: 2px; margin-right: 2px; } #display-panel { margin-top: 0px; background-color: #f2f2f2; padding-top: 8px; padding-left: 2px; padding-right: 2px; border: 1px solid #999; font-family: 'Arial','sans-serif'; font-size: 10px; line-height: 30px; max-width: 98%; border-radius: 12px; } #latlngA { width: 135px; text-align: center; } #latlngB { width: 135px; text-align: center; } #azimuthA { width: 35px; text-align: center; } #azimuthB { width: 35px; text-align: center; } #DistAB { width: 35px; text-align: left; } #HeightA { width: 35px; text-align: left; } #HeightB { width: 35px; text-align: left; } #Obstacle { width: 35px; text-align: left; } hr { display: block; margin-top: 0.1em; margin-bottom: 0.5em; margin-left: 2px; margin-right: auto; border-style: double; border-width: 1px; color: lightgrey; }
INPUT:
A: Lat,Lng Height  (m)
B: Lat,Lng Height  (m)
Height obstacle: (m) such as tree, building, ....
RESULT:
➥ Azimuth (°deg)  A ➪ B :   B ➪ A:
➥ Dist A ⇔ B: Km
* Tips: Right Click on map to get Lat/Lng   
(adsbygoogle = window.adsbygoogle || []).push({});
Tumblr media Tumblr media Tumblr media
SEE MORE TELECOM TOOLS: OTHERS RF TOOLS
google.charts.load('current', {packages: ['corechart']}); google.charts.setOnLoadCallback(drawChart); var labels = '123456789'; var labelIndex = 0; var color1 = ["#ff0000", "#3333cc", "#00ff00", "#ff9900", "#cc0099", "#ffff00", "#00ffff", "#009933", "#ff0066"]; var color1Index = 0; google.load('visualization', '1', {packages: ['columnchart']}); var obstacle = 0; var heightA = 1; var heightB = 1; function initMap() { var map = new google.maps.Map(document.getElementById('map'), { zoom: 4, center: {lat: 12.793639, lng: 104.830108} }); var infowindow = new google.maps.InfoWindow; //add draw tool var drawingManager = new google.maps.drawing.DrawingManager({ drawingMode: google.maps.drawing.OverlayType, drawingControl: true, drawingControlOptions: { position: google.maps.ControlPosition.RIGHT_TOP, drawingModes: ['marker', 'circle', 'polygon', 'polyline', 'rectangle'] }, markerOptions: { icon: 'https://4.bp.blogspot.com/-s75nbkxOCUo/V7v2jFfc-cI/AAAAAAAAG94/xQC6oQFiLwcw0NcuwW86J5Y3xciqtXvJACLcB/s1600/icon-tower-gif.gif', clickable: false, draggable: true }, circleOptions: { fillColor: '#ffff00', fillOpacity: 1, strokeWeight: 5, clickable: false, editable: true, zIndex: 1 } }); drawingManager.setMap(map); //end draw tool //Path Profile click document.getElementById('submit').addEventListener('click', function() { geocodeLatLng(map, infowindow); }); // end // right click get location on map google.maps.event.addListener(map, "rightclick", function(event) { var lat1 = event.latLng.lat(); var lng1 = event.latLng.lng(); // populate yor box/field with lat, lng //alert("Lat,Lng = " + lat1 + ", " + lng1); contentString = 'Lat,Lng = ' + lat1.toFixed(6) + ', ' + lng1.toFixed(6) ; //contentString = 'Hello'; myLatLng = {lat: lat1, lng: lng1}; var infowindow = new google.maps.InfoWindow({ content: contentString, position: myLatLng }); infowindow.open(map); }); // end // Create an ElevationService. var elevator = new google.maps.ElevationService; } // end initMap //function get input data function geocodeLatLng(map, infowindow) { var inputA = document.getElementById('latlngA').value; var latlngStrA = inputA.split(',', 2); var latlngA = {lat: parseFloat(latlngStrA[0]), lng: parseFloat(latlngStrA[1])}; var latA = parseFloat(latlngStrA[0]); var lngA = parseFloat(latlngStrA[1]); var inputB = document.getElementById('latlngB').value; var latlngStrB = inputB.split(',', 2); var latlngB = {lat: parseFloat(latlngStrB[0]), lng: parseFloat(latlngStrB[1])}; var latB = parseFloat(latlngStrB[0]); var lngB = parseFloat(latlngStrB[1]); var HeightA = document.getElementById('HeightA').value; var HeightB = document.getElementById('HeightB').value; var Obstacle = document.getElementById('Obstacle').value; obstacle = parseInt(Obstacle); heightA = parseInt(HeightA); heightB = parseInt(HeightB); map.setZoom(10); map.setCenter(latlngA); var image = 'https://4.bp.blogspot.com/-s75nbkxOCUo/V7v2jFfc-cI/AAAAAAAAG94/xQC6oQFiLwcw0NcuwW86J5Y3xciqtXvJACLcB/s1600/icon-tower-gif.gif'; var marker1 = new google.maps.Marker({ position: latlngA, center:latlngA, label: 'A', map: map, icon: image, clickable: false, title: 'Station A' }); var marker2 = new google.maps.Marker({ position: latlngB, center: latlngB, label: 'B', map: map, icon: image, clickable: false, title: 'Station B' }); var path1 = [marker1.getPosition(), marker2.getPosition()]; var heading1 = google.maps.geometry.spherical.computeHeading(path1[0], path1[1]); var path2 = [marker2.getPosition(), marker1.getPosition()]; var heading2 = google.maps.geometry.spherical.computeHeading(path2[0], path2[1]); var distanceAB = google.maps.geometry.spherical.computeDistanceBetween(path1[0], path1[1]); if (heading1 < 0) { heading1 = 360 + heading1; } if (heading2 < 0) { heading2 = 360 + heading2; } document.getElementById('azimuthA').value = heading1.toFixed(2); document.getElementById('azimuthB').value = heading2.toFixed(2); document.getElementById('DistAB').value = (distanceAB/1000).toFixed(2); var path = [ {lat: latA, lng: lngA}, {lat: latB, lng: lngB} ]; // Create an ElevationService. var elevator = new google.maps.ElevationService; // Draw the path, using the Visualization API and the Elevation service. displayPathElevation(path, elevator, map, heightA, heightB, obstacle); } //end function get input data function resetMap () { var labelIndex = 0; document.getElementById('azimuthA').value = ""; document.getElementById('azimuthB').value = ""; document.getElementById('DistAB').value = ""; document.getElementById('elevation_chart').textContent = "Reset, please run it again!"; initMap(); } https://ift.tt/3CyN3o5
0 notes
telecom-forum · 3 years ago
Link
#map { max-width: 100%; height: 365px; margin-top: 2px; border-radius: 12px; background-color: #f2f2f2; } #container { background-color: #cccccc; border-radius: 12px; padding: 6px; max-width: 100% } #elevation_chart { background-color: #cccccc; border-radius: 12px; padding: 2px; margin-top: 2px; margin-bottom: 2px; margin-right: 2px; } #display-panel { margin-top: 0px; background-color: #f2f2f2; padding-top: 8px; padding-left: 2px; padding-right: 2px; border: 1px solid #999; font-family: 'Arial','sans-serif'; font-size: 10px; line-height: 30px; max-width: 98%; border-radius: 12px; } #latlngA { width: 135px; text-align: center; } #latlngB { width: 135px; text-align: center; } #azimuthA { width: 35px; text-align: center; } #azimuthB { width: 35px; text-align: center; } #DistAB { width: 35px; text-align: left; } #HeightA { width: 35px; text-align: left; } #HeightB { width: 35px; text-align: left; } #Obstacle { width: 35px; text-align: left; } hr { display: block; margin-top: 0.1em; margin-bottom: 0.5em; margin-left: 2px; margin-right: auto; border-style: double; border-width: 1px; color: lightgrey; }
INPUT:
A: Lat,Lng Height  (m)
B: Lat,Lng Height  (m)
Height obstacle: (m) such as tree, building, ....
RESULT:
➥ Azimuth (°deg)  A ➪ B :   B ➪ A:
➥ Dist A ⇔ B: Km
* Tips: Right Click on map to get Lat/Lng   
(adsbygoogle = window.adsbygoogle || []).push({});
Tumblr media Tumblr media Tumblr media
SEE MORE TELECOM TOOLS: OTHERS RF TOOLS
google.charts.load('current', {packages: ['corechart']}); google.charts.setOnLoadCallback(drawChart); var labels = '123456789'; var labelIndex = 0; var color1 = ["#ff0000", "#3333cc", "#00ff00", "#ff9900", "#cc0099", "#ffff00", "#00ffff", "#009933", "#ff0066"]; var color1Index = 0; google.load('visualization', '1', {packages: ['columnchart']}); var obstacle = 0; var heightA = 1; var heightB = 1; function initMap() { var map = new google.maps.Map(document.getElementById('map'), { zoom: 4, center: {lat: 12.793639, lng: 104.830108} }); var infowindow = new google.maps.InfoWindow; //add draw tool var drawingManager = new google.maps.drawing.DrawingManager({ drawingMode: google.maps.drawing.OverlayType, drawingControl: true, drawingControlOptions: { position: google.maps.ControlPosition.RIGHT_TOP, drawingModes: ['marker', 'circle', 'polygon', 'polyline', 'rectangle'] }, markerOptions: { icon: 'https://4.bp.blogspot.com/-s75nbkxOCUo/V7v2jFfc-cI/AAAAAAAAG94/xQC6oQFiLwcw0NcuwW86J5Y3xciqtXvJACLcB/s1600/icon-tower-gif.gif', clickable: false, draggable: true }, circleOptions: { fillColor: '#ffff00', fillOpacity: 1, strokeWeight: 5, clickable: false, editable: true, zIndex: 1 } }); drawingManager.setMap(map); //end draw tool //Path Profile click document.getElementById('submit').addEventListener('click', function() { geocodeLatLng(map, infowindow); }); // end // right click get location on map google.maps.event.addListener(map, "rightclick", function(event) { var lat1 = event.latLng.lat(); var lng1 = event.latLng.lng(); // populate yor box/field with lat, lng //alert("Lat,Lng = " + lat1 + ", " + lng1); contentString = 'Lat,Lng = ' + lat1.toFixed(6) + ', ' + lng1.toFixed(6) ; //contentString = 'Hello'; myLatLng = {lat: lat1, lng: lng1}; var infowindow = new google.maps.InfoWindow({ content: contentString, position: myLatLng }); infowindow.open(map); }); // end // Create an ElevationService. var elevator = new google.maps.ElevationService; } // end initMap //function get input data function geocodeLatLng(map, infowindow) { var inputA = document.getElementById('latlngA').value; var latlngStrA = inputA.split(',', 2); var latlngA = {lat: parseFloat(latlngStrA[0]), lng: parseFloat(latlngStrA[1])}; var latA = parseFloat(latlngStrA[0]); var lngA = parseFloat(latlngStrA[1]); var inputB = document.getElementById('latlngB').value; var latlngStrB = inputB.split(',', 2); var latlngB = {lat: parseFloat(latlngStrB[0]), lng: parseFloat(latlngStrB[1])}; var latB = parseFloat(latlngStrB[0]); var lngB = parseFloat(latlngStrB[1]); var HeightA = document.getElementById('HeightA').value; var HeightB = document.getElementById('HeightB').value; var Obstacle = document.getElementById('Obstacle').value; obstacle = parseInt(Obstacle); heightA = parseInt(HeightA); heightB = parseInt(HeightB); map.setZoom(10); map.setCenter(latlngA); var image = 'https://4.bp.blogspot.com/-s75nbkxOCUo/V7v2jFfc-cI/AAAAAAAAG94/xQC6oQFiLwcw0NcuwW86J5Y3xciqtXvJACLcB/s1600/icon-tower-gif.gif'; var marker1 = new google.maps.Marker({ position: latlngA, center:latlngA, label: 'A', map: map, icon: image, clickable: false, title: 'Station A' }); var marker2 = new google.maps.Marker({ position: latlngB, center: latlngB, label: 'B', map: map, icon: image, clickable: false, title: 'Station B' }); var path1 = [marker1.getPosition(), marker2.getPosition()]; var heading1 = google.maps.geometry.spherical.computeHeading(path1[0], path1[1]); var path2 = [marker2.getPosition(), marker1.getPosition()]; var heading2 = google.maps.geometry.spherical.computeHeading(path2[0], path2[1]); var distanceAB = google.maps.geometry.spherical.computeDistanceBetween(path1[0], path1[1]); if (heading1 < 0) { heading1 = 360 + heading1; } if (heading2 < 0) { heading2 = 360 + heading2; } document.getElementById('azimuthA').value = heading1.toFixed(2); document.getElementById('azimuthB').value = heading2.toFixed(2); document.getElementById('DistAB').value = (distanceAB/1000).toFixed(2); var path = [ {lat: latA, lng: lngA}, {lat: latB, lng: lngB} ]; // Create an ElevationService. var elevator = new google.maps.ElevationService; // Draw the path, using the Visualization API and the Elevation service. displayPathElevation(path, elevator, map, heightA, heightB, obstacle); } //end function get input data function resetMap () { var labelIndex = 0; document.getElementById('azimuthA').value = ""; document.getElementById('azimuthB').value = ""; document.getElementById('DistAB').value = ""; document.getElementById('elevation_chart').textContent = "Reset, please run it again!"; initMap(); } https://ift.tt/3w1QaT3
0 notes
telecom-forum · 3 years ago
Link
NGMN published its first 5G White Paper in 2015 [1], providing an operator vision of 5G and serving as a guideline for 5G definition and design. Since then, the White Paper has been referenced by standards development and industry organisations when producing 5G specifications .....
5G White Paper2
Tumblr media
https://www.ngmn.org/
(adsbygoogle = window.adsbygoogle || []).push({});
https://ift.tt/3mzpuGc
0 notes
telecom-forum · 3 years ago
Photo
Tumblr media
5G White Paper2 "NGMN"
NGMN published its first 5G White Paper in 2015 [1], providing an operator vision of 5G and serving as a guideline for 5G definition and design. Since then, the White Paper has been referenced by standards development and industry organisations when producing 5G specifications .....
5G White Paper2
Tumblr media
https://www.ngmn.org/
(adsbygoogle = window.adsbygoogle || []).push({});
https://ift.tt/3mES6Ol
0 notes
telecom-forum · 3 years ago
Photo
Tumblr media
Option 4 for smooth 5G NSA-SA migration
The 5G New Radio (NR) radio interface brings significant improvements to mobile networks including improved spectrum usage possibilities and lower latency support. Nonetheless, the 5G specifications were created from the outset with LTE as an important 5G radio technology to be integrated alongside NR. Nowadays, bands below 3 GHz are mainly used for LTE, and therefore NR.....
📥 📖 Option 4 for smooth 5G NSA-SA migration
Tumblr media
https://www.ngmn.org/
(adsbygoogle = window.adsbygoogle || []).push({});
https://ift.tt/3ByPEwL
0 notes
telecom-forum · 3 years ago
Link
The 5G New Radio (NR) radio interface brings significant improvements to mobile networks including improved spectrum usage possibilities and lower latency support. Nonetheless, the 5G specifications were created from the outset with LTE as an important 5G radio technology to be integrated alongside NR. Nowadays, bands below 3 GHz are mainly used for LTE, and therefore NR.....
📥 📖 Option 4 for smooth 5G NSA-SA migration
Tumblr media
https://www.ngmn.org/
(adsbygoogle = window.adsbygoogle || []).push({});
https://ift.tt/3CAHqWe
0 notes
telecom-forum · 3 years ago
Photo
Tumblr media
5G New Radio Standards
📥 📖 5G New Radio Standards
This eBook outlines the 5G vision, the steps completed to date, and the next steps needed to fully realize the vision of 5G. A Primer on 5G Standards and Conformance 5G New Radio (NR) is very different from the previous generations of wireless standards. It introduces a new end-to-end network architecture that promises high data throughput and ultra-reliable low latency connections that will create new usage and business models.
Tumblr media
https://www.keysight.com/
(adsbygoogle = window.adsbygoogle || []).push({});
https://ift.tt/3GC5IS9
0 notes
telecom-forum · 3 years ago
Link
📥 📖 5G New Radio Standards
This eBook outlines the 5G vision, the steps completed to date, and the next steps needed to fully realize the vision of 5G. A Primer on 5G Standards and Conformance 5G New Radio (NR) is very different from the previous generations of wireless standards. It introduces a new end-to-end network architecture that promises high data throughput and ultra-reliable low latency connections that will create new usage and business models.
Tumblr media
https://www.keysight.com/
(adsbygoogle = window.adsbygoogle || []).push({});
https://ift.tt/3nFxWTs
0 notes
telecom-forum · 3 years ago
Link
5G is here and set to change our world for the better. Most people today have heard of 5G, but not everyone understands exactly what it is and the positive impact it could have on businesses and society. Compared to the relatively incremental shift from 3G to 4G, 5G is a game changer. Yes, it is true that 5G represents the fifth generation of mobile networks, but it is so much more than just another ‘G’. It will entirely change what we can do with mobile connectivity. 5G is an innovation platform, which will only be limited by imagination. We predict that in 2026, 5G networks will carry more than half of the world’s mobile data traffic (growing by a factor of 4.5 by the end of 2026 compared to today). Due to this there is an urgent need for more efficient network technologies, data capacity and better use of the existing spectrum. Read on to learn what 5G is and what it can help achieve
Tumblr media Tumblr media Tumblr media
https://ift.tt/3GxkBVL
0 notes
telecom-forum · 3 years ago
Photo
Tumblr media
5G: More than just another ‘G’
5G is here and set to change our world for the better. Most people today have heard of 5G, but not everyone understands exactly what it is and the positive impact it could have on businesses and society. Compared to the relatively incremental shift from 3G to 4G, 5G is a game changer. Yes, it is true that 5G represents the fifth generation of mobile networks, but it is so much more than just another ‘G’. It will entirely change what we can do with mobile connectivity. 5G is an innovation platform, which will only be limited by imagination. We predict that in 2026, 5G networks will carry more than half of the world’s mobile data traffic (growing by a factor of 4.5 by the end of 2026 compared to today). Due to this there is an urgent need for more efficient network technologies, data capacity and better use of the existing spectrum. Read on to learn what 5G is and what it can help achieve
Tumblr media Tumblr media Tumblr media
https://ift.tt/316dxPH
0 notes
telecom-forum · 3 years ago
Photo
Tumblr media
INTELLIGENT WORLD 2030
- Outlook for Healthcare:Making Health Computable, Bettering Quality of Life - Outlook for Food:Data-driven Food Production for More Bountiful, Inclusive, and "Green" Diets - Outlook for Living Spaces:Personalized Spaces with Novel Interactive Experiences - Outlook for Transportation:Smart, Low-carbon Transport Opens up the Mobile Third Space - Outlook for Cities:New Digital Infrastructure Makes Cities More Human and Livable - Outlook for Enterprises:New Productivity, New Production Models, New Resilience - Outlook for Energy:Intelligent, Green Energy for a Better Planet - Outlook for Digital Trust:Technologies and Regulations Shape a Trusted Digital Future
Tumblr media
(adsbygoogle = window.adsbygoogle || []).push({});
https://ift.tt/3Emmd2M
0 notes
telecom-forum · 3 years ago
Link
- Outlook for Healthcare:Making Health Computable, Bettering Quality of Life - Outlook for Food:Data-driven Food Production for More Bountiful, Inclusive, and "Green" Diets - Outlook for Living Spaces:Personalized Spaces with Novel Interactive Experiences - Outlook for Transportation:Smart, Low-carbon Transport Opens up the Mobile Third Space - Outlook for Cities:New Digital Infrastructure Makes Cities More Human and Livable - Outlook for Enterprises:New Productivity, New Production Models, New Resilience - Outlook for Energy:Intelligent, Green Energy for a Better Planet - Outlook for Digital Trust:Technologies and Regulations Shape a Trusted Digital Future
Tumblr media
(adsbygoogle = window.adsbygoogle || []).push({});
https://ift.tt/3bfyKbV
0 notes