摘要: 代理模式 代理模式(Proxy)是设计模式中结构型模式的一种,用以实现对目标访问的控制。 结构如下: 当目标接口需要额外的操作才能访问,或是想要对目标访问进行控制时,都可以使用代理模式。 如图,RealSubject和Proxy派生自接口Subject,RealSubject是Subject的一个真 阅读全文
posted @ 2021-05-14 17:24 囧rz 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 之前上Web课,学到JavaScript的时候,老师要求写几个静态页面,要用到JavaScript。想了想就写个贪吃蛇吧。其实之前用pygame写过一次GUI的贪吃蛇,素材都是自己拿画图画的,其丑无比。所以这次还是老老实实用字符吧。 首先,是一些全局变量的定义: 1 <script> 2 var s 阅读全文
posted @ 2016-11-29 21:04 囧rz 阅读(624) 评论(0) 推荐(0) 编辑
摘要: 问题来自于《计算机图形学》p171。问题描述如下: 在考虑这个问题的解决方法之前先看一下如何求一条光线的反射光线: 我们规定向量a和n已经被归一化,那么r-a,如图4.13(b),r-a = 2 cos(theta) * n。cos(theta)即向量a和n的点积。故有 r=a-2(a*n)n 反射 阅读全文
posted @ 2016-08-15 23:36 囧rz 阅读(1347) 评论(0) 推荐(0) 编辑
摘要: 恩..接着就是Cyrus-Beck算法。这个算法比之前的Cohen-Sutherland算法厉害,处理任意凸多边形对线段的裁剪。自然,这个算法也比Cohen-Sutherland算法复杂不少。 首先,是线段与多边形相交的情况: 我们把定义向量c = (C - A),而线段AC是射线A + ct的一部 阅读全文
posted @ 2016-08-15 21:38 囧rz 阅读(4478) 评论(0) 推荐(0) 编辑
摘要: 还是其几天写的,这是最简单的一个直线裁剪算法了吧,它针对的是一个矩形和一条线段。并且还是边与坐标轴平行的矩形。 在实际应用上应该会经常用于屏幕对各种线段的裁剪吧。算法很简单效率也很高。 首先是算法的两种特例:平凡接受和平凡拒绝。 (图片来自《计算机图形学(OpenGL)》第三版) 当线段的两个端点都 阅读全文
posted @ 2016-08-15 20:46 囧rz 阅读(1906) 评论(0) 推荐(0) 编辑
摘要: 其实以前就写过一个迷宫的程序和DFS遍历,不过弄丢了,前几天闲就重写了一下。欢迎交流和拍砖。有很多不足的地方也希望大家多指正。 迷宫生成的算法来自《计算机图形学》,也就是这本书: 生成迷宫的算法描述如下: 由于表示墙使用了up_wall和left_wall两个矩阵,所以格子的数量要比能显示出来的多一 阅读全文
posted @ 2016-08-15 20:12 囧rz 阅读(3175) 评论(0) 推荐(0) 编辑