JSFiddle - React, Tailwind, and code Playground

by arashb12

HTML

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>BABYLON Layer for MapBox</title>
    <link href='https://api.mapbox.com/mapbox-gl-js/v1.8.1/mapbox-gl.css' rel='stylesheet' />
    <style>
        html, body {
            overflow: hidden;
            width: 100%;
            height: 100%;
            margin: 0;
            padding: 0;
        }

        #map {
            position: absolute;
            top: 0;
            bottom: 0;
            width: 100%;
        }
    </style>
</head>
<body>
<div id="map"></div>
<script src='https://api.mapbox.com/mapbox-gl-js/v1.8.1/mapbox-gl-dev.js'></script>
<script src="https://cdn.babylonjs.com/babylon.js"></script>
<script src="https://cdn.jsdelivr.net/npm/babylonjs-loaders@4.1.0/babylonjs.loaders.js"></script>
<script>
    mapboxgl.accessToken = 'pk.eyJ1IjoiZmFic2hhcnAiLCJhIjoiY2pkb2JmaHZ2MG5laTMycXV6MW9hbnR6biJ9.UMH3HUf54_y7l-2YpeE8oA';
    let center =  [148.9819, -35.3981]
    let map = (window.map = new mapboxgl.Map({
        container: 'map',
        style: 'mapbox://styles/mapbox/light-v10',
        zoom: 18 ,
        center : center,
        pitch: 60,
        antialias: true
    }));
    let world;
    const computeWorld = () => {
        let rotateX = Math.PI / 2, rotateY = 0, rotateZ = 0;
        let mercatorCoordinate = mapboxgl.MercatorCoordinate.fromLngLat(
            [148.9819, -35.39847],
            0
        );
        world = BABYLON.Matrix.Identity().setTranslationFromFloats(mercatorCoordinate.x, mercatorCoordinate.y, mercatorCoordinate.z);
        let scaleFactor = mercatorCoordinate.meterInMercatorCoordinateUnits();
        let scale = BABYLON.Matrix.Scaling( scaleFactor, -scaleFactor, scaleFactor);
        world = scale.multiply(world);
        world = BABYLON.Matrix.RotationX(rotateX).multiply(world);
        world = BABYLON.Matrix.RotationY(rotateY).multiply(world);
        world = BABYLON.Matrix.RotationZ(rotateZ).multiply(world);
    };

const createScene =...