找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 836|回复: 4

[求助] [求助]:关于样条曲线

[复制链接]
发表于 2003-8-7 23:09:23 | 显示全部楼层 |阅读模式

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

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

×
怎么过样条曲线上一点做它垂线
目的是为了用样条线做拉伸路径时候使截面与它垂直
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 145个

财富等级: 日进斗金

发表于 2003-8-8 04:40:19 | 显示全部楼层

Re: [求助]:关于样条曲线

最初由 ago9999 发布
[B]怎么过样条曲线上一点做它垂线
目的是为了用样条线做拉伸路径时候使截面与它垂直 [/B]



如果你要用ACAD交互绘图,那么ACAD论坛很多精彩的帖子,看看下面的连接,就是做你说的。

http://www.xdcad.net/forum/showthread.php?threadid=73262


如果你要写程序,根据参数曲线的数学定义,曲线上任一点的一阶导数,是曲线的切线,得到切向量后,逆时针旋转90度,就得到垂向量了。

XDRX API 提供了:

  1. [font=courier]
  2. 252. xdrx_curve_getFirstDeriv

  3. 功能:获得曲线上一点处的一阶导数(沿曲线前进方向在该点处的切向量)

  4. 调用格式:(xdrx_curve_getFirstDeriv <曲线实体名> <曲线上任一点>)
  5.          (xdrx_curve_getFirstDeriv <曲线实体名> <曲线上任一参数值>)

  6. 返回值:向量(3d点)
  7. [/font]
复制代码

  1. [font=courier]
  2. 328. xdrx_vector_PerpVector

  3. 功能:求垂向量

  4. 调用格式:(xdrx_vector_PerpVector <向量>)


  5. 329. xdrx_vector_Normalize

  6. 功能:求向量的单位向量

  7. 调用格式:(xdrx_vector_Normalize <向量>)

  8. 返回值:向量
  9. [/font]
复制代码
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2003-8-9 22:25:12 | 显示全部楼层
xiexie laoda
shi bushi zuo qumian de chuixian yeshi ruci.
谢谢你介绍的个方法
可我遇到这样的一个问题,用偏移或外延垂线来得到的垂线,用此垂线定义UCS,并加入圆截面在此垂线面内,以样条曲线做拉伸路径做实体,得到的实体两端均可直接量取半径,可遇到这么个问题,当我在用此方法做做样条曲线的其它垂线,并用垂线切割实体,可截面量不出半径,也就是说此实体非全等截面,不知原因,希望点解,谢谢!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-12-11 10:58:48 | 显示全部楼层
REFER TO:
(defun C:test ()
  (vl-load-com)
  (setq p (getpoint "\nPick a Point:"))
  (setq cur (ssname (ssget p) 0))
  (setq obj (vlax-ename->vla-object cur))
  (setq tan (vlax-Curve-GetFirstDeriv obj
              (vlax-Curve-GetParamatDist obj
                (vlax-curve-getDistAtPoint obj p))))
  (setq pe (polar p (atan (/ (cadr tan)(car tan))) 1))
  (vl-cmdf "line" p pe  "")   
)

点评

最后那句要加pi/2吧  详情 回复 发表于 2014-5-16 16:42
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 19个

财富等级: 恭喜发财

发表于 2014-5-16 16:42:13 | 显示全部楼层
lsjjm 发表于 2003-12-11 10:58
REFER TO:
(defun C:test ()
  (vl-load-com)

最后那句要加pi/2吧
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-14 06:22 , Processed in 0.417410 second(s), 44 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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