<div dir="ltr"><span id="gmail-docs-internal-guid-fd031c09-7fff-0a0f-8181-0ce7510cd593"><p style="line-height:1.38;text-align:center;margin-top:0pt;margin-bottom:0pt"><span style="background-color:transparent;color:rgb(0,0,0);font-family:Arial;font-size:16pt;font-weight:700;text-decoration-line:underline;white-space:pre-wrap">Final Report GSoC 2022</span></p><p style="line-height:1.38;text-align:center;margin-top:0pt;margin-bottom:0pt"><span style="background-color:transparent;color:rgb(0,0,0);font-family:Arial;font-size:16pt;font-weight:700;text-decoration-line:underline;white-space:pre-wrap"><br></span></p><p style="line-height:1.38;text-align:center;margin-top:0pt;margin-bottom:0pt"><span style="background-color:transparent;color:rgb(0,0,0);font-family:Arial;font-size:16pt;font-weight:700;text-decoration-line:underline;white-space:pre-wrap">Adding Cesium Support within MapMint</span><br></p><br><p dir="ltr" style="line-height:1.8;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:13pt;font-family:Arial;color:rgb(0,0,0);background-color:transparent;font-weight:700;font-variant-numeric:normal;font-variant-east-asian:normal;text-decoration-line:underline;vertical-align:baseline;white-space:pre-wrap">OSGeo Guest Projects: MapMint.</span></p><p dir="ltr" style="line-height:1.8;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:13pt;font-family:Arial;color:rgb(0,0,0);background-color:transparent;font-weight:700;font-variant-numeric:normal;font-variant-east-asian:normal;text-decoration-line:underline;vertical-align:baseline;white-space:pre-wrap">Project Title: Adding Cesium support within MapMint</span></p><p dir="ltr" style="line-height:1.8;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:13pt;font-family:Arial;color:rgb(0,0,0);background-color:transparent;font-weight:700;font-variant-numeric:normal;font-variant-east-asian:normal;text-decoration-line:underline;vertical-align:baseline;white-space:pre-wrap">Mentors:</span></p><ol style="margin-top:0px;margin-bottom:0px"><li dir="ltr" style="list-style-type:decimal;font-size:13pt;font-family:Arial;color:rgb(0,0,0);background-color:transparent;font-weight:700;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre"><p dir="ltr" style="line-height:1.8;text-align:justify;margin-top:0pt;margin-bottom:0pt" role="presentation"><span style="font-size:13pt;background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;text-decoration-line:underline;vertical-align:baseline;white-space:pre-wrap">Rajat Shinde</span></p></li><li dir="ltr" style="list-style-type:decimal;font-size:13pt;font-family:Arial;color:rgb(0,0,0);background-color:transparent;font-weight:700;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre"><p dir="ltr" style="line-height:1.8;text-align:justify;margin-top:0pt;margin-bottom:0pt" role="presentation"><span style="font-size:13pt;background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;text-decoration-line:underline;vertical-align:baseline;white-space:pre-wrap">Gerald Fenoy</span></p></li><li dir="ltr" style="list-style-type:decimal;font-size:13pt;font-family:Arial;color:rgb(0,0,0);background-color:transparent;font-weight:700;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre"><p dir="ltr" style="line-height:1.8;text-align:justify;margin-top:0pt;margin-bottom:0pt" role="presentation"><span style="font-size:13pt;background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;text-decoration-line:underline;vertical-align:baseline;white-space:pre-wrap">Aditi Sawant</span></p></li></ol><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:13pt;font-family:Arial;color:rgb(0,0,0);background-color:transparent;font-weight:700;font-variant-numeric:normal;font-variant-east-asian:normal;text-decoration-line:underline;vertical-align:baseline;white-space:pre-wrap">Abstract</span><span style="font-size:13pt;font-family:Arial;color:rgb(0,0,0);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;text-decoration-line:underline;vertical-align:baseline;white-space:pre-wrap">:</span><span style="font-size:13pt;font-family:Arial;color:rgb(0,0,0);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap"> </span><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">MapMint is a geographic information system (GIS) software on the Internet designed to facilitate the deployment of spatial data infrastructures (SDI). MapMint is for individuals and organizations wishing to manage and optimize SDI establishment and deployment of dynamic mapping applications. The application centralizes and simplifies a number of GIS and WebGIS functionality. The different levels of user rights divide tasks according to the public (system administrators, GIS specialists, GIS technicians, cartographers, webmasters etc). The SDI comprises users, tools (MapMint web software and MapMint4ME Android app) and the data (currently, images and location ) recorded by the users. </span></p><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">CesiumJS is an open source JavaScript library for creating world-class 3D globes and maps with the best possible performance, precision, visual quality, and ease of use. Developers across industries, from aerospace to smart cities to drones, use CesiumJS to create interactive web apps for sharing dynamic geospatial data.</span></p><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">Built on open formats, CesiumJS is designed for robust interoperability and scaling for massive datasets. Stream in 3D Tiles and other standard formats from Cesium ion or another source Visualize and analyze on a high-precision WGS84 globe.</span></p><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">This GSoC is focussed on expanding the MapMint services by integrating Cesium for 3D Visualization. The goal was achieved by developing a cesium and MapMint based application to visualize various 3D data formats such as 3D Tiles, CityGML, KML, PointCloud etc. It is developed in two ways, one using Cheetah Template, JavaScript and Cesium; other by creating a Node.js based service to fetch and upload data to cesium ion service. The Node.js service is mainly developed to align and to make it compatible with the current work with other Node.js services being developed for ZOO-Project. This service is developed using Node.js, Cesium, JavaScript.</span></p><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"> </p><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-weight:700;font-variant-numeric:normal;font-variant-east-asian:normal;text-decoration-line:underline;vertical-align:baseline;white-space:pre-wrap">State before GSoC 2022</span><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;text-decoration-line:underline;vertical-align:baseline;white-space:pre-wrap">:</span><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap"> Before GSoC 2022, Cesium and 3D visualization was not integrated within MapMint. </span></p><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-weight:700;font-variant-numeric:normal;font-variant-east-asian:normal;text-decoration-line:underline;vertical-align:baseline;white-space:pre-wrap">Features Added in current GSoC 2022</span><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;text-decoration-line:underline;vertical-align:baseline;white-space:pre-wrap">:</span><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap"> 3D visualization is another way of presenting data which gives users a new perspective of data. For example, instead of inferring a valley's presence from the configuration of contour lines, users can see the valley and perceive the difference in height between the valley floor and a ridge. </span></p><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">3D viewing can provide insights that would not be readily possible from the same data's georeferenced map.</span></p><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">There are three ways to visualize 3D data through Cesium:</span></p><ul style="margin-top:0px;margin-bottom:0px"><li dir="ltr" style="list-style-type:disc;font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre"><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt" role="presentation"><span style="font-size:12pt;background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">Visualize local 3D tiles data.</span></p></li><li dir="ltr" style="list-style-type:disc;font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre"><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt" role="presentation"><span style="font-size:12pt;background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">Convert other data formats to 3D tiles from Cesium ion platform and then visualize it through unique asset id provided by Cesium ion.</span></p></li><li dir="ltr" style="list-style-type:disc;font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre"><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt" role="presentation"><span style="font-size:12pt;background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">Use Cesium API to upload and convert data format to 3D Tiles on the go from the user's application.</span></p></li></ul><ol style="margin-top:0px;margin-bottom:0px"><li dir="ltr" style="list-style-type:decimal;font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre"><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt" role="presentation"><span style="font-size:12pt;background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">I have added Cesium into MapMint. Users can provide their access token and the assetId provided by the Cesium ion after uploading and conversion of data to 3D Tiles. Below is the screenshot of that.</span></p></li></ol><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"> </p><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"> </p><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap"><span style="border:none;display:inline-block;overflow:hidden;width:674px;height:394px"><img src="https://lh3.googleusercontent.com/ebs8yNqstSAvAf02dV1fxLejgyEjBhsMc7_vk4OvxLETy3cFAclW_oRG-NuudUo6v6B5rzf-63dM015fR6N7CbbFu74ovL73bBAsBVY8E88-MjtBeoxZCbwISRSP5zGzy13Z1b3C4w7kba_nLFZwue5piCxxij39Pf9BinfDHrmzQRxRpoor4KC4RA" width="674" height="394" style="margin-left: 0px; margin-top: 0px;"></span></span></p><ol style="margin-top:0px;margin-bottom:0px" start="2"><li dir="ltr" style="list-style-type:decimal;font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre"><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt" role="presentation"><span style="font-size:12pt;background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">With this I have also developed a Node.js based app which leverages the API’s provided by Cesium. </span></p></li></ol><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap"><span style="border:none;display:inline-block;overflow:hidden;width:624px;height:333px"><img src="https://lh4.googleusercontent.com/BxABKe6eoQHBFK5VQSnBCmg_gZAnZfIP5bq0FlJ7uFkTn2QwGnPaJC-c9PoFMe2xhKnyeniaXTlXGQuy9HvIHVhv0nYwjua5c_PITc2AN5ho0tQjF0sZQFcmviHciVoWqwBcJRJrYdkQPTfoWW4HD_HlJc6XxwlLCKiFYJ2-6A_xhC7NLlUBcpSDqA" width="624" height="333" style="margin-left: 0px; margin-top: 0px;"></span></span></p><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap"><span style="border:none;display:inline-block;overflow:hidden;width:647px;height:327px"><img src="https://lh3.googleusercontent.com/1WeKtwgFdaVrosNZvzwc8cpgwIwNnjJSOKJ3U6eWsfWWPvKBjj9bOrh7XIrGLLKaCx9HQplagn0SEOsrZacuuzlEbkU9YhVVmvzEyGIJIPa5M9mgfGaF1p9w29oD-1Br9sRdRo9M71UbcCOmse5awxyc32JYh1ZHN8xXQYNqYmpKe70t6Rfp9ETdFA" width="647" height="327" style="margin-left: 0px; margin-top: 0px;"></span></span></p><ol style="margin-top:0px;margin-bottom:0px" start="3"><li dir="ltr" style="list-style-type:decimal;font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre"><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt" role="presentation"><span style="font-size:12pt;background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">Above shown are all the assetIDs defined for a particular token. The list can be populated by clicking on Load Asset.</span></p></li></ol><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap"><span style="border:none;display:inline-block;overflow:hidden;width:644px;height:329px"><img src="https://lh6.googleusercontent.com/X62Ww4SJR_yyI9N93v9U884W4gk7tWm05zREqksLj9WFD3qWm-_FsCAlnfoer-l7gY34CirEnY3-IZ_BOhKy_-_ve0X_L3t-ZGW1jRsb75SdTAYpN1b2M1FcKs91OJtp-CxfF7GYIcvREBCJIQvaQB-oiC6tVp39QRIQ2UrB1LPswPTmGB5tKsrL6A" width="644" height="329" style="margin-left: 0px; margin-top: 0px;"></span></span></p><ol style="margin-top:0px;margin-bottom:0px" start="4"><li dir="ltr" style="list-style-type:decimal;font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre"><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt" role="presentation"><span style="font-size:12pt;background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">On clicking the “Show Asset” button, users will be able to visualize data.</span></p></li></ol><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:12pt;font-family:"EB Garamond",serif;color:rgb(0,0,0);background-color:transparent;font-weight:700;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">Permanent Link</span><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">:The repository containing the code from this GSoC and a wiki describing documenting the summer can be found</span><a href="https://github.com/bhupendra1324/mapmint" style="text-decoration-line:none"><span style="font-size:12pt;font-family:Arial;background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;text-decoration-line:underline;vertical-align:baseline;white-space:pre-wrap"> here</span></a><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">.</span></p><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">The demo video can be found on below link </span><a href="https://github.com/bhupendra1324/gsocPictures/blob/main/mapmint-video.mp4" style="text-decoration-line:none"><span style="font-size:12pt;font-family:Arial;background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;text-decoration-line:underline;vertical-align:baseline;white-space:pre-wrap">here</span></a></p><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"> </p><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-weight:700;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">Docker compose file with MapMint added Volume (just change with your directories</span><span style="font-size:12pt;font-family:Arial;color:rgb(36,41,47);background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">)</span></p><p dir="ltr" style="line-height:2.1;text-align:justify;margin-top:0pt;margin-bottom:0pt"><a href="https://raw.githubusercontent.com/bhupendra1324/gsocPictures/main/docker-compose.yml" style="text-decoration-line:none"><span style="font-size:12pt;font-family:Arial;background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;text-decoration-line:underline;vertical-align:baseline;white-space:pre-wrap">https://raw.githubusercontent.com/bhupendra1324/gsocPictures/main/docker-compose.yml</span></a></p></span><br class="gmail-Apple-interchange-newline"><div><font size="4"><b>Please also find the .pdf version of the report below.</b></font></div><div><br></div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><b>Regards</b>,<div><b>Bhupendra Singh Solanki</b>.</div><div> <img width="96" height="46" src="https://ci3.googleusercontent.com/mail-sig/AIorK4xBcxA1bdBztoO63b53j4yRxIu_nepG-lmf0MvcGNtrh4Jpt-DWtfjnx6KEXYs6UXTHXtKjRRU">   <img width="96" height="93" src="https://ci3.googleusercontent.com/mail-sig/AIorK4zxfgXaTPJQXQg-_ooSuy7r-vPyRsBYmwtTPMvzO7kuobD_AlCa0VuAYWA2fgOJns6Bh85v3qw"></div><div><b>Department General Secretary</b></div><div><b>M.</b><b>Tech | Research Associate</b> (NCAIR).<br></div><div><b>Indian Institute of Technology, Bombay (IIT-B).</b></div><div>Powai. Mumbai. Maharashtra.</div><div><b>+91-879</b><b>3183133</b></div></div></div></div>