当前位置: 首页 > news >正文

宁夏建设厅招标网站做拍卖网站

宁夏建设厅招标网站,做拍卖网站,西安网站建设xamokj,湖州网站建设策划有时候我们只有二维的面数据#xff0c;怎么实现类似高德地图中的白膜立体建筑呢#xff1f;在mapbox-gl中很容易实现#xff0c;具体如下。 要在Vue中结合Mapbox显示自定义的GeoJSON数据#xff0c;并实现建筑物的白膜效果#xff0c;我们需要执行以下步骤#xff1a; …有时候我们只有二维的面数据怎么实现类似高德地图中的白膜立体建筑呢在mapbox-gl中很容易实现具体如下。 要在Vue中结合Mapbox显示自定义的GeoJSON数据并实现建筑物的白膜效果我们需要执行以下步骤 安装Mapbox GL JS创建Vue组件并加载Mapbox地图添加自定义GeoJSON数据源设置fill-extrusion图层来渲染建筑物设置样式以实现白膜效果 1. 安装Mapbox GL JS 首先需要安装 mapbox-gl 包 npm install mapbox-gl2. 创建Vue组件 在Vue组件中我们将配置并初始化Mapbox地图。 templatediv refmapContainer classmap-container/div /templatescript import mapboxgl from mapbox-gl; import mapbox-gl/dist/mapbox-gl.css;export default {name: MapComponent,data() {return {map: null, // 地图实例geojsonData: {type: FeatureCollection,features: [{type: Feature,geometry: {type: Polygon,coordinates: [[[118.997, 40.730],[118.996, 40.731],[118.995, 40.730],[118.996, 40.729],[118.997, 40.730]]]},properties: {height: 100, // 建筑物的高度min_height: 10, // 建筑物的最小高度}}]}};},mounted() {this.initMap();},methods: {initMap() {mapboxgl.accessToken your_mapbox_access_token_here; // 替换为您的Mapbox访问令牌// 初始化地图this.map new mapboxgl.Map({container: this.$refs.mapContainer,style: mapbox://styles/mapbox/streets-v11, // 使用Mapbox默认样式center: [118.995, 40.730], // 初始视角zoom: 15, // 初始缩放级别});// 在地图加载完成后添加自定义的GeoJSON数据this.map.on(load, () {// 添加GeoJSON数据源this.map.addSource(custom-buildings, {type: geojson,data: this.geojsonData, // 使用自定义的GeoJSON数据});// 添加建筑物层白膜效果this.map.addLayer({id: 3d-buildings,type: fill-extrusion,source: custom-buildings,paint: {fill-extrusion-color: #ffffff, // 设置白膜颜色fill-extrusion-opacity: 0.6, // 设置透明度fill-extrusion-height: [get, height], // 高度设置fill-extrusion-base: [get, min_height], // 基础高度}});// 可选设置光源让建筑物更具立体感this.map.setLight({anchor: viewport,color: #ffffff,intensity: 0.8,});});}},beforeDestroy() {if (this.map) {this.map.remove();}} }; /scriptstyle scoped .map-container {width: 100%;height: 100vh; } /style3. 代码解释 Mapbox初始化 使用Mapbox GL JS在mounted钩子中初始化地图并指定地图容器、样式、中心点和缩放级别。 自定义GeoJSON数据 自定义的建筑物数据存储在geojsonData对象中其中每个建筑物都有height和min_height属性分别表示建筑物的高度和最小高度。 添加GeoJSON数据源 在地图加载后我们通过 map.addSource 添加自定义的GeoJSON数据源并通过fill-extrusion类型的图层展示建筑物。 白膜效果 使用fill-extrusion-color设置建筑物的颜色为白色。使用fill-extrusion-opacity设置透明度。使用fill-extrusion-height和fill-extrusion-base分别设置建筑物的实际高度和基础高度。 光照效果 使用map.setLight调整光源使建筑物呈现更具立体感的效果。 4. 运行效果 地图显示中心会在[ 118.996, 40.730 ]处并加载自定义的GeoJSON数据。该GeoJSON数据表示一个建筑物其高度为100米最小高度为10米。建筑物会呈现白色的透明效果即白膜效果并根据设置的光照和透明度显示。 5. 可选的增强 动态添加和更新数据 如果您需要动态更新GeoJSON数据您可以通过 map.getSource(custom-buildings).setData(newGeojsonData) 来更新数据源。 交互 可以在地图上添加交互功能例如点击建筑物时高亮显示或弹出详细信息框。 多建筑物支持 GeoJSON数据中可以包含多个建筑物只需在 geojsonData.features 中添加多个建筑物对象即可。 总结 这段代码展示了如何在Vue中结合Mapbox GL JS和自定义GeoJSON数据渲染建筑物并实现白膜效果想要更复杂的样式可以通过表达式来设置。
http://www.w-s-a.com/news/998703/

相关文章:

  • 网上商城开发网站建设宣传网站设计
  • 免费的开源网站wordpress建站不好用
  • 陕西建设厅人才网站ai生成logo免费
  • 建设家居网站村建站什么部门
  • 网站建设+青海龙岗区网站建设
  • 精品课网站建设网络公司名字怎么取
  • 化工网站制作用户体验设计案例
  • 如何在微信公众平台上建立微网站垂直门户网站怎么做
  • 关于销售网站有哪些内容品牌网站建设小科6a蚪
  • 免费制作网站平台哪个好湖南企业建网站
  • 灞桥微网站建设株洲百姓网
  • 儿童网站建设互联网怎么学
  • 重庆建网站的公司集中在哪里中煤第五建设有限公司网站
  • 成都网站建设987net运维需要掌握哪些知识
  • 网站建设师个人简介怎么写WordPress头像美化插件
  • 网站优化知识销售管理系统c语言
  • 桂林市网站设计厦门自己建网站
  • 网站seo哪里做的好东莞做网站优化的公司
  • 休闲采摘园网站建设政务公开和网站建设工作的建议
  • 长沙网站建设哪个公司好PHP amp MySQL网站建设宝典
  • 代码编辑器做热点什么网站好湛江网站建设哪家好
  • php网站开发概念网站开发岗位职责任职责格
  • asp 网站源码 下载西安自适应网站建设
  • 白领兼职做网站贵阳网站设计哪家好
  • 热水器网站建设 中企动力企业网站开发需要多钱
  • 北京市建设工程信息网交易网站静态网页模板免费下载网站
  • 福田欧曼服务站网站前台设计
  • 网站做系统叫什么软件吗注册域名需要实名认证吗
  • jsp网站开发教学视频ui设计风格
  • 注册网站建设开发怎么自己做导航网站