QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
11天前
查看: 3201|回复: 5
收起左侧

[求助] list给出空间曲线点坐标的顺序是什么?

[复制链接]
发表于 2010-12-13 22:14:00 | 显示全部楼层 |阅读模式 来自: 中国山东青岛

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

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

x
本帖最后由 tataki 于 2010-12-14 17:37 编辑 ; i5 h( R) _3 Z, ?8 @7 X
# ^/ `. j) _4 c0 d3 O
之所以这么问,源于这样一个问题,两个圆柱相交,会产生一条交线,也就是相贯线。/ W1 E+ F; F  V. p$ N2 z! A
这个相贯线是空间曲线,就像图上那个红色和白色柱子的交线9 N$ w" E' L2 X0 y9 r. Z
现在的问题就是“如何求出这个空间曲线的长度?”# g' f& u& _  m9 o0 l
我是这样想的,先用并集,然后炸开,这样就在cad里面把这个相贯线给显示出来了,然后该如何求长度呢?很显然,这个曲线是拟合出来的吧,是spline的吧。然后选中这条线,就可以看到它是n个点拼成的。然后我就想,提取每个点坐标,然后以直代曲,求出相邻点距离后求和就可以了。
% D1 Y/ G, F- F. r; u2 k7 \9 l9 }; x但是有几个地方一直想不明白:/ }. e$ I- w, x0 n2 w" U/ h
1.我用li这条曲线后,是给出了一大堆坐标,但是我不清楚,cad是怎么把这些坐标顺序确定的,是挨个取点的吗?如果不是,那我算两点距离的方法就错了,如果是,cad是把哪个点作为第一个的,然后接下来的点是不是按照某一种顺序,比如逆时针或者顺时针挨个取得?还是cad按坐标大小进行某种排列的?3 N  o, H$ h6 W
2.第二点就是精度问题,cad一般用不超过300个点(就是控制点)显示的曲线,当然点多了,精度会高,那如何提高精度呢?就是如何增加这个空间曲线上的点呢?
: X/ ^+ y8 d$ k* `3,我有一次弄了个相贯线是椭圆的情况,那样控制点就少很多了,但问题是,怎么求椭圆,比如半个椭圆的周长呢?解析几何没学好...  f5 X, }' m- W5 g) s- l
9 b) j  h0 w0 B0 j5 V
问得问题可能有些二,主要是不知道怎么去算这个曲线的长度,只好出此下策了,如果大家有好的方法,请告诉我下,很感谢!
3 i( C# n0 K+ ]附上该曲线,大家有能弄出长度的,麻烦回个帖,说下怎么做的。谢谢!
& a! V7 [+ q* a% ~+ Z9 R' \1 ^; l# C2 D$ H5 b2 y! S
回复1楼,已经换成2004版本的了,呵呵,本以为2010的已经普及了。

空间曲线长度(为2004版本).dwg

92.68 KB, 下载次数: 7

发表于 2010-12-14 08:37:45 | 显示全部楼层 来自: 中国台湾
樓主所附的文件是 AC1024開不了的人就免下了
 楼主| 发表于 2010-12-14 17:41:37 | 显示全部楼层 来自: 中国山东青岛
2# SunVei $ L9 N8 E  P9 l4 b' p/ ^+ Q, @

: \, c  Q5 o: I1 M已经把文件格式换成2004的了,麻烦楼上看看,帮我解决下这个问题,先谢谢了
发表于 2010-12-14 21:10:38 | 显示全部楼层 来自: 中国台湾
Command: list) ?1 \0 U0 B8 r; K0 Z
Select objects: 1 found             ; white entity1 N% C8 h, D& b4 g( W
Select objects:1 [, _0 P" S0 B& y  H1 y
                  SPLINE    Layer: "0"
7 F# E9 [& l6 u3 \' x# F( ~                            Space: Model space  R" \% a) z! Z  G$ L
                   Handle = 21c
0 L+ \8 s; d! Y: n; [) f                    Circumference: 3012.0039- k* w( Q2 g! _$ a8 S
                            Order: 4
1 b3 \3 [: N  b# O$ L: ~, G* z                       Properties: Non-Planar, Non-Rational, Periodic
+ T& d: x; i# w1 A4 \% Z  _" a                 Parametric Range: Start   0.0000( `  f+ G% W/ l, O
                                     End2917.7171& U" u9 L. {) C% b2 `9 D) J+ j1 ^
         Number of control points: 214
' @* d( A, A! \8 z: \3 z                   Control Points: X = 6807.0361, Y = 1332.2355, Z = -400.0000( G5 _1 V- V8 z
% p# g2 @; I' `$ t5 @2 ^
1 q4 Y: B9 _$ S8 d4 J: {4 I% r
您是要提取这个吗?  Circumference: 3012.0039
8 [- R/ Z8 f% h" K# @- S0 b

评分

参与人数 1三维币 +3 收起 理由
woaishuijia + 3 应助

查看全部评分

 楼主| 发表于 2010-12-15 21:42:36 | 显示全部楼层 来自: 中国山东青岛
先谢过楼上了,不过
' Q! a/ D. m& }& r5 Z6 {, r  O% n那个数,周长Circumference: 3012.0039,我认为是没有太大意义的。因为这个数不是一个很精确的值,- r* i$ ~5 h1 l3 V6 d- Q% V8 \
我验证过的,这个周长实际上就是从
8 l/ {' {9 J0 D! s9 fControl Points: X = 6807.0361, Y = 1332.2355, Z = -400.0000
  _; B7 y: s  \4 M这一句开始,后面214控制点的坐标用空间距离公式求和算出的。# A; U# r5 E9 b" [( u+ v& J/ y

+ J) r8 n" }7 q' a/ r! _# x* ~所以,我觉得用这个数来做周长不太合适,因为控制点太少了,不过也验证了一点,这214个控制点的坐标,cad是按照一定顺序取的,可是是什么顺序,还是不知道啊。7 f9 }, n" E: `6 C. n- D! b9 j3 N6 _
另外,就是怎么增加控制点的数量了,214个比较少,如果有1000的话,那个周长就应该很接近实际的了。: @$ @; c0 N/ L7 O# s% e( p2 ~
盼解答!
% ]& }6 T5 [4 g总之先感谢楼上的热心!
头像被屏蔽
发表于 2010-12-26 09:23:12 | 显示全部楼层 来自: 中国福建莆田
提示: 作者被禁止或删除 内容自动屏蔽
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

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