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

# Class: Shell

## Hierarchy

- `Surface`

  ↳ **`Shell`**

## Table of contents

### Constructors

- [constructor](Shell.md#constructor)

### Accessors

- [area](Shell.md#area)
- [color](Shell.md#color)
- [indexes](Shell.md#indexes)
- [key](Shell.md#key)
- [keyType](Shell.md#keytype)
- [normals](Shell.md#normals)
- [owner](Shell.md#owner)
- [points](Shell.md#points)
- [property](Shell.md#property)
- [shellSize](Shell.md#shellsize)
- [texCoords](Shell.md#texcoords)
- [typeName](Shell.md#typename)
- [volume](Shell.md#volume)

### Methods

- [ComputeTessellateData](Shell.md#computetessellatedata)
- [delete](Shell.md#delete)
- [distanceTo](Shell.md#distanceto)
- [edit](Shell.md#edit)
- [editStripe](Shell.md#editstripe)
- [editVerticalStripe](Shell.md#editverticalstripe)
- [equals](Shell.md#equals)
- [merge](Shell.md#merge)
- [moveTo](Shell.md#moveto)
- [createStripe](Shell.md#createstripe)
- [createVerticalStripe](Shell.md#createverticalstripe)
- [fromKey](Shell.md#fromkey)

## Constructors

### constructor

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

#### Parameters

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

#### Returns

[`Shell`](Shell.md)

#### Overrides

Surface.constructor

## Accessors

### area

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

#### Returns

`any`

#### Inherited from

Surface.area

___

### color

• `get` **color**(): `GeometryColor`

#### Returns

`GeometryColor`

#### Inherited from

Surface.color

___

### indexes

• `get` **indexes**(): `Int32Array`

#### Returns

`Int32Array`

___

### key

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

#### Returns

`number`

#### Inherited from

Surface.key

___

### keyType

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

#### Returns

`any`

#### Inherited from

Surface.keyType

___

### normals

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

#### Returns

`Float32Array`

#### Inherited from

Surface.normals

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

#### Parameters

| Name | Type |
| :------ | :------ |
| `value` | `Float32Array` |

#### Returns

`void`

#### Inherited from

Surface.normals

___

### owner

• `get` **owner**(): [`Segment`](Segment.md)

#### Returns

[`Segment`](Segment.md)

#### Inherited from

Surface.owner

___

### points

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

#### Returns

`Float32Array`

___

### property

• `get` **property**(): `GeometryProperty`

#### Returns

`GeometryProperty`

#### Inherited from

Surface.property

___

### shellSize

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

#### Returns

`any`

#### Inherited from

Surface.shellSize

___

### texCoords

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

#### Parameters

| Name | Type |
| :------ | :------ |
| `value` | `Float32Array` |

#### Returns

`void`

#### Inherited from

Surface.texCoords

___

### typeName

• `get` **typeName**(): `string`

#### Returns

`string`

#### Overrides

Surface.typeName

___

### volume

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

#### Returns

`any`

#### Inherited from

Surface.volume

## Methods

### ComputeTessellateData

▸ **ComputeTessellateData**(`image`, `precision?`): `Object`

#### Parameters

| Name | Type | Default value |
| :------ | :------ | :------ |
| `image` | [`Image`](Image.md) | `undefined` |
| `precision` | `number` | `0.2` |

#### Returns

`Object`

| Name | Type |
| :------ | :------ |
| `indexes` | `Int32Array` |
| `normals` | `Float32Array` |
| `positions` | `Float32Array` |
| `texcoords` | `Float32Array` |

#### Inherited from

Surface.ComputeTessellateData

___

### delete

▸ **delete**(): `void`

#### Returns

`void`

#### Inherited from

Surface.delete

___

### distanceTo

▸ **distanceTo**(`geom`, `path1?`, `path2?`): `Float32Array`

#### Parameters

| Name | Type |
| :------ | :------ |
| `geom` | [`Geometry`](Geometry.md) |
| `path1?` | `Int32Array` |
| `path2?` | `Int32Array` |

#### Returns

`Float32Array`

#### Inherited from

Surface.distanceTo

___

### edit

▸ **edit**(`points`, `indexes`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `points` | `ArrayLike`\<`number`\> |
| `indexes` | `ArrayLike`\<`number`\> |

#### Returns

`void`

___

### editStripe

▸ **editStripe**(`points`, `normal`, `width`, `createUv?`, `uvType?`, `scale?`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `points` | `ArrayLike`\<`number`\> |
| `normal` | `ArrayLike`\<`number`\> |
| `width` | `number` |
| `createUv?` | `boolean` |
| `uvType?` | [`UvType`](../enums/UvType.md) |
| `scale?` | `ArrayLike`\<`number`\> |

#### Returns

`void`

___

### editVerticalStripe

▸ **editVerticalStripe**(`points`, `height`, `createUv?`, `uvType?`, `scale?`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `points` | `ArrayLike`\<`number`\> |
| `height` | `number` |
| `createUv?` | `boolean` |
| `uvType?` | [`UvType`](../enums/UvType.md) |
| `scale?` | `Float64Array` |

#### Returns

`void`

___

### equals

▸ **equals**(`obj`): `boolean`

#### Parameters

| Name | Type |
| :------ | :------ |
| `obj` | [`IKey`](../interfaces/IKey.md) |

#### Returns

`boolean`

#### Inherited from

Surface.equals

___

### merge

▸ **merge**(`from`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `from` | [`Segment`](Segment.md) |

#### Returns

`void`

___

### moveTo

▸ **moveTo**(`segment`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `segment` | [`Segment`](Segment.md) |

#### Returns

`void`

#### Inherited from

Surface.moveTo

___

### createStripe

▸ **createStripe**(`points`, `normal`, `width`, `createUv?`, `uvType?`, `scale?`): `Object`

#### Parameters

| Name | Type |
| :------ | :------ |
| `points` | `ArrayLike`\<`number`\> |
| `normal` | `ArrayLike`\<`number`\> |
| `width` | `number` |
| `createUv?` | `boolean` |
| `uvType?` | [`UvType`](../enums/UvType.md) |
| `scale?` | `ArrayLike`\<`number`\> |

#### Returns

`Object`

| Name | Type |
| :------ | :------ |
| `indexes` | `Int32Array` |
| `points` | `Float32Array` |
| `texcoords` | `any` |

___

### createVerticalStripe

▸ **createVerticalStripe**(`points`, `height`, `createUv?`, `uvType?`, `scale?`): `Object`

#### Parameters

| Name | Type |
| :------ | :------ |
| `points` | `ArrayLike`\<`number`\> |
| `height` | `number` |
| `createUv?` | `boolean` |
| `uvType?` | [`UvType`](../enums/UvType.md) |
| `scale?` | `Float64Array` |

#### Returns

`Object`

| Name | Type |
| :------ | :------ |
| `indexes` | `Int32Array` |
| `points` | `Float32Array` |
| `texcoords` | `Float32Array` |

___

### fromKey

▸ **fromKey**(`key`): [`Geometry`](Geometry.md)

#### Parameters

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

#### Returns

[`Geometry`](Geometry.md)

#### Inherited from

Surface.fromKey
