自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 地球空间坐标系转换常用公式

含义地球半长轴偏率第一偏心率平方​量纲米无无​对象类型a6378137fe22f−f2​​。

2025-04-18 16:14:05 885

原创 ImGui 50projects50days之二:ProgressSteps

【代码】ImGui 50projects50days之二:ProgressSteps。

2024-12-08 17:52:32 384

原创 ImGui 50projects50days之一:ExpandingCards

50projects50days是麻省理工学院搞的一个web前端开源项目,里面仅仅用html+css+js实现了各种前端页面效果。这个项目挺有参考价值的,和平台无关,不用原生的web前端也能做,刚好最近在研究ImGui,就给整一个,就从第一个案例ExpandingCards开始吧。如果在工程中使用的话还是尽量把组件封装成类,如果有条件有实力的话也可以基于命名空间使用函数式编程实现,这更符合ImGui的设计原则。

2024-11-27 11:55:03 239

原创 paint.net插件开发之二(番外篇之一):OpenCL.Net的若干坑

但是没有关系啊,反正到了内核里面它都认为是uint*,也都是32位的,没有问题。诶,这是因为在OpenCl主机代码里面创建buffer只能用IntPtr指针,连UIntPtr都不行(uint数组转换位IntPtr是可以的,后面会讲),它不是抛出异常,是直接闪退的那种,连日志都输出不了。有经验的程序员已经看出来了,这个程序有一定的问题,就是里面每个通道都占用了一个32位int,然而paint.net中的单通道数据其实只有一个字节。如果有四个通道就等于说这4。运行结果就不放了,反正是跑成功了,跟上次效果一样。

2024-11-15 17:59:51 384

原创 paint.net插件开发之二:在插件中集成OpenCL

好,现在我们已经生成完整的.net解决方案,我用的paint.net是5.0的,依赖于.net 7.0,但是写这篇文章的时候paint.net版本迭代到5.1了,5.1版本依赖的…OpenCL(Open Computing Language)是一种异构计算框架,可以在不同厂商的不同设备上执行并行计算任务,内核代码与c语言高度相似,网上的相关资料有很多,不做赘述,直接进入正题。这个内核的功能很简单,就是把区域全部涂红,其实完全不需要用opencl实现,这是为了教程展示才这么做的。右键解决方案窗口中的项目。

2024-11-14 17:00:00 252

原创 maplibre-native编译问题解决

编译出的maplibre中没有mbgl-core.dll,经检查后发现是依赖的第三方库unique_resource中缺少。导致部分编译目标报错中断。

2024-10-18 23:40:21 211

原创 osgearth编译踩坑

首先是用vcpkg安装osgearth,结果vcpkg安装的版本是3.4,到网上一查官方用例要3.5+版本才能跑起来。没辙,只要拉取git仓库老老实实编译,结果拉取的仓库是3.7版本的,估计是太新了,能跑但是看不到地球,编译信息抛出一堆expection,但就不说具体是什么错误。检查了一下,vcpkg安装的osg版本是3.6.5,应该要用匹配的3.6.X版本osgEarth才行,于是拉取3.6分支。即便是release版本也有问题,只是缺失的函数名变了,但还是有缺失函数。再次运行用例,结果运行时报错。

2024-10-17 13:23:09 373

原创 paint.net插件开发之一:Bitmap Effect

大约半年前就在研究paint.net的插件开发,主要是参考某个俄罗斯大佬的教程,这次尝试着写一下教程。

2024-09-08 16:26:37 657

原创 windows10系统不使用visual studio编译bgfx

编译bgfx源码时遇到了问题,因为我的电脑上没有装VS,而是通过Visual Studio Installer 2022下载的MSVC和WIN10SDK。然而bx仓库中的工具genie.exe参数中仅支持到vs2019。之后在Developer Command Prompt for VS2022中重新执行编译命令。编译卡住就Ctrl+C打断以后重新执行msbuild命令。目录下生成了vs2019项目,在。配置msvc编译环境的方法如。命令行窗口下进入该目录后执行。路径下就能看到编译结果了。

2024-09-07 14:19:21 420

原创 【GDExtension】自定义编辑器警告

我们都知道在官方原版给的一些组件里面,会有黄色三角提示“缺少XXX子节点”云云。GDExtension作为godot引擎的拓展模块,源代码部分对于godot编辑器是封闭的,这也符合软件设计的开闭原则。然而,当我们自定义的某个类需要依赖某个子节点时,我们缺乏有效的手段提示用户。在之前已经有同学探索了如何在GDScript中自定义警告,根据这位同学的思路我将该方法拓展到了GDExtension中并进行了验证。

2024-09-04 23:15:06 363

原创 GDExtension中注册信号函数遇到的问题

但这么做有问题,导入到godot编辑器当中以后,界面提示的的信号方法第二个参数类型就是INT而非枚举类型。查阅了源代码之后发现PropertyInfo方法中的PROPERTY_HINT_ENUM参数只在注册属性的时候有具体实现,在注册信号时是没有具体实现的。在注册信号的方法的时候,只有当参数的类型签名是Object的时候才能自定义在编辑器中的提示。在GDExtension中定义参数类型签名为int时,虽然实参类型使用枚举也可以类型转换为整型,但是这样做没有对参数类型进行严格约束,不符合设计原则。

2024-08-23 00:17:35 346

原创 在VSCode中调试GDExtension

本文中使用的Godot版本为github上的4.2.2稳定发行版。GDExtension使用实例见。

2024-08-13 02:14:21 383

原创 CentOS7编译OpenVPN2.5.10

【代码】CentOS7编译OpenVPN2.5.10。

2024-07-09 04:55:45 520

原创 武汉大学-遥感原理与应用笔记(持续更新)

收集资料方便:收集国外的一些影像,只能通过卫星,有国际公约(想购买、获得卫星影像只能获得自己国家或地区的影像),但自己的卫星可以收集国外影像。太阳(源头)-大气-地球表面(辐射、吸收)-大气-传感器(成像)-数据传输-地面站(数据处理)-分发-用户(处理、分析)-应用。编制成卫星星历表->输入卫星的时刻参数t->查卫星星历表->地理坐标XYZ。星历表->输入卫星的时刻参数t->查卫星星历表->地理坐标XYZ。人机对话->视窗式->构建式、集成化、固件化->集群式。目视分析->自动分类->专家系统。

2024-04-03 22:27:59 1311 1

原创 windows系统下编译quickjs总结

quickjs是一个轻量化的JavaScript解释器,能够支持ES6语法。不同于v8和nodejs几十M的体积,quickjs编译后只有几M大小,而且作为第三方库也只需要引用几个头文件和一个库文件,非常方便。可以将c语言代码块编译成动态链接库像一般的ES6 module一样在js代码中引用,有良好的封装性和性能表现。相比lua而言,JavaScript使用范围更广,资料和组件较多,对用户较为友好。

2023-09-21 18:17:19 1359 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除