#![warn(missing_docs)]
#![cfg_attr(not(test), deny(clippy::unwrap_used))]
mod builder;
mod error;
mod handle;
#[cfg(feature = "terrain-rgb")]
mod terrain_sources;
pub use builder::MapBuilder;
pub use error::RustialError;
pub use handle::MapHandle;
#[cfg(feature = "terrain-rgb")]
pub use terrain_sources::{AwsTerrainSource, MapboxTerrainSource};
pub use rustial_engine::{
geo_to_tile,
geo_to_tile_checked,
geodesic_destination,
geodesic_destination_on,
geodesic_distance,
geodesic_distance_on,
tile_bounds_world,
tile_to_geo,
visible_tiles,
visible_tiles_checked,
visible_tiles_flat_view,
visible_tiles_flat_view_capped,
visible_tiles_flat_view_capped_with_config,
visible_tiles_flat_view_refined_capped,
visible_tiles_flat_view_with_config,
visible_tiles_lod,
ElevationGrid,
Ellipsoid,
Equirectangular,
FlatTileSelectionConfig,
FlatTileView,
Frustum,
GeoBounds,
GeoCoord,
GeodesicResult,
Globe,
Plane,
Projection,
TileCoord,
TileId,
VerticalPerspective,
VincentyConvergenceError,
WebMercator,
WorldBounds,
WorldCoord,
MAX_ZOOM,
PLANE_BOTTOM,
PLANE_FAR,
PLANE_LEFT,
PLANE_NEAR,
PLANE_RIGHT,
PLANE_TOP,
};
pub use rustial_engine::{
Camera, CameraAnimator, CameraConstraints, CameraController, CameraMode, CameraProjection,
EaseToOptions, FlyToOptions, InputEvent,
};
pub use rustial_engine::{
BackgroundLayer,
CallbackFrameProvider,
DynamicImageOverlayLayer,
FrameData,
FrameProvider,
FrameProviderFactory,
HillshadeLayer,
HillshadeParams,
ImageOverlayLayer,
Layer,
LayerId,
LayerStack,
ModelLayer,
TileLayer,
VectorLayer,
VectorMeshData,
VectorRenderMode,
VectorStyle,
};
pub use rustial_engine::{
circle_style_with_state,
fill_extrusion_style_with_state,
fill_style_with_state,
heatmap_style_with_state,
line_style_with_state,
symbol_style_with_state,
vector_style_with_state,
AmbientLight,
BackgroundStyleLayer,
CanvasSource,
CircleStyleLayer,
ClusterOptions,
ComputedLighting,
ComputedShadow,
ComputedSky,
DirectionalLight,
FillExtrusionStyleLayer,
FillStyleLayer,
FromFeatureStateProperty,
GeoJsonSource,
HeatmapStyleLayer,
HillshadeStyleLayer,
ImageSource,
LayerTransitionState,
LightConfig,
LightingMode,
LineStyleLayer,
MapStyle,
ModelSource,
ModelStyleLayer,
PointCluster,
RasterSource,
RasterStyleLayer,
ResolvedTransitions,
ShadowConfig,
SkyConfig,
SkyType,
StyleDocument,
StyleError,
StyleEvalContext,
StyleEvalContextFull,
StyleLayer,
StyleLayerId,
StyleLayerMeta,
StyleProjection,
StyleSource,
StyleSourceId,
StyleSourceKind,
StyleValue,
SymbolStyleLayer,
TerrainSource,
TransitionSpec,
Transitioning,
VectorStyleLayer,
VectorTileSource,
VideoSource,
};
pub use rustial_engine::{
BoolExpression, ExprEvalContext, Expression, NumericExpression, StringExpression,
};
pub use rustial_engine::{FitBoundsOptions, FitBoundsPadding, FrameOutput, MapState};
pub use rustial_engine::{
bearing, geometry_bbox, geometry_centroid, initial_bearing, interpolate_great_circle,
linestring_length, polygon_area, ring_area, simplify_douglas_peucker, simplify_polygon_ring,
stroke_line, triangulate_polygon, triangulate_polygon_with_holes, Feature, FeatureCollection,
Geometry, LineString, MultiLineString, MultiPoint, MultiPolygon, Point, Polygon, PropertyValue,
};
#[cfg(feature = "geojson")]
pub use rustial_engine::{parse_geojson, GeoJsonError};
#[cfg(feature = "shapefile")]
pub use rustial_engine::{parse_shapefile, ShapefileError};
pub use rustial_engine::{
DecodedImage, HttpTileSource, HttpVectorTileSource, PooledTileSource, RasterMipChain,
RasterMipLevel, TileCache, TileCacheEntry, TileData, TileDecoder, TileError, TileFreshness,
TileManager, TileManagerCounters, TilePixelRect, TileResponse, TileSelectionConfig,
TileSelectionStats, TileSource, TileTextureRegion, VectorTileData, VisibleTile, VisibleTileSet,
};
pub use rustial_engine::{FetchPool, HttpClient, HttpRequest, HttpResponse};
#[cfg(all(feature = "disk-cache", not(target_arch = "wasm32")))]
pub use rustial_engine::{DiskCache, DiskCacheError};
pub use rustial_engine::{TileJson, TileJsonError, TileScheme, VectorLayerMeta};
#[cfg(feature = "style-json")]
pub use rustial_engine::{parse_tilejson, parse_tilejson_value};
pub use rustial_engine::{decode_mvt, DecodedVectorTile, MvtDecodeOptions, MvtError};
pub use rustial_engine::{
build_terrain_mesh, prepare_hillshade_raster, ElevationSource, FlatElevationSource,
HttpElevationSource, PreparedHillshadeRaster, QuantizedMeshSource, TerrainConfig, TerrainError,
TerrainManager, TerrainMeshData, TerrainRgbEncoding,
};
pub use rustial_engine::{AltitudeMode, ModelInstance, ModelLoadError, ModelMesh};
#[cfg(feature = "wgpu-renderer")]
pub use rustial_renderer_wgpu::{RenderParams, TerrainInteractionBuffers, WgpuMapRenderer};
#[cfg(feature = "bevy-renderer")]
pub use rustial_renderer_bevy::{
backends_from_env, default_plugins, geo_to_vec3, MapStateResource, RustialBevyConfig,
RustialBevyPlugin, TerrainInteractionBuffersResource,
};
#[cfg(feature = "bevy-renderer")]
pub use rustial_renderer_bevy::components::{GeoAltitudeMode, GeoTransform, MapEntity};
pub use rustial_engine::{
GlyphAtlas, GlyphAtlasEntry, GlyphKey, GlyphProvider, GlyphRaster, ImageManager, PlacedSymbol,
ProceduralGlyphProvider, SpriteImage, SpriteSheet, SymbolAnchor, SymbolAssetDependencies,
SymbolAssetRegistry, SymbolCandidate, SymbolCollisionBox, SymbolPlacementConfig,
SymbolPlacementEngine, SymbolWritingMode,
};
pub use rustial_engine::{
geometry_intersects_bbox, FeatureState, FeatureStateId, GeoBBox, QueriedFeature, QueryOptions,
};
pub use rustial_engine::{
HitCategory, HitProvenance, NonPickableLayerKind, PickHit, PickOptions, PickQuery, PickResult,
PickableLayerKind,
};
pub use rustial_engine::{
InteractionButton, InteractionEvent, InteractionEventKind, InteractionModifiers,
InteractionTarget, InteractionTargetKind, PointerKind, ScreenPoint,
};
pub use rustial_engine::{InteractionConfig, InteractionManager};
pub use rustial_engine::{EventEmitter, ListenerId};
pub use rustial_engine::{
ColorRamp, ColorStop, ColumnInstance, ColumnInstanceSet, ExtrusionParams, GeoGrid,
GridExtrusionLayer, GridScalarLayer, InstancedColumnLayer, LabeledStop, LegendSpec,
NormalizationMode, PointCloudLayer, PointInstance, PointInstanceSet, ScalarField2D,
VisualizationOverlay,
};
pub use rustial_engine::{
partition_features_by_tile, AsyncVisualizationPipeline, DataTaskPool, DataTaskResultReceiver,
TerrainCacheKey, TerrainTaskInput, TerrainTaskOutput, ThreadDataTaskPool, VectorBucketKey,
VectorCacheKey, VectorTaskInput, VectorTaskOutput, VisualizationTaskOutput,
};