找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1781|回复: 9

[求助] 定弦长分曲线问题

[复制链接]

已领礼包: 2476个

财富等级: 金玉满堂

发表于 2013-10-19 11:10:24 | 显示全部楼层 |阅读模式

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

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

×
之前有人问过的一个问题,画很容易,但不知道怎么用代码表达。
要求输入的参数:
一、弦长
二、起点(可以是端点,也可以是任意点)
三、方向
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-10-19 11:20:51 | 显示全部楼层
楼主说的是 ARC 还是其他曲线,如果是 Circle or Arc 根据弦长半径可以计算出对应的弧长,有了弧长就可以计算曲线上的点,论坛上有一个这样的 Circle开口程序就是 定弦长 开口

点评

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

使用道具 举报

已领礼包: 2476个

财富等级: 金玉满堂

 楼主| 发表于 2013-10-19 11:28:21 | 显示全部楼层
st788796 发表于 2013-10-19 11:20
楼主说的是 ARC 还是其他曲线,如果是 Circle or Arc 根据弦长半径可以计算出对应的弧长,有了弧长就可以计 ...

SPLINE样条曲线

点评

1 用折半法由一个端点和已知点求 Dist 直至找到符合要求的点,依次循环再找下一点 2 由已知点 作一个圆,求圆与 spline 的交点,找出符合要求的一个交点,然后依次循环  详情 回复 发表于 2013-10-19 11:35
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-10-19 11:35:25 | 显示全部楼层

1 用折半法由一个端点和已知点求 Dist 直至找到符合要求的点,依次循环再找下一点

2 由已知点 作一个圆,求圆与 spline 的交点,找出符合要求的一个交点,然后依次循环

点评

但这个循环怎么写,我不会,求范例!  详情 回复 发表于 2013-10-19 11:47
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2476个

财富等级: 金玉满堂

 楼主| 发表于 2013-10-19 11:47:16 | 显示全部楼层
st788796 发表于 2013-10-19 11:35
1 用折半法由一个端点和已知点求 Dist 直至找到符合要求的点,依次循环再找下一点

2 由已知点 作一个 ...

但这个循环怎么写,我不会,求范例!

点评

不知道楼主什么情况下用这个, xdrx_getsamplept 不够用吗?  详情 回复 发表于 2013-10-19 12:05
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-10-19 12:05:33 | 显示全部楼层
q3_2006 发表于 2013-10-19 11:47
但这个循环怎么写,我不会,求范例!

不知道楼主什么情况下用这个, xdrx_getsamplept 不够用吗?

点评

xdrx_getsamplept 这个函数怎么用我都不知道,在XDRX API 2013.10.16-用户手册 搜索栏输入xdrx_getsamplept,跟本查不到,我怎么用?  详情 回复 发表于 2013-10-19 12:58
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2476个

财富等级: 金玉满堂

 楼主| 发表于 2013-10-19 12:58:40 | 显示全部楼层
st788796 发表于 2013-10-19 12:05
不知道楼主什么情况下用这个, xdrx_getsamplept 不够用吗?

xdrx_getsamplept
这个函数怎么用我都不知道,在XDRX API 2013.10.16-用户手册 搜索栏输入xdrx_getsamplept,跟本查不到,我怎么用?

点评

XDRX API 2013.10.16-用户手册 里面太多专业术语,一点也不通俗,我这样没有基础的翻起来非常头痛,你们学历高的人感觉简单,所以也没法理解,我都是通过看范例学习函数的用法,还有很多都看不懂。。。因为API的函数  详情 回复 发表于 2013-10-19 13:12
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2476个

财富等级: 金玉满堂

 楼主| 发表于 2013-10-19 13:12:13 | 显示全部楼层
q3_2006 发表于 2013-10-19 12:58
xdrx_getsamplept
这个函数怎么用我都不知道,在XDRX API 2013.10.16-用户手册 搜索栏输入xdrx_getsampl ...

XDRX API 2013.10.16-用户手册 里面太多专业术语,一点也不通俗,我这样没有基础的翻起来非常头痛,你们学历高的人感觉简单,所以也没法理解,我都是通过看范例学习函数的用法,还有很多都看不懂。。。因为API的函数虽然很强大,但毕竟用API写的程序还是非常少,也就是提供给程度差的人学习的机会也不太多。。我只是高中生,都是想象画图的过程,来理解代码的意思,懂了才能触类旁通。没见过类似的代码,就没法写,希望版主写个范例以供学习,谢谢!

点评

xdrx_getsamplept 功 能:按给定精度,返回AcDbCurve类曲线和AcDb2dPolyline(旧的POLYLINE)的样本点。 将复杂的曲线用点组成的线段模拟。 调用格式:(xdrx_getsamplept [精度控制]) 说  详情 回复 发表于 2013-10-19 13:12
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-10-19 13:12:52 | 显示全部楼层
q3_2006 发表于 2013-10-19 13:12
XDRX API 2013.10.16-用户手册 里面太多专业术语,一点也不通俗,我这样没有基础的翻起来非常头痛,你们 ...

xdrx_getsamplept

功    能:按给定精度,返回AcDbCurve类曲线和AcDb2dPolyline(旧的POLYLINE)的样本点。
          将复杂的曲线用点组成的线段模拟。

调用格式:(xdrx_getsamplept <AcDbCurve 或 AcDb2dPolyline实体图元名> [精度控制])

说    明:给定的[精度控制]值玄高差越小,精度越高,分段数越大,精度越高。
          精度控制只对曲线段有效,对于POLYLINE,对直线段无效,对其中的ARC段数据起做用。

          若不给[精度控制]参数,那么程序自己计算出相对满足视觉误差的值做为玄高差进行分段。

          [精度控制]:分两种方法
                        1:给整数,按给定的整数分曲线段
                        2:给实数,做为玄高差

注    意:对于AcDbSpline,只能给定"玄高差",若给整数值,那么程序按照计算的相对最优值做为玄高差。

返 回 值:若成功,返回点表,点表肯定包括曲线的开始点和终止点。(p1 p2......),失败返回NIL.

示    例:用LINE模拟SPLINE
            (if (setq en (xdrx_entsel "\n请点取一个Spline<退出>:") '((0 . "spline"))))
                (progn
                    (setq ed (xdrx_getsamplept (car en)))
                    (apply 'command (cons "line" ed))
                    (command "")
                )
            )

点评

试过了,这个函数解决不了我的要求,是自动模拟,不能定弦长和指定起点、方向!  详情 回复 发表于 2013-10-19 15:40
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2476个

财富等级: 金玉满堂

 楼主| 发表于 2013-10-19 15:40:47 | 显示全部楼层
st788796 发表于 2013-10-19 13:12
xdrx_getsamplept

功    能:按给定精度,返回AcDbCurve类曲线和AcDb2dPolyline(旧的POLYLINE)的样本 ...

试过了,这个函数解决不了我的要求,是自动模拟,不能定弦长和指定起点、方向!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-22 01:47 , Processed in 0.203417 second(s), 47 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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