我的工具
文章平均质量分 84
一些自己做的小工具
YakSue
这个作者很懒,什么都没留下…
展开
-
使用Python调用ImageMagick将序列帧生成GIF
目标使用Python来调用ImageMagick,将文件夹内所有的图片作为序列帧合并为一个GIF。我事先使用Blender渲染了一组图片(操作很简单, 可见《尝试在blender中渲染一个最简单的动画》)1. 使用ImageMagick将序列帧生成GIF最基础的命令是比较简单的:convert 第1帧图片 第2帧图片 ...第n帧图片 结果GIFAnimation Basics – IM v6 Examples 中有更详细的参数与范例,比如在GIF之前可以写上每帧的时间:-set del原创 2021-10-16 12:42:01 · 1556 阅读 · 0 评论 -
小工具:输出Houdini里节点间参数的差别
需求节点的参数影响了节点的行为。因此对于节点使用者来说,比较节点间参数的差异就可以明白其行为的差异了。然而有些节点的参数数量实在太多,比较其参数间的差异会比较麻烦,在没有工具的情况下只能来回在节点间跳转才能比较出参数的不同。我想,其实可以使用Houdini的Python模块写代码来自动比较并输出不同,这并不麻烦。最后如果能输出更易于阅读的格式(比如csv表格,或Markdown表格语法)会让比较更高效。另外,我还假定了被比较的节点的类型都是一样的,因此这让代码更为简单——只需要按顺序访问参数就行了,原创 2021-10-11 12:41:18 · 1663 阅读 · 0 评论 -
小工具:用C++读取TGA并输出数据到文本
做一段C++小程序来读取TGA图片中的数据,然后将值输出到文本中原创 2021-10-08 12:59:08 · 811 阅读 · 0 评论 -
写一个小工具来可视化VisualStudio中项目之间的依赖关系(2.补全vcxproj中的信息)
目标在上一篇博客《写一个小工具来可视化VisualStudio中项目之间的依赖关系(1.针对sln中的信息)》中,我通过实验的方式知道了.sln文件中是如何存储依赖关系的,并编写了代码解析它。但问题是之后发现在.vcxproj中也有依赖信息。本篇的目标是:解析出.vcxproj中的项目依赖关系,与之前从.sln得到的信息结合,最终得到完整项目依赖图。分析经过上一篇的观察,我知道两个关键信息:(1).vcxproj的格式是xml,因此我需要一个读取xml的第三方库来帮助我,这里我选择leeth原创 2021-02-12 22:48:50 · 2144 阅读 · 0 评论 -
写一个小工具来可视化VisualStudio中项目之间的依赖关系(1.针对sln中的信息)
目标Visual Studio 中,一个“解决方案”(.sln)包含多个“项目”(.vcxproj)。而项目之间有依赖关系:当对一个项目进行生成时,它总会先确保其所依赖的项目先被生成。这样整体就会以一个正确的顺序生成。当项目变多时,我期望能用一个图来可视化这些关系以便观察。但我暂时还没找到特别方便的工具。不过,想了一下,其实这样的工具不难实现,我在之前的博客《为代码文件的include关系生成Mermaid图》和《为代码中的类继承关系生成Mermaid图》都做了类似的东西。这次的区别只在于——原创 2021-02-12 20:29:24 · 1980 阅读 · 0 评论 -
为代码文件的include关系生成Mermaid图
目标类似《为代码中的类继承关系生成Mermaid图》我想为代码文件的include关系生成Mermaid图。代码#include <iostream>#include <fstream>#include <vector>#include <io.h>#include <map>using namespace std;//递归地方式找到所有的文件void GetFilesInFolder_recursion(string f原创 2020-12-23 00:03:31 · 619 阅读 · 0 评论 -
制作一个小工具:自动生成“获得特定HRESULT对应信息的函数”的代码
需求我发现微软的Windows函数的返回值很多都是HRESULT,而我目前比较关心的DirectX的函数,其返回值也是 HRESULT。(官方文档Structure of COM Error Codes - Win32 apps | Microsoft Docs也有讨论HRESULT)HRESULT是一个32位值,当操作成功时,返回的的值是0,但是当失败时,返回的结果就五花八门了。我的需求是,对于一个特定的HRESULT值可以得到对应的信息。关于“HRESULT对应的信息”,我在winerror.h中原创 2020-09-30 09:03:23 · 436 阅读 · 1 评论 -
制作一个小工具:自动生成“将特定枚举值转换成字符串的C++函数”的代码
需求假设我有一种枚举类型:enum fruit_type{ apple, banana, orange,};我时常会遇到需要将枚举值转换为字符串的情况,即我需要如下的函数:const char* GetString_fruit(fruit_type fruit)当我调用GetString_fruit(apple)时期望能得到字符串"apple"。然而它该怎么实现呢?关键在于:原始的C++没有“反射系统”(或者说“类型系统”),枚举值在代码中的字符串,是无法知道的。制作一个自己的原创 2020-09-28 18:50:54 · 698 阅读 · 0 评论 -
做一个用python脚本生成bmp位图的小工具
目标需求可能的方案我的方案1.在C++中生成BMP图片BITMAPFILEHEADERBITMAPINFOHEADER主要参考:C语言集锦(一) C代码生成图片:BMP、PNG和JPEG - 星云的彼岸 - 博客园c++创建BMP文件并写入数据_kupePoem的专栏-CSDN博客...原创 2020-09-12 22:42:03 · 3433 阅读 · 0 评论 -
为代码中的类继承关系生成Mermaid图
想法我一直认为,将代码中的内容以图形化的方式表示出来有助于理解。对于我来说,类之间的继承关系和模块之间的依赖关系是我比较关心的内容。不过,当项目中的代码很多时,手动为感兴趣的内容画图将会消耗很多时间,我觉得需要自动化的工具生成图形。生成图形方面,可以借助 mermaid 的力量(而且CSDN博客也支持其基本的功能)。这样,剩下的问题就是如何获得信息了。这篇博客,讨论的是如何获得代码中的类继承关系。理论方法我的思路代码成功缺陷之处...原创 2020-06-14 22:42:42 · 1752 阅读 · 0 评论 -
为代码中的类继承关系生成Mermaid图2:筛选出特定类相关的类
问题在上一篇博客《为代码中的类继承关系生成Mermaid图》中,功能已经完成,但是结果上会有问题:有时候,得到的继承关系会太多,而我只想关注和某一个类有关的继承关系。例如,对UE4源代码的\Engine\Source\Runtime\CoreUObject\Public\UObject执行的结果如下:UObjectUFieldUStructUScriptStructUFunctionUDelegateFunctionUSparseDelegateFunctionUEnumUClassUDynam原创 2020-06-22 23:08:41 · 720 阅读 · 0 评论