Cesium Utils - v0.3.2
    Preparing search index...

    Cesium Utils - v0.3.2

    Cesium Utils

    GitHub npm version License: MIT Documentation

    Build Status Changelog

    TypeScript utility library for Cesium.js providing hybrid terrain providers, entity collection tagging, and visual highlighting systems.

    Note: The HybridTerrainProvider from this library is being integrated into Cesium Core (#12822).

    📚 Documentation📦 NPM▶️ Demo

    npm install @juun-roh/cesium-utils cesium
    

    Combine multiple terrain providers for different geographic regions using tile coordinates:

    import { HybridTerrainProvider } from "@juun-roh/cesium-utils";

    const tiles = new Map();
    tiles.set(13, { x: [13963, 13967], y: [2389, 2393] });

    const terrainProvider = new HybridTerrainProvider({
    regions: [{
    provider: await CesiumTerrainProvider.fromUrl("custom-terrain-url"),
    tiles
    }],
    defaultProvider: worldTerrain
    });

    viewer.terrainProvider = terrainProvider;

    Tagged entity collections with filtering capabilities:

    import { Collection } from "@juun-roh/cesium-utils";

    const buildings = new Collection(viewer.entities, "buildings");
    buildings.add({ position: coords, model: buildingModel });
    buildings.show = false; // Hide all buildings

    Visual highlighting with silhouette and surface effects:

    import { SilhouetteHighlight } from "@juun-roh/cesium-utils";

    const highlight = new SilhouetteHighlight(viewer, {
    color: Color.YELLOW,
    size: 2.0
    });
    highlight.add(selectedEntity);
    Module Description
    HybridTerrainProvider Combine multiple terrain providers by geographic region
    Collection Tagged entity collections with filtering
    SilhouetteHighlight Silhouette highlighting effects
    SurfaceHighlight Surface glow highlighting effects
    cloneViewer Duplicate viewer configurations
    syncCamera Synchronize cameras between viewers
    // Tree-shakable imports (recommended)
    import { HybridTerrainProvider } from "@juun-roh/cesium-utils/terrain";
    import { Collection } from "@juun-roh/cesium-utils/collection";
    import { SilhouetteHighlight } from "@juun-roh/cesium-utils/highlight";

    // Main package imports
    import { Collection, HybridTerrainProvider, SilhouetteHighlight } from "@juun-roh/cesium-utils";
    pnpm install  # Install dependencies
    pnpm build # Build library
    pnpm test # Run tests
    pnpm dev # Start demo server

    Additional utilities for advanced usage:

    import { Deprecate, TerrainVisualizer, isGetterOnly } from "@juun-roh/cesium-utils/dev";
    

    ⚠️ Warning: Experimental features use Cesium's internal APIs and may break in future versions.

    import Sunlight from "@juun-roh/cesium-utils/experimental/sunlight";

    const sunlight = new Sunlight(viewer);
    const result = sunlight.analyze(point, JulianDate.now());

    MIT © Juun