Skip to content

five-on-it / packages/catalogue/src/city/roads / Road

Class: Road ​

Defined in: packages/catalogue/src/city/roads.ts:42

A road: its centre line, its cross-section, whether it is a street of the town, the stretches a bridge carries.

Implements ​

Constructors ​

Constructor ​

new Road(name, points, style): Road

Defined in: packages/catalogue/src/city/roads.ts:62

Parameters ​

name ​

string

points ​

Pt[]

style ​

RoadStyle

Returns ​

Road

Properties ​

bridges ​

bridges: [number, number][] = []

Defined in: packages/catalogue/src/city/roads.ts:55

Point ranges [i0, i1) a bridge carries.


drawn ​

readonly drawn: Pt[]

Defined in: packages/catalogue/src/city/roads.ts:60

Its centre line as it was drawn, before the bridges' ends were added to it.


grading ​

grading: number = 6

Defined in: packages/catalogue/src/city/roads.ts:51

How far beyond its edges the land is graded to it (m).


lanes ​

lanes: number

Defined in: packages/catalogue/src/city/roads.ts:46

Lanes each way: along its points, and back.

Implementation of ​

RoadStyle.lanes


lanesBack ​

lanesBack: number

Defined in: packages/catalogue/src/city/roads.ts:47

Implementation of ​

RoadStyle.lanesBack


name ​

readonly name: string

Defined in: packages/catalogue/src/city/roads.ts:58

Its name, unique in the level.


points ​

points: Pt[]

Defined in: packages/catalogue/src/city/roads.ts:43


rank ​

rank: number

Defined in: packages/catalogue/src/city/roads.ts:49

1 a lane … 4 a parkway: which road's corner a junction's lamps and lights follow.

Implementation of ​

RoadStyle.rank


s ​

s: number[]

Defined in: packages/catalogue/src/city/roads.ts:44


speed ​

speed: number

Defined in: packages/catalogue/src/city/roads.ts:48

Its speed (m/s).

Implementation of ​

RoadStyle.speed


town ​

town: boolean = true

Defined in: packages/catalogue/src/city/roads.ts:53

Whether it runs through the flat town (pavements along it).


width ​

width: number

Defined in: packages/catalogue/src/city/roads.ts:45

From kerb to kerb (m).

Implementation of ​

RoadStyle.width

Accessors ​

hw ​

Get Signature ​

get hw(): number

Defined in: packages/catalogue/src/city/roads.ts:75

Half its width.

Returns ​

number


length ​

Get Signature ​

get length(): number

Defined in: packages/catalogue/src/city/roads.ts:80

Its length along its centre line.

Returns ​

number

Methods ​

at() ​

at(s): [Pt, Pt]

Defined in: packages/catalogue/src/city/roads.ts:112

The point and the direction at arc length s.

Parameters ​

s ​

number

Returns ​

[Pt, Pt]


bridged() ​

bridged(seg): boolean

Defined in: packages/catalogue/src/city/roads.ts:91

Whether segment seg is on a bridge.

Parameters ​

seg ​

number

Returns ​

boolean


direction() ​

direction(i): Pt

Defined in: packages/catalogue/src/city/roads.ts:96

The unit direction of segment i (clamped).

Parameters ​

i ​

number

Returns ​

Pt


project() ​

project(p): [number, number, number]

Defined in: packages/catalogue/src/city/roads.ts:102

The distance from p to its centre line, the nearest segment and where along it.

Parameters ​

p ​

Pt

Returns ​

[number, number, number]


sAt() ​

sAt(seg, t): number

Defined in: packages/catalogue/src/city/roads.ts:127

The arc length of a point of segment seg at t.

Parameters ​

seg ​

number

t ​

number

Returns ​

number


setPoints() ​

setPoints(points): void

Defined in: packages/catalogue/src/city/roads.ts:85

Its points again (lengths recomputed).

Parameters ​

points ​

Pt[]

Returns ​

void