1.2.9 • Published 4 months ago

2d-utils v1.2.9

Weekly downloads
-
License
ISC
Repository
github
Last release
4 months ago

Simplify point manipulation and interactions in your 2D projects with this versatile toolkit.Effortlessly calculate distances, areas, collision detection, and more with this collection of handy functions.

How to use

  1. Installation
 npm install 2d-utils
  1. Usage
 import 2d from "2d-utils";

Functions

This section explains the usage of the utility functions.

Actions with points in XY coordinate system

  1. distance(x1, y1, x2, y2)

    Returns the distance beetween two points.

  2. area(points)

    Returns the area enclosed by the given points. Takes an array of points as argument, where each point is an object with x and y properties.

  3. collision(x1, y1, x2, y2,collisionDistance, callback)

    Returns a boolean indicating if the two points are closer than the given distance.

  4. collisionInArray(x1, y1, radius, points, callback)

    Returns the point that is closer than the radius to the given point, or false if there's no collision.

  5. positionInCircle(centerX, centerY, radius, angleInRadians)

    Returns the XY coordinates for the current point in the circle, given its center, radius, and angle.

  6. angle(x1, y1, x2, y2)

    Returns the angle formed by the connection of two points.

  7. middlePoint(x1, y1, x2, y2)

    Returns the midpoint between two points.

  8. nearest(x, y, points)

    Returns the nearest point to the given point from the array.

  9. perimeter(points)

    Returns the perimeter of the figure formed by the given points.

  10. pointWithoutCollision(minX, maxX, minY, maxY, distance, points)

    Returns a point that doesn't collide with any of the given points within the specified distance, if such a point exists, otherwise returns false.

  11. randomPoint(xMin, xMax, yMin, yMax)

    Returns a random point within the given dimensions, if provided.

  12. randomPointInDistance(x, y, distance)

    Returns a random point within the given distance from the specified point.

  13. randomPoints(xMin, xMax, yMin, yMax, quantity)

    Returns a specified quantity of random points within the given dimensions, if dimensions are provided.

Math

  1. degreesToRadians(degrees)

    Converts degrees to radians.

  2. radiansToDegrees(radians)

    Converts radians to degrees.

  3. inRange(number, min, max)

    Returns true if the given number is within the specified range.

  4. roundToPrecision(number, precision)

    Rounds the number to the given precision.

Randomization

  1. randomNumber(min, max)

    Returns a random number within the given range.

  2. randomBoolean()

    Returns a random boolean value.

  3. uniqueId(other ids)

    Returns a unique ID that's different from the provided IDs, or a random ID if no other IDs are given.

1.2.9

4 months ago

1.2.8

4 months ago

1.2.7

4 months ago

1.2.6

4 months ago

1.2.5

4 months ago

1.2.4

4 months ago

1.2.3

4 months ago

1.2.2

4 months ago

1.2.1

4 months ago

1.2.0

4 months ago