Initial commit
This commit is contained in:
commit
e6a1d8083b
7
.gitignore
vendored
Normal file
7
.gitignore
vendored
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
*.swp
|
||||||
|
*.swo
|
||||||
|
*.rar
|
||||||
|
*.shp*
|
||||||
|
*.log
|
||||||
|
vendor/
|
||||||
|
docs/
|
129
css/app.css
Normal file
129
css/app.css
Normal file
@ -0,0 +1,129 @@
|
|||||||
|
@import url("./spectre.css");
|
||||||
|
@import url("../fonts/fonts.css");
|
||||||
|
/* Variables */
|
||||||
|
:root {
|
||||||
|
--ispc-red: #ce1417;
|
||||||
|
--ispc-blue: #1b3152;
|
||||||
|
--links-color: #263aac;
|
||||||
|
--ispc-blue-tr: rgba(27,49,80,0.5);
|
||||||
|
--din-regular: 'din_next_w1gregular';
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
font-family: var(--din-regular);
|
||||||
|
font-size: large;
|
||||||
|
}
|
||||||
|
a {
|
||||||
|
color: var(--links-color);
|
||||||
|
}
|
||||||
|
a:visited {
|
||||||
|
color: var(--links-color);
|
||||||
|
}
|
||||||
|
.main.credits {
|
||||||
|
width: 60vw;
|
||||||
|
margin: 0 auto;
|
||||||
|
min-height: 75vh;
|
||||||
|
padding-bottom: 1.5rem;
|
||||||
|
}
|
||||||
|
.leaflet-container {
|
||||||
|
background: #fff;
|
||||||
|
font-family: inherit;
|
||||||
|
}
|
||||||
|
.leaflet-control a {
|
||||||
|
text-decoration: none;
|
||||||
|
color: initial;
|
||||||
|
}
|
||||||
|
.wait,
|
||||||
|
.wait-lg {
|
||||||
|
z-index: 999;
|
||||||
|
position: fixed;
|
||||||
|
background-color: #fff;
|
||||||
|
font-size: xx-large;
|
||||||
|
}
|
||||||
|
.wait {
|
||||||
|
width: 80%;
|
||||||
|
margin: 0 auto;
|
||||||
|
padding-top: 100px;
|
||||||
|
}
|
||||||
|
.wait-lg {
|
||||||
|
width: 100vw;
|
||||||
|
height: 100vh;
|
||||||
|
padding-top: 25vh;
|
||||||
|
}
|
||||||
|
/* Popup */
|
||||||
|
.welcome .leaflet-popup-content {
|
||||||
|
min-height: 350px;
|
||||||
|
min-width: 700px;
|
||||||
|
padding: 2rem;
|
||||||
|
margin-right: 42px;
|
||||||
|
}
|
||||||
|
.welcome p {
|
||||||
|
font-size: 1rem;
|
||||||
|
}
|
||||||
|
.ped-popup .leaflet-popup-content {
|
||||||
|
font-size: large;
|
||||||
|
min-height: 700px;
|
||||||
|
min-width: 700px;
|
||||||
|
padding-left: 1rem;
|
||||||
|
padding-right: 1rem;
|
||||||
|
margin-right: 42px;
|
||||||
|
scrollbar-width: thin;
|
||||||
|
scrollbar-color: var(--ispc-blue) transparent;
|
||||||
|
}
|
||||||
|
.ped-popup.country .leaflet-popup-content {
|
||||||
|
min-height: 600px;
|
||||||
|
}
|
||||||
|
.leaflet-popup-content::-webkit-scrollbar {
|
||||||
|
width: 6px;
|
||||||
|
}
|
||||||
|
.leaflet-popup-content::-webkit-scrollbar-thumb {
|
||||||
|
background-color: var(--ispc-blue);
|
||||||
|
border-radius: 5px;
|
||||||
|
}
|
||||||
|
.leaflet-popup-content img {
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
.leaflet-popup-close-button {
|
||||||
|
padding-top: 5px;
|
||||||
|
padding-right: 30px;
|
||||||
|
padding-left: 10px;
|
||||||
|
margin-left: 40px;
|
||||||
|
}
|
||||||
|
.leaflet-popup-close-button > span {
|
||||||
|
font-size: 30px;
|
||||||
|
}
|
||||||
|
.leaflet-popup-tip {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.text-lead a,
|
||||||
|
.tit_prog {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.maximize path {
|
||||||
|
stroke-width: 1.5px;
|
||||||
|
stroke: black;
|
||||||
|
}
|
||||||
|
#fullscreen {
|
||||||
|
padding: 2px;
|
||||||
|
}
|
||||||
|
/* Leaflef map container */
|
||||||
|
@media (max-width: 840px) {
|
||||||
|
.map-sm {
|
||||||
|
height: 650px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@media (min-width: 840px) and (max-width: 960px) {
|
||||||
|
.map-sm {
|
||||||
|
height: 700px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@media (min-width: 960px) and (max-width: 1280px) {
|
||||||
|
.map-lg {
|
||||||
|
height: 750px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@media (min-width: 1280px) {
|
||||||
|
.map-lg {
|
||||||
|
height: 820px;
|
||||||
|
}
|
||||||
|
}
|
3760
css/spectre.css
Normal file
3760
css/spectre.css
Normal file
File diff suppressed because it is too large
Load Diff
0
geojson/.gitignore
vendored
Normal file
0
geojson/.gitignore
vendored
Normal file
49
index.html
Normal file
49
index.html
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="it" data-text="html">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<link rel="stylesheet" href="js/vendor/leaflet/dist/leaflet.css" />
|
||||||
|
<script src="js/vendor/leaflet/dist/leaflet.js"></script>
|
||||||
|
<link rel="stylesheet" href="css/app.css" />
|
||||||
|
<script src="js/index.js" type="module"></script>
|
||||||
|
<title>Carta Archeologica di Capri</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<header class="navbar mt-2 p-2">
|
||||||
|
<section class="navbar-section">
|
||||||
|
<span class="navbar-brand">
|
||||||
|
<img loading="eager" alt="Logo" class="img-fit-contain" src="./img/logo.svg" height="62"/>
|
||||||
|
</span>
|
||||||
|
</section>
|
||||||
|
<section class="navbar-section">
|
||||||
|
<span class="navbar-center text-center text-large">
|
||||||
|
Capri - Carta archeologica
|
||||||
|
</span>
|
||||||
|
</section>
|
||||||
|
<section class="navbar-section">
|
||||||
|
<a href="about.html" class="btn btn-link" title="About">ABOUT</a>
|
||||||
|
<a href="progetto.html" class="btn btn-link" title="Progetto">PROGETTO</a>
|
||||||
|
</section>
|
||||||
|
</header>
|
||||||
|
<div class="wait-lg text-center d-hide" style="clear: both;">
|
||||||
|
<p>Loading...</p>
|
||||||
|
<div class="loading loading-lg"></div>
|
||||||
|
</div>
|
||||||
|
<div class="container main">
|
||||||
|
<div id="map" class="map-lg map-sm"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<footer class="container text-center p-2 mt-2 navbar">
|
||||||
|
<section class="navbar-section mt-2">
|
||||||
|
<a class="navbar-brand" title="Vai alla home page di ISPC CNR" href="https://www.ispc.cnr.it" data-text="linkispc">
|
||||||
|
<img loading="eager" alt="Logo ISPC CNR" class="img-fit-contain" src="./img/logo_ispc.svg" height="72"/>
|
||||||
|
</a>
|
||||||
|
</section>
|
||||||
|
<section class="navbar-center">
|
||||||
|
<p class="mt-2 pt-2">
|
||||||
|
<a href="credits.html" data-text="credits">Crediti</a>
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
</footer>
|
||||||
|
</body>
|
||||||
|
</html>
|
53
js/caprigis.js
Normal file
53
js/caprigis.js
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
'use strict';
|
||||||
|
// Global leaflet
|
||||||
|
/**
|
||||||
|
* @namespace GIS
|
||||||
|
*/
|
||||||
|
const GIS = {};
|
||||||
|
|
||||||
|
const BASE_URL = location.href;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param {string} mapId
|
||||||
|
* @param {number} zoomLevel
|
||||||
|
* @returns {Map}
|
||||||
|
*/
|
||||||
|
GIS.initMap = function (mapId, zoomLevel = 15) {
|
||||||
|
let map = L.map(mapId, {
|
||||||
|
attributionControl: false,
|
||||||
|
minZoom: 3
|
||||||
|
}).setView([40.5492, 14.2317], zoomLevel);
|
||||||
|
|
||||||
|
// Il sistema di riferimento per i livelli geoJSON è EPSG3857
|
||||||
|
map.crs = L.CRS.EPSG3857;
|
||||||
|
|
||||||
|
L.tileLayer('https://tile.openstreetmap.org/{z}/{x}/{y}.png', {
|
||||||
|
attribution: '© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors'
|
||||||
|
}).addTo(map);
|
||||||
|
|
||||||
|
return map;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* @param {string} geoJSON
|
||||||
|
* @param {Map} map
|
||||||
|
*/
|
||||||
|
GIS.loadLayer = async function (geoJSON, map, color = '#555') {
|
||||||
|
const layer = await fetch(`${BASE_URL}/geojson/${geoJSON}`)
|
||||||
|
.then(res => res.json())
|
||||||
|
.catch(error => console.error(`Can't load layer ${geoJSON}. Reason: ${error}`));
|
||||||
|
|
||||||
|
L.geoJson(layer, {
|
||||||
|
style: function (feature) {
|
||||||
|
let style = {
|
||||||
|
color: color,
|
||||||
|
opacity: 0.4,
|
||||||
|
weight: 2,
|
||||||
|
fillColor: color,
|
||||||
|
fillOpacity: 1
|
||||||
|
};
|
||||||
|
return style;
|
||||||
|
}
|
||||||
|
}).addTo(map);
|
||||||
|
}
|
||||||
|
|
||||||
|
export default GIS;
|
9
js/index.js
Normal file
9
js/index.js
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
import GIS from './caprigis.js';
|
||||||
|
|
||||||
|
document.addEventListener('DOMContentLoaded', () => {
|
||||||
|
let map = GIS.initMap('map');
|
||||||
|
|
||||||
|
// Layer vincoli
|
||||||
|
GIS.loadLayer('vincoli.geojson', map);
|
||||||
|
|
||||||
|
});
|
10
js/package.json
Normal file
10
js/package.json
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"name": "caprigis",
|
||||||
|
"version": "0.01",
|
||||||
|
"main": "index.js",
|
||||||
|
"author": "Nicolò P.",
|
||||||
|
"license": "GPLv3",
|
||||||
|
"dependencies": {
|
||||||
|
"leaflet": "^1.9.4"
|
||||||
|
}
|
||||||
|
}
|
8
js/yarn.lock
Normal file
8
js/yarn.lock
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
|
||||||
|
# yarn lockfile v1
|
||||||
|
|
||||||
|
|
||||||
|
leaflet@^1.9.4:
|
||||||
|
version "1.9.4"
|
||||||
|
resolved "https://registry.yarnpkg.com/leaflet/-/leaflet-1.9.4.tgz#23fae724e282fa25745aff82ca4d394748db7d8d"
|
||||||
|
integrity sha512-nxS1ynzJOmOlHp+iL3FyWqK89GtNL8U8rvlMOsQdTTssxZwCXh8N2NB3GDQOL+YR3XnWyZAxwQixURb+FA74PA==
|
Loading…
Reference in New Issue
Block a user