找回密码
 欢迎注册
查看: 12489|回复: 10

[讨论] 表正方形和三角形边线的函数

[复制链接]
发表于 2015-11-2 17:18:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?欢迎注册

×
用几何画板做一个动画,如果需要用正方形边上的点来驱动,那么最好正方形的四条边是一个对象,否则就需要做四个动画来衔接。
但是几何画板软件并没有连接、合并线段的命令,也不能定义分段函数,如何实现正方形边界一体化呢?
有两个方法:
一是用近似正方形的曲线,例如:
`\D x^{2n}+y^{2n}=1`(n为2以上的自然数)
n=2和4的图像分别如下左右图:
捕获2.PNG 捕获4.PNG
二是寻找可以完全表示正方形边界的函数,这也不难,例如
`\D\abs x+\abs y=1`的图像如下图左:
捕获1.PNG 捕获3.PNG
当然,在几何画板上实际画以上函数曲线时,方程必须化成参数方程或者极坐标方程,比如`\D\abs x+\abs y=1`化作
`\D\rho=\frac1{\abs{\cos\theta}+\abs{\sin\theta}}`
将这个斜置正方形摆正的方程为`\D\rho=\frac1{\abs{\cos(\theta+\pi/4)}+\abs{\sin(\theta+\pi/4)}}`,图像如上图右。

那么,表正三角形边界的函数是怎样的呢?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2015-11-2 22:42:26 | 显示全部楼层
我能给出 菱形,等腰梯形的 表达式, 三角形的话,有点困难,
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2015-11-3 12:41:49 | 显示全部楼层
拼凑了好久,总算整出来了~
`\D r(t) = \csc\left(t\ \text{mod}\frac{2\pi }{3}+\frac{\pi }{6}\right)`

20151103124048.png
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2015-11-3 13:13:09 | 显示全部楼层
其实这样的图像,无论多复杂,都可以用数据点离散依次连接来绘制,matlab就是基于这种方式的,所以任何二维图都可以绘制(无论是隐函数还是参数方程,或者根本没有表达式)。
因为这种方式不依赖于解析性,所以折线也能绘制。比如三角形,正方形,多边形都可以看成是圆的参数方程的离散逼近。将角度离散成n等分,半径若不变,那就是正n边形。不过估计几何画板对这种坐标点相连形式绘图不是很方便,所以只能用函数形式来绘制。、
之所以上面的四边形可以用绝对值的函数来绘制,乃是因为直角坐标系的特征,绝对值就导致对称,正好坐标轴也是对称的,所以就能绘制。这种对称效果带来的副产品就是——线段得以绘制,而一般情况下函数无法绘制线段,这也是三角形无法绘制的原因,因为底边没法封闭。

假如我们构造一个二维正等轴测图的坐标轴(三个轴线互相成120度),那么三角形也很容易绘制,只是这时候就无法用笛卡尔坐标方程表示,得用这种特殊坐标系的方程表示(三个自变量),但是没有软件支持这种坐标系绘图。

综上,如果非得在笛卡尔坐标系内,用函数的形式来绘制三角形,那么必须解决线段的绘制问题,一次对称只能产生射线,而非线段。因此得拓宽函数的概念,才能绘制出三角形。比如楼上给出的同余函数mod,可以利用周期性做到产生线段的效果。第二种就是利用广义函数(类似符号函数sign,Dirac函数,Heaviside函数这样的),我们可以定义一个"正值符号函数"$$\mathrm{Posi}(x)=\begin{cases}1&(x>0)\\
0&(x\leqslant 0)\end{cases}$$那么下面的这种表达式就能产生三角形$$y\,\mathrm{Posi}(y)(y\,\mathrm{Posi}(y)+|x|-\mathrm{Posi}(y))=0$$
Matlab代码:ezplot('y*(y>0)*((y>0)*y+abs(x)-(y>0))',[-1.2,1.2,-0.2,1.2])
效果

三角形

三角形

点评

对的,不管怎样的方法都脱离不了这种本质。因为解析函数本身水不可能出现不光滑的情况的。  发表于 2015-11-3 13:46
本质上就是分段函数的解析表达  发表于 2015-11-3 13:42
工程领域很常见。单位阶跃函数 ,单位脉冲函数  发表于 2015-11-3 13:41
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2015-11-3 13:31:43 | 显示全部楼层
蛮好玩的。有谁知道,下面的图像的方程是什么?

Untitled-1.png Untitled-2.png Untitled-3.png
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2015-11-3 22:34:02 来自手机 | 显示全部楼层
第一个是`\D\rho=\frac1{\abs{\cos(\theta+\pi/4)}-\abs{\sin(\theta+\pi/4)}}`
正方形的补集,反一个符号。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2015-11-3 23:04:54 | 显示全部楼层
三角形的方程很有启发性,正n边形完全类似可得。
`\D\rho=\sec\left(\theta\ \text{mod}\frac{2\pi}{n}-\frac{\pi}{n}\right)`

评分

参与人数 1威望 +3 金币 +3 贡献 +3 经验 +3 鲜花 +3 收起 理由
wayne + 3 + 3 + 3 + 3 + 3 赞!,这个表达式好看多了

查看全部评分

毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2015-11-8 13:18:38 | 显示全部楼层
  1. triangleEq[{{x1_,y1_},{x2_,y2_},{x3_,y3_}}]/;y2<y1&&y3<y1:=
  2. With[{
  3. s=Det[{{x1,y1,1},{x2,y2,1},{x3,y3,1}}],
  4. s1=Det[{{x,y,1},{x2,y2,1},{x3,y3,1}}],
  5. s2=Det[{{x,y,1},{x1,y1,1},{x2+x3,y2+y3,2}/2}]
  6. },
  7. Abs[2s1-s+2Abs[s2]]+2Abs[s2]==s];
  8. pts={{1,5},{-5,2},{3,-4}};
  9. eq=triangleEq[pts]//Simplify
  10. ContourPlot[Evaluate@eq,{x,-6,6},{y,-6,6}]
复制代码
2015-11-08_131732.png
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-4-26 10:57 , Processed in 0.060721 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表