[gs-longan](../README.md) / [LonganCore](../modules/LonganCore.md) / Viewer

# Class: Viewer

[LonganCore](../modules/LonganCore.md).Viewer

## Hierarchy

- **`Viewer`**

  ↳ [`Viewer`](Viewer.md)

## Table of contents

### Constructors

- [constructor](LonganCore.Viewer.md#constructor)

### Properties

- [canvas](LonganCore.Viewer.md#canvas)
- [collisionComputed](LonganCore.Viewer.md#collisioncomputed)
- [collisionComputing](LonganCore.Viewer.md#collisioncomputing)
- [configs](LonganCore.Viewer.md#configs)
- [container](LonganCore.Viewer.md#container)
- [contextHandle](LonganCore.Viewer.md#contexthandle)
- [geometryDrawFinish](LonganCore.Viewer.md#geometrydrawfinish)
- [geometryItem](LonganCore.Viewer.md#geometryitem)
- [geometryItems](LonganCore.Viewer.md#geometryitems)
- [renderContext](LonganCore.Viewer.md#rendercontext)
- [resize](LonganCore.Viewer.md#resize)
- [zoomLimit](LonganCore.Viewer.md#zoomlimit)

### Accessors

- [aspectRatio](LonganCore.Viewer.md#aspectratio)
- [backgroundColor](LonganCore.Viewer.md#backgroundcolor)
- [backgroundImage](LonganCore.Viewer.md#backgroundimage)
- [cameraOrientationFixed](LonganCore.Viewer.md#cameraorientationfixed)
- [collisionTolerance](LonganCore.Viewer.md#collisiontolerance)
- [height](LonganCore.Viewer.md#height)
- [lightingMode](LonganCore.Viewer.md#lightingmode)
- [modelKey](LonganCore.Viewer.md#modelkey)
- [sceneKey](LonganCore.Viewer.md#scenekey)
- [selectionTolerance](LonganCore.Viewer.md#selectiontolerance)
- [smoothTransition](LonganCore.Viewer.md#smoothtransition)
- [smoothTransitionDuration](LonganCore.Viewer.md#smoothtransitionduration)
- [softCollisionDistance](LonganCore.Viewer.md#softcollisiondistance)
- [styleKey](LonganCore.Viewer.md#stylekey)
- [viewKey](LonganCore.Viewer.md#viewkey)
- [width](LonganCore.Viewer.md#width)

### Methods

- [dispose](LonganCore.Viewer.md#dispose)
- [fitWorld](LonganCore.Viewer.md#fitworld)
- [getGslId](LonganCore.Viewer.md#getgslid)
- [locateWorld](LonganCore.Viewer.md#locateworld)
- [locateWorldByData](LonganCore.Viewer.md#locateworldbydata)
- [makeContextCurrent](LonganCore.Viewer.md#makecontextcurrent)
- [rebind](LonganCore.Viewer.md#rebind)
- [selectPositionByPoint](LonganCore.Viewer.md#selectpositionbypoint)
- [setSceneCamera](LonganCore.Viewer.md#setscenecamera)
- [setViewMode](LonganCore.Viewer.md#setviewmode)
- [updateCameraNearFar](LonganCore.Viewer.md#updatecameranearfar)
- [updateSize](LonganCore.Viewer.md#updatesize)

## Constructors

### constructor

• **new Viewer**(`containerId`): [`Viewer`](LonganCore.Viewer.md)

#### Parameters

| Name | Type |
| :------ | :------ |
| `containerId` | `string` |

#### Returns

[`Viewer`](LonganCore.Viewer.md)

## Properties

### canvas

• **canvas**: `HTMLCanvasElement`

___

### collisionComputed

• **collisionComputed**: [`List`](List.md)\<`Function`\>

___

### collisionComputing

• **collisionComputing**: [`List`](List.md)\<`Function`\>

___

### configs

• **configs**: [`RenderingConfigs`](../interfaces/LonganCore.RenderingConfigs.md)

___

### container

• **container**: `HTMLElement`

___

### contextHandle

• **contextHandle**: `number`

___

### geometryDrawFinish

• **geometryDrawFinish**: [`List`](List.md)\<`Function`\>

___

### geometryItem

• **geometryItem**: [`List`](List.md)\<`Function`\>

___

### geometryItems

• **geometryItems**: [`List`](List.md)\<`Function`\>

___

### renderContext

• **renderContext**: [`WebGL2RenderContext`](WebGL2RenderContext.md)

___

### resize

• **resize**: [`List`](List.md)\<(`viewer`: [`Viewer`](LonganCore.Viewer.md), `args`: [`EventArgs`](EventArgs.md)) => `void`\>

___

### zoomLimit

• **zoomLimit**: `number` = `0.000001`

## Accessors

### aspectRatio

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

#### Returns

`number`

• `set` **aspectRatio**(`aspectRatio`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `aspectRatio` | `number` |

#### Returns

`void`

___

### backgroundColor

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

#### Returns

`ArrayLike`\<`number`\>

• `set` **backgroundColor**(`val`): `void`

#### Parameters

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

#### Returns

`void`

___

### backgroundImage

• `set` **backgroundImage**(`imageSrc`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `imageSrc` | `string` |

#### Returns

`void`

___

### cameraOrientationFixed

• `get` **cameraOrientationFixed**(): `boolean`

#### Returns

`boolean`

• `set` **cameraOrientationFixed**(`val`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `val` | `boolean` |

#### Returns

`void`

___

### collisionTolerance

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

#### Returns

`number`

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

#### Parameters

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

#### Returns

`void`

___

### height

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

#### Returns

`number`

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

#### Parameters

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

#### Returns

`void`

___

### lightingMode

• `get` **lightingMode**(): [`LightingMode`](../enums/LonganCore.LightingMode.md)

#### Returns

[`LightingMode`](../enums/LonganCore.LightingMode.md)

• `set` **lightingMode**(`mode`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `mode` | [`LightingMode`](../enums/LonganCore.LightingMode.md) |

#### Returns

`void`

___

### modelKey

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

#### Returns

`number`

___

### sceneKey

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

#### Returns

`number`

___

### selectionTolerance

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

#### Returns

`number`

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

#### Parameters

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

#### Returns

`void`

___

### smoothTransition

• `get` **smoothTransition**(): `boolean`

#### Returns

`boolean`

• `set` **smoothTransition**(`val`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `val` | `boolean` |

#### Returns

`void`

___

### smoothTransitionDuration

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

#### Returns

`number`

• `set` **smoothTransitionDuration**(`duration`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `duration` | `number` |

#### Returns

`void`

___

### softCollisionDistance

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

#### Returns

`number`

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

#### Parameters

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

#### Returns

`void`

___

### styleKey

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

#### Returns

`number`

___

### viewKey

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

#### Returns

`number`

___

### width

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

#### Returns

`number`

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

#### Parameters

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

#### Returns

`void`

## Methods

### dispose

▸ **dispose**(): `void`

#### Returns

`void`

___

### fitWorld

▸ **fitWorld**(`type?`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `type?` | [`ElementType`](../enums/LonganCore.ElementType.md) |

#### Returns

`void`

___

### getGslId

▸ **getGslId**(`key`): `string`

#### Parameters

| Name | Type |
| :------ | :------ |
| `key` | `any` |

#### Returns

`string`

___

### locateWorld

▸ **locateWorld**(`key`): `void`

#### Parameters

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

#### Returns

`void`

___

### locateWorldByData

▸ **locateWorldByData**(`tmin`, `tmax`, `target?`): `void`

#### Parameters

| Name | Type | Default value |
| :------ | :------ | :------ |
| `tmin` | `number`[] | `undefined` |
| `tmax` | `number`[] | `undefined` |
| `target` | `Float32Array` | `null` |

#### Returns

`void`

___

### makeContextCurrent

▸ **makeContextCurrent**(): `void`

#### Returns

`void`

___

### rebind

▸ **rebind**(`containerId`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `containerId` | `string` |

#### Returns

`void`

___

### selectPositionByPoint

▸ **selectPositionByPoint**(`winPos`): `Float32Array`

#### Parameters

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

#### Returns

`Float32Array`

___

### setSceneCamera

▸ **setSceneCamera**(`position`, `target`, `up`, `width?`, `height?`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `position` | `ArrayLike`\<`number`\> |
| `target` | `ArrayLike`\<`number`\> |
| `up` | `ArrayLike`\<`number`\> |
| `width?` | `number` |
| `height?` | `number` |

#### Returns

`void`

___

### setViewMode

▸ **setViewMode**(`mode`, `fitWorld?`, `bb?`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `mode` | [`ViewMode`](../enums/LonganCore.ViewMode.md) |
| `fitWorld?` | `boolean` |
| `bb?` | `Float32Array` |

#### Returns

`void`

___

### updateCameraNearFar

▸ **updateCameraNearFar**(): `void`

#### Returns

`void`

___

### updateSize

▸ **updateSize**(): `void`

#### Returns

`void`
