Installation Guide
This guide will help you quickly install and configure the DMap3D SDK.
Requirements
- Node.js >= 16 (for npm method)
- Modern browser (Chrome >= 90, Firefox >= 90, Safari >= 15, Edge >= 90)
- Cesium >= 1.112.0
Method 1: npm Installation (Recommended)
Suitable for projects using build tools like Vite or Webpack.
Installation
npm install dmap3d cesium
Or using yarn / pnpm:
yarn add dmap3d cesium
# or
pnpm add dmap3d cesium
Usage
import { DMap3D } from 'dmap3d'
import * as Cesium from 'cesium'
import 'cesium/Build/Cesium/Widgets/widgets.css'
// Create Viewer
const viewer = new Cesium.Viewer('cesiumContainer')
// Area measurement
const areaTool = new DMap3D.measurement.area(viewer)
areaTool.activate()
// Viewshed analysis
const viewshedTool = new DMap3D.analysis.viewshed(viewer)
viewshedTool.activate()
// Point drawing
const pointTool = new DMap3D.drawing.point({ viewer })
pointTool.draw()
Vite Project Configuration
If using Vite, it is recommended to install vite-plugin-cesium to simplify Cesium resource configuration:
npm install vite-plugin-cesium -D
// vite.config.ts
import { defineConfig } from 'vite'
import cesium from 'vite-plugin-cesium'
export default defineConfig({
plugins: [cesium()]
})
tip
vite-plugin-cesium automatically handles the copying of Cesium static resources (Workers, Assets, Widgets), so no manual configuration is needed.
Method 2: CDN / UMD Import
Suitable for projects that do not use build tools, imported directly via <script> tags.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>DMap3D Application</title>
<!-- 1. Include Cesium -->
<script src="https://unpkg.com/cesium/Build/Cesium/Cesium.js"></script>
<link rel="stylesheet" href="https://unpkg.com/cesium/Build/Cesium/Widgets/widgets.css">
<!-- 2. Include DMap3D SDK -->
<script src="https://unpkg.com/dmap3d/dmap3d.umd.cjs"></script>
<style>
html, body, #cesiumContainer {
width: 100%; height: 100%; margin: 0; padding: 0; overflow: hidden;
}
</style>
</head>
<body>
<div id="cesiumContainer"></div>
<script>
const viewer = new Cesium.Viewer('cesiumContainer')
// Use DMap3D tools
const { DMap3D } = window.DMap3D
const areaTool = new DMap3D.measurement.area(viewer)
areaTool.activate()
</script>
</body>
</html>
tip
The DMap3D UMD file must be loaded after Cesium, because the SDK depends on the Cesium global variable.
Module Overview
After installation, you can use all the following modules:
| Module | Namespace | Tool Count | Description |
|---|---|---|---|
| Measurement Tools | DMap3D.measurement | 10 | Distance, area, height, angle, slope, azimuth |
| Analysis Tools | DMap3D.analysis | 11 | Viewshed, contour lines, profile, skyline, buffer, etc. |
| Drawing Tools | DMap3D.drawing | 4 | Point, line, polygon, circle |
| Military Plotting | DMap3D.military | 14 | Arrows, flags, tactical areas |
| Basemap Services | DMap3D.basemap | 4 | XYZ, WMTS, WMS, GeoJSON |
| Terrain | DMap3D.terrain | 6 | Cesium Ion, ArcGIS, custom terrain |
| 3D Tiles | DMap3D.tiles3d | 1 | Oblique photography, BIM, point clouds |
Verify Installation
Enter the following in the browser console to verify successful loading:
console.log('Cesium version:', Cesium.VERSION)
console.log('DMap3D loaded:', !!window.DMap3D)
Next Steps
- Create Your First App - Build your first 3D application with DMap3D
- Basic Concepts - Learn the core concepts of DMap3D