明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2622|回复: 13

[求助]求椭圆逼近程序

  [复制链接]
发表于 2008-5-6 22:08:00 | 显示全部楼层 |阅读模式

求一个椭圆逼近程序,用直线拟合椭圆,输出一个含有数控G代码直线命令G01的文档,能输出精度越高越好了 ^_^

能做出来的帮一下忙吧 鞠躬感谢

发表于 2008-5-7 08:24:00 | 显示全部楼层

为何用直线?圆弧行吗?

只要将系统变量PELLIPSE设成1,再画椭圆就能得到由16段圆弧组成的椭圆。

 楼主| 发表于 2008-5-7 19:41:00 | 显示全部楼层

要求是用直线以较高精度逼近椭圆,不让用圆弧啊,加工时精度没有直线逼近高吧 求高人帮忙~~~

发表于 2008-5-8 13:59:00 | 显示全部楼层
不知道什么是输出一个含有数控G代码直线命令G01的文档.
得到模拟的顶点倒是简单.
你想用多少个顶点就直接循环获得就可以了,
(vlax-curve-getpointAtParam ellipseent 0到6.28(步进参数))
发表于 2008-5-8 17:51:00 | 显示全部楼层
本帖最后由 作者 于 2008-5-8 17:59:55 编辑

我这有个将曲线转换成多段线的程序,而且可以任意设置吻合精度。联系:ljttjl@ tom.com

以下为部分源码:

(defun c:xgqx ()
  (setq bl (getvar "cmdecho"))
  (setvar "cmdecho" 0)
  (setq bl1 (getvar "osmode"))
  (setvar "osmode" 16384)
 
  (vl-load-com)
  (setq a (car (entsel "\n请选择要修改的对象!")))

  .....

  (setq i (getreal "\n请输入线段间隔值:"))
  (setq i1 i)
  (command ".pline" qd)
  (while (< i1 qc)

    ......

    (setq i1 (+ i1 i))
  )
  (command zd "")
 
  (setvar "cmdecho" bl)
  (setvar "osmode" bl1)
  (princ "\n修改已完成,请查看!")
  (princ)
)

发表于 2008-5-8 20:39:00 | 显示全部楼层

楼上的好牛啊,前面一大堆,后面一大堆,最重要的计算点的部分却省略了

发表于 2008-5-8 23:23:00 | 显示全部楼层
本帖最后由 作者 于 2008-5-13 9:39:31 编辑

游客,本帖隐藏的内容需要发帖数高于 5 才可浏览,你当前发帖数只有 0

发表于 2008-5-9 09:45:00 | 显示全部楼层
后面那位高手的东西看不到。顶出来
 楼主| 发表于 2008-5-12 20:35:00 | 显示全部楼层

谢谢7楼ZZXXQQ高人的帮助

可是这个程序输出的nc文件是空的?

另外模拟的直线需要是等间距的,7楼的程序是等角度的?

能否再帮忙修改一下 鞠躬感谢!

发表于 2008-5-13 09:43:00 | 显示全部楼层

文件未关闭。7楼已改。等间距误差大些。

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

本版积分规则

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

GMT+8, 2024-9-28 18:19 , Processed in 0.191961 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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