乐筑天下

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

[编程交流] 插入块并缩放

[复制链接]

23

主题

102

帖子

79

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
115
发表于 2022-7-6 09:03:05 | 显示全部楼层 |阅读模式
你好
我需要帮助,我想在我现在所在的地方扩大我的障碍
  1. (defun c:MyBlock (/ pt)
  2. (setq pt1 (getpoint "\nPick Insertion point."))
  3. (setq pt2 (getpoint "\nPick Insertion point."))
  4. (setq d (command "dist" pt1 pt2))
  5. (command "-insert" "1" "_non" pt1 (nth 0 d) "" "")   ////y scale depends on user input the rotation can wait
  6. (princ)
  7. )

 
不行,我想明天用
非常感谢。
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2022-7-6 09:08:51 | 显示全部楼层
用您发布的代码快速重写:
 
一些改动,sysvar的改动会很好地解决这个问题。
回复

使用道具 举报

pBe

32

主题

2722

帖子

2666

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
211
发表于 2022-7-6 09:13:02 | 显示全部楼层
你是否认为X与Y的比值,其中X为1,Y取决于拾取点?
 
我不确定你的意图,但我想这样做:
  1. (defun c:MyBlock (/ pt)
  2.   (setq pt1 (getpoint "\nPick Insertion point."))
  3. (setq pt2 (getpoint pt1 "\nPick Insertion point."))
  4.       (command "-insert" "1" "_non" pt1 1 (1+ (/ 1 (distance pt1 pt2))) "")
  5.                 (princ)
  6. )

 
编辑:ooops。。
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-6 09:14:06 | 显示全部楼层
再加上更多保险
 
  1. (tblsearch "BLOCK" "1")
回复

使用道具 举报

pBe

32

主题

2722

帖子

2666

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
211
发表于 2022-7-6 09:18:10 | 显示全部楼层
 
啊!良好的ol预防措施。是 啊为什么不呢,你永远不能太确定
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2022-7-6 09:21:03 | 显示全部楼层
如果块驻留在SFSP中,则不需要这样做。
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-6 09:25:01 | 显示全部楼层
 
你好
 
这个SFSP是什么?
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2022-7-6 09:28:38 | 显示全部楼层
SFSP=支持文件搜索路径
 
我说不需要TBLSEARCH,因为块要么通过引用插入(TBLSEARCH=Non-nil),要么通过“find”(FINDFILE)插入。第一次插入后,引用将用于后续插入。
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-6 09:31:03 | 显示全部楼层
这是正确的,
 
但所有已经给出的例程都表明,该块是从当前图形插入的,而不是外部的。
 
谢谢
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 09:33:21 | 显示全部楼层
我不确定您试图在规模方面实现什么,但这可能是构建代码的一种方法:
 
  1. (defun c:test ( / block p1 p2 )
  2. (setq block "1")
  3. (if
  4.    (or
  5.      (tblsearch "BLOCK" block)
  6.      (setq block (findfile (strcat block ".dwg")))
  7.    )
  8.    (if
  9.      (and
  10.        (setq p1 (getpoint "\nSpecify Insertion Point: "))
  11.        (setq p2 (getpoint "\nNext Point: "))
  12.      )
  13.      (command "_.-insert" block "_S" (distance p1 p2) "_R" 0.0 "_non" p1)
  14.    )
  15.    (princ "\nBlock not found.")
  16. )
  17. (princ)
  18. )
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-7 06:03 , Processed in 0.649103 second(s), 72 queries .

© 2020-2025 乐筑天下

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