What is @turf/line-arc?
@turf/line-arc is a module from the Turf.js library that allows you to create circular arcs as LineString features. This can be useful for various geospatial applications, such as drawing curved paths or visualizing ranges.
What are @turf/line-arc's main functionalities?
Create a circular arc
This feature allows you to create a circular arc by specifying the center coordinates, radius, start angle, end angle, and the number of steps. The result is a LineString feature representing the arc.
const turf = require('@turf/turf');
const center = [0, 0];
const radius = 5;
const startAngle = 0;
const endAngle = 90;
const steps = 64;
const arc = turf.lineArc(center, radius, startAngle, endAngle, { steps });
console.log(arc);
Other packages similar to @turf/line-arc
d3-geo
d3-geo is a module from the D3.js library that provides geographic projections and utilities for creating and manipulating geographic data. It can be used to create arcs and other geospatial shapes, but it is more general-purpose compared to @turf/line-arc, which is specifically designed for creating circular arcs.
leaflet
Leaflet is a popular open-source JavaScript library for interactive maps. While it does not provide a direct method for creating circular arcs, it offers various plugins and utilities that can be used to achieve similar results. Leaflet is more focused on map visualization and interaction, whereas @turf/line-arc is a utility for geospatial calculations.
openlayers
OpenLayers is a high-performance, feature-packed library for creating interactive maps on the web. It provides various tools for drawing and manipulating geospatial data, including the ability to create arcs. OpenLayers is more comprehensive and versatile compared to @turf/line-arc, which is specialized for creating circular arcs.
@turf/line-arc
lineArc
Creates a circular arc, of a circle of the given radius and center point, between bearing1 and bearing2;
0 bearing is North of center point, positive clockwise.
Parameters
-
center
Coord center point
-
radius
number radius of the circle
-
bearing1
number angle, in decimal degrees, of the first radius of the arc
-
bearing2
number angle, in decimal degrees, of the second radius of the arc
-
options
Object Optional parameters (optional, default {}
)
options.steps
number number of steps (straight segments) that will constitute the arc (optional, default 64
)options.units
string miles, kilometers, degrees, or radians (optional, default 'kilometers'
)
Examples
var center = turf.point([-75, 40]);
var radius = 5;
var bearing1 = 25;
var bearing2 = 47;
var arc = turf.lineArc(center, radius, bearing1, bearing2);
var addToMap = [center, arc]
Returns Feature<LineString> line arc
This module is part of the Turfjs project, an open source module collection dedicated to geographic algorithms. It is maintained in the Turfjs/turf repository, where you can create PRs and issues.
Installation
Install this single module individually:
$ npm install @turf/line-arc
Or install the all-encompassing @turf/turf module that includes all modules as functions:
$ npm install @turf/turf