明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
123
返回列表 发新帖
楼主: xj6019

撤啦

  [复制链接]
 楼主| 发表于 2020-11-8 21:07:50 | 显示全部楼层
ninja37 发表于 2020-11-8 20:30
楼主帮忙干一下这个小活。
http://bbs.mjtd.com/thread-182574-1-1.html

我的水平也只会点皮毛,只会拼凑代码,回你的帖子吧,凑了半天,凑起来了,试试可以吗
发表于 2020-11-9 12:04:32 | 显示全部楼层
好的  麻烦你了
发表于 2020-11-9 22:38:34 | 显示全部楼层
xj6019 发表于 2020-11-8 19:04
你把 (setq pt2 (list maxx miny))改成
       (setq pt2 (list minx maxy))
试一下

可以了,还要调几个+-符号!多谢楼主
发表于 2020-11-20 15:52:46 | 显示全部楼层
楼主,看看这个能写不:在CAD中设置了“测量比例因子”比如设置的是1:50
当在CAD中想画一条100长的直线(多段线等)时,如直接输入100,则用DLI测出的结果是5000,必须输入2才可以得到100的长度
想要的结果是:输入L命令,提示长度时输入100,结果是2
以下代码是找人写的,能不能合到系统的命令里

(DEFUN WH_DXF(CODE ENTNAME) (CDR (ASSOC CODE (ENTGET ENTNAME))));DEFUN
(defun DTOR (a) (* pi (/ a 180.0)))
(defun RTOD (a) (* 180.0 (/ a pi)))
(defun c:l()
  (command "undo" "be")(setq osmode (getvar "osmode"))(setvar "cmdecho" 0)
  (setvar "osmode" 16383)(vl-load-com)
  (setq blyz (getvar "dimlfac"))
  (setq cd (getreal "\n请输入直线长度"))
  (setq cdreal (/ cd blyz))
  (setq pt1 (getpoint "\n请选择直线起点")
        pt2 (getpoint pt1 "\n请点选以确定直线方向")
  )
  (command "line" pt1 pt2 "")
  (setq ss (ssget "l"))
  (setq scnum (/ cdreal (distance pt1 pt2)))
  (command "scale" ss "" pt1 scnum)
  (setvar "osmode" osmode)
  (command "undo" "e")(princ)
)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-23 03:13 , Processed in 0.140461 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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