map3d v0.6.0
Một thành phố 3D ảnh thực do map3d dựng, với trình vẽ đang mở bên trên

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

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

Bản đồ 3D
thời gian thực
cho React

Real-time 3D cartography for React.

Một engine Three.js mệnh lệnh mà React gắn vào rồi để yên cho nó chạy. MapEngine nắm giữ camera, các tile và các lớp, nên vòng lặp dựng hình không bao giờ phải chờ một lần render lại.

npm i @pasquelin/map3d three react react-dom

Phiên bản
0.6.0
Phụ thuộc ngang hàng
react 19 · three ≥ 0.160
Bản dựng
ESM + CJS + .d.ts
Giấy phép
PolyForm Noncommercial

Demo trực tiếp

Dùng thử ngay trên trình duyệt

Không cần cài đặt, không cần khoá. Các bản demo bên dưới được dựng từ kho này sau mỗi lần push và phục vụ thẳng từ GitHub Pages.

Tính năng

Những gì có sẵn

Mọi bề mặt — thanh công cụ, các nút điều khiển, tìm kiếm, lưới toạ độ, gom cụm — đều được gắn bên trong <Map> và điều khiển bằng cấu hình. Bạn chỉ thêm dữ liệu.

Đang vận hành

Bộ công cụ, lúc làm việc

Mỗi ảnh chụp bên dưới đều lấy từ chính bản demo bạn có thể mở ở trên — không có ảnh dựng.

Bắt đầu nhanh

Một bản đồ có gom cụm trong hơn chục dòng

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>
  )
}

Các plugin tuỳ chọn — IGN Géoplateforme, Windy, sơ đồ mặt bằng trong nhà — nằm ở một kho riêng, và bạn có thể tự viết bằng API plugin.