找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: st788796

[每日一码] Spline精确包围盒ClosestPointToProjection应用

  [复制链接]

已领礼包: 1975个

财富等级: 堆金积玉

发表于 2013-11-23 18:09:47 | 显示全部楼层
DEAR SIR, LOOKING NICE
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 3701个

财富等级: 富可敌国

发表于 2013-11-23 20:22:24 | 显示全部楼层
学习一下如何取得最小包围盒:lol
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 488个

财富等级: 日进斗金

发表于 2013-11-23 21:14:03 | 显示全部楼层
谁研究一下 mtext的包围盒,挺坑爹的.

点评

MTEXT对象有 ActualWidth, ActualHeight 方法的,就是去掉空白实际的宽度,再用position, direction flowdirection 组合就能求出了。  详情 回复 发表于 2013-11-25 00:17
这个也简单,你用 Leader 标注后看看那个 Mtext 方式,这个 Mtext 用GetboundingBox 就可以求出实际包围盒  详情 回复 发表于 2013-11-23 21:22
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

 楼主| 发表于 2013-11-23 21:22:11 | 显示全部楼层
aeo 发表于 2013-11-23 21:14
谁研究一下 mtext的包围盒,挺坑爹的.

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

使用道具 举报

已领礼包: 345个

财富等级: 日进斗金

发表于 2013-11-24 21:45:04 | 显示全部楼层
强,学习一下。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2963个

财富等级: 家财万贯

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

使用道具 举报

已领礼包: 315个

财富等级: 日进斗金

发表于 2013-11-24 22:49:03 | 显示全部楼层
有何高明之处?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2013-11-24 23:56:46 | 显示全部楼层
只知道有个vlax-curve-getClosestPointToProjection{:soso_e127:}
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 145个

财富等级: 日进斗金

发表于 2013-11-25 00:17:26 | 显示全部楼层
aeo 发表于 2013-11-23 21:14
谁研究一下 mtext的包围盒,挺坑爹的.

MTEXT对象有 ActualWidth, ActualHeight 方法的,就是去掉空白实际的宽度,再用position, direction  flowdirection 组合就能求出了。

点评

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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

 楼主| 发表于 2013-11-25 05:26:09 来自手机 | 显示全部楼层
XDSoft 发表于 2013-11-25 00:17
MTEXT对象有 ActualWidth, ActualHeight 方法的,就是去掉空白实际的宽度,再用position, direction  flo ...

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

使用道具 举报

已领礼包: 344个

财富等级: 日进斗金

发表于 2013-11-25 11:33:13 | 显示全部楼层
本帖最后由 牢固 于 2013-11-25 11:34 编辑

提炼一下,整理成计算曲线的包围盒函数:
  1. (defun GetCurveBox (curve / obj p1 p2 p3 p4 lst)
  2.   (if (= 'ename (type curve))
  3.     (setq obj (vlax-ename->vla-object curve))
  4.     (setq obj curve)
  5.   )
  6.   (vla-GetBoundingBox obj 'p1 'p3)
  7.   (setq  p1 (vlax-safearray->list p1)
  8.   p3 (vlax-safearray->list p3)
  9.   p2 (list (car p1) (cadr p3) (caddr p1))
  10.   p4 (list (car p3) (cadr p1) (caddr p1))
  11.   )
  12.   (setq  lst
  13.    (list (vlax-curve-getClosestPointToProjection
  14.      curve
  15.      p1
  16.      '(1.0 0 0)
  17.       t
  18.          )
  19.          (vlax-curve-getClosestPointToProjection
  20.      curve
  21.      p2
  22.      '(0 -1.0 0)
  23.       t
  24.          )
  25.          (vlax-curve-getClosestPointToProjection
  26.      curve
  27.      p3
  28.      '(-1.0 0 0)
  29.       t
  30.          )
  31.          (vlax-curve-getClosestPointToProjection
  32.      curve
  33.      p4
  34.      '(0 1.0 0)
  35.      t
  36.          )
  37.    )
  38.   )
  39.   (list
  40.     (apply 'mapcar (cons 'min lst))
  41.     (apply 'mapcar (cons 'max lst))
  42.   )
  43. )


点评

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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

 楼主| 发表于 2013-11-25 11:47:34 | 显示全部楼层
本帖最后由 st788796 于 2013-11-25 11:48 编辑
牢固 发表于 2013-11-25 11:33
提炼一下,整理成计算曲线的包围盒函数:

水平线或者垂直线会是怎样?

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

使用道具 举报

已领礼包: 188个

财富等级: 日进斗金

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

使用道具 举报

发表于 2013-11-25 12:38:13 | 显示全部楼层
spline等分1000段的模拟方法
spline包围盒02.gif

点评

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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

 楼主| 发表于 2013-11-25 12:51:41 来自手机 | 显示全部楼层
xyp1964 发表于 2013-11-25 12:38
spline等分1000段的模拟方法

再加密等分也不如桌子提供的方法

点评

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 07:43 , Processed in 0.984818 second(s), 63 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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