学校放假了,正好有时间来写点程序。
这几天主要把代码重构一下。许多概念清楚多了,模块化更好一些,粒度趋向合理。这很有用,在处理更加抽象复杂的问题时,显得容易多了,不容易错,错了也容易改。因此,这个版本开始了一个新阶段。
此外,底层画图工具既不用DirectX了,也不用OpenGL了,直接使用GDI。方便实用,性能目前看不出区别。因为是接口设计,而不是把代码写死,哪天有空想用DirectX来做特效,或用OpenGL移植到Linux,也是很方便的。
从外部(用户界面)来看:
1)主要增加了一个“设置”菜单,“设置”菜单下只有一个“坐标系转换”菜单。可以设置成无穷多种坐标系,包括正交系和非正交系。
2)其次,在选择器里增加了一个“全选”、“全不选”,方便用户的选择。
后面依次要增加的功能有:1)拖动;2)射影;3)计算;4)全面考察应该增加的功能,再次重构代码,向1.0版本发起冲击。
每次写一点帮助,参看“Plot3D 0.1发布 ”“Plot3D 0.2发布”:
1)最根本的目标就是构造点,点构造好了,线、面、体就可以直接构造了,这也是唯一的办法构造线、面、体。
2)点有好几种构造办法,一种就是用鼠标画点,另一种很重要的就是用“点+n个向量”。点就是你最后选择或添加的点。
3)向量在哪里?向量就目前来讲就是线段(今后在外观上要把直线、线段、向量区分开来,但现在这三者都是一个---线段)。这里的线段都是有方向的,构造线段时先选起点,再选终点。
4)“点+n个向量=点”。
5)选择“全不选”,选择刚刚构造的临时向量,删除(只要点没有被选择,就不会被删除)。这就得到一个点集,把坐标系藏起来,把刚构造好的点一个选择好(变成红色)。
6)在菜单里选择构造你想要的几何体。多面体一定要点不共面。
Plot3D 0.3下载
(包含一个正方体例子,不兼容前面的0.1,0.2版本)
看个截图先:
Plot3D 0.3下载