Blender中使用BlenderGIS插件快速生成城市建筑模型
导入下载 BlenderGIS 插件去github上下载其压缩包,地址如下: https://github.com/domlysz/BlenderGIS 在BlenderGIS中导入这个插件压缩包: 点击上方菜单栏的编辑,点击偏好设置 在插件>从磁盘安装中导入刚刚下载的压缩包 可以看到上方的菜单栏出现了GIS选项,这就说明插件导入成功了 但是若你想使用,会发现弹出一个报错:No imaging library available. ImagelO module was not correctly installed. 网上给出的一个比较可行的方法是:进入blender的文件夹,在python/bin/的文件目录下cmd,输入命令安装imageio: 1python.exe -m pip install imageio 影像数据点击GIS插件,选中Web geodata>Basemap, 我这里使用的是国产的天地图,不过这需要额外配置,具体操作可以看这篇文章:Blender关于GIS插件的安装及使用和天地图的配置 -...
geoserver使用教程(一)——发布一个简单的地图服务
文章同步更新于我的个人博客:松果猿的博客,欢迎访问获取更多技术分享。 同时,您也可以关注我的微信公众号:松果猿的代码工坊,获取最新文章推送和编程技巧。 若没有安装geoserver可以看本人写的这篇文章:geoserver安装部署 首先启动geoserver,新建一个工作空间,工作空间>添加新的工作空间: 填写要新建的工作空间相关的Name和命名空间URL(这里命名空间不是要填实际的URL地址嗷,只是起一个唯一的标识符的作用,随便填什么都行),然后点击保存: 属性 描述 名称 工作区的名称,必填项。 命名空间URI 命名空间URI与这个工作区关联; 是否默认 是否将这个工作区设置为默认工作区,默认工作区只能有一个。 是否隔离 是否将这个工作区设置为隔离工作区,隔离工作区不能被其他工作区访问。 现在再来添加一个数据源,点击存储仓库>添加新的存储仓库: 如下所示,可以看到可以添加许多数据类型,矢量和栅格,甚至可以选择其他地图服务: 这里就选择Directory of spatial...
IDEA创建一个spingboot项目
以下是创建一个基本的 Spring Boot 项目的步骤和示例: 初始化一个springboot工程其实有许多方法,笔者这里挑了一个最快捷的方式搭建一个项目。我们直接通过官方平台(start.spring.io)进行配置,然后下载压缩包就可以获取到spingboot初始化工程了 不过直接在IDEA里配置更快一点,下面进行演示 来到IDEA新建一个项目 其服务器URL推荐选择阿里云镜像平台(start.aliyun.com) 基本信息描述完毕之后,勾选web开发相关依赖,只要勾选Spring Web就好啦 项目创建完后的目录结构 123456789101112src├── main│ ├── java│ │ └── com│ │ └── example│ │ └── demo│ │ ├── DemoApplication.java // 应用程序的主入口类│ └── resources│ ├── application.properties //...
开发一个前后端分离的webgis城市共享单车投放管理系统(2)
文章同步更新于我的个人博客:松果猿的博客,欢迎访问获取更多技术分享。 同时,您也可以关注我的微信公众号:松果猿的代码工坊,获取最新文章推送和编程技巧。 前言上一期我们将这个系统的前端部分的大致框架构建好了,现在我们继续后续的开发任务 加载南京geojson文件加载本地geojson文件,在asset下添加/data/nanjing.json,这里推荐一个网站进行地图格式转换:https://mapshaper.org/。通过如下方法进行加载: 导入json文件: 添加一个矢量图层用于加载南京geojson文件 这样南京矢量边界就添加上去了 实现绘制点线面功能地图菜单栏和地图怎么实现通信呢,我们用pinia 新建@/stores/mapStore.js,用于绘制操作的状态管理 @/stores/mapStore.js 123456789101112131415161718192021import { defineStore } from 'pinia';export const useMapStore =...
开发一个前后端分离的webgis城市共享单车投放管理系统(1)
文章同步更新于我的个人博客:松果猿的博客,欢迎访问获取更多技术分享。 同时,您也可以关注我的微信公众号:松果猿的代码工坊,获取最新文章推送和编程技巧。 之前一篇文章openlayers学习(一)还是今年四月份写的,搁置了许久,这个文章就当作那个系列的后文吧 项目初始化 这个项目严格意义上来说是一个课程作业,不过老师还让我们用html+juery来写,诶呀,实在在原始了好吧,不是说这种方式不好(跟着老师的方法写了一遍,可能是我react...
开发一个前后端分离的webgis城市共享单车投放管理系统(3)
文章同步更新于我的个人博客:松果猿的博客,欢迎访问获取更多技术分享。 同时,您也可以关注我的微信公众号:松果猿的代码工坊,获取最新文章推送和编程技巧。 前言上期文章我们实现了绘制功能和高亮弹窗显示,现在我们来开发地点标注功能 前端界面搭建一般来说不应该先写后端再写前端吗,啊啊啊无所谓我想怎么写怎么写 大致想一下UI界面: 好吧有点简陋,不过无所谓了,切图仔开工!nb的切图仔从来不需要UI图,直接在脑子画UI图 将上图的@/components/MapControl.vue中的菜单栏对象改为下图,上图只是测试效果的假数据,这次我们将地点标注功能放在在这里 新建@/components/Container.vue,这里...
Three.js的学习(2)—— Three.js 的一些关键特性
文章同步更新于我的个人博客:松果猿的博客,欢迎访问获取更多技术分享。 同时,您也可以关注我的微信公众号:松果猿的代码工坊,获取最新文章推送和编程技巧。 记录本人three.js的学习之路 官网:Three.js – JavaScript 3D Library 中文教程:Three.js中文网 Github:mrdoob/three.js: JavaScript 3D Library. 在 上一篇文章【Three.js的学习(1)】里,我们已经创建了一个基本的场景。 下面我们对three.js每个特性做一个大致的了解 1. 场景(Scene)场景是一个容器对象,可以包含物体、摄像机、灯光和渲染器。 操作 代码 说明 创建场景 const scene = new THREE.Scene(); 创建一个3D场景容器 获取场景中的对象 scene.getObjectByName('cube'); 通过名称查找场景中的对象 遍历场景对象 scene.traverse(function(obj)...
Three.js的学习(1)——创建一个初始工程
文章同步更新于我的个人博客:松果猿的博客,欢迎访问获取更多技术分享。 同时,您也可以关注我的微信公众号:松果猿的代码工坊,获取最新文章推送和编程技巧。 记录本人three.js的学习之路 官网:Three.js – JavaScript 3D Library 中文教程:Three.js中文网 Github:mrdoob/three.js: JavaScript 3D Library. 前言:Three.js其实也不是我才开始接触,之前做过一个参赛项目就用到了three.js技术,但是除了three.js,还有许多其他优秀的Web3D技术解决方案,比如说Babylon.js。最近Babylon.js也在雄起,大有赶超three.js之势,不过目前最普及受众最广的还是three.js Three.js资源包:直接去github上下载 12345678910111213目录信息:three.js-文件包└───build——three.js相关库,可以引入你的.html文件中。 │└───docs——Three.js API文档文件 ...
我用three.js实现了一个简单的Minecraft
文章同步更新于我的个人博客:松果猿的博客,欢迎访问获取更多技术分享。 同时,您也可以关注我的微信公众号:松果猿的代码工坊,获取最新文章推送和编程技巧。 记录本人three.js的学习之路 官网:Three.js – JavaScript 3D Library 中文教程:Three.js中文网 Github:mrdoob/three.js: JavaScript 3D...