class
Buffer
Используется для хранения и подготовки данных для передачи в атрибуты шейдера
new constructor
(initData, options?, isElementArray)
Parameters
initData
numberTypedArrayArrayBufferDataView
Данные для инита буфера: содержимое буфера или его размер
options?
Partial<BufferBindOptions>
Параметры передачи буфера в видеокарту,
могут быть переопределены из
BufferChannel
isElementArray
boolean
Флаг определяющий является ли буффер индексным (если true)
или повертексным (если false)
Returns
Buffer<>
Methods
bind
(gl, location?, options?, instancesExt?, locationsCount?)
Связывает данные с контекстом WebGL.
В случае Buffer.ArrayBuffer связывает с атрибутами шейдера.
А в случае Buffer.ElementArrayBuffer связывает массив индексов.
Если используется первый раз, добавляет данные в контекст WebGL.
Parameters
gl
Контекст WebGL
location?
nullnumber
Положение аттрибута для связывания данных с переменными в шейдере
options?
Параметры передаваемые в функцию vertexAttribPointer, если их нет,
то используются параметры конкретного буфера. Параметры должны быть переданы все.
instancesExt?
nullANGLE_instanced_arrays
Экстеншн для работы с instanced буферами,
locationsCount?
number
Количество слотов необходимых атрибуту. По умолчанию равен 1.
Returns
Buffer<>
remove
Удаляет данные из контекста WebGL.
Returns
Buffer<>
subData
(gl, index, data)
Заменяет часть буфера новыми данными и отправляет их в видеокарту
Parameters
gl
WebGLRenderingContext
index
number
Индекс, с которого начать замену
data
TypedArray
Новые данные
Returns
Buffer<>
BufferChannel
Класс BufferChannel используется, если данные в обычном буфере имееют разные типы
и предназначены для разных атрибутов шейдера, т.е. нужно использовать webgl параметры stride и offset.
При инициализации классу передаётся
Buffer
. Несколько BufferChannel могут использовать один и тот же Buffer.
Во время рендеринга BufferChannel связывает полученный буфер с нужными параметрами.
@param [object Object]
@param
new constructor
(buffer, options)
Parameters
buffer
Buffer<>
options
Returns
BufferChannel<>
Methods
bind
(gl, location, options?, instancesExt?, locationsCount?)
Связывает данные с контекстом WebGL с нужными параметрами.
Вызывает
Buffer#bind
исходного буфера.
Parameters
gl
location
number
options?
instancesExt?
ANGLE_instanced_arrays
locationsCount?
number
Returns
void
Deck2gisLayer
A class that provides rendering any deck.gl layer inside the MapGl canvas / WebGL context.
new constructor
(props)
Example:
```js
const deckLayer = new mapgl.Deck2gisLayer(map, Deck, {
id: 'deckLayer',
deck,
type: HexagonLayer,
data,
getPosition: (d) => [d.point.lon, d.point.lat]
});
map.addLayer(deckLayer);
```
Parameters
props
LayerProps<LayerT>
Returns
Deck2gisLayer<LayerT>
Methods
initDeck
(map, Deck, deckProps?)
Initializes deck.gl instance for working with the MapGL map.
Parameters
map
Map<>
The map instance.
Deck
any
The Deck.gl class
deckProps?
CustomRenderProps initialization options.
Returns
default<>
destroy
Destroys the layer and frees all related resources.
Returns
void
setProps
(props)
Sets layer properties and updates the layer.
Parameters
props
Partial<LayerProps<LayerT>>
deck.gl layer properties.
Returns
void
Object3D
Базовый класс для 3D объектов.
new constructor
Returns
Object3D<>
Methods
add
(object)
Добавляет дочерний объект
Parameters
object
Object3D<>
Дочерний объект
Returns
Object3D<>
getWorldPosition
Возвращает позицию объекта относительно глобальных коорд инат.
Returns
Vec3
remove
(object)
Убирает дочерний объект
Parameters
object
Object3D<>
Дочерний объект
Returns
Object3D<>
render
Вызывается рендером для подготовки и отрисовки объекта.
Returns
Object3D<>
traverse
(callback)
Вызывает переданный callback для себя и для каждого дочернего класса.
Parameters
callback
(obj: Object3D<>) => void
Returns
Object3D<>
traverseVisible
(callback)
Работает также как и
Object3D#traverse
, но только для объектов с visible = true
Parameters
callback
(obj: Object3D<>) => void
Returns
Object3D<>
updateLocalMatrix
Обновляет локальную матрицу объекта. Необходимо использовать каждый раз после изменения position, scale
и quaternion.
Returns
Object3D<>
updateWorldMatrix
Обновляет глобальную матрицу объекта.
Returns
Object3D<>