npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@mapbox/point-geometry

v1.1.0

Published

a point geometry with transforms

Downloads

6,704,026

Readme

@mapbox/point-geometry

A Point class for representing point geometry with useful utility methods.

Installation

$ npm install @mapbox/point-geometry

API

Point

A standalone point geometry with useful accessor, comparison, and modification methods.

Parameters

  • x number the x-coordinate. This could be longitude or screen pixels, or any other sort of unit.
  • y number the y-coordinate. This could be latitude or screen pixels, or any other sort of unit.

Examples

const point = new Point(-77, 38);

clone

Clone this point, returning a new point that can be modified without affecting the old one.

Returns Point the clone

add

Add this point's x & y coordinates to another point, yielding a new point.

Parameters

Returns Point output point

sub

Subtract this point's x & y coordinates to from point, yielding a new point.

Parameters

Returns Point output point

multByPoint

Multiply this point's x & y coordinates by point, yielding a new point.

Parameters

Returns Point output point

divByPoint

Divide this point's x & y coordinates by point, yielding a new point.

Parameters

Returns Point output point

mult

Multiply this point's x & y coordinates by a factor, yielding a new point.

Parameters

Returns Point output point

div

Divide this point's x & y coordinates by a factor, yielding a new point.

Parameters

Returns Point output point

rotate

Rotate this point around the 0, 0 origin by an angle a, given in radians

Parameters
  • a number angle to rotate around, in radians

Returns Point output point

rotateAround

Rotate this point around p point by an angle a, given in radians

Parameters
  • a number angle to rotate around, in radians
  • p Point Point to rotate around

Returns Point output point

matMult

Multiply this point by a 4x1 transformation matrix

Parameters

Returns Point output point

unit

Calculate this point but as a unit vector from 0, 0, meaning that the distance from the resulting point to the 0, 0 coordinate will be equal to 1 and the angle from the resulting point to the 0, 0 coordinate will be the same as before.

Returns Point unit vector point

perp

Compute a perpendicular point, where the new y coordinate is the old x coordinate and the new x coordinate is the old y coordinate multiplied by -1

Returns Point perpendicular point

round

Return a version of this point with the x & y coordinates rounded to integers.

Returns Point rounded point

mag

Return the magnitude of this point: this is the Euclidean distance from the 0, 0 coordinate to this point's x and y coordinates.

Returns number magnitude

equals

Judge whether this point is equal to another point, returning true or false.

Parameters
  • other Point the other point

Returns boolean whether the points are equal

dist

Calculate the distance from this point to another point

Parameters

Returns number distance

distSqr

Calculate the distance from this point to another point, without the square root step. Useful if you're comparing relative distances.

Parameters

Returns number distance

angle

Get the angle from the 0, 0 coordinate to this point, in radians coordinates.

Returns number angle

angleTo

Get the angle from this point to another point, in radians

Parameters

Returns number angle

angleWith

Get the angle between this point and another point, in radians

Parameters

Returns number angle

angleWithSep

Find the angle of the two vectors, solving the formula for the cross product a x b = |a||b|sin(θ) for θ.

Parameters

Returns number the angle in radians

convert

Construct a point from an array if necessary, otherwise if the input is already a Point, or an unknown type, return it unchanged

Parameters
Examples
// this
var point = Point.convert([0, 1]);
// is equivalent to
var point = new Point(0, 1);

Returns Point constructed point, or passed-through value.