几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量  


返回   几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 » 仿射空间:CAX软件开发(三)二次开发与程序设计 » CAD二次开发 » AutoCAD二次开发 » ObjectARX(AutoLISP)
用户名
密码
注册 帮助 会员 日历 银行 搜索 今日新帖 标记论坛为已读


 
 
主题工具 搜索本主题 显示模式
旧 2009-04-25, 08:26 PM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 lisp已知任意点,及任意点与曲线的距离,求曲线上的点

lisp已知任意点,及任意点与曲线的距离,求曲线上的点
www.dimcax.com
lisp已知任意点,及任意点与曲线的距离,求曲线上的点
如题,如何得出曲线上的点??
还有一个就是,如果知道曲线与另一条直线间的距离,怎样求出曲线上的这个点?

请参考 vlax-curve-*** 函数

谢谢。。。我先看下函数。。。

刚才看了一下你说的那些函数。。。还是理解不了。。。
比方说:

我想画那条红线
只知道两条竖线的交点和红色线的长度,怎么样才能画出来呢?

我自己的理解是,一定要知道画红线在曲线上的点和水平线上点,但这两点怎么求啊。。。

图片:

图片:

图片:

图片:

下面是给你编的一个程序:
你把下面的程序考到你的cad下给一个名qdian.lsp在命令下用(load"qdian")回车就可使用,
在命令下输入qdian回车,
(defun c:qdian ()
(setq os (getvar "osmode"))
(setvar "osmode" 39)
(prompt "输入线的长度: ")
(setq l (getreal))
(setq p1 (getpoint "两条直线交点: ") p2 (polar p1 (* pi 0.5) l))
(setvar "osmode" 0)
(command "xline" "h" p2 "")
(setvar "osmode" 39)
(setq p3 (getpoint "曲线和xline的交点: "))
(command "xline" "v" p3 "")
(command "line" p3 (getpoint "xline和水平线的交点:") "" )
(command "change" "l" """p" "c" "1" "")
(setvar "osmode" 0)
(command "erase" )
(setvar "osmode" os)
)
gbg

谢谢版主。。。
但是还不是我想要得到的结果。。
我想要的是曲线上画那条红线的点的坐标,以利用此坐标来做起点画另外的一张图。
当然,肯定是用lisp程序

vlax-curve-getfirstderiv和vlax-curve-getparamatdist这两个函数是什么意思?
怎么用?
从书本上找不到,看函数解释的也不是很明白。。。

下面把程序改成红线的两个点的座标.
你到另一图上画p3 p4的线还是不理解.用!p3 !p4 看到它的值
(defun c:qdian ()
(setq os (getvar "osmode"))
(setvar "osmode" 39)
(prompt "输入线的长度: ")
(setq l (getreal))
(setq p1 (getpoint "两条直线交点: ") p2 (polar p1 (* pi 0.5) l))
(setvar "osmode" 0)
(command "xline" "h" p2 "")
(setq aa (ssget "l"))
(setvar "osmode" 39)
(setq p3 (getpoint "曲线和xline的交点: "))
(command "xline" "v" p3 "")
(setq bb (ssget "l") p4 (getpoint "xline和水平线的交点:") )
(command "line" p3 p4 "" ) ;是红线的两个点
(command "change" "l" """p" "c" "1" "")
(setvar "osmode" 0)
(command "erase" aa bb "")
(setvar "osmode" os)
)
gbg

这样我就明白了。。。看来我是把问题想的太复杂了。。。
非常感谢斑竹。。。。

刚才又仔细的看了一遍。。。还是有问题。。。
如果我不用去选择点的话,到了(setq p3 (getpoint "曲线和xline的交点: "))
到了这一点就进行不下去了。。
p3,p4这两点还是需要用鼠标去点取的。。
如果要自动的话还是实现不了。。。
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)
 


主题工具 搜索本主题
搜索本主题:

高级搜索
显示模式

发帖规则
不可以发表新主题
不可以回复主题
不可以上传附件
不可以编辑您的帖子

vB 代码开启
[IMG]代码开启
HTML代码关闭



所有的时间均为北京时间。 现在的时间是 04:17 PM.


于2004年创办,几何尺寸与公差论坛"致力于产品几何量公差标准GD&T | GPS研究/CAD设计/CAM加工/CMM测量"。免责声明:论坛严禁发布色情反动言论及有关违反国家法律法规内容!情节严重者提供其IP,并配合相关部门进行严厉查处,若內容有涉及侵权,请立即联系我们QQ:44671734。注:此论坛须管理员验证方可发帖。
沪ICP备06057009号-2
更多