明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1614|回复: 3

[提问] 怎么能够自动判别cad图中的绘图比例,并提取

[复制链接]
发表于 2014-7-2 15:23:55 | 显示全部楼层 |阅读模式
我在论坛中找到了一个画截断线的小程序,原来程序中需要手动输入比例,
我想改成自动提取当前绘图比例并默认,需要什么函数啊
(defun C:jdx (/ ang lay pt1 pt2 dis x1 pt3 pt4 pt5 pt6 scale)
        (setvar "CMDECHO" 0)
        (setq lay (getvar "clayer"))
        (command "color" "bylayer")
        (command "layer" "m" "jdx" "c" "m" "jdx" "")
        (setq scale (getreal "\nScale<300>:"))
        (if (= scale nil)
                (setq scale 300)
        )
        (setq pt1 (getpoint "\nFirst point:"))
        (setq pt2 (getpoint pt1 "\nSecond point:"))
        (setq ang (angle pt1 pt2))
        (setq dis (distance pt1 pt2))
        (setq x1 (/ (- dis (* 2 scale)) 2))
        (setq pt3 (polar pt1 ang x1))
        (setq pt4 (polar pt1 ang (+ x1 (* 2 scale))))
        (setq pt5 (polar pt3 (+ ang 1.32582) (* 2.0616 scale)))
        (setq pt6 (polar pt4 (- ang 1.81577) (* 2.0616 scale)))
        (command "pline" pt1 "w" "0" "0" pt3 pt5 pt6 pt4 pt2 "")
        (command "layer" "s" lay "")
        (princ)
        (princ)
)

发表于 2014-7-2 15:42:40 | 显示全部楼层
没有“当前绘图比例”这样的设置 - 除非你自己创建一个。
否则你只能通过视窗的比例设置,字高或尺寸的比例设置DIMSCALE得出相应的比例。
发表于 2014-7-2 15:53:01 | 显示全部楼层
如果你用天正的话可以这样解决:
1,任意画一个尺寸标注。
2,通过列表信息查询出这个尺寸标注的出图比例,代码是47
3,删除这个尺寸标注,做到踏雪无痕... ...

点评

做到踏雪无痕……  发表于 2014-7-3 17:57
发表于 2014-7-2 23:58:30 | 显示全部楼层
本帖最后由 llsheng_73 于 2014-7-3 00:02 编辑

南方cass软件它是把图幅比例尺存入了一个系统变量userr1里边,这个方法是可以借用的
通过 (setvar 'userr1 500)把图幅比例尺1:500保存在图幅里边
通过(getvar 'userr1)可以得到该图幅的比例尺数据500.0
关于userr1-5可以保存5个实数,它们随图形保存的
      useri1-5可以保存5个整数,也是随图形保存的
这10个数据设计好了是可以保存很多东东的
     另外还有users1-5可以保存5个字串,但可惜的是它不能随图形保存,除了当做全局变量外没想出它的用处
    具体可以查下这几个系统变量
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-24 09:18 , Processed in 0.179599 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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