mirror of
https://github.com/zhigang1992/DefinitelyTyped.git
synced 2026-05-20 06:12:54 +08:00
* d3-selection: Templated `Local` to allow generic parameter for datum type. Added additonal signatures to `Selection.property(...)` to accept `Local` as first argument. (Thanks to @gustavderdrache for catching these enhancements) * Updated version numbers header comments to be current.
45 lines
1.9 KiB
TypeScript
45 lines
1.9 KiB
TypeScript
// Type definitions for D3JS d3-polygon module v1.0.1
|
||
// Project: https://github.com/d3/d3-polygon/
|
||
// Definitions by: Tom Wanzek <https://github.com/tomwanzek>, Alex Ford <https://github.com/gustavderdrache>, Boris Yankov <https://github.com/borisyankov>
|
||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||
|
||
/**
|
||
* Returns the signed area of the specified polygon. If the vertices of the polygon are in counterclockwise order (
|
||
* assuming a coordinate system where the origin ⟨0,0⟩ is in the top-left corner), the returned area is positive;
|
||
* otherwise it is negative, or zero.
|
||
*
|
||
* @param polygon Array of coordinates <x0, y0>, <x1, y1> and so on.
|
||
*/
|
||
export function polygonArea(polygon: Array<[number, number]>): number;
|
||
|
||
/**
|
||
* Returns the centroid of the specified polygon.
|
||
*
|
||
* @param polygon Array of coordinates <x0, y0>, <x1, y1> and so on.
|
||
*/
|
||
export function polygonCentroid(polygon: Array<[number, number]>): [number, number];
|
||
|
||
/**
|
||
* Returns the convex hull of the specified points using Andrew’s monotone chain algorithm.
|
||
* The returned hull is represented as an array containing a subset of the input points arranged in
|
||
* counterclockwise order. Returns null if points has fewer than three elements.
|
||
*
|
||
* @param points Array of coordinates <x0, y0>, <x1, y1> and so on.
|
||
*/
|
||
export function polygonHull(points: Array<[number, number]>): Array<[number, number]> | null;
|
||
|
||
/**
|
||
* Returns true if and only if the specified point is inside the specified polygon.
|
||
*
|
||
* @param polygon Array of coordinates <x0, y0>, <x1, y1> and so on.
|
||
* @param point Coordinates of point <x, y>
|
||
*/
|
||
export function polygonContains(polygon: Array<[number, number]>, point: [number, number]): boolean;
|
||
|
||
/**
|
||
* Returns the length of the perimeter of the specified polygon.
|
||
*
|
||
* @param polygon Array of coordinates <x0, y0>, <x1, y1> and so on.
|
||
*/
|
||
export function polygonLength(polygon: Array<[number, number]>): number;
|