Skip to the content

Chizu地図

Draw SVG maps, frame regions, place numbered callouts and build geography quizzes with English and Japanese names.

Chizu is the Japanese word 地図 for map. About the name

Contents

Reference · Framing, geometry and quiz tools

ChizuLocalOptionstype

What a local map is made of.

Import it

import type { ChizuLocalOptions } from "@johnmorrisdotca/chizu";

Definition

type ChizuLocalOptions = ChizuLocalCanvas & {
    id?: string;
    name?: string;
    nameJa?: string;
    data?: ChizuGeoJson | readonly ChizuGeoJson[];
    markers?: readonly ChizuLocalMarkerInput[];
    credits?: readonly string[];
};

Members

NameTypeDescription
centrereadonly [number, number]

The middle of the canvas: longitude and latitude, in degrees.

widthMetresnumber

How wide the canvas is on the ground, in metres.

heightMetres (optional)number | undefined

How tall it is on the ground, in metres. Default: as wide.

metresPerUnit (optional)number | undefined

How many metres a unit of the canvas is, stated in the map's projection. Default: the longer side over 1,000, so a local canvas is 1,000 across like every other map's.

id (optional)string | undefined

The map's id. Default local.

name (optional)string | undefined

Its name in English and Japanese, for the drawing's label.

nameJa (optional)string | undefined
data (optional)ChizuGeoJson | readonly ChizuGeoJson[] | undefined

What to draw: GeoJSON (one value or a list), read in the order given, which is the order it is painted in.

markers (optional)readonly ChizuLocalMarkerInput[] | undefined

Pictures to place, painted over the shapes.

credits (optional)readonly string[] | undefined

The credit lines for the data, shown in the drawing: "Data © OpenStreetMap contributors, ODbL". Chizu fetches nothing and adds no data of its own: the caller says what it drew from.

Examples

import { localMap, type ChizuLocalOptions } from "@johnmorrisdotca/chizu";

const options: ChizuLocalOptions = {
  centre: [139.7006, 35.7004],
  widthMetres: 400,
  name: "Made-up ground",
  data: { type: "Feature", id: "hall", properties: { kind: "building" }, geometry: { type: "Polygon", coordinates: [[[139.7, 35.7], [139.701, 35.7], [139.701, 35.7006], [139.7, 35.7006], [139.7, 35.7]]] } },
  credits: ["Made-up shapes, for this example"],
};
console.log(localMap(options).regions.map((region) => region.code));
// [ 'hall' ]
[ 'hall' ]

What it prints (run when this page was built)

View sourceEdit on GitHubMade from the source of @johnmorrisdotca/chizu 1.5.0.