pub struct MapHandleDiscarding<'a>(/* private fields */);Expand description
Submits MapHandle commands without a completion. Each call returns
the same acceptance status as its completing form, and native logs a
command that later fails as a warning through the log handler.
Implementations§
Source§impl MapHandleDiscarding<'_>
impl MapHandleDiscarding<'_>
Sourcepub fn add_custom_geometry_source(
&self,
source_id: &str,
options: CustomGeometrySourceOptions,
) -> Result<()>
pub fn add_custom_geometry_source( &self, source_id: &str, options: CustomGeometrySourceOptions, ) -> Result<()>
Adds a source whose GeoJSON tiles come from callbacks.
See mln_map_add_custom_geometry_source in the
C API reference.
Sourcepub fn add_custom_vector_source(
&self,
source_id: &str,
options: CustomVectorSourceOptions,
) -> Result<()>
pub fn add_custom_vector_source( &self, source_id: &str, options: CustomVectorSourceOptions, ) -> Result<()>
Adds a source whose vector tiles come from callbacks.
See mln_map_add_custom_vector_source in the
C API reference.
Sourcepub fn add_geo_json_source(
&self,
source_id: &str,
options: Option<&GeoJsonSourceOptions>,
attribution: Option<&str>,
) -> Result<()>
pub fn add_geo_json_source( &self, source_id: &str, options: Option<&GeoJsonSourceOptions>, attribution: Option<&str>, ) -> Result<()>
Adds a GeoJSON source with no data.
Give it data with MapHandle::set_geo_json_source_data() or
MapHandle::set_geo_json_source_url(). Its options stay fixed for as
long as the style holds it.
attribution is the source’s
[attribution](https://maplibre.org/maplibre-style-spec/sources/#attribution),
or empty for none.
See mln_map_add_geo_json_source in the
C API reference.
§Errors
Status::InvalidArgumentwhen an option inoptionsis out of range.
Sourcepub fn add_image_source_image(
&self,
source_id: &str,
coordinates: &[LatLng],
image: &PremultipliedRgba8Image<'_>,
) -> Result<()>
pub fn add_image_source_image( &self, source_id: &str, coordinates: &[LatLng], image: &PremultipliedRgba8Image<'_>, ) -> Result<()>
Adds an image source that shows image.
coordinates are the image’s four corners, clockwise from the top left.
See mln_map_add_image_source_image in the
C API reference.
Sourcepub fn add_style_layer_json(
&self,
layer_json: &str,
before_layer_id: Option<&str>,
) -> Result<()>
pub fn add_style_layer_json( &self, layer_json: &str, before_layer_id: Option<&str>, ) -> Result<()>
Adds a layer to the map’s style.
layer_json is a
[layer](https://maplibre.org/maplibre-style-spec/layers/) object. The
layer goes below the layer named before_layer_id, or above every layer
when before_layer_id is empty.
See mln_map_add_style_layer_json in the
C API reference.
Sourcepub fn add_style_source_json(
&self,
source_id: &str,
source_json: &str,
) -> Result<()>
pub fn add_style_source_json( &self, source_id: &str, source_json: &str, ) -> Result<()>
Adds a source to the map’s style.
source_json is a
[source](https://maplibre.org/maplibre-style-spec/sources/) object.
See mln_map_add_style_source_json in the
C API reference.
Sourcepub fn apply_camera_delta(&self, delta: &CameraDelta) -> Result<()>
pub fn apply_camera_delta(&self, delta: &CameraDelta) -> Result<()>
Moves the camera relative to where it is, as a gesture does.
delta can pan the map’s content by an offset on the screen, scale the
zoom, and add to the bearing and pitch. An anchor keeps one screen point
in place while the scale, bearing, or pitch changes. An anchor needs one
of those changes, and combines with an offset only when the delta has no
animation. The function finishes when the map applies the delta, before
an animation ends.
A delta that replaces an animated one starts from where that animation
left the camera, so the rest of the replaced change never happens. To
reach an exact camera, use MapHandle::update_camera().
A delta in the end phase can carry momentum, which keeps the camera
moving from the gesture’s release velocities and slows it on each
rendered frame. The gesture lasts until the momentum ends: the snapshot
keeps gesture_in_progress set, and camera events report
CameraChangeSource::Momentum. With momentum, animation sets only
transition_id and the end handler, which runs when the gesture ends.
A delta in the begin phase, MapHandle::cancel_camera_transitions(), or
a cancellation by that ID stops the momentum. A later command that sets
a field stops only the parts of the momentum that move that field. On a
tilted map, the pan moves the map’s content the same distance on the
screen in every direction.
See mln_map_apply_camera_delta in the
C API reference.
Sourcepub fn begin_command_group(&self) -> Result<()>
pub fn begin_command_group(&self) -> Result<()>
Holds back the map’s changes from rendering until
MapHandle::end_command_group(), so they show in the same frame.
Groups nest, and the changes render when the outermost group ends.
See mln_map_begin_command_group in the
C API reference.
Sourcepub fn cancel_camera_transitions(&self) -> Result<()>
pub fn cancel_camera_transitions(&self) -> Result<()>
Stops every running camera animation where it is.
The end handler of each stopped animation reports
CameraTransitionOutcome::Cancelled.
See mln_map_cancel_camera_transitions in the
C API reference.
Sourcepub fn cancel_camera_transitions_with_id(
&self,
transition_id: u64,
) -> Result<()>
pub fn cancel_camera_transitions_with_id( &self, transition_id: u64, ) -> Result<()>
Stops the running camera animations whose animation options set
transition_id.
Other animations keep running. The end handler of each stopped animation
reports CameraTransitionOutcome::Cancelled.
See mln_map_cancel_camera_transitions_with_id in the
C API reference.
Sourcepub fn dump_debug_logs(&self) -> Result<()>
pub fn dump_debug_logs(&self) -> Result<()>
Logs debugging information about the map’s style and sources.
See mln_map_dump_debug_logs in the
C API reference.
Sourcepub fn end_command_group(&self) -> Result<()>
pub fn end_command_group(&self) -> Result<()>
Ends the group that MapHandle::begin_command_group() began.
See mln_map_end_command_group in the
C API reference.
Sourcepub fn fit_camera_to_geometry(
&self,
geometry: &str,
update: &CameraFitUpdate,
) -> Result<()>
pub fn fit_camera_to_geometry( &self, geometry: &str, update: &CameraFitUpdate, ) -> Result<()>
Moves the camera to fit a GeoJSON geometry in the map’s view, at once or with an animation.
geometry is a GeoJSON geometry object with at least one coordinate,
not a feature. The camera is the one that
MapHandle::camera_for_geometry() computes after the commands sent
before this one apply. The function finishes when the map applies the
change, before an animation ends.
See mln_map_fit_camera_to_geometry in the
C API reference.
Sourcepub fn fit_camera_to_lat_lng_bounds(
&self,
bounds: LatLngBounds,
update: &CameraFitUpdate,
) -> Result<()>
pub fn fit_camera_to_lat_lng_bounds( &self, bounds: LatLngBounds, update: &CameraFitUpdate, ) -> Result<()>
Moves the camera to fit bounds in the map’s view, at once or with an
animation.
The camera is the one that MapHandle::camera_for_lat_lng_bounds()
computes after the commands sent before this one apply. The function
finishes when the map applies the change, before an animation ends.
See mln_map_fit_camera_to_lat_lng_bounds in the
C API reference.
Sourcepub fn fit_camera_to_lat_lngs(
&self,
coordinates: &[LatLng],
update: &CameraFitUpdate,
) -> Result<()>
pub fn fit_camera_to_lat_lngs( &self, coordinates: &[LatLng], update: &CameraFitUpdate, ) -> Result<()>
Moves the camera to fit coordinates in the map’s view, at once or with
an animation.
coordinates must not be empty. The camera is the one that
MapHandle::camera_for_lat_lngs() computes after the commands sent
before this one apply. The function finishes when the map applies the
change, before an animation ends.
See mln_map_fit_camera_to_lat_lngs in the
C API reference.
Sourcepub fn invalidate_custom_geometry_source_region(
&self,
source_id: &str,
bounds: LatLngBounds,
) -> Result<()>
pub fn invalidate_custom_geometry_source_region( &self, source_id: &str, bounds: LatLngBounds, ) -> Result<()>
Makes a custom geometry source ask again for the tiles in bounds that
the map still needs.
See mln_map_invalidate_custom_geometry_source_region in the
C API reference.
Sourcepub fn invalidate_custom_geometry_source_tile(
&self,
source_id: &str,
tile_id: CanonicalTileId,
) -> Result<()>
pub fn invalidate_custom_geometry_source_tile( &self, source_id: &str, tile_id: CanonicalTileId, ) -> Result<()>
Makes a custom geometry source ask for a tile again when the map needs it.
See mln_map_invalidate_custom_geometry_source_tile in the
C API reference.
Sourcepub fn invalidate_custom_vector_source_region(
&self,
source_id: &str,
bounds: LatLngBounds,
) -> Result<()>
pub fn invalidate_custom_vector_source_region( &self, source_id: &str, bounds: LatLngBounds, ) -> Result<()>
Makes a custom vector source ask again for the tiles in bounds that
the map still needs.
See mln_map_invalidate_custom_vector_source_region in the
C API reference.
Sourcepub fn invalidate_custom_vector_source_tile(
&self,
source_id: &str,
tile_id: CanonicalTileId,
) -> Result<()>
pub fn invalidate_custom_vector_source_tile( &self, source_id: &str, tile_id: CanonicalTileId, ) -> Result<()>
Makes a custom vector source ask for a tile again when the map needs it.
See mln_map_invalidate_custom_vector_source_tile in the
C API reference.
Sourcepub fn move_style_layer(
&self,
layer_id: &str,
before_layer_id: Option<&str>,
) -> Result<()>
pub fn move_style_layer( &self, layer_id: &str, before_layer_id: Option<&str>, ) -> Result<()>
Moves a layer of the map’s style below the layer named
before_layer_id, or above every layer when before_layer_id is empty.
See mln_map_move_style_layer in the
C API reference.
Sourcepub fn remove_feature_state(
&self,
selector: &FeatureStateSelector<'_>,
) -> Result<()>
pub fn remove_feature_state( &self, selector: &FeatureStateSelector<'_>, ) -> Result<()>
Removes the feature state that selector selects.
See mln_map_remove_feature_state in the
C API reference.
Sourcepub fn remove_style_image(&self, image_id: &str) -> Result<()>
pub fn remove_style_image(&self, image_id: &str) -> Result<()>
Removes an image from the map’s style.
See mln_map_remove_style_image in the
C API reference.
Sourcepub fn remove_style_layer(&self, layer_id: &str) -> Result<()>
pub fn remove_style_layer(&self, layer_id: &str) -> Result<()>
Removes a layer from the map’s style.
See mln_map_remove_style_layer in the
C API reference.
Sourcepub fn remove_style_source(&self, source_id: &str) -> Result<()>
pub fn remove_style_source(&self, source_id: &str) -> Result<()>
Removes a source from the map’s style.
See mln_map_remove_style_source in the
C API reference.
Sourcepub fn request_repaint(&self) -> Result<()>
pub fn request_repaint(&self) -> Result<()>
Renders a new frame of a continuous map, even when nothing changed.
See mln_map_request_repaint in the
C API reference.
Sourcepub fn resize(&self, logical_size: LogicalSize) -> Result<()>
pub fn resize(&self, logical_size: LogicalSize) -> Result<()>
Sets the map’s size.
A map with a render session takes its size from the session, so resize
the session with RenderSessionHandle::resize() instead.
See mln_map_resize in the
C API reference.
§Errors
Status::InvalidStatewhen the map has a render session.
Sourcepub fn set_bounds(&self, options: &BoundOptions) -> Result<()>
pub fn set_bounds(&self, options: &BoundOptions) -> Result<()>
Limits the camera’s center to an area, and its zoom and pitch to ranges.
Limits that options doesn’t set keep their current values. When the
camera is outside the new limits, it moves inside them.
See mln_map_set_bounds in the
C API reference.
Sourcepub fn set_custom_geometry_source_tile_data(
&self,
source_id: &str,
tile_id: CanonicalTileId,
data: &str,
) -> Result<()>
pub fn set_custom_geometry_source_tile_data( &self, source_id: &str, tile_id: CanonicalTileId, data: &str, ) -> Result<()>
Sets the data of a tile in a custom geometry source.
data is a GeoJSON feature collection, feature, or geometry. The source
ignores data for a tile that it hasn’t asked for, or has since
cancelled.
See mln_map_set_custom_geometry_source_tile_data in the
C API reference.
Sourcepub fn set_custom_geometry_source_tile_error(
&self,
source_id: &str,
tile_id: CanonicalTileId,
message: &str,
) -> Result<()>
pub fn set_custom_geometry_source_tile_error( &self, source_id: &str, tile_id: CanonicalTileId, message: &str, ) -> Result<()>
Reports that a tile of a custom geometry source failed to load.
See mln_map_set_custom_geometry_source_tile_error in the
C API reference.
Sourcepub fn set_custom_vector_source_tile_data(
&self,
source_id: &str,
tile_id: CanonicalTileId,
encoding: StyleVectorTileEncoding,
data: &[u8],
) -> Result<()>
pub fn set_custom_vector_source_tile_data( &self, source_id: &str, tile_id: CanonicalTileId, encoding: StyleVectorTileEncoding, data: &[u8], ) -> Result<()>
Sets the data of a tile in a custom vector source.
data is the tile, encoded as encoding. The source ignores data for a
tile that it hasn’t asked for, or has since cancelled.
See mln_map_set_custom_vector_source_tile_data in the
C API reference.
Sourcepub fn set_custom_vector_source_tile_error(
&self,
source_id: &str,
tile_id: CanonicalTileId,
message: &str,
) -> Result<()>
pub fn set_custom_vector_source_tile_error( &self, source_id: &str, tile_id: CanonicalTileId, message: &str, ) -> Result<()>
Reports that a tile of a custom vector source failed to load.
See mln_map_set_custom_vector_source_tile_error in the
C API reference.
Sourcepub fn set_debug_flags(&self, flags: MapDebugFlag) -> Result<()>
pub fn set_debug_flags(&self, flags: MapDebugFlag) -> Result<()>
Draws debugging overlays, such as tile borders, on the map.
flags replaces the overlays set before.
See mln_map_set_debug_flags in the
C API reference.
Sourcepub fn set_event_mask(&self, mask: RuntimeEventFlag) -> Result<()>
pub fn set_event_mask(&self, mask: RuntimeEventFlag) -> Result<()>
Selects the events that the map reports.
See mln_map_set_event_mask in the
C API reference.
Sourcepub fn set_feature_state(
&self,
selector: &FeatureStateSelector<'_>,
state: &str,
) -> Result<()>
pub fn set_feature_state( &self, selector: &FeatureStateSelector<'_>, state: &str, ) -> Result<()>
Merges state into the state of a feature.
state is a JSON object. Its keys replace the same keys in the
feature’s state, and the other keys stay.
See mln_map_set_feature_state in the
C API reference.
Sourcepub fn set_free_camera_options(&self, options: &FreeCameraOptions) -> Result<()>
pub fn set_free_camera_options(&self, options: &FreeCameraOptions) -> Result<()>
Places the camera at a position and orientation in space.
The map adjusts them to a camera that it can show. It stops running
camera animations first, and their end handlers report
CameraTransitionOutcome::Cancelled.
See mln_map_set_free_camera_options in the
C API reference.
Sourcepub fn set_geo_json_source_data(
&self,
source_id: &str,
data: &str,
) -> Result<()>
pub fn set_geo_json_source_data( &self, source_id: &str, data: &str, ) -> Result<()>
Replaces the data of a GeoJSON source.
data is a GeoJSON feature collection, feature, or geometry. The
library prepares it for the source with the source’s options, off the
threads that the caller and the runtime use, and the command completes
once the source holds it. Later commands don’t wait for it. While the
source is still preparing earlier data, only the newest data waits to
follow it.
With synchronous tiling on, as
MapHandle::set_geo_json_source_synchronous_tiling() describes, the
command prepares data before later commands run, so the data shows in
the next frame.
See mln_map_set_geo_json_source_data in the
C API reference.
Sourcepub fn set_geo_json_source_synchronous_tiling(
&self,
source_id: &str,
enabled: bool,
) -> Result<()>
pub fn set_geo_json_source_synchronous_tiling( &self, source_id: &str, enabled: bool, ) -> Result<()>
Sets whether a GeoJSON source builds its tiles while the map renders.
Building tiles while the map renders, instead of in the background,
makes new data show in the next frame. The setting replaces the
synchronousUpdate member of the source’s JSON, which defaults to
false.
See mln_map_set_geo_json_source_synchronous_tiling in the
C API reference.
Sourcepub fn set_geo_json_source_url(&self, source_id: &str, url: &str) -> Result<()>
pub fn set_geo_json_source_url(&self, source_id: &str, url: &str) -> Result<()>
Makes a GeoJSON source load its data from url.
See mln_map_set_geo_json_source_url in the
C API reference.
Sourcepub fn set_global_state_property(
&self,
property_name: &str,
value: &str,
) -> Result<()>
pub fn set_global_state_property( &self, property_name: &str, value: &str, ) -> Result<()>
Sets a value that the style’s global-state
[expressions](https://maplibre.org/maplibre-style-spec/expressions/)
read.
See mln_map_set_global_state_property in the
C API reference.
Sourcepub fn set_image_source_coordinates(
&self,
source_id: &str,
coordinates: &[LatLng],
) -> Result<()>
pub fn set_image_source_coordinates( &self, source_id: &str, coordinates: &[LatLng], ) -> Result<()>
Moves the image of an image source.
coordinates are the image’s four corners, clockwise from the top left.
See mln_map_set_image_source_coordinates in the
C API reference.
Sourcepub fn set_image_source_image(
&self,
source_id: &str,
image: &PremultipliedRgba8Image<'_>,
) -> Result<()>
pub fn set_image_source_image( &self, source_id: &str, image: &PremultipliedRgba8Image<'_>, ) -> Result<()>
Replaces the image of an image source.
See mln_map_set_image_source_image in the
C API reference.
Sourcepub fn set_image_source_url(&self, source_id: &str, url: &str) -> Result<()>
pub fn set_image_source_url(&self, source_id: &str, url: &str) -> Result<()>
Makes an image source load its image from url.
See mln_map_set_image_source_url in the
C API reference.
Sourcepub fn set_projection_mode(&self, options: &ProjectionModeOptions) -> Result<()>
pub fn set_projection_mode(&self, options: &ProjectionModeOptions) -> Result<()>
Sets whether the map draws in perspective or axonometric projection, and how much it skews the view.
Settings that options doesn’t set keep their current values.
See mln_map_set_projection_mode in the
C API reference.
Sourcepub fn set_rendering_stats_view_enabled(&self, enabled: bool) -> Result<()>
pub fn set_rendering_stats_view_enabled(&self, enabled: bool) -> Result<()>
Shows or hides an overlay of rendering statistics on the map.
See mln_map_set_rendering_stats_view_enabled in the
C API reference.
Sourcepub fn set_style_image(
&self,
image_id: &str,
image: &PremultipliedRgba8Image<'_>,
options: Option<&StyleImageOptions>,
) -> Result<()>
pub fn set_style_image( &self, image_id: &str, image: &PremultipliedRgba8Image<'_>, options: Option<&StyleImageOptions>, ) -> Result<()>
Adds an image to the map’s style, or replaces the image named
image_id.
See mln_map_set_style_image in the
C API reference.
Sourcepub fn set_style_json(&self, json: &str) -> Result<()>
pub fn set_style_json(&self, json: &str) -> Result<()>
Loads the map’s style from json.
The command completes once the style has parsed, and the map’s style is
then loaded, as MapHandle::set_style_url() describes. The style’s
sources, sprites, and glyphs load in the background.
See mln_map_set_style_json in the
C API reference.
Sourcepub fn set_style_layer_property(
&self,
layer_id: &str,
property_name: &str,
value: &str,
) -> Result<()>
pub fn set_style_layer_property( &self, layer_id: &str, property_name: &str, value: &str, ) -> Result<()>
Sets a property of a layer in the map’s style.
property_name is one of the layer’s layout or paint
[properties](https://maplibre.org/maplibre-style-spec/layers/), or
filter, minzoom, maxzoom, source, or source-layer. A null
value resets any of these but source and source-layer to its
default.
See mln_map_set_style_layer_property in the
C API reference.
Sourcepub fn set_style_light_json(&self, light_json: &str) -> Result<()>
pub fn set_style_light_json(&self, light_json: &str) -> Result<()>
Replaces the [light](https://maplibre.org/maplibre-style-spec/light/) of the map’s style.
See mln_map_set_style_light_json in the
C API reference.
Sourcepub fn set_style_light_property(
&self,
property_name: &str,
value: &str,
) -> Result<()>
pub fn set_style_light_property( &self, property_name: &str, value: &str, ) -> Result<()>
Sets a property of the light of the map’s style.
See mln_map_set_style_light_property in the
C API reference.
Sourcepub fn set_style_source_volatile(
&self,
source_id: &str,
is_volatile: bool,
) -> Result<()>
pub fn set_style_source_volatile( &self, source_id: &str, is_volatile: bool, ) -> Result<()>
Sets whether a source is volatile.
The map doesn’t store the tiles of a volatile source in the persistent cache.
See mln_map_set_style_source_volatile in the
C API reference.
Sourcepub fn set_style_transition_options(
&self,
options: &StyleTransitionOptions,
) -> Result<()>
pub fn set_style_transition_options( &self, options: &StyleTransitionOptions, ) -> Result<()>
Sets the default transition of the map’s style.
See mln_map_set_style_transition_options in the
C API reference.
Sourcepub fn set_style_url(&self, url: &str) -> Result<()>
pub fn set_style_url(&self, url: &str) -> Result<()>
Loads the map’s style from url.
The command completes once the style document has loaded and parsed. The style’s sources, sprites, and glyphs then load in the background.
The map’s style is loaded from the time a style document parses until
the next call to this function. While the style isn’t loaded, the
commands that change it complete with Status::InvalidState. To change
a new map’s style without a style document, first load an empty style,
such as {"version":8,"sources":{},"layers":[]}.
See mln_map_set_style_url in the
C API reference.
Sourcepub fn set_tile_options(&self, options: &MapTileOptions) -> Result<()>
pub fn set_tile_options(&self, options: &MapTileOptions) -> Result<()>
Sets how the map chooses which tiles to load, and at what detail.
Settings that options doesn’t set keep their current values.
See mln_map_set_tile_options in the
C API reference.
Sourcepub fn set_viewport_options(&self, options: &MapViewportOptions) -> Result<()>
pub fn set_viewport_options(&self, options: &MapViewportOptions) -> Result<()>
Sets how the map orients and constrains its view.
Settings that options doesn’t set keep their current values.
See mln_map_set_viewport_options in the
C API reference.
Sourcepub fn update_camera(&self, update: &CameraUpdate) -> Result<()>
pub fn update_camera(&self, update: &CameraUpdate) -> Result<()>
Moves the camera, at once or with an animation.
Camera fields that update doesn’t set keep their values, and the
update stops any running animation of the fields it sets. The function
finishes when the map applies the update, before an animation ends. To
learn when an animation ends, set an CameraTransitionHandler in its
animation options.
See mln_map_update_camera in the
C API reference.
Auto Trait Implementations§
impl<'a> Freeze for MapHandleDiscarding<'a>
impl<'a> RefUnwindSafe for MapHandleDiscarding<'a>
impl<'a> Send for MapHandleDiscarding<'a>
impl<'a> Sync for MapHandleDiscarding<'a>
impl<'a> Unpin for MapHandleDiscarding<'a>
impl<'a> UnsafeUnpin for MapHandleDiscarding<'a>
impl<'a> UnwindSafe for MapHandleDiscarding<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more