自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(203)
  • 资源 (10)
  • 收藏
  • 关注

原创 一道有趣的推理题——使用思维工具:表格、思维链进行辅助推理

1和6月这两个会让哥哥无法清晰推理出,妹妹究竟选择的是这两个月份里面分别候选日子中的哪一天的信息,所以如果是哥哥得知是1月或6月,就不会说出“我也知道了”,只有4月这个日子唯一只有19的,才会让他立即通过妹妹的话而说出“我也知道了”。2.1: 妹妹能拿到的日子只能是上面表格里面的任意一个,而且说“本来我不知道,现在我知道了”, 也就是她知道哥哥了解了确切月份之后,就拿得准了。4)根据推广信息(3),如果哥哥获得的是5月,根据29日的唯一性,也会在此时知道唯一日期,所以5月这一列都要消除。

2025-12-21 00:08:00 354

原创 距离向量场线条绘制算法

本文提出了一种基于距离向量场的线条绘制算法。通过计算采样点P到线段AB的最短距离来决定是否着色:1) 构建向量BA和PA;2) 利用点积计算PA在BA上的投影比例h;3) 限制h在[0,1]范围内得到线段AB上的最近点Q;4) 当PQ距离小于线条半径r时着色。算法在GLSL中实现,通过遍历所有线段计算最小距离,并使用半透明处理实现抗锯齿效果。该方法可直接在片段着色器中实现高效线条绘制。

2025-12-08 22:25:19 432

原创 使用OpenGL texelFetch函数实现精确LUT滤镜——一种超越GPUImage库映射精度的实时滤镜算法

摘要:本文提出了一种基于OpenGL texelFetch函数的高精度LUT滤镜实现方法。传统GPUImage等库使用texture函数进行LUT采样会产生较大误差,而本文方案通过离散精确采样结合三线性插值,实现了256色到64色LUT的无跳变映射。文章详细分析了从一维到三维的插值原理,给出了8点采样的数学推导,并提供了完整的GLSL实现代码。该方法相比传统方案可获得更高精度的颜色映射效果,但会增加GPU计算负担。实验证明该算法能有效消除颜色跳变,实现平滑的LUT滤镜效果。

2025-11-28 22:19:19 919

原创 瑞文高级推理RAPM set 2中几条有意思的题目

本文分析了瑞文高级推理测试(RAPM)set2中6道典型题目(26-31题及36题)的解题思路。通过观察图案的旋转规律(26题)、形状演变序列(27题)、分类组合规律(28题)、倾斜变形规律(29题)、色块循环规律(30-31题)以及重叠消减规律(36题),作者展示了如何通过直觉观察和类比分析相结合的方法解决不同类型的图形推理问题。这些题目虽然难度各异,但都遵循可识别的模式规律,通过系统分析都能找到正确答案。文章体现了图形推理中寻找模式、建立类比和验证假设的解题策略。

2025-11-24 22:42:21 624

原创 使用Compose实现单选表

本文介绍了使用Jetpack Compose实现单选列表的方法。核心实现是通过一个共享状态变量selectedIndex来控制选中状态。当用户点击某条目时,会更新selectedIndex的值,所有列表项都会重新组合,只有与selectedIndex匹配的项会显示选中图标(星形)。主要代码包括:1)使用mutableStateOf记录选中索引;2)在LazyColumn中渲染列表项时,通过条件判断决定是否显示选中图标;3)点击事件处理中更新选中状态并清空其他项的状态。这种方法利用Compose的响应式特性,

2025-11-24 22:34:44 231

原创 一道让我钻了很久牛角尖的创造力测试题

摘要:本文探讨了一个数字矩阵的解题思路。作者最初尝试通过三进制、对称分割等方法寻找规律未果,经历了多次失败后转换思路,发现每列个位数相同、每行十位数相同的规律。通过将固定数标记为x,发现倒数第二列与第四行交叉点数字为11的关键特征。总结指出,尝试不同解题角度、寻找共同特征,终能找到自圆其说的解题方法。全文展现了从困惑到突破的完整思考过程。

2025-11-17 22:04:37 279

原创 在安卓中基于OpenGL ES实现随风飘荡3D动画效果

文章摘要: 本文介绍了3D波浪动画的实现方案。作者通过分析波浪运动规律,提出使用三角函数sin(x+t)+cos(y+t)计算z轴高度,实现随时间变化的3D波浪效果。重点比较了CPU计算和GPU着色器计算两种方案,最终选择在vertex shader中实现,通过传入时间参数实时计算顶点z值,显著提升了性能。文章给出了核心shader代码,展示了通过叠加多个三角函数产生复杂波浪效果的方法。该方案以高效的方式实现了动态3D波浪动画效果。

2025-10-25 23:54:21 354

原创 对于OpenGL的状态机机制,编程时要留心的一点

本文分析了OpenGL状态机在VAO和EBO绑定过程中的状态管理问题。通过代码示例说明,第二次执行时未正确维护EBO绑定状态会导致绘制错误。文章指出OpenGL状态机像静态变量不会自动重置,强调开发者必须主动管理状态。建议采用每次解除绑定的保险做法,以避免因状态残留引发的绘制问题。这提醒我们在使用OpenGL时要特别注意状态维护,确保每次执行都能正确重置相关资源状态。

2025-10-11 13:18:04 186

原创 TCL电视机音乐播放器动效背景模仿

本文记录了作者通过观察TCL电视播放器的动态背景效果,发现其可能采用三角函数生成颜色变化。作者用Desmos复现了类似算法,并编写了GLSL着色器代码进行模拟实现。该shader通过结合正弦、余弦函数计算像素值,并加入时间变量实现动态效果,最终成功仿制出类似的波浪状背景动画。文中展示了算法推导过程和关键代码片段,包括三角函数计算、参数调整等细节。

2025-09-08 23:26:17 292

原创 DevEcoStudio编译时提示The certificate has expired!的处理方法

摘要:开发者遇到错误后尝试重新生成签名、重启IDE和清缓存均无效,最终在华为开发者论坛找到解决方案。实际配置文件路径为C:\Users[用户名].ohos\config。该问题涉及华为开发者工具配置路径的定位问题。

2025-07-16 17:09:48 472

原创 我们不该害怕AI抢走我们的工作,而是应该感激它取代我们工作

但社会结构、生存方式其实都一直跟着科技水平而改变,甚至我对AI发展会带来的社会改变如上一段所说的那样,非常乐观,我觉得没啥好担心的,这次技术的大突破,不但不会导致生存危机,反而可以把我们从工作枷锁中解放,多美好啊。但个体拥有更多的时间可能会导致人们有其他方面更高的追求(这也是领导群体希望群众保持劳累的原因之一,一种疲民术,但实际对文明发展起反作用),可能会导致如今领导群体和群众之间的冲突,出现社会重构过程中的阵痛期,但我还是对重构完成后的社会形态感到乐观。

2025-06-10 21:59:16 298

原创 Android Studio Gradle task栏找不到写好的task

我手上的工程,其中有一个模块有如下Gradle代码:但实际上Gradle任务栏却没有这个task:查阅资料后,发现要勾选这个选项才会完整生成tasks列表,默认并不会勾选:勾选后重新sync后,task出现了:

2025-04-14 17:21:23 395

原创 OpenGL代码欣赏——在fragShader中实现“3D纹理”,实现透视效果和光栅化

最近逛shadertoy看到有人把透视转换、光照、3D转2D光栅化转移到了fragShader实现,虽然感觉没啥实用性,过于麻烦,但觉得非常厉害又有趣,让我感觉看到了新鲜事物一样。拜读之后对他的代码有了一点个人理解,写一个笔记记录一下。

2025-03-11 19:00:10 498

原创 在Linux中开发OpenGL——检查开发环境对OpenGL ES的支持

     由于移动端GPU规模有限,厂商并没有实现完整的OpenGL特性,而是实现了它的子集——OpenGL ES。因此如果需要开发的程序要支持移动端平台,最好使用OpenGL ES开发。

2025-03-05 15:38:15 1291

原创 在Linux中开发OpenGL——环境搭建

Linux OpenGL 开发环境搭建

2025-03-04 12:35:26 481

原创 在AI突飞猛进的今天,什么能力最重要?

  我认为未来更需要的是纯粹的专业思想和基础能力,而不是和特定工具绑定的技术熟练度。这些基础能力我认为有分析力、观察力、推理能力、想象力、创造力、表达能力、拆解问题的能力、构思规划能力、触类旁通的能力、知识纵深度等。而和特定工具捆绑的能力的重要性将越来越低。        在未来,基础能力强且富有专业知识的人会远远比只比熟练掌握某些工具的人更具竞争力。

2025-02-28 11:24:36 476

原创 Win10和11 git/Android Studio遇到filename too long问题的解决

Win10和11 git/Android Studio遇到filename too long问题的解决。

2025-01-07 17:49:07 790

原创 Win11“手机App”导致Android Studio Run过程卡住

卸载之后,问题解决了。

2024-12-16 15:21:44 213

原创 被一道小升初思维题卡了一下

有三个立方体,每一面有1~6的其中一个数,问总共能组合出多少种不重复的和?

2024-11-16 21:52:53 449

原创 使用队列LinkedBlockingQueue,以广度优先方式从本结点遍历整个ViewTree所有结点

使用队列LinkedBlockingQueue,以广度优先方式从本结点遍历整个ViewTree所有结点。

2024-09-12 14:32:47 193

原创 判断View惯性滚动是否结束

【代码】判断View惯性滚动是否结束。

2024-08-07 12:06:38 231

原创 使用Layout Inspector提示“Application not inspectable. Deploy an app or navigate to a debuggable app on”

安装Layout Inspector image,然后再重启试试。使用debug模式运行应用。

2024-08-03 12:08:38 2470

原创 Android使用ANativeWindow更新surfaceView内容最简Demo

安卓的普通VIew,都依赖于当前Activity的Window的surface,这个surface用于承载view树从底到顶绘制出来的所有内容,因此任何一个view需要更新时,都需要把所有view中底到顶进行更新,即使使用脏区域,也依然要把其他view中相应的像素进行合成操作,因此不适合频繁的更新绘制,而且更新过程只能依靠UI线程。而SurfaceView却有自己的Surface,因此可以单独更新其内容而不触发整个view树的更新,在子线程刷新不会阻塞主线程,适用于界面频繁更新、对帧率要求较高的情况,因

2024-07-15 21:10:04 1577

原创 Android OpenGL ES 离屏幕渲染2——获取渲染结果并显示到ImageView控件中,使用最简模型展示

本文将用一个不包含顶点shader和片元shader的最小模型讲述如何把通过EGL创建的OpenGL ES环境渲染后的结果进行提取,单纯输出一片铺满视口的红色的像素。

2024-07-07 15:09:03 1374

原创 Android OpenGL ES 离屏幕渲染1——EGL环境的创建,以及基础概念的理解

本文主要是介绍EGL的概念、作用,为后续的离屏渲染做铺垫。下一篇文章将开始介绍EGL环境创建后如何进行OpenGL ES API调用,并把结果进行提取。

2024-07-07 11:37:06 1804

原创 Android Studio Jellyfish版本修改project使用特定jdk版本的步骤

打开Settings。

2024-06-10 22:10:14 1033 1

原创 在新版本AS上运行老项目遇到问题

【代码】在新版本AS上运行老项目遇到问题。

2024-06-10 12:09:51 341

原创 创造一款安卓自定义控件(4)——使用Matrix的setPolyToPoly方法实现图像纠正

送入矩阵,调用setPolyToPoly方法,第一个参数是起始形状,第三个参数是目标形状,最后是。2. 设不规则选择框的4个2维顶点(8个数值)为初始区域。4.用户选中图像畸形区域,最后得到纠正后的图像。所示,以顺时针方式分布于4角,触摸框初始坐标分布如下图。图片不规则裁剪后正畸示例。

2024-03-11 20:01:07 939

原创 GL绘制自定义线条4_使用OpenGL ES实现钢笔效果

通过原点两侧创建两个原始端点,长度根据压力值或速率进行调整,再根据两个触摸点构成的向量旋转它,再移动它到触摸点的位置,构成包络点,并使用插值逻辑平滑处理一下,使用GL_TRIANGLE_STIPS方式绘制,即可实现该效果。CSDN之前自动生成的摘要居然自带广告,简直离谱!

2024-02-29 21:56:57 971

原创 Android开发经验记录_对多个Path形成的图形进行填充踩坑与怕坑记录

网络上大部分文章都是描写单个Path如何进行颜色填充,没有描写多个Path组合起来如何正确填充颜色,我自己摸索了一个比较合理的形式。

2023-12-13 15:52:18 370

原创 华为P40无法链接adb的解决记录

情况:突然无法链接adb到P40,拔插无效,关闭开发人员选项再打开也无效,撤销USB调试授权也无效,重启adb server无效,重启android studio无效,使用其他设备链接正常。插入手机,右击adb interface右击卸载,然后刷新设备,此时手机会弹出是否允许这台电脑调试,点确定即可。真的很讨厌华为的设备,很多东西啥设备都能跑得好好的,就华为会出问题,简直就是手机界的IE。

2023-11-28 11:15:10 2313 1

原创 创造一款安卓自定义控件_裁剪原理介绍

裁剪框中裁剪部分的代码原理大概讲解。

2023-07-10 00:20:20 644

原创 GL绘制自定义线条3_自定义线帽

在安卓中使用OpenGL绘制如Path+Paint一样效果的书写线条,并附带笔帽效果实现

2023-05-15 11:57:35 807

原创 GL绘制自定义线条2_手写曲线应用贝塞尔曲线

假定我现在有3个顶点(P0、P1、P2),想以曲线的方式进行绘制其路径,那么可以从P0到P1、P1到P2两个线段,按照同样的百分比步进量,沿着这两个线段对应百分比的位置连接为一个新的线段(图中绿色部分),然后取这个线段同样百分比位置的坐标,将这些坐标连城线即可得到一端曲线。上一篇文章的曲线是由触摸点直接生成的,但触摸点并非连续的,而是离散的,而且屏幕触摸点采样的间隔时间其实不短,因此如果单纯只用触摸点生成OpenGL触摸曲线,在高速书写时会导致曲线看起来就像多个线段合起来一样(事实也是如此)。

2023-05-08 21:52:55 877

原创 GL绘制自定义样式线条

使用OpenGL绘制自定义曲线的原理推导和粗略实现

2023-05-06 11:13:09 465

原创 向量基础个人思维训练_纹理采样边缘做旧效果的推导

通过一些基本的向量计算规则的组合,实现纹理边缘的黑化效果。本文将讲述自己如何一步步推理出实现目标效果的自定片元shader规则。

2023-04-25 23:23:39 648

原创 光照的个人推导过程与GL实现

使用OpenGL ES实现光照的数学逻辑基础和具体实现

2023-04-22 14:55:10 792

原创 做gl demo谨慎打开面剔除功能,否则容易干扰测试,没有错的情况下什么都不显示

最近想做一个关于可以移动光源的光照模型,在以往的代码上随便复制组合一下打算搭建一个demo开始写相关代码,结果发现熟悉的三角形它没有显示出来……其实面剔除对于有效减少渲染时看不到的面消耗的算力很有帮助,但在程序还没做完之前打开可能会导致一些该显示的东西显示不出来。这样基本上就等同于输入的顶点在没有任何变换的情况下,赋予这个三角形面每个一种藏青色(每个顶点都是同样的片元颜色)。那剩下的可能就是gl API调用方面的问题了。而我绘制顶点的顺序刚好就是它不会显示的那种,所以自然显示不出来了。关闭之后一切正常了。

2023-04-16 21:46:16 392

原创 tan函数在线性方程中的美妙应用

tan函数对线性方程的旋转作用

2023-03-18 18:34:18 257

原创 一道有意思的谜题_20230316

谜题爱好锻炼

2023-03-16 22:04:31 558

Canvas和OpenGL结合实现绘图和高速缩放漫游的Demo

Canvas和OpenGL结合实现绘图和高速缩放漫游的Demo,弥补了Canvas移动缓慢的弊端

2019-03-19

使用JNI读取安卓特定触摸设备事件

使用JNI读取安卓特定触摸设备事件,使得触摸事件获取速度更快

2018-08-20

一种代替SurfaceView的自定义控件,可以缩放、无限延伸拖动

一种代替SurfaceView的自定义控件,可以缩放、无限延伸拖动

2019-07-16

C语言字典树创建和搜索示例

一种C语言字典树创建和搜索的示例,可以创建一种无论增加多少单词,搜索速度依然 = 该语言字母数 * 单词长度 的效率的存储结构。一个demo

2018-10-30

网站漏洞检测工具 vulnerabilityscanner 试用版

网站漏洞检测工具 vulnerabilityscanner 试用版

2014-11-26

Android View 跟随手势移动和缩放

Android View 跟随手势移动和缩放,通过在触屏上移动和多个手指的缩放手势实现移动和缩放

2018-12-17

旋转立方体.7z

OpenGL由27个小立方体构成一个大立方体,可以旋转,使用书本OpenGL ES 3.x游戏开发 上卷》的5.2、5.3两章的内容魔改而成

2019-09-28

旋转立方体+线程动画.7z

OpenGL由27个小立方体构成一个大立方体,可以旋转,使用书本OpenGL ES 3.x游戏开发 上卷》的5.2、5.3两章的内容魔改而成

2019-09-29

安卓自动轮播控件SmartScrollView

安卓自动轮播控件SmartScrollView,使得ScrollView中的控件可以根据指定的速度和步进像素进行轮播

2018-08-20

测试代码和程序.7z

放大倍数动画显示控件,适用于相机等应用,每变化0.1x就会触发动画,倍数例子由x/屏幕宽度 * 8f控制

2020-04-11

空空如也

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

TA关注的人

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