添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
乖乖的皮带  ·  ASP.NET 网页 (Razor) ...·  10 月前    · 
犯傻的水龙头  ·  Mac Android Studio 获取 ...·  1 年前    · 

Camera

Maps SDK的地图使用Mercator投影表示为平面。在东西轴线上,这张地图无缝地绕了无数次。由于地形图的底部和顶部可能无限地变大,并进一步扭曲地形图的两极,南北轴线在北纬90度和南纬90度左右被切断。考虑到这一点,引入相机对象来表示用户在地图上方的视角。

默认情况下,相机可以由用户或开发人员倾斜、旋转、缩放和/或移动。重要的是要知道,在不直接影响此行为的情况下,相机对象不会对您添加的标记、层的源或其他注释进行任何更改。

Maps SDK中提供了一些相机事件监听器,用于通知相机何时调整。您可以在 Events文档 中阅读关于这些侦听器的更多信息。

1. 相机位置

Maps SDK包含一个CameraPosition类,它由摄像机的目标、角度、缩放和倾斜组成。这些api形成了用户对地图块的透视图。

一个camera aposition对象可以改变相机对象的一个属性,比如缩放,或者它可以同时改变多个属性。例如,您可以编写代码让摄像机同时更改目标、缩小和倾斜:

CameraPosition position = new CameraPosition.Builder()
	.target(new LatLng(51.50550, -0.07520))
	.zoom(10)
	.tilt(20)
	.build();

注:您应该使用XML或通过MapboxMapOptions设置初始相机位置,以防止不必要的地图块下载,从而耗尽用户的数据。

目标是一个单一的经纬度坐标,相机以它为中心。改变相机的目标会将相机移动到输入的坐标。目标是一个LatLng对象。目标坐标始终位于视图的中心。

倾斜是相机从最低点(直接面对地球)的角度,使用单位角度。相机的最小(默认)倾斜度为0度,最大倾斜度为60度。倾斜水平使用六个小数点精度,这使您能够限制/设置/锁定地图的极端精度的轴承。

地图相机的倾斜也可以通过将两个手指放在地图上并同时上下移动手指来调整。

方位是相机指向的方向,从北顺时针角度测量。

相机的默认方位为0度(即正北方向),导致地图罗盘隐藏,直到相机方位变为非零值。mapbox_uiCompass的布尔XML属性 允许调整罗盘的可见性。轴承等级使用6个小数点精度,这使您能够限制/设置/锁定地图的极端精度的轴承。除了可编程地调整相机的方位外,用户还可以将两个手指放在地图上并旋转手指。

缩放控制地图的比例,并使用0到22之间的任何值。在缩放级别0时,viewport显示大洲和其他世界特性。中间值11将显示城市级别的详细信息,在更高的缩放级别,地图将开始显示建筑物和感兴趣的点。相机可以通过以下方式放大:

  • 捏动两个手指来放大和缩小。
  • 用一根手指快速地在地图上点击两次来放大。
  • 用一根手指快速地在地图上点击两次,在第二次点击后将手指按在屏幕上。然后向上滑动手指缩小,向下缩小。

2. 更新相机位置

Maps SDK中的 MapboxMap 类有几个方法可以改变相机的位置。每个相机移动API都接受一个 CameraUpdate 对象。您应该使用 CameraUpdateFactory 类来提供新的摄像机位置信息。 CameraUpdateFactory 可以构建几个不同的 CameraUpdate 对象,包括 newLatLngZoom()、zoomBy()、newLatLngBounds() 以及其他一些对象。CameraUpdate 中一个简单的方法是 newCameraPosition(),这是传递构建的 CameraPosition 的方法。

mapboxMap.animateCamera(CameraUpdateFactory.newCameraPosition(position), millisecondSpeed);

除了使用相机更新对象外,还可以添加一个 cancelable 回调函数,以知道动画何时完成,或者用户是否通过在地图上执行手势取消了相机的移动。 ease 和 animate api 有一个可选的持续时间参数(以毫秒为单位),允许您控制摄像机的动画持续时间。API具体内容

3. 获得相机当前位置

MapboxMap类的 getCameraPosition() 方法帮助您的代码理解地图的相机发生了什么,以及用户正在查看什么。该方法返回一个 CameraPosition 对象,一旦有了该对象,就可以获取并使用相机的目标、倾斜、缩放和方位值。例如, mapboxMap.getCameraPosition ()。缩放是您获取相机当前缩放值的方式。

4. 将相机置于地图区域的中心

就像相机可以被限制在一个区域(见下),相机也可以在地图区域内居中。首先,您需要一个定义好的 LatLngBounds 对象,该对象至少包含两个坐标。然后,您将能够使用 可用的 newLatLngBounds() API 更新摄像机位置,该API将获取您的边界框并调整视图端口,使指定的区域位于视图中。除了将包围框传递到相机更新工厂之外,还需要提供一个整数值,定义屏幕边缘和实际有界区域之间的填充。您还可以选择为框的每一侧提供不同的填充值。示例如下:

LatLngBounds latLngBounds = new LatLngBounds.Builder()
                    .include(first marker position)
                    .include(second marker position)
                    .build();
mapboxMap.animateCamera(CameraUpdateFactory.newLatLngBounds(latLngBounds, 10));

5. 将用户的平移限制在给定区域

MapboxMap类中的 setLatLngBoundsForCameraTarget 方法可以将地图相机限制在您想要的任何区域。如果向 LatLngBounds 对象提供至少两个 LatLng 对象/坐标,则会自动创建一个不可见的矩形,将摄像机限制在该区域内。

6. 相机和设备位置

如果您想了解更多关于相机控制及其在项目用户界面体验中的角色,请确保阅读Mapbox Location层组件提供的相机选项。(参照学习笔记(三)显示位置部分)

CameraMaps SDK的地图使用Mercator投影表示为平面。在东西轴线上,这张地图无缝地绕了无数次。由于地形图的底部和顶部可能无限地变大,并进一步扭曲地形图的两极,南北轴线在北纬90度和南纬90度左右被切断。考虑到这一点,引入相机对象来表示用户在地图上方的视角。默认情况下,相机可以由用户或开发人员倾斜、旋转、缩放和/或移动。重要的是要知道,在不直接影响此行为的情况下,相机对象不会对您... This is a public demo of the Mapbox Android SDK that's available now in the Google Play Store. It shows off all the examples found on mapbox.com/android-sdk/examples using the same code. In addition, the app also includes a section called labs which combines the examples to create more complex demos. To get started using Mapbox in your Android application check out the overview page. Steps to adding a new example Feedback and contribution is encouraged in this repo, if
如果对于Mapbox使用已经比较熟练的可以跳过本文。 本文是由于本人长时间没接触Mapbox,重新入手后,发现很多的东西的理解貌似没有以前那么深刻了,有些东西也和以前的理解有了偏差。 就比如我在第一章中提到的styleurl,我解释是地图风格,但是在仔细了解后,我发现并没有这么简单。 本文不讲解具体使用,主要是对各个参数,各个方法的重新理解。
Offline 通常,您可能会发现您的用户群大部分时间都不在网格上。Maps SDK允许您下载和存储预先选择的区域,以便在设备脱机时使用。下载地图的结果是使用下载区域内的style、tile和其他资源生成功能齐全的地图。 Offline Plugin 用户的设备并不总是有足够强大的互联网连接来下载和查看地图块。您可能想要在Android项目中构建一个离线模式来解释这种情况。Android的Mapb...
插件是建立在的之上的单一用途的库,您可以像任何其他Android依赖项一样将其包含在应用程序中 适用于AndroidMapbox插件 插件是建立在的之上的单一用途的库,您可以像任何其他Android依赖项一样将其包含在您的应用程序中。 您可以找到。 下面提供了当前插件的完整列表。 建筑物:以地图样式添加拉伸的“ 3D”建筑物。 离线:下载地图图块并管理下载区域,以解决用户设备没有互联网连接的情况。 地点:使用精美的用户界面将位置搜索添加到您的应用中。 本地化:让您的地图文字自动匹配设备的默认语言设置。 比例尺:提供视觉地图比例尺,供您的用户确定距离。 通过使用插件,您还必须包括适用于AndroidMapbox Maps SDK,这意味着您需要设置项目以使用Maps SDK(如果尚未使用)。 前往Maps SDK的概述页面以了解更多信息。 请注意,根据您
Mapbox Plugins for Android Plugins are single-purpose libraries built on top of the Mapbox Maps SDK for Android that you can include in your apps like any other Android dependency. You'll find documentation for each plugin on our Android documentation website. A full list of the current plugins is available below. Available Plugins
Mapbox Android演示应用 这是AndroidMapbox Maps SDK的公开演示。 该演示应用,并展示了许多示例,这些示例可在以下位置找到: 还有仅在应用程序中存在的示例。 该应用程序的“实验室”部分提供了一些示例,这些示例通常结合了各种Mapbox工具来创建更复杂的示例。 访问,开始在您的Android项目中使用适用于AndroidMapbox Maps SDK。 添加新示例的步骤 此回购鼓励反馈和贡献。 如果您希望看到一个新示例添加到应用程序中,请或自己创建,然后按照以下步骤打开一个拉取请求: 创建一个新的Java文件,并将其放置在可接受的文件夹( exampl
近期,应公司要求,开始接触MapBox For Android的开发。 经过初步的接触,发现MapBox与我之前使用的Arcgis有很多不同,相比起来,MapBox更清洁,更轻便,也更容易使用,但是相对的,MapBox相对于Arcgis缺少了很多的功能实现,许多的东西都需要自己去进行处理才能实现。 下面是我一步步接触并使用MapBox的记录,可能会比较乱。另外,由于是一步步的写下来了,可能前期
Android Mapbox是一个基于Mapbox地图平台的移动应用程序开发工具包,它提供了丰富的地图及位置服务功能。其中一个核心功能是地图符号(Glyphs),它能够在地图上表示各种地图标记和文字信息。 地图符号是指Mapbox地图上用于标注地点、显示文字和图形的符号。在Android Mapbox中,这些符号被设计成具有灵活性,并且可以轻松地调整属性。(如颜色、大小、字体等)。 Android Mapbox的地图符号功能包括标注点、文本标注、填充图案、线条样式等。它们都可以通过代码编写或者使用样式表文件进行设置。此外,Mapbox还提供了用于创建自定义地图符号的API,开发者可以通过API按照自己的需求来创建符号。 Android Mapbox的地图符号功能具有实时性,开发者可以通过代码实时修改符号的属性,如修改标注点的经纬度坐标,改变文本标注的文字内容等。这使得开发者能够迅速地对地图进行调整,以适应不断变化的需求。 综上所述,Android Mapbox的地图符号功能是实现地理信息展示和地图使用体验的重要一环,它为用户提供了更加丰富和全面的地图信息展示。同时,也为应用程序开发人员提供了丰富且易于使用的编程接口和工具,使得开发者可以快速实现符合自己需求的地图展示效果。
M·Joker: 你好,(node:4155) V8: /home/lanyajie/simple-vote-dapp-test/node_modules/solc/soljson.js:3 Invalid asm.js: Invalid member of stdlib (Use `node --trace-warnings ...` to show where the warning was created)。请问这个你是怎么解决的? MADDPG环境配置 ℳjokerい: 博主大大你好,请问一下怎么出图呢,绘制奖励和回合的曲线图 使用QGIS制作tif格式地图 孤独世界的黄桃: 复制个链接也能写原创?