Kyogijo Stadiums競技場

Guides, the reference, a gallery of every picture it can draw, and how it compares: the pages are made from the package's own files when the site is built.

About the name

The pages are in English; this contents, the search and the buttons are in Japanese.

Gallery: tournament layouts

Several of the package's surfaces laid out together for one large event, to scale, on one floor: table tennis, pickleball, curling, judo, karate, badminton and tennis, each from its rule; then the same layouts set in a hall whose floor is published, with the real stadium round them switched on. The empty dashed places are for the event's own words and marks: nothing real is printed in them.

22 pictures, each drawn by the build from the code under it, which the Copy button copies. They are drawn as they come near the screen. Open in a page loads the published package from jsDelivr, which serves only released versions.

Table tennis#

Areas of 14 m by 7 m (ITTF Statutes 2026, chapter 3, 3.2.3.1), each enclosed by barriers (50 to 100 cm high in the rule, 75 cm drawn), with an umpire's chair and a score table, and one scoreboard hung over the middle for all of them, as at the Worlds in London in 2026.

Four areas on one floor (2 x 2)

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "tabletennis-4", sample: true });

Eight areas (2 x 4)

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "tabletennis-8", sample: true });

The same four areas with the places left empty

Without `sample`, the places for the event's words and marks are dashed and empty: what an organiser fills.

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "tabletennis-4" });

A staggered grid

Every other row is moved along by half a bay.

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "tabletennis-4", rows: 3, columns: 3, stagger: 0.5, sample: true });

Pickleball#

A playing surface of 34 by 64 feet to each court, the rulebook's recommendation for tournament play (3.A.3); the rulebook names no gap between courts.

Four courts (2 x 2)

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "pickleball-2x2", sample: true });

Eight courts (2 x 4)

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "pickleball-2x4", sample: true });

Sixteen courts (4 x 4)

Sixteen is the least the PPA Tour asks a host to provide.

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "pickleball-4x4", sample: true });

Curling#

Sheets at most 4.75 m wide, at least 45.72 m long (World Curling R1), side by side.

Four sheets (1 x 4)

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "curling-1x4", sample: true });

Judo and karate#

One coloured floor of mats with the contest areas laid on it in a row (judo) or in rows (karate); the branding is printed on the mats themselves, so the empty places are on the mat.

Judo, three areas in a row (1 x 3)

10 m areas, a safety area of 4 m, 4 m common between them (IJF 8.7), as at the Worlds in Baku in 2018.

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "judo-1x3", sample: true });

Judo, four areas (1 x 4)

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "judo-1x4", sample: true });

Karate, six tatami (2 x 3)

The WKF's Karate1 Series A lays six areas in two rows of three on one carpet.

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "karate-2x3", sample: true });

Karate, eight tatami (2 x 4)

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "karate-2x4", sample: true });

Badminton and tennis#

Badminton courts always lie side by side, at least 1.5 m apart (BWF 5.3.4) and 4 m recommended at Grade 1 and 2 events; tennis courts 7.32 m apart (a secondary source).

Four courts, the spacing recommended for Grade 1 and 2

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "badminton-1x4", sample: true });

Four courts, the least spacing

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "badminton-1x4-min", sample: true });

Three tennis courts

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "tennis-1x3", sample: true });

In a hall, and whether it fits#

venue sets the layout in a hall whose floor is published and says whether it fits; stadium: true draws the real stands and crowd round it, to the same scale. Off by default.

Four curling sheets on an NHL-size ice pad

200 by 85 feet: the four sheets fit.

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "curling-1x4", venue: "nhl-ice-pad", sample: true });

The same, in the arena

The stands and the crowd are the package's own for a hockey arena.

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "curling-1x4", venue: "nhl-ice-pad", stadium: true, sample: true });

Four table tennis areas in a hall known only by its area

2,655 m² and no published length or width: the answer is that it may fit.

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "tabletennis-4", venue: "ovo-arena-wembley", stadium: true, sample: true });

Sixteen pickleball courts in the Copper Box Arena

The floor is 60 by 40 m; sixteen courts need 78 by 41.5 m, so the layout hangs over, in dashes.

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "pickleball-4x4", venue: "copper-box-arena", sample: true });

Three judo areas in the Nippon Budokan

An octagon 55 m across the flats: the four corners of the layout are inside it.

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "judo-1x3", venue: "nippon-budokan", stadium: true, sample: true });

Dark and Japanese#

Every colour is a custom property with a value for dark; the words come in English and Japanese.

Dark

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "tabletennis-4", theme: "dark", sample: true });

In Japanese

import { drawMulti } from "@johnmorrisdotca/kyogijo-stadiums/multi";

const svg = drawMulti({ preset: "judo-1x3", language: "ja", sample: true });