挑战六秒

挑战六秒的说明

编写这个程序的想法来源于生活中的这个小游戏,一般商场等地方就会有这样的一个供路人来玩的“挑战六秒”的小小的装置。看谁能够准确的暂停到六秒整,感觉这个挺有意思,而且很锻炼人的反应能力和预判能力。其实编写这个“挑战六秒”程序的想法很早就产生了,但是由于各种原因,只能等到放假空闲下来编写。编写过程还算顺利,几乎是一气呵成,用了半天时间就编写成功了。

程序编写过程

首先我需要将程序的框架构建成功,主要过程就是按键后程序能够结束循环并暂停。这个实现后接下来就是设计程序界面。以前设计界面我都是用尺子在纸上进行勾绘。最近我发现 CAD 其实更适用。使用 CAD 可以准确的设计布局,并且可以找准坐标。为了更加真实的模仿“挑战六秒”,我需要按照电子数字字体绘制数字。我将电子数字字体分成 7 个模块。并将每个模块单独的编写成函数,每个模块的绘制是比较耗费时间的,这 7 个模块可以根据不同的组合组成需要的数字。为了防止出现闪屏的情况,我使用覆盖的方法将每次产生的数字

...

数独辅助器

数独游戏介绍

数独(shù dú)是源自 18 世纪瑞士的一种数学游戏。是一种运用纸、笔进行演算的逻辑游戏。玩家需要根据 9×9 盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行、每一列、每一个粗线宫(3*3)内的数字均含 1-9,不重复 。

数独盘面是个九宫,每一宫又分为九个小格。在这八十一格中给出一定的已知数字和解题条件,利用逻辑和推理,在其他的空格上填入1-9的数字。使1-9每个数字在每一行、每一列和每一宫中都只出现一次,所以又称“九宫格”。

数独辅助器编写思路

首先,肯定是画九宫格,做好这个程序的界面。然后给这个界面的相应位置赋予对应相应的数,用鼠标给这个数独九宫格进行填数。当然做好前面的这些只是表面的,最主要的是如何用电脑来解这个数独呢?我一直在思考,程序其实就是一个工具,而我们就是要学会应用这个工具去做一些我们很难做到的事,编写程序就是一个解决问题的好办法。我记得我曾经花了一周的时间去解一个数独,虽然数独最终解出来了,但假如我又遇到别

...

TIN 三角网的生成

三角网的概念

三角网是由一系列连续三角形构成的网状的平面控制图形,是三角测量中布设连续三角形的两种主要扩展形式,同时向各方向扩展而构成网状,优点为点位分布均匀、各点之间互相牵制、图形强度较高,缺点是扩展较缓慢。

三角网是实现地形三维可视化,数字地面模型(Digital Terrain Model,简称 DTM)是一种很有效的途径。DTM 主要是由栅格和不规则三角网(Triangulated Irregular Network,简称 TIN )两种数据格式来表示,相比于栅格 TIN 具有许多优点,几乎能适用于任何复杂的地形,所以 TIN 是 DTM 常采用的一种格式。

三角网的特性

  1. TIN 是惟一的;
  2. 力求最佳的三角形几何形状,每个三角形尽量接近等边形状;
  3. 保证最邻近的点构成三角形,即三角形的边长之和最小;
  4. 最小角最大,即在所有的三角网中 Delaunay 三角网的最小角是相对最大的。狄洛尼三角网满足以上三个条件,其定义为 :
...