《几何图霸》新增与改进功能

返回帮助目录 V4.0-4.5新增与改进功能

V4.6 新增与改进功能:

1、功能区界面与菜单工具栏风格的界面自由切换
2、帮助中增加了常用工具的快捷帮助
3、值编辑框中可以输入表达式
4、增加迭代终点、终值。迭代属性表中加入全选框
5、增加随点图片,图随点动
6、增加条件显隐,用参数值控制对象的动态显示
7、增加轨迹曲面,线动成面
8、增加裁剪面对各种曲面进行动态裁剪
9、参数曲面中可以根据表达式进行条件裁剪与分片着色
10、表达式或度量值的结果可以用近似分数显示
11、增加绘制隐函数图象的功能
12、其它修改。例如个性设置中修改了配色方案,圆上点的动画更平滑

下面详细说明:

1、功能区界面与菜单工具栏风格的界面自由切换

在功能区界面的右上方【皮肤】中点击【使用功能区】项,程序切换为菜单式界面:

jhtbhelp

在菜单式界面中,点击菜单项【显示】-【界面样式】-【使用功能区】切换为功能区界面:

jhtbhelp

切换前会自动保存文件。下次再打开程序会使用你上次的界面。

2、帮助中增加了常用工具的快捷帮助

在帮助中增加了【快捷帮助】按钮,点击后可以查看常用工具的使用方法

jhtbhelp


3、值编辑框中可以输入表达式

如下图,在需要输入值的编辑框中可以用不含参数的表达式。可以使用各种函数和常数,但不支持变量,结果仍然保存为一个值。例如输入 2*pi,确定后将得到值6.28319,不能输入3*d-1.

jhtbhelp

4、增加迭代终点、终值。迭代属性表中加入全选框

选择迭代图像及一个点,用【变换】-【迭代终值】命令,构造此点在迭代后的终点;选择迭代图像及一个值,用【变换】-【迭代终值】命令,构造此值在迭代后的终值。

下图中点G是点E迭代的终点,T|CD|是长度CD的终值。箭头从原始象指向终象。

jhtbhelp

终点与终值用于单重映射,一般勿用于多重映射或迭代的迭代。

迭代属性表中加入全选框,方便增减绘制的对象。点击下可以全选或全不选。如下图:

jhtbhelp

5、增加随点图片,图随点动

在插入图片文件或粘贴图片前选择1-3个点,可以使图片随点而动。选择1个点时,点控制图片中心位置;选择2个点时,点控制图片对角位置;不选点时位置用鼠标拖动。这几种情形的图片常用于2维状态,图片可以放缩。选定3个点时,程序会补成平行四边形,图片约束在平行四边形内,它常用于三维状态。不选点或选1个点时,图片左下角要在可见范围内;选择2个或3个点时所加图片转化为纹理。如果要把图片用到曲面上,请在编辑中更换纹理贴图并使用。强烈建议使用小图,尤其是你的电脑性能较差时。

jhtbhelp

6、增加条件显隐,用参数值控制对象的动态显示

选择一个参数或计算式,再选择一组被控对象(至少一个对象,构成一个队列,从1开始排序)。用【显示】-【条件显隐】命令,打开对话框,选择显示方式,添加“条件显隐”对象。

jhtbhelp

“非零式” 表示值不为0时显示队列中所有对象(不含控制显隐的参数),为0时隐藏对象。

"入场式" 类似于运动员入场,前后依序进入。对参数值进行取整,显示队列中序号不大于这个整数值的对象,大于的被隐藏。

“叫号式” 类似于叫号机,叫到号的入场。对参数值进行取整,显示对象组中序号等于值的对象,不等的被隐藏。

例:

1. 新建整数参数,范围0-6,添加它的计算式:n*(n+1)/2.

2.添加6个点。如图:

jhtbhelp

3. 选中n及6个点,用【显示】-【条件显隐】命令,打开对话框,选择"入场式",确定。

“对象列表面板”中可以看到多了一个对象,它是参数及点的后代,用值去反作用于点的显隐。原理类似于“参数颜色”:用参数控制颜色。拖动滑块n从0到6。可以看到各个点依次“入场”显示。

4. 对象列表中选择"条件显隐“对象,用【属性】命令,在“条件显示对话框”中,改显示方式为“叫号式”。拖动滑块n从0到6。可以看到n为几,就显示第几个。

5. 修改参数范围为0-3,对象列表中选择"条件显隐“对象,删除。

5. 选中计算式及6个点,用【显示】-【条件显隐】命令,打开对话框,选择显示方式为"入场式",确定。

当n=0时,计算式的值为0,所有对象不显示,因为没有对象的序号为0;当n=1时,值为1,显示第一个点A;当n=2时,值为3,显示前3个点A、B、C;当n=3时,值为6,显示所有6个点,先入场的并不退场。修改计算式可以控制每次“入场”的点的个数。

用“条件显隐”可以方便地制作“对象的闪烁”,你不妨试一试。

 

7、增加轨迹曲面,线动成面

主动点在路径上运动,它的从动点形成的图形就是大家熟悉的轨迹。那么主动点的后代如果是线段或曲线时,这些曲线运动就构成空间的曲面,我们把它称为轨迹曲面,简称轨迹面。

例如过平置圆上的一个动点画垂直圆面的线段(平行于z轴),点在圆上运动,线的轨迹就是圆柱侧面。也就是说,圆柱侧面可以用几何法构造,也可以用方程曲面,直纹面,旋转面,轨迹面。

jhtbhelp

选择主动点(或参数)及它的后代曲线(可以是线段、圆或弧、轨迹、参数曲线)两个图元,用【构造】-【曲面】-【轨迹曲面】命令,添加轨迹面。另外还可以在构造前选择两个参数动态控制主动点子范围。在此范围内曲面还可以在属性中设置"随点"而动。双击曲面,打开”属性“对话框:

jhtbhelp

主动点参数范围是指点在其路径上的值的范围,决定了轨迹面最大的尺度,比如上面圆柱面中,点C是圆上的点,范围从0到2*pi。如果你可以输入0到5,这样显示的就是部分圆柱面。

使用2个参数表示的范围是其子集,上图中显示的就是。参数值不要超过主范围。

跟随时显示的是从起始处到当前主动点位置的范围。三个范围是从大到小的关系。

当主动点在其路径(称为准线)上运动时,形成曲面的母线(线段、圆弧、轨迹、方程曲线)上点列数(曲线由点构成,点的个数即点列数,又名采样数)不要随之改变。如果它是参数方程表示的曲线,曲线的步长和范围不要随主动点的位置而变化。否则不能构建轨迹面。

”精度“较高(步长小),曲面上的面片就多(往往与平方成正比),曲面显示的更精细,但电脑性能不好的会卡,请根据轨迹的复杂程度去权衡。

再举一例:制作“蛇形管” ,效果如下图:

jhtbhelp

1.【常用】-【轨迹曲线】,输入参数方程,如下图,添加正弦型曲线y=5*sin(0.4*t),作为轨迹面的准线。

jhtbhelp

2. 选中曲线,用【点工具】添加曲线上点A;选中点A,【度量】-【点的值】;选中值,【计算】:2*cos(0.4*t(A)),它是函数在该点处的导数,等于此处切线斜率。

jhtbhelp

3. 【构造】-【原点】O,选中上步中的计算式,【构造】-【坐标点】K(1,k,0):横坐标1,纵坐标在下拉列表中找到刚才选择的计算值,即斜率k,竖坐标0.

jhtbhelp

4. 依次选择点O,K,【变换】-【标志向量】,选择点A,【变换】-【平移】,得点T,AT就是切线,它平行于OK。由斜率公式可知,OK的斜率为k(选择的计算式)。AT代表了当前A处曲线前进的方向。

如果对求导不理解或不方便求导,第3,4两步有近似做法:选择t(A),计算t(A)+0.01(生成曲面后主动点范围上要少0.01)。选中这个计算和曲线,【构造】-【对象上的点】-【对象上绘制点】T。AT是近似的切线(离的很近,列表中查找)。这种方法可用于更多曲线或轨迹。

5. 选择点A,【变换】-【平移】,固定向量(0,0,-1),得点H。这个向量(0,0,-1)与切向量(1,k,0)垂直,用其它也可以,决定了圆的起始位置及大小。选中点A、H、T,【构造】-【圆与弧】-【心向圆】,得到圆A。它作为轨迹面的母线。如上图。拖动点A,观察圆的运动。

6. 选择点A,圆A,【构造】-【曲面】-【轨迹曲面】。选择圆A,反向,改颜色,如下图中的曲面就是圆的轨迹。

jhtbhelp

7. 选择圆,改为“弧”,下面范围用自定义“-160,160” ,这样圆上方留有40度的一个缺口。确定后可见管子也“炸裂”了,能看到内部颜色。

8. 双击曲面,点选“跟随”,确定 。保留点A及曲面,隐藏其它。改曲面颜色,拖动点A。曲管随点伸缩。如图。

jhtbhelp

 

8、增加裁剪面对各种曲面进行动态裁剪

在【构造】-【旋转体】中可以添加四种曲面:柱锥台球,在【构造】-【曲面】中可以添加四种曲面:方程曲面,直纹曲面,旋转曲面,轨迹曲面,这8种曲面可以添加【裁剪面】,不显示其在平面的正向一侧的部分。这部分存在但不可见。类比于中学数学中”线性规划“,但这里使用是三元一次不等式,它由平面自动生成。不用你去输入。

选择一个曲面,再选择若干个平面(最多6个),用【编辑】-【修改】-【曲面裁剪】命令为曲面添加裁剪面。成功后弹出提示信息,如图。由平面的编号,到对象列表中可以查看哪些面去裁剪该曲面。

jhtbhelp

圆锥被棱台的这四个面裁剪,如图。拖动点,移动曲面或平面,动态观察裁剪情况。 把一个面反向,观察效果。

jhtbhelp

只选曲面不选择平面,用【曲面裁剪】命令也会弹出当前裁剪面的信息。如果裁剪面已经存在,用此命令,该平面会被移除出裁剪面的集合。删除平面,裁剪面自动移除,但不会删除曲面。它并不是曲面的父对象。如果已经有6个裁剪面,再添加新的,会把最后一个替换掉。

9、参数曲面中可以根据表达式进行条件裁剪与分片着色

裁剪面只是用平面去隐藏掉曲面的一部分,如果要切除掉圆锥面上一个圆柱内的部分或是更复杂的几个部分,如图。又如何做呢?新版增加了【条件裁剪】,可以把满足表达式的部分切除。

jhtbhelp

在曲面属性对话框中,点击【高级】按钮,打开高级属性设置对话框。勾选”条件裁剪“,输入裁剪条件:x^2+z^2<4(它表示平放的一个圆柱内部)。确定后,圆锥面上被挖了两个洞。

jhtbhelp

裁剪条件是一个五元表达式,u、v的含义同曲面方程中的参数u、v,x、y、z就是点的坐标。如果你还需要外部参数,可以使用内存变量操作。表达式(不一定要不等号)的值为非0时为真,满足条件的顶点被切除。 曲面由小平面以直代曲,小平面由三角形或四边形构成。它的顶点被裁掉,这一小块就没有了。所以精度小,裁切的就精细,否则边界不光滑。 但使用小的精度又会增加显卡的运算,要在质量与速度方面去取舍。点选曲面可以网格化显示当前的精细程序。

曲线及轨迹中有”分段着色“,参数曲面中增加了”分片着色“。如上图,勾选后,要输入色调着色函数。颜色值的范围是【0,1】。饱和度和亮度自己调节。白色最亮,黑色最暗。 勾选“炫彩”时的着色由程序自动计算。

例:制作颜色盘

1. 【构造】-【曲面】,对话框中右上方示例中选“圆面”,按下图改参数范围及精度。点“高级”按钮,勾选“分片着色”,修改颜色函数为“u/2*pi”,u表示的是圆周角【0,2*pi】,除以2*pi得到的正是【0,1】。如下图。确定。

jhtbhelp

利用自定义着色函数可以制作漂亮的图案。但着色于顶点,当精度不高时较粗糙。点选曲面,可以看到网格化的曲面精细程序,修改步长,调整着色函数。该函数有五个变量,如果你还需要外部参数,可以使用读取函数get()等。

jhtbhelp

10、表达式或度量值的结果可以用近似分数显示

选择一个计算值,在【属性】中点选“近似分数”,可以以分数形式显示该小数。例如在计算式中输入pi,下方勾选后确定。就显示为22/7,默认两位小数,化分数后分母就不多于两位数。用【显示】-【值精度】-【增加+】修改精度,就可以使分母在三位数范围内,显示为355/113。再增加,此值不变,说明它的精度已经很高了,有6个以上有效数字,达到了图霸显示的限度。

jhtbhelp

选择一个”度量值“或一个“合并到点的值”,需要在值【属性】中勾选“显示为近似分数”。如下图:

jhtbhelp

化近似分数显示的原值绝对值要小于2000,转化后的精度由分母范围确定,分母越大,精度越高。理论上,图霸是把它转化为当前分母位数范围内最精确的分数。由于大多数值在电脑中都是近似值,图霸中只有6个有效数字,所以实际上会有微小的误差。改变精度的命令在【显示】-【值精度】中,它决定分母在2-4位以内。转化后分母为1时显示为整数。显示为分数并不会改变原来值,只是视觉上的,无特殊需要不必使用。你使用它去计算仍会引用原来小数值。

11、增加绘制隐函数图象的功能

曲线最方便的表示法是用参数方程,但有些曲线的显式方程或参数方程并不一定好求,比如平面中曲线 jhtbhelp, 这时我们也可以用隐函数方程 f(x,y)=0来表示二维的曲线。

同样的在三维中,曲面方程也可以用f(x,y,z)=0来表示,这样的曲面就是三维数据场的等值面。

在图霸中如果能用参数方程表示的,不建议使用隐函数方程。它的运算量大,精度低,绘制过程复杂。 所有函数y=f(x)都可以改写成隐函数形式y-f(x)=0,也可以改写成参数方程形式x=t,y=f(t),z=0,强烈建议使用后者。

要添加隐函数图象,点击【构造】-【曲线曲面】-【曲线】或【曲面】下的倒三角,再选择【二维隐函数图】或【三维隐函数图】命令,打开对话框,编辑函数表达式。如果要使用参数,必须先选择,然后点击命令按钮,这样在函数输入时可以使用参变量。

jhtbhelp

例1:根据椭圆标准方程绘制椭圆

添加两个参数a,b,选中后,点击【二维隐函数图】命令,打开对话框,输入标签“椭圆”,使用默认的空间直角坐标系,点击方程下的按钮f(x,y),输入方程,方程右边为0.如下图所示

jhtbhelp

如果要自定义分段着色函数,点击颜色下的“自定义”,再点击hue(x,y)按钮,修改色调函数,输入if(y>0,0.6,0.3),确定后椭圆的上方蓝色下方绿色,如下图:

jhtbhelp

点击“极坐标"修改“坐标系”后,要重新编辑函数式及着色函数,因为极坐标下用的变量不是x,y,而是r,u。否则出错,你可能见不到图象。

范围及细分数直接在数值框中输入,不使用变量及参数,但可以输入计算式。它决定扫描区域及细致程度,包围盒直观地显示上述范围,当发现图形比包围盒小得多的时候,及时修改范围,减小不必要的计算。

由些图形不连续,相邻区域函数值产生突变,用“间断阈值”表示这个变化量。值小就易达到此值,图形会间断。图形间断还与细分数有关。

例2: 绘制三维心形面

点击【构造】-【曲线曲面】-【曲面】下的倒三角,再选择【三维隐函数图】命令,jhtbhelp打开对话框

jhtbhelp

在示例中选择”曲面6“,颜色中点击”单色“,”确定“,添加心形面,选中它,修改颜色,如图:

jhtbhelp

添加曲面后,可以双击它再次编辑方程或着色函数,修改有关选项,观看效果。下图方程为 1/(0.01*(x^2+y^2+z^2))^6+(0.00390625*(x^8+y^8+z^8)/390625)^6-1

jhtbhelp

有些曲面使用”球坐标系“或”柱坐标系“会更简单,半径为8的球面为r-8=0. 下图是球坐标系下的一个隐函数图,注意函数方程及着色函数中的变量r,u,v不要写错,它就是习惯上的r,θ,φ,用r,u,v 方便键盘输入。参看前面“曲线曲面”部分所介绍的参数的含义,r为负数时的意义类似于中学极坐标中的定义。重新选”坐标系“不要忘记改变量名。

jhtbhelp


12、其它改进和BUG的修正。例如个性设置中修改了配色方案,参数条的颜色使用表格的颜色,圆上点的动画更平滑,自定义工具集增加工具,修改帮助中范例文件。

有老师发现圆上点动画循环时不连贯。原因有两个:1.由于累积误差或步长不妥,使周角2*Pi/步长不是整数,使每一周期最后一步与前面的长度不等;2.第一次参数0与最后一次2*pi是同一个位置,重复了一次,会有停顿。可以类似这样修改:步长用pi/30,动画参数范围用pi/30+0.001到2*pi,30也可以改用其它整数。如图:

jhtbhelp

【个性设置】中改“帧频”为4,追踪圆上点。可以慢动作演示,查看设置是否合理。

最后感谢各位提出宝贵意见和修改建议!


软件下载与自主注册 http://tuba.edusoa.com


V4.0-4.5新增与改进功能