| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});// index.ts
- var _circle = require('@turf/circle');
- var _destination = require('@turf/destination');
- var _helpers = require('@turf/helpers');
- function lineArc(center, radius, bearing1, bearing2, options = {}) {
- const steps = options.steps || 64;
- const angle1 = convertAngleTo360(bearing1);
- const angle2 = convertAngleTo360(bearing2);
- const properties = !Array.isArray(center) && center.type === "Feature" ? center.properties : {};
- if (angle1 === angle2) {
- return _helpers.lineString.call(void 0,
- _circle.circle.call(void 0, center, radius, options).geometry.coordinates[0],
- properties
- );
- }
- const arcStartDegree = angle1;
- const arcEndDegree = angle1 < angle2 ? angle2 : angle2 + 360;
- let alpha = arcStartDegree;
- const coordinates = [];
- let i = 0;
- const arcStep = (arcEndDegree - arcStartDegree) / steps;
- while (alpha <= arcEndDegree) {
- coordinates.push(
- _destination.destination.call(void 0, center, radius, alpha, options).geometry.coordinates
- );
- i++;
- alpha = arcStartDegree + i * arcStep;
- }
- return _helpers.lineString.call(void 0, coordinates, properties);
- }
- function convertAngleTo360(alpha) {
- let beta = alpha % 360;
- if (beta < 0) {
- beta += 360;
- }
- return beta;
- }
- var turf_line_arc_default = lineArc;
- exports.default = turf_line_arc_default; exports.lineArc = lineArc;
- //# sourceMappingURL=index.cjs.map
|