Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

line-path-fillet

Package Overview
Dependencies
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

line-path-fillet

A line path filleting micro-library

  • 0.1.5
  • latest
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

A line path filleting micro-library

Demo

Check it out in action: https://hassoncs.github.io/line-path-fillet/

Purpose

This library's primary purpose is to fillet (round) the corner between two line segments.

If the line segments are too small to form a fillet arc at the requested radius, the largest possible radius will be used.

Use


// With four points, A, B, C, and D specified as x,y arrays of length 2:

const pointA = [0, 0];
const pointB = [0, 0];
const pointC = [0, 0];
const pointD = [0, 0];

// First we find the intersection point of the line segments
// This will project the lines as needed in order to find 
// the first possible intersection point.
// It will return null if the lines will never intersect.
const intersectionPoint = findIntersection(
  pointA[0],
  pointA[1],
  pointB[0],
  pointB[1],
  pointC[0],
  pointC[1],
  pointD[0],
  pointD[1],
);
if (!intersectionPoint) return;

const radius = 100;
const filletData = filletCorner(
  pointA,
  intersectionPoint,
  pointC,
  radius,
);

// Now we have everything we need to draw the arc:
const {
  radius, // The radius we ended up using (might be smaller than the specified radius)
  angleA, // Angle from the fillet circle center to the tangent point on line A->I
  angleB, // Angle from the fillet circle center to the tangent point on line B->I
  tanPointA, // Arc start point
  tanPointB,  // Arc end point
  circleCenter, // Center point of the fillet circle
} = filletData;



Building

Library

npm run build npm run publish

Demo app dev

cd demo-app
npm install
npm run start

Demo app release process

# To build the app
npm run build

# Release it to github pages
npm run deploy

Keywords

FAQs

Package last updated on 26 Sep 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc