乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 33|回复: 8

[编程交流] 帮我,用lisp复制一个框架!

[复制链接]

16

主题

73

帖子

57

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
80
发表于 2022-7-5 20:06:23 | 显示全部楼层 |阅读模式
大家好。
我有一张大图。我想把帧复制到另一帧。
请帮我写一个lisp。非常感谢你!
文件附加:
210625dswllsy3yuowvvru.jpg
 
 
210627uq33orph1pblvdck.jpg
 
 
210629z7pr58qrd5epmddd.jpg
文件dwg:
https://www.mediafire.com/?v7qn32qcaq2ighf
非常感谢。
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 20:20:21 | 显示全部楼层
尝试使用具有大图片的布局,然后使用缩放C在小布局内拾取点并设置比例等。
回复

使用道具 举报

0

主题

375

帖子

385

银币

限制会员

铜币
-7
发表于 2022-7-5 20:23:22 | 显示全部楼层
我同意比格尔的建议,但如果你想在模型空间中工作,试试这个老套路。
  1. (defun C:CUT (/ *error* e p1 p2 p3 ss echo osmode)
  2. (setq echo (getvar "cmdecho"))
  3. (setq osmode (getvar "OSMODE"))
  4. (defun *error* (msg)
  5.    (if msg (princ msg))
  6.    (command "_UNDO" "E")
  7.    (setvar "OSMODE" osmode)
  8.    (setvar "cmdecho" echo)
  9.    (princ)
  10.    )
  11. (setvar "OSMODE" 0)
  12. (setvar "cmdecho" 0)
  13. (if (and
  14.        (setq p1 (getpoint "\nFirst corner: "))
  15.        (setq p2 (getcorner p1 "\nSecond corner: "))
  16.        (progn (if (not etrim) (load "extrim.lsp" "Extrim not found")) T)
  17.        etrim
  18.      )
  19.    (progn
  20.      (command "_RECTANGLE" p1 p2)
  21.      (command "_UNDO" "BE")
  22.      (setq e (entlast))
  23.      (setq p3 (polar p1 (angle p2 p1) (* 0.5 (distance p1 p2))))
  24.      (etrim e p3)
  25. ;;;      (entdel e )
  26.      (setq ss (ssget "W" p1 p2))
  27.      (command "_copybase" p2 ss "")
  28.      (command "_UNDO" "B")
  29.      (command "_pasteclip" pause)
  30.      )
  31.    )
  32. (command "_UNDO" "E")
  33. (setvar "OSMODE" osmode)
  34. (setvar "cmdecho" echo)
  35. (princ)
  36. )
回复

使用道具 举报

16

主题

73

帖子

57

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
80
发表于 2022-7-5 20:30:57 | 显示全部楼层
亲爱的Stefan BMR!
我喜欢你的方式,因为这是我的习惯(在模型上工作)!然而,如果我从矩形框架的两个角点开始,autolisp工作似乎与剪切autolisp绘图的框架并不完全一样。那么您可以通过选择框架(矩形)来编辑autolisp?请帮帮我!如果是这样,那太好了。谢谢并致以最良好的问候!
零件编号:
因为,当我加载你的lisp时,是Snap(Osnap)全部清除,而不是选择我的例程(端点、中点、最近点)
非常感谢Stefan BMR!
回复

使用道具 举报

0

主题

375

帖子

385

银币

限制会员

铜币
-7
发表于 2022-7-5 20:40:05 | 显示全部楼层
试试这个。无法选择对象,但Osnap设置可用。
  1. (defun C:CUT (/ *error* e p1 p2 p3 ss echo undo)
  2. (setq echo (getvar "cmdecho"))
  3. (defun *error* (msg)
  4.    (if msg (princ msg))
  5.    (setvar "cmdecho" echo)
  6.    (princ)
  7.    )
  8. (if
  9.     (and
  10.        (setq p1 (getpoint "\nFirst corner: "))
  11.        (setq p2 (getcorner p1 "\nSecond corner: "))
  12.        (not (equal p1 p2 1e-5))
  13.        (progn (if (not etrim) (load "extrim.lsp" "Extrim not found")) T)
  14.        etrim
  15.      )
  16.    (progn
  17.      (setvar "cmdecho" 0)
  18.      (setq undo (getvar 'undoctl))
  19.      (if (= 0 (logand 1 undo)) (command "_UNDO" "_ALL"))
  20.      (command "_RECTANGLE" "_non" p1 "_non" p2)
  21.      (command "_UNDO" "_M")
  22.      (setq e (entlast))
  23.      (etrim e (getvar 'vsmin))
  24.      (command "_zoom" "_o" e "")
  25.      (setq ss (ssget "W" p1 p2))
  26.      (command "_copybase" p2 ss "")
  27.      (command "_UNDO" "_B")
  28.      (command "_pasteclip" pause)
  29.      (if (= 0 (logand 1 undo)) (command "_UNDO" "_C" "_NONE"))
  30.      (setvar "cmdecho" echo)
  31.      )
  32.    )
  33. (*error* nil)
  34. (princ)
  35. )
回复

使用道具 举报

16

主题

73

帖子

57

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
80
发表于 2022-7-5 20:44:44 | 显示全部楼层
尊敬的Stefan BMR!
看来你还没有签出我寄来的图纸。我下载了你的lisp,并在我的图纸上再次尝试不工作的lisp(矩形框架的选定角)。
请直接在我的图纸上试用(附件)。
文件附加:
http://www.mediafire.com/download/v7qn32qcaq2ighf/Help_Copy_Frame.dwg
真诚的BMR。
文件视频演示您的lisp:
非常感谢你!
回复

使用道具 举报

0

主题

375

帖子

385

银币

限制会员

铜币
-7
发表于 2022-7-5 20:56:38 | 显示全部楼层
添加红线
  1. ..........
  2. (etrim e (getvar 'vsmin))
  3. [color=red](command "_zoom" "_o" e "")[/color]
  4. (setq ss (ssget "W" p1 p2))
  5. ..............
回复

使用道具 举报

16

主题

73

帖子

57

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
80
发表于 2022-7-5 21:03:46 | 显示全部楼层
 
非常感谢Stefan BMR!
回复

使用道具 举报

16

主题

73

帖子

57

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
80
发表于 2022-7-5 21:07:10 | 显示全部楼层
 
尊敬的Stefan BMR!
使用lisp一段时间后。我发现唯一的选择是看起来像其他形状(多边形)的lisp正方形。你能帮我修改你的lisp吗?这样我就可以选择不同的形状了?
我非常感谢你!
衷心感谢Stefan BMR!
文件附件图像。
[形状颜色洋红色]
210631t8matazt2a67zfdo.jpg
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-11 08:58 , Processed in 0.398049 second(s), 73 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表