无心的专栏

对于代码有洁癖的人,才能写出更好的代码。

排序:
默认
按更新时间
按访问量

RGB颜色转灰度的算法公式

方法一:     对于彩色转灰度,有一个很著名的心理学公式:                           Gray = R*0.299 + G*0.587 + B*0.114      方法二:      而实际应用时,希望避免低速的浮点运算,所以需要整数算...

2014-10-20 03:45:06

阅读数:4921

评论数:0

高效判断点是否在正六边形蜂窝内的方法

设计中,用到需要判断点是否在正六边形内,先是在网上搜了好几篇文章,发现都搞的挺复杂的,往往要使用向量运算计算面积夹角距离方向等,或者是射线法算交点,或者是切分三角形。我考虑到正六边形的特殊性,发现这个问题其实可以很讨巧的超简单解决,而且算法简单到连小学生都能理解,核心只要比较两个线段的长度。

2013-09-24 15:08:16

阅读数:5458

评论数:5

SVG中以任意直线为对称轴的镜像变换及其矩阵

直线一般方程为 A x + B y + C = 0 则以该直线为对称轴,做镜像变换的矩阵为: 任意点P(x,y)变换后的新坐标Q(x',y')的坐标为: SVG中的直线通常是以坐标轴形式或者是两点形式表示的。 如果是以两点线段形式表示的,需要先求出直线方程的系数。 两点(x1,y1),...

2013-09-23 16:06:39

阅读数:5269

评论数:0

点关于直线的距离、垂足、对称点公式

下面通过两种直线方程的形式,求解点关于直线的距离、垂足、对称点公式。 问题描述1:已知点的坐标(x0,y0),直线的方程为Ax+By+C = 0;求点到直线上的距离d、点在直线上的垂足(x, y)、点关于直线的对称点(x’, y‘)。 解决方法: (1)距离:       ...

2013-09-23 11:55:36

阅读数:2799

评论数:0

麻将游戏数据结构和AI算法

用休息时间零零散散写完了网络麻将游戏,感觉其中有不少值得记录的东西。 基础数据结构     数据结构确定决定了程序的开发难易程度,就像是游戏的骨架,对于电脑AI难度设定和玩家的游戏体验起着决定性的作用。 0、麻将ID构架     用一维数组PAICAPTION(143)来记录每张牌的ID和...

2013-03-25 10:41:33

阅读数:20492

评论数:0

杯子倒水问题自动求解程序(Javascript实现)

智力测试题经常遇到类似的逻辑题,给几个容量不等的杯子,让你倒出多少的水。 安卓上有一款专门玩这个题的游戏叫做Water Logic. 我安装这个游戏把几十个关卡通了一遍,感觉这个游戏的关卡设计很不好,关卡的难度并不是递增的,有很多后面的关卡相当的弱智,并且缺乏高难度的关卡。 做为程序员的我们,...

2013-03-24 22:59:24

阅读数:6018

评论数:0

一个在浏览器运行的华容道、"移十五"之类的滑块游戏自动求解与演示的GWT源码

先科普一下GWT的概念。 GWT: Google Web Toolkit的缩写,有了 GWT可以使用 Java 编程语言编写 AJAX 前端,然后 GWT 会交叉编译到优化的JavaScript 中,而 JavaScript 可以自动在所有主要浏览器上运行。 (可以简单理解为用Java来写程序...

2012-09-12 06:14:51

阅读数:3272

评论数:4

多人扑克游戏:99分游戏规则介绍

关于这个游戏,网上搜到的资料很少,不过百度百科里倒是有,规则说的也还算全面,我就抄下来。而且正在计划与xiaole,jerrod用HTML5/Javascript制作出这个游戏. 将会尝试使用websocket来实现通讯。应该说这个游戏的逻辑相当简单,不过还是有很多琐碎的工作要做。 99分 ...

2012-02-22 13:37:34

阅读数:4130

评论数:0

Javascript输出1到100的整数,不用循环,不用递归

曾在CSDN看到一个讨论如何不用循环输出1到100的整数的帖子标题上了论坛头版,于是进去掺和,也跟帖发表了几个算法。 我觉得这个题目很有意思,对程序员的思维是个很好的考验,看看我们是不是只会定向思维了。 我在帖子里回复了好几次,把我想到的主要的几种解决代码贴在这里。 这几种

2011-10-14 21:40:35

阅读数:3393

评论数:2

贝塞尔曲线算法的Javascript实现

如果在HTML5支持好的浏览器中,可以看到用svg绘制的路径线。 在所有浏览器中,均可以看到一个小方块沿着贝塞尔曲线路径来回运动。 效果图: 主要代码: svg /* 参考维基百科 http://zh.wikipedia.org/wiki/%E8

2011-10-14 03:11:15

阅读数:11905

评论数:2

SVG动画演示贝塞尔曲线(1-4阶)绘制过程

贝塞尔曲线是我们大陆的叫法,英文名是Bézier Curve,港澳台称为貝茲曲線,新加坡马来西亚称为贝济埃曲线。 先看一下效果图: 点击这里查看动画效果 维基百科中的贝塞尔曲线条目中的几个GIF动画很漂亮,顺路贴上来。 核心Javscript

2011-10-13 22:17:28

阅读数:8518

评论数:0

彩色转灰度的优化计算

对于彩色转灰度,有一个很著名的心理学公式: Gray = R*0.299 + G*0.587 + B*0.114 而实际应用时,希望避免低速的浮点运算,所以需要整数算法。我们可以将它们缩放1000倍来实现整数运算算法: Gray = (R*299 + G*587 + B*114 + 500)...

2011-03-02 06:00:00

阅读数:996

评论数:0

使用贝塞尔曲线拟合圆

有些看上去很简单的曲线,例如圆,是无法用贝塞尔曲线或分段贝塞尔曲线精确描述的。可以用四段三次贝塞尔曲线模拟圆,每一段是一个四分之一圆。更一般地,我们可以用n段三次贝塞尔曲线模拟圆。

2011-02-27 22:10:00

阅读数:6873

评论数:0

发布一款javascript版矩形消除游戏RectWiper

我是山寨一个exe版的界面,一些统计功能没有加上,但易操作性方面改进了些. 之前写的游戏都没有搞音效,这次试验一下,用SoundManager2,声音也纠结了很久,本地文件file:///打开的时候,因为flash的安全沙盒导致不能加载声音,需要到flash安全面板去设置。 有图有真相: ...

2010-11-29 00:32:00

阅读数:1650

评论数:5

How to build a good Sokoban level (如何设计高质量的推箱子关卡)

国内这样的文章不好找,碰到老外写的一篇,录下来备忘。http://www.games4brains.de/sokoban-leveldesign.htm How to build a good Sokoban level?<img src="http://www.games4bra...

2010-01-27 22:07:00

阅读数:2357

评论数:0

MD5碰撞,与用MD5保存密码的安全防范

  两个不同的且均可正常运行的exe程序文件,具有相同的MD5校验值,这不仅仅是理论上的可能,而是现实,已经有人写出了这样的两个程序了,http://www.mathstat.dal.ca/~selinger/md5collision/这个网址可以下载。  我所知的MD5应用最普遍的是在两个方面,...

2009-01-07 15:13:00

阅读数:2700

评论数:2

不用循环,不用递归,输出1到100的整数

很久没有上CSDN了,昨晚去逛了一下,看到一个讨论如何不用循环输出1到100的整数的帖子标题上了论坛头版,于是进去掺和。 因为我觉得这个题目很有意思,对程序员的思维是个很好的考验,看看我们是不是只会定向思维了。 我在帖子里回复了好几次,把我想到的主要的几种解决代码贴在这里。 不用循环、不用递归,输...

2008-07-12 14:09:00

阅读数:3461

评论数:3

两个RGB的颜色半透明混色算法

    各点像素的RGB值是按一定比例混合而成的,这个比例由Alpha值决定,具体算式见下:             Alpha   =   0   ~   100       R   =   (   R1   *   (100   -   Alpha)   +   R2   *   Alpha ...

2007-07-19 13:45:00

阅读数:9000

评论数:1

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