Instalace

npm install github:MarquisNecrosis/SVGArea#main

Ukázka kódu

Můžete použít tuto stránku k vyzkoušení algoritmů.

Tento algoritmus spočítá plochu sloučených polygonů a umí také vytvořit výsledný sloučený polygon.

import { polygonIntersectionInSvg } from "svg-area-intersection";
polygonIntersectionInSvg(svgID, {show, redraw, color, opacity})

Kde parametry znamenají:

  • svgID — ID SVG canvasu
  • show — boolean pro zobrazení sloučených polygonů
  • redraw — boolean pro překreslení již existujících sloučených polygonů
  • color — hex barva pro sloučené polygony
  • opacity — 0–1 průhlednost (opacity) sloučených polygonů

Tento algoritmus prostě spočítá všechny pixely uvnitř polygonů. Je naivní a neefektivní.

import { lazyStupidAreaCalculation } from "svg-area-intersection/heuristic";
lazyStupidAreaCalculation(svgID)

Kde parametry znamenají:

  • svgID — ID SVG canvasu
import { areaInSvgWithIntersection } from "svg-area-intersection/heuristic";
areaInSvgWithIntersection(svgID, numberOfRandomPoints)

Kde parametry znamenají:

  • svgID — ID SVG canvasu
  • numberOfRandomPoints — Počet náhodných bodů. Více bodů = vyšší přesnost, ale pomalejší výpočet