MOON
Server: Apache
System: Linux nserver.cafsindia.com 4.18.0-553.104.1.lve.el8.x86_64 #1 SMP Tue Feb 10 20:07:30 UTC 2026 x86_64
User: cafsindia (1002)
PHP: 8.2.30
Disabled: NONE
Upload Files
File: /home/cafsindia/snap.cafsinfotech.in/node_modules/mapbox-gl/src/render/atmosphere_buffer.js
// @flow
import type IndexBuffer from '../gl/index_buffer.js';
import type VertexBuffer from '../gl/vertex_buffer.js';
import SegmentVector from '../data/segment.js';
import type Context from '../gl/context.js';
import {atmosphereLayout} from './atmosphere_attributes.js';
import {TriangleIndexArray, AtmosphereVertexArray} from '../data/array_types.js';

export class AtmosphereBuffer {
    vertexBuffer: VertexBuffer;
    indexBuffer: IndexBuffer;
    segments: SegmentVector;

    constructor(context: Context) {
        const vertices = new AtmosphereVertexArray();
        vertices.emplaceBack(-1, 1, 1, 0, 0);
        vertices.emplaceBack(1, 1, 1, 1, 0);
        vertices.emplaceBack(1, -1, 1, 1, 1);
        vertices.emplaceBack(-1, -1, 1, 0, 1);

        const triangles = new TriangleIndexArray();
        triangles.emplaceBack(0, 1, 2);
        triangles.emplaceBack(2, 3, 0);

        this.vertexBuffer = context.createVertexBuffer(vertices, atmosphereLayout.members);
        this.indexBuffer = context.createIndexBuffer(triangles);
        this.segments = SegmentVector.simpleSegment(0, 0, 4, 2);
    }

    destroy() {
        this.vertexBuffer.destroy();
        this.indexBuffer.destroy();
        this.segments.destroy();
    }
}