小技巧
文章平均质量分 64
ShaderJoy
醉心于研究一些特效(用代码来画画),曾涉猎过图形图像视频处理 、计算机视觉 、增强现实/虚拟现实等技术领域,就职于美图。
展开
-
初学 PS 手绘入门小技巧整理【持续更新】
三个钢笔工具上色小技巧建立好路径,按住 Ctrl + Enter 将路径转化为选区;按 Alt + Delete 就可以填充前景色;最后,按 Ctrl + D 取消选区原创 2021-06-06 10:03:11 · 2116 阅读 · 0 评论 -
PhotoShop 保存 8 bit 位图(Bmp)的方法【记录备忘】
操作步骤保存结果原图结果图原创 2020-12-25 11:05:53 · 8632 阅读 · 0 评论 -
VSCode 正则表达式的妙用
操作起来很简单,就是通过一句正则表达式来进行匹配^\s*$\n实际效果通过正则表达式匹配了所有换行参考链接:https://www.v2ex.com/t/459907原创 2020-04-29 10:42:57 · 6784 阅读 · 0 评论 -
非常实用的数学工具与用法示例
推荐一个非常好用的数学工具网站示例1:计算函数的不定积分假设我们的函数表达式为sqrt(A*x*x+B*x+C),然后再手动选择几个附加条件(红框所示),再点击 “计算”,结果如下点击 “编辑公式”,还可以得到 LaTeX 公式示例2:“直线与二次贝塞尔曲线交点”1.直线公式A*x + B*y + C= 0这里 A, B, C 为已知参数...原创 2020-01-09 10:41:34 · 1262 阅读 · 0 评论 -
批量转换 LF 和 CRLF 的小技巧【详细步骤】
在做跨平台开发移植的时候,最常见的问题就是不同操作系统的换行不同(例如,Windows 上是 CRLF,而 Linux 上是 LF,MacOS 以前是 CR,现在也是 LF),如果不注意的话,可能会导致编译的时候报诡异的错误,虽然说有些优秀的文本工具(notepad++, vscode 等)可以自动转换,但是它们都没有提供批量转换的方法,所以一旦遇到有成百上千个的文件需要转换,那么一个个手动去转明...原创 2019-04-13 22:05:33 · 31419 阅读 · 3 评论 -
JNI编程小技巧
1、java 传入的String 在 C 中转化为 char*打印出来 jstring obj;const char* string = (char*)(*env)->GetStringUTFChars(env,obj,NULL);__android_log_print(ANDROID_LOG_INFO, "JNIMsg",string); 2、'fo...转载 2012-12-15 22:29:47 · 1139 阅读 · 0 评论 -
嗑瓜子理论
天天嗑瓜子,对嗑瓜子就产生了兴趣,后来专门对嗑瓜子研究了一番,发现了一些规律: 1. 无论人们喜欢与否,很容易拿起第一颗瓜子; 2. 一旦吃上第一颗,就会吃起第二颗、第三颗….. 停不下来, 3. 在吃瓜子的过程中,人们可能会做一些别的事情,比如,去洗手间等等,但是,回到座位上以后,都会继续吃瓜子,不需要他人提醒、督促。 4. 大多数情况下,人们会一直吃下去,直到吃光为止;...转载 2013-08-27 16:37:37 · 2052 阅读 · 0 评论 -
如何让新人尽快融入团队
随着团队的发展,总会有新人被吸收进来,新人落地的问题就变得尤为重要。在此分享一下我的一点经验,与大家一起交流。 此处说的新人,是新到公司的人,并不限于应届毕业生。一般新人来了以后,我会从以下几个方面开展工作。 1. 介绍历史。向新人介绍项目情况、历史背景、团队情况、开发情况等,使其尽快了解过去和现在的状态,并形成与团队一致的目标。 2. 寻找差...转载 2013-09-02 18:39:22 · 2186 阅读 · 0 评论 -
漫谈C++:良好的编程习惯与编程要点【0】
转自:melonstreet正文 以良好的方式编写C++ class假设现在我们要实现一个复数类complex,在类的实现过程中探索良好的编程习惯。 ① Header(头文件)中的防卫式声明 complex.h: # ifndef __COMPLEX__# define __COMPLEX__class complex{ }# endif...转载 2016-07-01 00:04:23 · 1321 阅读 · 0 评论 -
漫谈C++:良好的编程习惯与编程要点【1】
转载:melonstreet带有指针数据成员的类:记得写三大件(拷贝构造函数、拷贝赋值函数、析构函数)C++的类可以分为带指针数据成员与不带指针数据成员两类,complex就属于不带指针成员的类。而这里要说的字符串类String,一般的实现会带有一个char *指针。带指针数据成员的类,需要自己实现class三大件:拷贝构造函数、拷贝赋值函数、析构函数。class String{...转载 2016-07-01 00:22:26 · 1484 阅读 · 0 评论 -
漫谈C++:良好的编程习惯与编程要点【2】
转自:melonstreetstatic与类① 不和对象直接相关的数据,声明为static想象有一个银行账户的类,每个人都可以开银行账户。存在银行利率这个成员变量,它不应该属于对象,而应该属于银行这个类,由所有的用户来共享。static修饰成员变量时,该成员变量放在程序的全局区中,整个程序运行过程中只有该成员变量的一份副本。而普通的成员变量存在每个对象的内存中,若把银行利率放在每个对象...转载 2016-07-01 00:32:24 · 1353 阅读 · 0 评论 -
如何选择开源许可证?
作者: 阮一峰原文地址:http://www.ruanyifeng.com/blog/2011/05/how_to_choose_free_software_licenses.html如何为代码选择开源许可证,这是一个问题。世界上的开源许可证,大概有上百种。很少有人搞得清楚它们的区别。即使在最流行的六种----GPL、BSD、MIT、Mozilla、Apache 和 LGPL-...转载 2016-11-19 13:39:39 · 1307 阅读 · 1 评论 -
C 语言高效编程与代码优化
在本篇文章中,我收集了很多经验和方法。应用这些经验和方法,可以帮助我们从执行速度和内存使用等方面来优化C语言代码。简介在最近的一个项目中,我们需要开发一个运行在移动设备上但不保证图像高质量的轻量级JPEG库。期间,我总结了一些让程序运行更快的方法。在本篇文章中,我收集了一些经验和方法。应用这些经验和方法,可以帮助我们从执行速度和内存使用等方面来优化C语言代码。尽管在C代码优化方面有很多...转载 2017-02-22 15:04:52 · 1317 阅读 · 0 评论 -
OpenCV 释放 vector 内存莫名崩溃的问题
当我想通过 swap 释放成员变量的 vector的内存时,总是Crash,断点进去Crash的位置也很诡异:Crash 位置 :还以为是内存没有对齐的问题,结果加了 #pragma pack(4) // 1, 2, 4也是枉然。。。 T_T 局部变量vector的自动释放 Crash 位置: 而且同样的代码在OpenCV 3.1.0上是正常...原创 2017-04-13 15:35:32 · 5622 阅读 · 0 评论 -
如何在电脑上连接两个 Bose 蓝牙音箱
立体声和派对模式适用于:SoundLink Revolve 蓝牙扬声器 SoundLink Revolve+ 蓝牙扬声器您可以将您的 Bose 扬声器配对在一起,然后使用 Bose Connect 应用程序(推荐)或扬声器的控制按钮在以下模式下播放:派对模式(同时播放左右扬声器) 立体声模式(分隔左扬声器和右扬声器的声道)请参阅 Bose 的用户指南,以确定您的辅助扬...原创 2017-12-15 22:49:22 · 34179 阅读 · 4 评论 -
do{...}while(0)的意义和用法
转载自 http://www.spongeliu.com/ linux内核和其他一些开源的代码中,经常会遇到这样的代码:do{ ...}while(0)这样的代码一看就不是一个循环,do..while表面上在这里一点意义都没有,那么为什么要这么用呢?实际上,do{...}while(0)的作用远大于美化你的代码。查了些资料,总结起来这样写主要有以下几点好处:1、辅助定义复...转载 2018-12-20 14:05:02 · 1058 阅读 · 0 评论