---
title: "StructArrayLayout3f12 | JavaScript maps SDK"
description: "Documentation for MapTiler SDK"
---

> For AI agents: a documentation index is available at [/llms.txt](https://docs.maptiler.com/llms.txt). Markdown versions of all pages are available by appending .md to any URL.

# Class StructArrayLayout3f12

#### Hierarchy ([View Summary](https://docs.maptiler.com/sdk-js/api-reference/hierarchy/#Externals.StructArrayLayout3f12))

-   [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/)
    -   StructArrayLayout3f12
        -   [SymbolDynamicLayoutArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.SymbolDynamicLayoutArray/)

##### Index

### Constructors[](#constructors)

[constructor](#constructor)

### Properties[](#properties)

[arrayBuffer](#arraybuffer) [bytesPerElement](#bytesperelement) [capacity](#capacity) [float32](#float32) [isTransferred](#istransferred) [length](#length) [members](#members) [uint8](#uint8)

### Methods[](#methods)

[clear](#clear) [emplace](#emplace) [emplaceBack](#emplaceback) [freeBufferAfterUpload](#freebufferafterupload) [reserve](#reserve) [resize](#resize) [deserialize](#deserialize) [serialize](#serialize)

## Constructors[](#constructors-1)

### constructor[](#constructor)

-   new StructArrayLayout3f12(): StructArrayLayout3f12[](#constructorstructarraylayout3f12)
    
    #### Returns StructArrayLayout3f12
    
    Inherited from [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/).[constructor](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/#constructor)
    

## Properties[](#properties-1)

### arrayBuffer[](#arraybuffer)

arrayBuffer: ArrayBuffer

Inherited from [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/).[arrayBuffer](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/#arraybuffer)

### bytesPerElement[](#bytesperelement)

bytesPerElement: number

Inherited from [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/).[bytesPerElement](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/#bytesperelement)

### capacity[](#capacity)

capacity: number

Inherited from [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/).[capacity](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/#capacity)

### float32[](#float32)

float32: Float32Array

### isTransferred[](#istransferred)

isTransferred: boolean

Inherited from [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/).[isTransferred](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/#istransferred)

### length[](#length)

length: number

Inherited from [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/).[length](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/#length)

### members[](#members)

members: [StructArrayMember](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.StructArrayMember/)\[\]

Inherited from [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/).[members](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/#members)

### uint8[](#uint8)

uint8: Uint8Array

Overrides [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/).[uint8](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/#uint8)

## Methods[](#methods-1)

### clear[](#clear)

-   clear(): void[](#clear-1)
    
    Resets the length of the array to 0 without de-allocating capacity.
    
    #### Returns void
    
    Inherited from [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/).[clear](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/#clear)
    

### emplace[](#emplace)

-   emplace(i: number, v0: number, v1: number, v2: number): number[](#emplace-1)
    
    #### Parameters
    
    -   i: number
    -   v0: number
    -   v1: number
    -   v2: number
    
    #### Returns number
    
    Overrides [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/).[emplace](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/#emplace)
    

### emplaceBack[](#emplaceback)

-   emplaceBack(v0: number, v1: number, v2: number): number[](#emplaceback-1)
    
    #### Parameters
    
    -   v0: number
    -   v1: number
    -   v2: number
    
    #### Returns number
    
    Overrides [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/).[emplaceBack](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/#emplaceback)
    

### freeBufferAfterUpload[](#freebufferafterupload)

-   freeBufferAfterUpload(): void[](#freebufferafterupload-1)
    
    Replace the buffer with an empty one so typed views release the original ArrayBuffer for GC.
    
    #### Returns void
    
    Inherited from [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/).[freeBufferAfterUpload](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/#freebufferafterupload)
    

### reserve[](#reserve)

-   reserve(n: number): void[](#reserve-1)
    
    Indicate a planned increase in size, so that any necessary allocation may be done once, ahead of time.
    
    #### Parameters
    
    -   n: number
        
        The expected size of the array.
        
    
    #### Returns void
    
    Inherited from [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/).[reserve](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/#reserve)
    

### resize[](#resize)

-   resize(n: number): void[](#resize-1)
    
    Resize the array. If `n` is greater than the current length then additional elements with undefined values are added. If `n` is less than the current length then the array will be reduced to the first `n` elements.
    
    #### Parameters
    
    -   n: number
        
        The new size of the array.
        
    
    #### Returns void
    
    Inherited from [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/).[resize](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/#resize)
    

### `Static`deserialize[](#deserialize)

-   deserialize(input: [SerializedStructArray](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.SerializedStructArray/)): any[](#deserialize-1)
    
    #### Parameters
    
    -   input: [SerializedStructArray](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.SerializedStructArray/)
    
    #### Returns any
    
    Inherited from [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/).[deserialize](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/#deserialize)
    

### `Static`serialize[](#serialize)

-   serialize(  
        array: [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/),  
        transferables?: [Transferable](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Transferable/)\[\],  
    ): [SerializedStructArray](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.SerializedStructArray/)[](#serialize-1)
    
    Serialize a StructArray instance. Serializes both the raw data and the metadata needed to reconstruct the StructArray base class during deserialization.
    
    #### Parameters
    
    -   array: [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/)
    -   `Optional`transferables: [Transferable](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Transferable/)\[\]
    
    #### Returns [SerializedStructArray](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.SerializedStructArray/)
    
    Inherited from [StructArray](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/).[serialize](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.StructArray/#serialize)
