Reference · The realistic Earth's pure parts
TilePerspectivetype
A camera that sees the Earth in perspective, from a place that can be a few kilometres above the ground, in the Earth's own axes (x toward longitude 90, y north, z toward longitude 0; the Earth's radius is 1).
Import it
import type { TilePerspective } from "@johnmorrisdotca/chikyu-earth/realistic";
Definition
interface TilePerspective {
eye: readonly [
number,
number,
number
];
project(point: readonly [
number,
number,
number
]): {
x: number;
y: number;
} | null;
ground(x: number, y: number): readonly [
number,
number,
number
] | null;
}
Members
| Name | Type | Description |
|---|---|---|
eye | readonly [number, number, number] | Where the camera is. |
project | (point: readonly [number, number, number]): { x: number; y: number; } | null | Where a point of the Earth's surface falls in the box (CSS pixels), or |
ground | (x: number, y: number): readonly [number, number, number] | null | The point of the Earth's surface under a place in the box (a unit vector), or |
Examples
import type { TilePerspective } from "@johnmorrisdotca/chikyu-earth/realistic";
const look: TilePerspective = { eye: [0, 0, 1.0235], project: (p) => ({ x: 400 + p[0] * 5000, y: 300 - p[1] * 5000 }), ground: () => [0, 0, 1] };
console.log(look.eye);[ 0, 0, 1.0235 ]What it prints (run when this page was built)