明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: lzz0517

椭圆弧旋转后计算角度问题

  [复制链接]
发表于 2012-6-4 10:41:09 | 显示全部楼层
我现在说的点是你开始提到的点。不是我后来说的那点。
另外,建议你检查图形是否有错误后重新导出 DXF再测试。
 楼主| 发表于 2012-6-4 10:52:28 | 显示全部楼层
highflybird 发表于 2012-6-4 10:41
我现在说的点是你开始提到的点。不是我后来说的那点。
另外,建议你检查图形是否有错误后重新导出 DXF再测 ...

-1*cos(106.49117163)*3217725.0267-1*sin(106.49117163)*532343.1616+(-399474.16370
012)=3489.30538
-1*sin(106.49117163)*3217725.0267+1*cos(106.49117163)*532343.1616+3238438.335050
16=1964.32284
那你能告诉我,在这里用来计算的坐标(3217725.0267,532343.1616)是怎么计算的呢?
发表于 2012-6-4 10:56:53 | 显示全部楼层
这个不是我计算得来的,是用vlax函数得到的。
 楼主| 发表于 2012-6-4 11:07:32 | 显示全部楼层
怪不得咯,我就是想通过椭圆弧的参数来进行计算,通过别的函数来获取,里面的算法是怎么样的呢?vlax函数这个是什么语言的?
发表于 2012-6-4 11:08:37 | 显示全部楼层
我这有个怀疑,因为你给出的椭圆长短比太接近了,引起了角度计算上的误差。
 楼主| 发表于 2012-6-4 11:18:13 | 显示全部楼层
我当时也想过,读取参数,判断长短半径是否很接近,如果是,就把它当圆弧来计算,不是就按椭圆弧来计算,得到的结果依然不对,这个让我很郁闷!不过要是能知道vlax函数里面的原理就好了!
发表于 2012-6-4 11:23:35 | 显示全部楼层
本帖最后由 highflybird 于 2012-6-4 11:25 编辑

哦,我看到缘故了。
楼主忘记检查这个椭圆的 210选项了,就是法线矢量。
这个椭圆弧的法线矢量是 (0 0 -1)注意正是这个-1,意味这这个椭圆弧是个3维旋转了180度的。就是可能是跟XY平面镜像,或者旋转了的。
210
0.0
220
0.0
230
-1.0
也就是说,如果要在平面上正常显示的话,看起来的起点角度,实际上是终点角度,它们是相反的。
 楼主| 发表于 2012-6-4 11:25:20 | 显示全部楼层
这个三维参数要怎么用呢?我只懂二维的旋转平移!
发表于 2012-6-4 11:35:42 | 显示全部楼层
本帖最后由 highflybird 于 2012-6-4 12:26 编辑

假设法线矢量是 '(0 0 -1)
意味着你最终要用  如下的矩阵再乘以你先前的变换矩阵
-1 0 0
0 1 0
0 0 -1


开始的变换矩阵写错了,现已经纠正。
 楼主| 发表于 2012-6-4 11:41:22 | 显示全部楼层
本帖最后由 lzz0517 于 2012-6-4 11:50 编辑

那这个计算坐标的时候,角度要先换过来吗?就是说起点X=长半径*端点角度的余弦值?进行矩陈乘法时还有顺序问题,这个顺序是怎么样的?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-15 01:12 , Processed in 0.315831 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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