Geogebra里给带有曲线和直线混合边界的封闭区域填充颜色
2015-07-12 07:32
323 查看
目的
用Geogebra绘制如图所示曲线,并填充如图边界的区域为实心;用代码实现当然是可以的,但是,图形过于简单的时候用代码就不经济了;因为每一个细小变动都还要调整修改代码并预览,非所见即所得,往往不如交互式绘图方便。
为了实现这幅样本图,代码写了下面这么老长,还是调整加预览反复半天之后的效果:
[code]Plot[x^2,{x,0,1},PlotStyle->Red,Epilog->{Dashed,Green,Thickness->0.0005,Line[{{1,0},{1,1},{0,1}}],Blue,Line[{{0,1/4},{1,1/4}}]},Filling->0.25,FillingStyle->Directive[Blue,Opacity[0.38]],AxesStyle->Arrowheads[.035],PlotRangePadding->Scaled[.1],AspectRatio->1,AxesLabel->(Style[#,Black,24,FontFamily->"Times New Roman",Italic,Bold]&/@{"x","y"}),TicksStyle->Directive[Black,16,FontFamily->"Arial"],ImageSize->500,Ticks->{(Range[11]-1.)/10, Automatic}]
尝试
Locus命令失效:
Geogebra 中
Locus命令通常是填充不规则的包含曲线边界在内的区域的推荐命令,大致是:
1. 按照特定的时针顺序定义一个封闭的list,用”{“+”}”包围即可,或用
Sequence[]定义;
2. 然后用
Point[list,0~1]赋值给一个点XX,则点在边界上;
3. 再定义一个点等于此点
Y=X(很诡异,一直不明白怎么回事);
4. 最后用
locus[]命令:
Locus[X,Y]或
Locus[Y,X]就可以了。
这样定义的Locus内封闭的区域可以当作一个单独的对象来使用,对它可以完成颜色、边界、内部纹理等各种填充操作。
但是,这个不看youtube视频或其它类似的flash教程是不容易理解其实现方法的,因为很无厘头。
总而言之,以前的三原色图就是通过LOCUS函数或命令这么弄的(三个圆互相两两交心,然后对相交的每个封闭区域都着不同的单色复色)。
不过这次用同样的方法居然不行了,弄出来的效果如下:
这说明至少目前版本里的
Locus命令的缺陷漏洞很多。不知道它的原理如何、到底如何实现的。估计可以包围的区域跟曲线的曲率半径以及默认的法线正方形有关系。总之是不完美的。
经过Rami(Raymond)提示,改用自定义函数加
IntegralBetween结合使用,定义积分区间作为填充区域的方式发现可行。步骤:
1. 定义上下边界为不同的函数,比如
f(x)=x^2, g(x)=0.25
2. 然后用
IntegralBetween[ f, g, 0, 0.5]定义的是左边积分对应的面积, 而
IntegralBetween[g,f,0.5,1]对应于右边的面积区域;
这样定义的封闭区间也可以作为单独的图形对象进行填充操作。
但用IntegralBetween***三原色图需要定义6个函数和14次积分:
不论如何,Geogebra里面这功能比几何画板强。
相关文章推荐
- JS中变量名作为if条件的真/假
- 如何看待交换机的启动配置文件???
- 【剑指Offer学习】【面试题58:二叉树的下一个结点】
- 二层交换机的接口配置
- 【剑指Offer学习】【面试题57:删除链表中重复的结点】
- Manacher算法--O(n)回文子串算法
- DDMS的使用、内存溢出的调试和模拟器的启动命令参数
- 【2015.07.13周一】【定义】我的csdn博客文档规范
- Eclipse MAT 工具的使用(a)
- 运行tomcat7w.exe tomcat7.exe ,提示 指定的服务未安装 unable to open the service 'tomcat7'
- jQuery中each的break和continue
- 致:51CTO十周岁生日祝福
- 致:51CTO十周岁生日祝福
- 数据库设计技巧
- 线程应用的场景
- Java模式开发之责任链模式
- 最全面的JS表单验证
- Java编程50题
- 黑马程序员-java基础面向对象(2)
- 存储过程