index.d.ts 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. import { Feature, Geometry, MultiPolygon, Polygon, MultiPoint, Point, LineString, BBox } from 'geojson';
  2. /**
  3. * Boolean-contains returns True if the second geometry is completely contained by the first geometry.
  4. * The interiors of both geometries must intersect and, the interior and boundary of the secondary (geometry b)
  5. * must not intersect the exterior of the primary (geometry a).
  6. * Boolean-contains returns the exact opposite result of the `@turf/boolean-within`.
  7. *
  8. * @function
  9. * @param {Geometry|Feature<any>} feature1 GeoJSON Feature or Geometry
  10. * @param {Geometry|Feature<any>} feature2 GeoJSON Feature or Geometry
  11. * @returns {boolean} true/false
  12. * @example
  13. * var line = turf.lineString([[1, 1], [1, 2], [1, 3], [1, 4]]);
  14. * var point = turf.point([1, 2]);
  15. *
  16. * turf.booleanContains(line, point);
  17. * //=true
  18. */
  19. declare function booleanContains(feature1: Feature<any> | Geometry, feature2: Feature<any> | Geometry): boolean;
  20. declare function isPolygonInMultiPolygon(multiPolygon: MultiPolygon, polygon: Polygon): boolean;
  21. declare function isPointInMultiPoint(multiPoint: MultiPoint, pt: Point): boolean;
  22. declare function isMultiPointInMultiPoint(multiPoint1: MultiPoint, multiPoint2: MultiPoint): boolean;
  23. declare function isMultiPointOnLine(lineString: LineString, multiPoint: MultiPoint): boolean;
  24. declare function isMultiPointInPoly(polygon: Polygon, multiPoint: MultiPoint): boolean;
  25. declare function isLineOnLine(lineString1: LineString, lineString2: LineString): boolean;
  26. declare function isLineInPoly(polygon: Polygon, linestring: LineString): boolean;
  27. /**
  28. * Is Polygon2 in Polygon1
  29. * Only takes into account outer rings
  30. *
  31. * @private
  32. * @param {Geometry|Feature<Polygon>} feature1 Polygon1
  33. * @param {Geometry|Feature<Polygon>} feature2 Polygon2
  34. * @returns {boolean} true/false
  35. */
  36. declare function isPolyInPoly(feature1: Feature<Polygon> | Polygon, feature2: Feature<Polygon> | Polygon): boolean;
  37. declare function doBBoxOverlap(bbox1: BBox, bbox2: BBox): boolean;
  38. /**
  39. * compareCoords
  40. *
  41. * @private
  42. * @param {Position} pair1 point [x,y]
  43. * @param {Position} pair2 point [x,y]
  44. * @returns {boolean} true/false if coord pairs match
  45. */
  46. declare function compareCoords(pair1: number[], pair2: number[]): boolean;
  47. declare function getMidpoint(pair1: number[], pair2: number[]): number[];
  48. export { booleanContains, compareCoords, booleanContains as default, doBBoxOverlap, getMidpoint, isLineInPoly, isLineOnLine, isMultiPointInMultiPoint, isMultiPointInPoly, isMultiPointOnLine, isPointInMultiPoint, isPolyInPoly, isPolygonInMultiPolygon };