import { FeatureCollection, Point, Polygon } from "@turf/helpers"; export interface Pt { x: number; y: number; z?: number; __sentinel?: boolean; } export interface Vertice { x: number; y: number; } /** * Takes a set of {@link Point|points} and creates a * [Triangulated Irregular Network](http://en.wikipedia.org/wiki/Triangulated_irregular_network), * or a TIN for short, returned as a collection of Polygons. These are often used * for developing elevation contour maps or stepped heat visualizations. * * If an optional z-value property is provided then it is added as properties called `a`, `b`, * and `c` representing its value at each of the points that represent the corners of the * triangle. * * @name tin * @param {FeatureCollection} points input points * @param {String} [z] name of the property from which to pull z values * This is optional: if not given, then there will be no extra data added to the derived triangles. * @returns {FeatureCollection} TIN output * @example * // generate some random point data * var points = turf.randomPoint(30, {bbox: [50, 30, 70, 50]}); * * // add a random property to each point between 0 and 9 * for (var i = 0; i < points.features.length; i++) { * points.features[i].properties.z = ~~(Math.random() * 9); * } * var tin = turf.tin(points, 'z'); * * //addToMap * var addToMap = [tin, points] * for (var i = 0; i < tin.features.length; i++) { * var properties = tin.features[i].properties; * properties.fill = '#' + properties.a + properties.b + properties.c; * } */ export default function tin(points: FeatureCollection, z?: string): FeatureCollection;