明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: masterlong

[源码] CAD截图做大样

  [复制链接]
 楼主| 发表于 2017-11-28 21:20 | 显示全部楼层
G版的局部放大程序
我这里十次有九次出错
所以干脆自己做了这么一个
利用CAD本身的功能
加一些定位操作就搞定了
发表于 2017-11-28 21:32 | 显示全部楼层
masterlong 发表于 2017-11-28 21:17
不是建筑专业对天正不熟悉
个人习惯要求建筑提资转t3
需要画大样的时候

哪个版本开始有EXPORTLAYOUT?
 楼主| 发表于 2017-11-28 21:38 | 显示全部楼层
本帖最后由 masterlong 于 2017-11-28 21:39 编辑

过去一直用XP+2004
但是为了测试程序兼容性
也装了08、10、12、14
偶然发现12里有这么个功能
但没有特意去看哪个版本开始有的
发表于 2017-11-28 23:16 来自手机 | 显示全部楼层
2010版就有,2013 2016都不支持天正
发表于 2017-11-29 13:26 | 显示全部楼层
学习一下。谢谢
 楼主| 发表于 2017-11-29 17:38 | 显示全部楼层
CAD是不可能主动支持天正软件的
因为天正是基于CAD进行的二次开发软件
天正图元都是自定义图元

发表于 2017-11-29 23:47 | 显示全部楼层
本帖最后由 zixuan203344 于 2017-11-30 00:08 编辑

缺少的俩函数
;p1基于p0放大sc倍
(defun p0_sc_p1(p0 p1 sc)
  (mapcar(function(lambda(x y)(+ x (* (- y x) sc)))) p0 p1)
)
;两点的中点
(defun getmidpo(lst)
  (mapcar(function(lambda(x y)(/ (+ x y) 2)))(car lst) (cadr lst))
)


另外下面函数可以简写
;;选择集转为图元列表
(defun ss2list ( ss / n i elist )
        (vl-remove-if-not(function(lambda(x)(= (type x) 'ENAME))) (mapcar 'cadr (ssnamex ss)))
)

评分

参与人数 1明经币 +1 收起 理由
masterlong + 1 不错的新人,应该鼓励

查看全部评分

发表于 2017-11-30 09:29 | 显示全部楼层
其实不算新人,来这里注册一年有余了,只不过很少发帖子和回复罢了
 楼主| 发表于 2017-11-30 09:35 | 显示全部楼层
与选择集有关的函数
在执行前都应该先检验参数是否选择集
楼上的函数可以这样改
(if (= (type ss) 'Pickset)  (mapcar 'cadr (ssnamex ss)))
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2017-11-30 09:39 | 显示全部楼层
本帖最后由 masterlong 于 2017-11-30 09:42 编辑

;;求点对中点
(defun getmidpo( pts / P1 P2 X Y )
        (setq p1 (car pts) p2 (cadr pts))
        (if (= (length p1) (length p2))
                nil
                (setq p1 (list (car p1) (cadr p1))
                                p2 (list (car p2) (cadr p2))
                )
        )
        (mapcar '(lambda (X Y) (/ (+ X Y) 2.0)) P1 P2)
)

“/”在使用时
要注意除数是整数还是小数
另外p1、p2格式不同是容易被忽视的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-3 12:37 , Processed in 5.789405 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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