[gs-longan](../README.md) / Camera

# Class: Camera

## Hierarchy

- `Attribute`

  ↳ **`Camera`**

## Table of contents

### Constructors

- [constructor](Camera.md#constructor)

### Accessors

- [extent](Camera.md#extent)
- [fov](Camera.md#fov)
- [height](Camera.md#height)
- [position](Camera.md#position)
- [projection](Camera.md#projection)
- [projectionMatrix](Camera.md#projectionmatrix)
- [target](Camera.md#target)
- [up](Camera.md#up)
- [value](Camera.md#value)
- [viewMatrix](Camera.md#viewmatrix)
- [width](Camera.md#width)

### Methods

- [set](Camera.md#set)
- [setExtent](Camera.md#setextent)
- [setField](Camera.md#setfield)
- [unset](Camera.md#unset)

## Constructors

### constructor

• **new Camera**(`key`): [`Camera`](Camera.md)

#### Parameters

| Name | Type |
| :------ | :------ |
| `key` | `number` |

#### Returns

[`Camera`](Camera.md)

#### Overrides

Attribute.constructor

## Accessors

### extent

• `get` **extent**(): `Float64Array`

#### Returns

`Float64Array`

___

### fov

• `get` **fov**(): `number`

#### Returns

`number`

• `set` **fov**(`value`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `value` | `number` |

#### Returns

`void`

___

### height

• `get` **height**(): `number`

#### Returns

`number`

___

### position

• `get` **position**(): `ArrayLike`\<`number`\>

#### Returns

`ArrayLike`\<`number`\>

• `set` **position**(`value`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `value` | `ArrayLike`\<`number`\> |

#### Returns

`void`

___

### projection

• `get` **projection**(): [`ProjectionType`](../enums/ProjectionType.md)

#### Returns

[`ProjectionType`](../enums/ProjectionType.md)

• `set` **projection**(`value`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `value` | [`ProjectionType`](../enums/ProjectionType.md) |

#### Returns

`void`

___

### projectionMatrix

• `get` **projectionMatrix**(): `Float32Array`

#### Returns

`Float32Array`

___

### target

• `get` **target**(): `ArrayLike`\<`number`\>

#### Returns

`ArrayLike`\<`number`\>

• `set` **target**(`value`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `value` | `ArrayLike`\<`number`\> |

#### Returns

`void`

___

### up

• `get` **up**(): `ArrayLike`\<`number`\>

#### Returns

`ArrayLike`\<`number`\>

• `set` **up**(`value`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `value` | `ArrayLike`\<`number`\> |

#### Returns

`void`

___

### value

• `get` **value**(): `any`

#### Returns

`any`

___

### viewMatrix

• `get` **viewMatrix**(): `Float32Array`

#### Returns

`Float32Array`

___

### width

• `get` **width**(): `number`

#### Returns

`number`

## Methods

### set

▸ **set**(`position`, `target`, `up`, `width`, `height`, `projection`): [`Camera`](Camera.md)

#### Parameters

| Name | Type |
| :------ | :------ |
| `position` | `ArrayLike`\<`number`\> |
| `target` | `ArrayLike`\<`number`\> |
| `up` | `ArrayLike`\<`number`\> |
| `width` | `number` |
| `height` | `number` |
| `projection` | [`ProjectionType`](../enums/ProjectionType.md) |

#### Returns

[`Camera`](Camera.md)

___

### setExtent

▸ **setExtent**(`near`, `far`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `near` | `number` |
| `far` | `number` |

#### Returns

`void`

___

### setField

▸ **setField**(`width`, `height`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `width` | `number` |
| `height` | `number` |

#### Returns

`void`

___

### unset

▸ **unset**(): [`Camera`](Camera.md)

#### Returns

[`Camera`](Camera.md)
