From 32094e610c0df34eb534e634dc55c58c2708baa2 Mon Sep 17 00:00:00 2001 From: Dan Gowans Date: Tue, 23 Aug 2022 15:29:43 -0400 Subject: [PATCH] map svg documentation --- docs/README.md | 3 +++ docs/images/mapImageLotConfig.png | Bin 0 -> 6495 bytes docs/images/mapImageStructure.png | Bin 0 -> 59860 bytes docs/mapImages.md | 43 ++++++++++++++++++++++++++++++ public-typescript/main.js | 1 - public-typescript/main.ts | 3 --- public/javascripts/main.min.js | 2 +- views/lot-edit.ejs | 6 ++--- 8 files changed, 50 insertions(+), 8 deletions(-) create mode 100644 docs/images/mapImageLotConfig.png create mode 100644 docs/images/mapImageStructure.png create mode 100644 docs/mapImages.md diff --git a/docs/README.md b/docs/README.md index 31fcdaf6..2b49be15 100644 --- a/docs/README.md +++ b/docs/README.md @@ -3,3 +3,6 @@ # Help Documentation **Thank you for taking the time to read the documentation.** + +[**Map Images**](mapImages.md)
+How to create images compatible with the Lot Occupancy System. \ No newline at end of file diff --git a/docs/images/mapImageLotConfig.png b/docs/images/mapImageLotConfig.png new file mode 100644 index 0000000000000000000000000000000000000000..0e1691bdbe33327f21cb325157011fc46cff790b GIT binary patch literal 6495 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 literal 0 HcmV?d00001 diff --git a/docs/mapImages.md b/docs/mapImages.md new file mode 100644 index 00000000..67d99164 --- /dev/null +++ b/docs/mapImages.md @@ -0,0 +1,43 @@ +[Home](https://cityssm.github.io/lot-occupancy-system/) +• +[Help](https://cityssm.github.io/lot-occupancy-system/docs/) + +# Map Images + +Map images rely on SVG (Scalable Vector Graphics) files. + +While many SVG editors exist, we recommend [Inkscape](https://inkscape.org/), +a free and open source vector graphics editor. + +## Structuring the SVG Files + +The SVG format has the ability to group together elements using a `` tag, +and to set an `id` attribute on `` and `` tags. +These two features are heavilty relied on by the Lot Occupancy System. + +![Screenshot of Map Image Structure](images/mapImageStructure.png) + +Take the screenshot above. + +- The map has two main sections, D and E. +- Within each section, there are groups 1, 2, and 3. +- Each group has a north side (N) and a south side (S). +- Each side has 3 or 6 lots. + +The `id` for the top leftmost lot is `E-1-N-1`. +The `id` for the bottom rightmost lot is `D-3-S-3`. + +![Lot Image Configuration](images/mapImageLotConfig.png) + +In order to link the lot record in the application to the lot path in the image, +the `id` attribute of the `` tag should match the Map SVG ID set on the lot record. + +Non-exact matching can also be done. If all lot paths in the SVG image are grouped, +and those groups have their `id` attributes set, the application will for the first matching +path or group, removing pieces from the end of the configured Map SVG ID. + +For example, if the application comes across a new lot with Map SVG ID `E-1-N-7`, +there is no exact match. The application will then look for `E-1-N`, +which will match a group of six lots. The six lots will be highlighted +until the map is revised with the new lot. + diff --git a/public-typescript/main.js b/public-typescript/main.js index 74f0be8e..e2d7a87b 100644 --- a/public-typescript/main.js +++ b/public-typescript/main.js @@ -10,7 +10,6 @@ Object.defineProperty(exports, "__esModule", { value: true }); break; } svgId = svgId.slice(0, Math.max(0, svgId.lastIndexOf("-"))); - console.log(svgId); } if (svgElementToHighlight) { svgElementToHighlight.style.fill = null; diff --git a/public-typescript/main.ts b/public-typescript/main.ts index c81bea34..295d2fd6 100644 --- a/public-typescript/main.ts +++ b/public-typescript/main.ts @@ -20,11 +20,8 @@ import type * as globalTypes from "../types/globalTypes"; } svgId = svgId.slice(0, Math.max(0, svgId.lastIndexOf("-"))); - console.log(svgId); } - - if (svgElementToHighlight) { // eslint-disable-next-line unicorn/no-null diff --git a/public/javascripts/main.min.js b/public/javascripts/main.min.js index aa2f217d..0de7f811 100644 --- a/public/javascripts/main.min.js +++ b/public/javascripts/main.min.js @@ -1 +1 @@ -"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=e=>{const t=e.currentTarget.closest(".field").querySelector("input, select");if("INPUT"===t.tagName)t.disabled=!1;else{const e=t.querySelectorAll("option");for(const t of e)t.disabled=!1}t.focus()},t={highlightMap:(e,t,s)=>{let o,l=t;for(;!(o=e.querySelector("#"+l))&&l.includes("-");)l=l.slice(0,Math.max(0,l.lastIndexOf("-"))),console.log(l);if(o){o.style.fill=null,o.classList.add("highlight","is-"+s);const e=o.querySelectorAll("path");for(const t of e)t.style.fill=null}},initializeUnlockFieldButtons:t=>{const s=t.querySelectorAll(".is-unlock-field-button");for(const t of s)t.addEventListener("click",e)},populateAliases:e=>{const t=e.querySelectorAll(".alias");for(const e of t)switch(e.dataset.alias){case"Lot":e.textContent=exports.aliases.lot;break;case"lot":e.textContent=exports.aliases.lot.toLowerCase();break;case"Occupancy":e.textContent=exports.aliases.occupancy;break;case"occupancy":e.textContent=exports.aliases.occupancy.toLowerCase();break;case"Occupant":e.textContent=exports.aliases.occupant;break;case"occupant":e.textContent=exports.aliases.occupant.toLowerCase();break;case"ExternalReceiptNumber":e.textContent=exports.aliases.externalReceiptNumber}}};exports.los=t})(); \ No newline at end of file +"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=e=>{const t=e.currentTarget.closest(".field").querySelector("input, select");if("INPUT"===t.tagName)t.disabled=!1;else{const e=t.querySelectorAll("option");for(const t of e)t.disabled=!1}t.focus()},t={highlightMap:(e,t,s)=>{let o,a=t;for(;!(o=e.querySelector("#"+a))&&a.includes("-");)a=a.slice(0,Math.max(0,a.lastIndexOf("-")));if(o){o.style.fill=null,o.classList.add("highlight","is-"+s);const e=o.querySelectorAll("path");for(const t of e)t.style.fill=null}},initializeUnlockFieldButtons:t=>{const s=t.querySelectorAll(".is-unlock-field-button");for(const t of s)t.addEventListener("click",e)},populateAliases:e=>{const t=e.querySelectorAll(".alias");for(const e of t)switch(e.dataset.alias){case"Lot":e.textContent=exports.aliases.lot;break;case"lot":e.textContent=exports.aliases.lot.toLowerCase();break;case"Occupancy":e.textContent=exports.aliases.occupancy;break;case"occupancy":e.textContent=exports.aliases.occupancy.toLowerCase();break;case"Occupant":e.textContent=exports.aliases.occupant;break;case"occupant":e.textContent=exports.aliases.occupant.toLowerCase();break;case"ExternalReceiptNumber":e.textContent=exports.aliases.externalReceiptNumber}}};exports.los=t})(); \ No newline at end of file diff --git a/views/lot-edit.ejs b/views/lot-edit.ejs index 64721d40..793e50cb 100644 --- a/views/lot-edit.ejs +++ b/views/lot-edit.ejs @@ -191,15 +191,15 @@

- + - What is the SVG key? + What is the SVG ID?