返回列表 回复 发帖
12# 柳烟
这个问题缺少答案,我来给一个:

圆锥圆台圆柱消隐工具.zip (5.88 KB)

18# inRm


方老师一句话说到要点:切线。抓到了这点怎么个杀猪法就由自己的喜欢做了。呵呵。
22# inRm
用圆锥的切面消隐,但还不够,因为有底面的翻转。
切面见则可见,切面隐,则隐,但是不考虑底面还是不行。
我是把底面和切面算在一起共同创建了一个逻辑值,用这个逻辑值进行消隐的。
尺规法我觉得也得要一个这样的逻辑值才可以吧。
21# 柳烟
柳老师,我算服你了,你看东西太仔细了。呵呵。我看东西就没你这么细心。
20# 柳烟


我n久就贴了文件了,你自己不看,你自己把问题想的太复杂了,13楼就做好的,你自己看啊,
你可以把图像看看。

虚实线圆锥.gsp (20.57 KB)

27# 柳烟
柳师也怪,我早就知道你喜欢的是2根线,挑个椭圆这种图了,呵呵,但我不太喜欢。不过我还是弄一个。
31# 柳烟
有这个问题
30# 柳烟


修复了这个缺陷,重发,缺陷不是做法的问题,是画板显示轨迹时画板本身的缺陷导致的。
当椭圆扁平到接近线段时,线和椭圆的两个交点就不能很好的分开显示。

更新:一线挑个蛋圆锥.gsp (31.93 KB)

射影几何的pascal定理,这是最简单的办法,但是有缺陷

两线夹蛋圆锥绘制:完美解决(平行投影时),大家都把问题想复杂了。
其实用椭圆的参数方程很容易求出从椭圆外一点向椭圆所引切线的切点坐标的,
可以直接给出切点坐标公式。真是把简单问题复杂话。
椭圆:x=acost+m,y=bsint+n
那么从椭圆外一点D(0,h’)向椭圆引切线,其切点的参数满足:sint=b/h‘
故:t=arcsin(b/h').就这么简单。在原象园上把正x轴上的点旋转t度,得
点p,把p点和它关于y轴对称的点p‘一起描绘到空间坐标系就可以了,这个
办法要冻结p和p’。如果把参数带人椭圆的参数方程直接求出切点坐标,然
后在xy系统坐标系里面直接描绘出切点也可以。
用射影几何的办法作图虽然简单,但是在显示切线上不理想。还是回归代数法。
在7b坐标系里面,设圆锥底面半径是r,圆锥的高是h,则h'=r(-sinφ),a=hcosφ。
φ为7b坐标系的系统参数。这个参数描述的是7b坐标系的前后翻滚。

两线挑个蛋圆锥-(完美解决).gsp (46.55 KB)

在下一页41#下载工具,这里是平行投影

36# 柳烟
其实原理很简单的:你把画好的立体圆锥,换一个角度看,把它看成系统直角坐标系里面的
图形,这样立体的圆锥就是一个椭圆和它的两切线。而椭圆的切线是从椭圆的的外不一点引的。
不仿把椭圆看成是位于坐标原点的椭圆,这样圆锥的顶点就坐标就是D(0,h'),这个点D是动的,
它引起圆锥的切线(空间看就是圆锥的母线)动态的运动。
不仿设切点坐标为:x=acost,y=bsint,这条切线要过点D的,把切点和D点的坐标带人切线方程
就可以解出切点参数t=arcsin(b/h'),这个h‘在7b中是可以计算的,其实就算计算不了,直接度量
也可以。在其它平台如何我就不知道了。有了这个参数t后,只要对园在正x轴上的交点旋转t,和
180°-t,就得到了这两个关键点,园上的这两个点对应的就是空间圆锥的母线的与底面的交点。
其它平台如何变换过去,我想可以用自定义变换过去。我是用的冻结点在xy平面工具作的,其它平台
如何未知。不过旋转角t是与平台无关的一个参数。椭圆上一点的切线斜率可以用导数求。
说了这么多总结起来就是:
  把空间画好的圆锥重新看成xy平面内的切线和椭圆。这才是主要是思想。
返回列表