Reference · Constellation boundaries and which constellation a point is in
boundaryOffunction
The boundary of one constellation as closed outlines in J2000 degrees, ready to draw. The edges of the IAU boundaries run along lines of constant right ascension and constant declination
on B1875.0; after precession those lines are slightly tilted curves, so each edge is cut into pieces no longer than step (1 degree of arc by default, measured along the edge: a
parallel of declination is shorter than its span in right ascension by cos(declination)) and every piece end is precessed. Joining the points with straight lines then follows the
curve to well under a pixel on a chart a few hundred pixels across. A constellation that holds a celestial pole (Ursa Minor, Octans) has one outline that goes round the pole.
A point's rightAscension runs from 0 up to 360, so an outline that crosses 0 jumps from near 360 to near 0: project each point, then draw, rather than drawing degrees directly.
Import it
import { boundaryOf } from "@johnmorrisdotca/hoshi-stars/boundaries";
Definition
function boundaryOf(text: string, options?: { step?: number; }): Boundary
Parameters
| Name | Type | Description |
|---|---|---|
text | string | The constellation, as the IAU abbreviation ( |
options (optional) | { step?: number; } |
|
Returns
Boundary
A new boundary; its points are new objects each call.
Examples
import { boundaryOf } from "@johnmorrisdotca/hoshi-stars/boundaries";
import { project } from "@johnmorrisdotca/hoshi-stars/projection";
const orion = boundaryOf("Orion");
const path = orion.outlines[0]!.map((p) => project("stereographic", p, { centre: { rightAscension: 83.8, declination: 0 }, scale: 300 })!);
console.log(path.length, "points");137 pointsWhat it prints (run when this page was built)