The geometry module, which provides basic geometric figures and operations.
- Source:
Methods
(static) circle(c, r)
Create a circle
Parameters:
Name | Type | Description |
---|---|---|
c |
Point | The center point of the circle. |
r |
number | Point | The radius of the circle or a point on the circle. |
- Source:
(static) cross(p1, p2) → {Number}
Calculate the cross product, where the two points are treated as vectors.
Parameters:
Name | Type | Description |
---|---|---|
p1 |
Point | |
p2 |
Point |
- Source:
Returns:
- Type
- Number
(static) distance(p1, p2) → {Number}
Calculate the distance between two points.
Parameters:
Name | Type | Description |
---|---|---|
p1 |
Point | |
p2 |
Point |
- Source:
Returns:
- Type
- Number
(static) distanceSquared(p1, p2) → {Number}
Calculate the squared distance between two points.
Parameters:
Name | Type | Description |
---|---|---|
p1 |
Point | |
p2 |
Point |
- Source:
Returns:
- Type
- Number
(static) dot(p1, p2) → {Number}
Calculate the dot product, where the two points are treated as vectors.
Parameters:
Name | Type | Description |
---|---|---|
p1 |
Point | |
p2 |
Point |
- Source:
Returns:
- Type
- Number
(static) intersectionIsOnRay(p1, r1) → {Boolean}
Test if a point on the extension of a ray is actually on the ray.
Parameters:
Name | Type | Description |
---|---|---|
p1 |
Point | |
r1 |
Line |
- Source:
Returns:
- Type
- Boolean
(static) intersectionIsOnSegment(p1, s1) → {Boolean}
Test if a point on the extension of a segment is actually on the segment.
Parameters:
Name | Type | Description |
---|---|---|
p1 |
Point | |
s1 |
Line |
- Source:
Returns:
- Type
- Boolean
(static) line(p1, p2) → {Line}
Create a line, which also represents a ray or a segment. When used as a line, p1 and p2 are two distinct points on the line. When used as a ray, p1 is the starting point and p2 is another point on the ray. When used as a segment, p1 and p2 are the two endpoints of the segment.
Parameters:
Name | Type | Description |
---|---|---|
p1 |
Point | |
p2 |
Point |
- Source:
Returns:
- Type
- Line
(static) lineCircleIntersections(l1, c1) → {Array.<Point>}
Calculate the intersections of a line and a circle.
Parameters:
Name | Type | Description |
---|---|---|
l1 |
Line | |
c1 |
Circle |
- Source:
Returns:
- Type
- Array.<Point>
(static) linesIntersection(l1, l2) → {Point}
Calculate the intersection of two lines.
Parameters:
Name | Type | Description |
---|---|---|
l1 |
Line | |
l2 |
Line |
- Source:
Returns:
- Type
- Point
(static) midpoint(p1, p2) → {Point}
Calculate the midpoint between two points.
Parameters:
Name | Type | Description |
---|---|---|
p1 |
Point | |
p2 |
Point |
- Source:
Returns:
- Type
- Point
(static) parallelLineThroughPoint(l1, p1) → {Line}
Calculate the line though p1 and parallel to l1.
Parameters:
Name | Type | Description |
---|---|---|
l1 |
Line | |
p1 |
Point |
- Source:
Returns:
- Type
- Line
(static) perpendicularBisector(l1) → {Line}
Calculate the perpendicular bisector of a segment.
Parameters:
Name | Type | Description |
---|---|---|
l1 |
Line |
- Source:
Returns:
- Type
- Line
(static) point(x, y) → {Point}
Create a point
Parameters:
Name | Type | Description |
---|---|---|
x |
number | The x-coordinate of the point. |
y |
number | The y-coordinate of the point. |
- Source:
Returns:
- Type
- Point
(static) segmentLength(seg) → {Number}
Calculate the length of a line segment.
Parameters:
Name | Type | Description |
---|---|---|
seg |
Line |
- Source:
Returns:
- Type
- Number
(static) segmentLengthSquared(seg) → {Number}
Calculate the squared length of a line segment.
Parameters:
Name | Type | Description |
---|---|---|
seg |
Line |
- Source:
Returns:
- Type
- Number
(static) segmentMidpoint(l1) → {Point}
Calculate the midpoint of a segment.
Parameters:
Name | Type | Description |
---|---|---|
l1 |
Line |
- Source:
Returns:
- Type
- Point