map3d v0.6.0
Uma cidade em 3D fotorrealista renderizada pelo map3d, com o editor de desenho aberto por cima

Paris Google Photorealistic 3D Tiles 48.8584° N · 2.2945° E

React 19 · three.js ≥ 0.160 · ESM + CJS + types

Cartografia 3D
em tempo real
para React

Real-time 3D cartography for React.

Um motor Three.js imperativo que o React monta e depois deixa trabalhar. O MapEngine detém a câmera, os tiles e as camadas, então o loop de render nunca espera por um re-render.

npm i @pasquelin/map3d three react react-dom

Versão
0.6.0
Peers
react 19 · three ≥ 0.160
Build
ESM + CJS + .d.ts
Licença
PolyForm Noncommercial

Demos ao vivo

Experimente no navegador

Sem instalação nem chaves. As demos são compiladas a partir deste repositório a cada push e servidas direto pelo GitHub Pages.

Recursos

O que vem na caixa

Cada superfície — barra de ferramentas, controles, busca, retícula, clustering — é montada dentro de <Map> e governada por configuração. Você entra com os dados.

Em ação

As ferramentas, funcionando

Cada captura vem da demo que você pode abrir acima — nenhum mockup.

Primeiros passos

Um mapa com clusters em uma dúzia de linhas

import { Map, markersLayer, type MarkerData } from '@pasquelin/map3d'

type Alert = { title: string }

const alerts: MarkerData<Alert>[] = [
  { id: 1, type: 'critical', position: { lat: 48.8566, lng: 2.3522 }, title: 'Intrusion', data: { title: 'Intrusion' } },
  { id: 2, type: 'info', position: { lat: 48.8606, lng: 2.3376 }, title: 'Patrol', data: { title: 'Patrol' } },
]

export function App() {
  return (
    <div style={{ height: '100vh' }}>
      <Map
        center={{ lat: 48.8566, lng: 2.3522 }}
        zoom={13}
        layers={[markersLayer<Alert>({ points: alerts, cluster: { enabled: true } })]}
      />
    </div>
  )
}

Os plugins opcionais — IGN Géoplateforme, Windy, plantas de interiores — vivem em um repositório separado, e você pode escrever o seu com a API de plugins.