# Ray

Class representing a horizontal ray, used by ray shooting algorithm

## Constructor

#### new Ray(pt)

Construct ray by setting start point

Source:
  - classes/ray.js, line 9

##### Parameters:

Name | Type | Description
--- | --- | ---
`pt` | `Point` | start point

### Members

#### box

Returns half-infinite bounding box of the ray

Source:
  - classes/ray.js, line 46

#### norm

Return ray normal vector (0,1) - horizontal ray

Source:
  - classes/ray.js, line 67

#### start

Return ray start point

Source:
  - classes/ray.js, line 59

### Methods

#### clone() → {Ray}

Returns copied instance of the ray object

Source:
  - classes/ray.js, line 38

##### Returns:

Type:
  `Ray`

#### intersect(shape) → {Array}

Returns array of intersection points between ray and segment or arc

Source:
  - classes/ray.js, line 76

##### Parameters:

Name | Type | Description
--- | --- | ---
`shape` | `Segment` | `Arc` | Shape to intersect with ray

##### Returns:

Type:
  `Array`

array of intersection points