Ray

Ray

Class representing a ray.

Constructor

new Ray(pt, norm)

Ray may be constructed by setting start point and a normal vector Ray goes to the right direction with respect to the normal vector If normal vector is omitted ray is considered horizontal (normal vector is (0,1)) If started point is omitted, ray is started at zero point
Source:
Parameters:
Name Type Description
pt Point start point
norm Vector normal vector

Classes

Ray

Members

box

Returns half-infinite bounding box of the ray
Source:

end

Ray has no end point?
Source:

length

Return positive infinity number as length
Source:

slope

Slope of the ray - angle in radians between ray and axe x from 0 to 2PI
Source:

start

Return ray start point
Source:

Methods

clone() → {Ray}

Returns copied instance of the ray object
Source:
Returns:
Type:
Ray

contains(pt) → {boolean}

Returns true if point belongs to ray
Source:
Parameters:
Name Type Description
pt Point Query point
Returns:
Type:
boolean

intersect(shape) → {Array}

Returns array of intersection points between ray and segment or arc
Source:
Parameters:
Name Type Description
shape Segment | Arc Shape to intersect with ray
Returns:
Type:
Array
array of intersection points

split(pt)

Split ray with point and return array of segment and new ray
Source:
Parameters:
Name Type Description
pt
Returns:
[Segment,Ray]

svg(box, attrs)

Return string to draw svg segment representing ray inside given box
Source:
Parameters:
Name Type Description
box Box Box representing drawing area
attrs Object an object with attributes of svg segment element