明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: cjjh8301

求矩形一次型倒圆角程序

  [复制链接]
发表于 2012-4-14 12:44:41 | 显示全部楼层
下载了,谢谢分享
发表于 2012-9-7 08:44:40 | 显示全部楼层
正好要用到
下載來試試看了
謝謝分享
发表于 2013-3-6 09:26:34 | 显示全部楼层
【KAIXIN】 发表于 2012-2-6 13:38

是我想要的,可惜没币了!
发表于 2014-2-6 05:03:25 | 显示全部楼层
很需要这个啊!可惜明经币不够。。。
发表于 2014-2-8 18:25:26 | 显示全部楼层
  1. (defun sk_ffr(en sk_radius)
  2.   (setvar "FILLETRAD" sk_radius)
  3.   (command "_.FILLET" "P" en)
  4.   )
  5. (defun c:ff(/ sk_radius1 ss en)
  6.   (setq sk_radius (getvar "FILLETRAD"))
  7.   (if (setq sk_radius1
  8.              (getdist (strcat "\n请指定圆角半径<" (rtos sk_radius) ">:"))
  9.       )
  10.     (setq sk_radius sk_radius1)
  11.   )
  12.   (if (setq ss(ssget '((0 . "*polyline"))))
  13.     (progn
  14.       (setq sk_echo1 (getvar "cmdecho"))
  15.       (setvar "cmdecho" 0)
  16.       (while (setq en(ssname ss 0))
  17.         (sk_ffr en sk_radius)
  18.         (setq ss (ssdel en ss))
  19.         )
  20.       (if sk_echo1 (setvar "cmdecho" sk_echo1))
  21.       )
  22.     )
  23.   (princ)
  24.   )
发表于 2014-6-4 10:04:36 | 显示全部楼层
edata 发表于 2014-2-8 18:25

你这个能不能再修改下,弧线也可以倒角,现在只能直线!
发表于 2015-3-12 13:19:43 | 显示全部楼层
very good,就是我要的程序
发表于 2016-7-14 00:12:23 | 显示全部楼层
edata 发表于 2014-2-8 18:25

你好。帮我改改这个小程序好吗?谢谢你
主要是对偏移完成后的矩形倒四个圆角,然后,人工选择两条边,将一个圆角改为倒C角
(defun C:we()
(vl-load-com)
(command "undo" "be")
(setvar "cmdecho" 0)
(command "ucs" "w")
(princ "\n请选择物体:")
(while(null(setq en (ssget))))
(setq gr (getreal"输入偏移量:<5>"))
(if (= gr nil) (setq gr 5))

    (setq rz (getreal"输入R值:<1.5>"))
    (if (= rz nil) (setq rz 1.5))
    (setq cj (getreal"输入C值:<1.5>"))

(if (= cj nil) (setq cj 1.5))
(setq minx0 1e6 miny0 1e6 maxx0 -1e6 maxy0 -1e6)
(setq i 0)
(repeat (sslength en)
   (setq end (ssname en i))
   (setq end_data (entget end))
   (Min_Max)
   (setq i(1+ i))
)
(setq pmin (list minx0 miny0)
        pmax (list maxx0 maxy0))
(command ".rectang" "non" pmin "non" pmax)
(setq ssl(ssget "l"))
(setq omax (getvar "vsmax"))
(command "_offset" gr ssl omax "")
(command "erase" ssl "")

    (command "fillet" "r" "rz")

    (while (setq s1 (entsel "\n-->请点选矩形的任意一条边:"))

    (if (= (cdr(assoc 0 (entget(car s1)))) "LWPOLYLINE")
  
    (command "_.fillet" "P" s1)
   
    (command "_.fillet" s1 PAUSE)
  )
)
(command "fillet" "p" (car(entsel)))


(command "chamfer" "D" cz "" "chamfer")
(command "undo" "e")
(princ)
)

(defun Min_Max()
(vla-getboundingbox(vlax-ename->vla-object end) 'minp 'maxp)
(setq minp (vlax-safearray->list minp)
        maxp (vlax-safearray->list maxp))
(setq minx (car minp)
        maxx (car maxp)
        miny (cadr minp)
        maxy (cadr maxp))
(if (> minx0 minx) (setq minx0 minx))
(if (> miny0 miny) (setq miny0 miny))
(if (< maxx0 maxx) (setq maxx0 maxx))
(if (< maxy0 maxy) (setq maxy0 maxy))
)
发表于 2019-1-24 19:22:24 | 显示全部楼层
发表于 2019-11-30 20:58:16 | 显示全部楼层
批量导角的有没有
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-12-22 23:42 , Processed in 0.190215 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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