JSPM

svg-partial-circle

1.0.0
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 33039
  • Score
    100M100P100Q157502F
  • License ISC

Compute the SVG path of a partial circle.

Package Exports

  • svg-partial-circle

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (svg-partial-circle) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

svg-partial-circle

Compute the SVG path of a partial circle.

Compared to Canvas, defining a partial circle is surprisingly complex. I searched for a module that encapsulates this complexity and there are modules out there. But all of them are not modular enough (people call this opinionated).

npm version build status ISC-licensed chat on gitter support me on Patreon

Installing

npm install svg-partial-circle

Usage

const partialCircle = require('svg-partial-circle')

const path = partialCircle(
    30, 30,         // center X and Y
    20,             // radius
    Math.PI / 4,    // start angle
    Math.PI * 7 / 4 // end angle
)
.map((command) => command.join(' '))
.join(' ')

console.log(`<path d="${path}" />`)
<path d="M 44.14213562373095 44.14213562373095 A 20 20 0 1 1 44.14213562373095 15.857864376269045" />

API

partialCircle(cx, cy, r, start, end)

start and end are in radians. partialCircle(…) returns an array of path commands, each command being an array of its parts.

start < end will draw a clockwise segment, while start > end a counterclockwise one.

Contributing

If you have a question, found a bug or want to propose a feature, have a look at the issues page.