- 博客(81)
- 收藏
- 关注
原创 地理坐标系、投影坐标系、ECEF坐标系(地心地固坐标系)、ENU坐标系(站心坐标系)的区别
一种描述二维空间的坐标系,众所周知,地球不是规则球体、近似于椭球体,为了能较为准确的进行定位,人们将地球抽象成为一个规则的逼近原始自然地球表面的椭球体,称为参考椭球体,然后在参考椭球体上定义一系列的经线和纬线构成经纬网,从而达到通过经纬度来描述地表点位的目的。地理坐标系+投影函数,将曲面转换为平面,它是一种平面直角坐标系。
2024-06-03 19:19:16 1450
原创 C++ 函数前后使用 const 的作用
2、在函数后面使用const =0 (都是和virtual关键字同时使用的),表示是一个纯虚函数,拥有纯虚函数的类称为抽象类,不能进行实例化,但是可以创建指针和引用来指向子类。在函数后面添加const表示函数不可以修改class类的成员。在函数前面添加const表示返回值为const类型的变量;
2024-05-06 10:06:31 288
原创 12、虚幻引擎中的文件操作:获取当前文件夹下的子文件夹、根据后缀名获取当前文件夹下的所有文件
2、根据后缀名获取指定文件夹的所有文件。1、获取指定文件夹的所有子文件夹。
2024-04-28 11:31:30 221
原创 11、通过MeshDescription(FMeshDescription)构建RenderData(FStaticMeshRenderData)、通过RenderData构建UStaticMesh
这个方法实际就是UStaticMesh的实例方法BuildFromMeshDescription,但是进行了改动,改动部分主要是增加了MaterialIndex参数,原始方法是自动计算的,但是这里进行了指定,因为自动计算需要UStaticMesh参与,但是此时还没有UStaticMesh。实际上这个方法也是来自UStaticMesh的实例方法BuildRenderDataFromMeshDescriptions,但是进行了删减。实际上通过2)中的方法进行构建的。
2024-04-28 11:24:11 508
原创 10、将osg的Geometry转换为虚幻引擎的UStaticMesh
将osg::Geometry转换为FMeshDescription,通过FMeshDescription即可构建UStaticMesh,下面这段代码主要是为了转换倾斜摄影的osgb数据,但是倾斜摄影数据中本身不携带法线数据,也不需要计算法线,因此如果要转换其他携带或需要计算法线的osg::Geometry的数据,请另行将法线信息补充到FMeshDescription中。
2024-04-19 11:51:53 311 1
原创 9、osg的texture转换为虚幻引擎的UTexture2D
从osg::Texture中读取纹理图片,并动态转换为虚幻引擎的UTexture2D,不过这段代码只能转换图片格式为R8G8B8A8的纹理图片,其他格式请根据实际情况进行修改。
2024-04-19 11:46:20 322
原创 7、虚幻引擎在c++代码中获取视椎体平面、fov、视点和视椎体剔除
为什么没有far平面呢,跟踪源码可知,远平面并不是固定的是动态计算的,我目前的需求也不需要获取远平面。而且远平面也可以根据自己的需要动态指定。4、视椎体剔除(在osg坐标系下进行剔除(我把虚幻坐标转换为osg坐标了,我的需求就是这样,也可以在虚幻坐标系下进行剔除))3、获取视椎体的near、top、bottom、left、right的平面(透视相机)2、获取视点坐标(世界坐标系)和视口高度。
2024-04-19 11:37:25 228
原创 6、倾斜摄影的osgb数据坐标和虚幻引擎的世界坐标的互转
借助前面的方法已经得到了虚幻或osg的局部坐标下的坐标,同理,只要将局部坐标系的坐标原点(其在某个引擎的世界坐标系下的坐标)也转换到osg或虚幻引擎的坐标,即得到转换后的坐标原点(在另一个引擎的世界坐标下下的坐标),坐标原点+转换后的局部坐标=最终的转换后的世界坐标。局部坐标系下的坐标转换就是直接将osgb的顶点坐标转换为虚幻的坐标,但是两者都是在局部坐标下下的坐标,不同的是前者是osg引擎中的局部坐标系,后者是虚幻引擎的局部坐标。2、局部坐标系下的转换。3、世界坐标系下的转换。
2024-04-19 11:18:50 539
原创 5、“UStaticMesh::GetPhysicsTriMeshData: CPU data not available on selected LOD”
2、解决办法:FBuildMeshDescriptionsParams的bAllowCpuAccess属性设置的true。
2024-04-19 11:05:38 296
原创 GDAL开发教程(读取中文名文件、中文属性表、EPSG编码(PROJ.DB文件读取)、GDAL_DATA文件读取、矢量数据读取、常见对象的销毁与内存释放等)
【代码】GDAL开发教程(读取中文名文件、中文属性表、EPSG编码(PROJ.DB文件读取)、GDAL_DATA文件读取、矢量数据读取、常见对象的销毁与内存释放等)
2024-03-26 17:10:44 364
原创 4、C++开发时检测当前是否为虚幻编辑器状态及获取WorldContextObject
【代码】4、C++开发时检测当前是否为虚幻编辑器状态及获取WorldContextObject。
2024-03-14 16:43:27 461
原创 2、NewObject的三种原型(来自GPT)
1)Outer:该对象的外部对象,通常是父级对象。6)InInstanceGraph:对象的实例化图,用于指定对象实例化的图形上下文。6)InInstanceGraph:对象的实例化图,用于指定对象实例化的图形上下文;3)Flags:对象的标志,用于设置对象的状态,默认为RF_NoFlags;3)Flags:对象的标志,用于设置对象的状态,默认为RF_NoFlags;1)Outer:该对象的外部对象,通常是父级对象;1)Outer:该对象的外部对象,通常是父级对象;2)Name:对象的名称;
2024-03-12 15:53:44 649
原创 1、通过MeshDescription在运行时构建StaticMesh并设置碰撞、修改材质
虚幻5.3在运行时(Runtime)构建StaticMesh并为其设置碰撞和材质的方法
2024-03-08 15:58:51 1111 4
原创 Web地图服务规范之栅格瓦片地图服务:WMTS(WebMapTileService,网络地图瓦片服务)、TMS(TileMapService,瓦片地图服务)和XYZ
Web地图服务规范之栅格瓦片地图服务:WMTS(WebMapTileService,网络地图瓦片服务)、TMS(TileMapService,瓦片地图服务)和XYZ
2024-01-11 15:53:30 4627
原创 Unreal引擎自带的有用的工具函数和小Tips,持续更新中
2、计算FMeshDescription的切线、法线和简单UV等的函数。3、通过耳切法计算2D、3D多边形顶点索引。1、计算三角形法线、面积等的函数。
2023-11-21 13:42:41 240
原创 UE集成第三方库开发技巧、自定义第三方库输出路径
/ 添加头文件所在目录,并暴露给外部模块//添加导入文件//指定导入库的全路径名这样就不需要指定PublicRuntimeLibraryPaths的值了。//这步也可以指定导入库的文件名,但是就需要指定PublicRuntimeLibraryPaths的值了//添加动态库文件//如果PublicAdditionalLibraries中指定的是导入库文件名,则这里需要指定导入库路径。//程序启动后,按需加载dll,没有这段话则在程序一启动时就加载dll文件。
2023-10-17 11:33:11 1160
原创 接上篇《旋转矩阵的作用:世界坐标变换;求解局部坐标系下的局部坐标》,理解欧拉角:内旋;外旋;万向节死锁
欧拉角,动态欧拉角,静态欧拉角,内旋,外旋,万向节死锁
2023-03-08 17:04:34 1312
原创 js判断(==和===)的区别以及null、undefined、NaN等变量的判别方式
文章目录1、`==`和`===`的区别2、隐性类型转换规则3、几个实用的特殊的判断1、==和===的区别==代表相同,===代表严格相同使用==时,首先检查两个变量的数据类型,若相同,进行===判断,若不相同,则进行一次隐性类型转换,转换成相同类型后再进行===比较。使用===时,引用类型的比较是比较其地址值,即引用的地址是否相同,若不同则为false2、隐性类型转换规则(1)若==两边存在NaN,直接返回false(2)若==两边存在boolean类型的值,则转为Number类型(fals
2021-07-15 10:15:54 431
原创 Maven学习(2)-常用命令
命令作用mvn -version显示maven版本信息mvn clean清除target文件夹mvn compile编译源代码(编译src/main/java目录)mvn package项目打包成jar/war包mvn install将打包后的jar/war包复制到自己的本地仓库,供其他模块调用...
2021-07-07 11:18:53 89
原创 vue3.x新功能-笔记,更新中...
文章目录1、生命周期2、setup(1)参数(2)消失的this(3)获取store、route、router3、ref、isRef(1)ref(2)isRef4、reative、isReactive(1)reative(2)isReactive5、toRef6、toRefs7、readonly、isReadonly(1)readonly(2)isReadonly8、computed9、watch10、watchEffect11、Hook1、生命周期 vue2.
2021-06-11 17:24:38 677 1
原创 arcgis javascript 4.x加载天地图示例
<template> <div id="mapContainer" style="width: 100%; height: 100%"></div> <!-- <study-1></study-1> --></template><script>import '@arcgis/core/assets/esri/themes/light/main.css';import { defineCompon
2021-06-07 15:53:03 574
原创 vue3.x实践经验-1、mapState、mapGetters、mapMutations、mapActions
一边学习vue3.x,一边实践,最近在做项目时,使用computed引入store中state的数据时,总是觉得很麻烦,想起新版兼容2.x,就想着引入mapState,可是怎么用都不对劲。后来,突然间醒悟过来,<font color=red>**使用toRef或toRefs,就能实现mapState、mapGetters效果。**</font>1、示例代码...
2021-06-04 21:21:27 6194 5
原创 vscode相关设置--不定时更新中
1、vscode终端上的那个终止终端的按钮,就是长得像个小垃圾桶一样的按钮怎么突然不见了啊?你似乎是开启了新版的tabs模式的终端,新版的终端可以像浏览器标签页一样通过点击鼠标的滑轮来关闭终端,前提是你开了两个以上的终端才会显示出标签页,或者你去设置里面设置成一直显示标签页。当然,你也可以关闭tabs模式,那就会恢复原来的样式,设置里面搜索terminal.integrated.tabs.enabled,改成false即可作者:元极链接:https://www.zhihu.com/question/4
2021-06-04 10:36:25 170
原创 vue3.x学习笔记-2、windows环境下nginx的安装与反向代理
1、安装教程及nginx命令参考地址:https://blog.csdn.net/ForeverBana/article/details/1068504552、反向代理配置(1)前端部署在tomcat的fast文件夹下,端口号为8080,即前端项目的地址为:http://ip:8080/fast(2)打开conf文件下的nginx.conf文件server { listen 9999; # nginx自己的端口号 server_name ip:8080
2021-05-28 09:29:35 159
原创 vue3.x学习笔记-1、vue.config.js配置项说明(部分,不完整)
module.exports = { //路由的根路径, publicPath: '/fast', //打包后形成的文件夹名称 outputDir:'fast', productionSourceMap: false, // 设置为false,部署后控制台看不到.vue文件了 // 配置webpack打包 configureWebpack: (config) => { // 取消console打印 config.optimiz
2021-05-28 09:17:46 171
原创 8、servlet之过滤器、过滤器链
1、环境:idea 2020.1window 10java se 1.8.0_2712、目录结构3、web.xml<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="
2021-05-20 10:53:51 183
原创 7、servlet之请求转发vs请求重定向
1、环境:idea 2020.1window 10java se 1.8.0_2712、目录结构3、请求转发定义:客户端:访问servlet1,服务端:servlet1收到客户端请求后,servlet1去访问servlet21)Servlet1.javapackage com.serveletTest;import javax.servlet.RequestDispatcher;import javax.servlet.ServletException;import javax.s
2021-05-20 09:54:47 127
原创 6、servlet之HttpServletResponse
1、环境:idea 2020.1window 10java se 1.8.0_2712、目录结构3、HttpServletResponseTest.javapackage com.serveletTest;import javax.servlet.*;import javax.servlet.http.*;import javax.servlet.annotation.*;import java.io.IOException;import java.io.PrintWriter;
2021-05-20 09:43:15 76
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人