明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1535|回复: 3

求将符合条件的圆半径变成一半,不符合条件的圆变红色

[复制链接]
发表于 2013-1-4 23:46:10 | 显示全部楼层 |阅读模式
1明经币
本帖最后由 品茗新秀 于 2013-1-6 17:45 编辑

求将符合条件的圆半径变成一半,不符合条件的圆变红色
这个条件就是当两圆相交或重合是条件

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

最佳答案

查看完整内容

这个条件图也太让人看不懂了,以自己的理解写了一个 圆内圆的时候可能会将内圆变红
发表于 2013-1-4 23:46:11 | 显示全部楼层
这个条件图也太让人看不懂了,以自己的理解写了一个
圆内圆的时候可能会将内圆变红
  1. (defun x_ssn (ss / n lst)
  2.   (repeat (setq N (sslength ss))
  3.     (setq LST (cons (ssname SS (setq N (1- N))) LST))
  4.   )
  5. )
  6. (defun circle_lst (en n / ent pt ptc dist ang lst tmp)
  7.   (setq        ent  (entget en)
  8.         pt   (cdr (assoc 10 ent))
  9.         dist (cdr (assoc 40 ent))
  10.         tmp  0
  11.         ang  (/ pi n 0.5)
  12.         lst  nil
  13.   )
  14.   (repeat n
  15.     (setq ptc (polar pt tmp dist)
  16.           tmp (+ tmp ang)
  17.           lst (cons ptc lst)
  18.     )
  19.   )
  20.   lst
  21. )
  22. (defun c:test1 (/ ss lst en)
  23.   (setq ss (ssget '((0 . "circle"))))
  24.   (setq lst (x_ssn ss))
  25.   (while lst
  26.     (setq en (car lst))
  27.     (setq
  28.       ss (ssdel en (ssget "cp" (circle_lst en 64) '((0 . "circle"))))
  29.     )
  30.     (if        (> (sslength ss) 0)
  31.       (progn
  32.         (mapcar        '(lambda (cir)
  33.                    (vla-put-Diameter
  34.                      (vlax-ename->vla-object cir)
  35.                      (cdr (assoc 40 (entget cir)))
  36.                    )
  37.                  )
  38.                 (x_ssn ss)
  39.         )
  40.         (vla-put-Diameter
  41.           (vlax-ename->vla-object en)
  42.           (cdr (assoc 40 (entget en)))
  43.         )
  44.         (setq
  45.           lst (foreach n (x_ssn ss) (vl-remove n (vl-remove en lst)))
  46.         )
  47.       )
  48.       (progn
  49.         (vla-put-color (vlax-ename->vla-object en) 1)
  50.         (setq lst (cdr lst))
  51.       )
  52.     )
  53.   )
  54.   (princ)
  55. )
回复

使用道具 举报

发表于 2013-1-5 14:54:45 | 显示全部楼层
用arx 调用intersectWith接口就解决问题了

评分

参与人数 1明经币 +1 收起 理由
品茗新秀 + 1 赞一个!

查看全部评分

回复

使用道具 举报

发表于 2013-1-6 08:24:31 | 显示全部楼层
请提供dwg测试图,并详细说明通过什么操作达到什么结果

评分

参与人数 1明经币 +1 收起 理由
品茗新秀 + 1 赞一个!

查看全部评分

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-2-27 16:42 , Processed in 0.150486 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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