cesiumgs/cesiumjs-skills/cesiumjs-time-properties
Claude Code and agent skill by cesiumgs/cesiumjs-skills
- community
Checking that the SKILL.md file is still in the repository.
CesiumJS time, properties, and animation - Clock, JulianDate, TimeInterval, Property, SampledProperty, CallbackProperty, PathMode, interval and sampled path materials, interpolation, splines, CZML temporal data. Use when making entity attributes or path materials time-dynamic, configuring the simulation clock, interpolating positions, or working with sampled, interval, or callback properties.
Install
npx vskill@latest install cesiumgs/cesiumjs-skills/cesiumjs-time-propertiesSKILL.md
CesiumJS Time, Properties & Animation
Version baseline: CesiumJS v1.144
Covers the temporal data-binding layer: Clock/JulianDate time system, the Property hierarchy that makes entity attributes change over time, interpolation algorithms, splines, and material properties. Properties live here (not with Entities) because SampledProperty and CallbackProperty are meaningless without Clock/JulianDate. The Material class (Fabric) belongs in cesiumjs-materials-shaders.
JulianDate -- The Time Primitive
Stores whole days + fractional seconds separately for precision. Always uses TAI internally.
Clock -- Simulation Time Controller
The Viewer creates a Clock automatically. Configure it to control playback speed and bounds.
Manual clock advancement -- call viewer.clock.tick() to advance the clock by one frame outside the render loop (useful for setting up a mid-interval state before a screenshot):
| ClockRange | Behavior | |
|---|---|---|
UNBOUNDED | Advances forever in both directions | |
CLAMPED | Stops at start/stop time | |
LOOP_STOP | Wraps from stop back to start |
| ClockStep | Behavior | |
|---|---|---|
TICK_DEPENDENT | Each tick advances by multiplier seconds (frame-dependent) | |
SYSTEM_CLOCK_MULTIPLIER | Elapsed wall time x multiplier (default) | |
SYSTEM_CLOCK | Real-time; ignores multiplier |
TimeInterval & TimeIntervalCollection
Property System -- Time-Varying Values
Every entity attribute is a Property. CesiumJS calls property.getValue(time) each frame.
ConstantProperty
Returns the same value regardless of time. CesiumJS auto-wraps raw values, so explicit use is rare.
SampledProperty -- Interpolated Time Series
Stores discrete samples and interpolates. Type can be Number, Cartesian3, Color, or any Packable.
SampledPositionProperty -- Interpolated Positions
Specialized for Cartesian3 positions. Supports reference frames (ReferenceFrame.FIXED default, or INERTIAL).
For screenshot or evaluation scenes, a sampled path alone is often not enough. Add an obvious marker to the same moving entity (point, billboard, or model) so the current sample is recognizable at the clock's currentTime.
| Algorithm | Best For | Degree | |
|---|---|---|---|
LinearApproximation | Fast piecewise-linear | 1 (fixed) | |
LagrangePolynomialApproximation | Smooth curves from sparse samples | 1--9 | |
HermitePolynomialApproximation | Smooth curves with velocity derivatives | 1--9 |
CallbackProperty -- Computed on Demand
Evaluates a function every frame. Second argument (isConstant) must be false if value changes.
CompositeProperty -- Stitching Properties Over Time
Delegates to different sub-properties for different time ranges. Each interval's data is a Property.
VelocityOrientationProperty -- Auto-Orient Along Path
Computes Quaternion from a position property's velocity. Essential for vehicles and aircraft.
For robust visual recognition, do not rely only on an external model URI unless the asset is guaranteed to load. Pair the model with a point or billboard marker when the prompt expects the aircraft/satellite/vehicle itself to be visible.
ReferenceProperty -- Cross-Entity Binding
Links one entity's property to another by ID string ("entityId#propertyPath").
This is useful after loading CZML: keep the CZML-driven path in the data source, then add a normal viewer entity marker whose position references the CZML entity. That makes the current subject visible and easy to inspect without duplicating samples.
Material Properties
Control entity surface appearance. All options accept raw values or Property instances for time-dynamic behavior. Surface types: ColorMaterialProperty, ImageMaterialProperty, GridMaterialProperty, StripeMaterialProperty, CheckerboardMaterialProperty. Polyline types: PolylineArrowMaterialProperty, PolylineDashMaterialProperty, PolylineGlowMaterialProperty, PolylineOutlineMaterialProperty.
Segmented Path Materials (1.143+)
PathMode.WHOLE preserves the original behavior: the material evaluated at the current simulation time colors the entire visible path. Use PathMode.PORTIONS to keep past and future path portions colored by the material at each portion's time.
Prefer interval materials for discrete phases because Cesium splits only at the interval boundaries:
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/cesiumjs-time-properties/SKILL.md
Popularity
- Repository stars
- 75
- Repository forks
- 10
- 7-day trend score
- 22
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 28 May 2026, 5 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/cesiumgs/cesiumjs-skills/cesiumjs-time-properties)