乐筑天下

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

[编程交流] 创建的有效方法

[复制链接]

180

主题

639

帖子

463

银币

中流砥柱

Rank: 25

铜币
897
发表于 2022-7-5 18:45:17 | 显示全部楼层 |阅读模式
我想知道如何在lisp中最好、最有效地创建此多段线。我通过绘制一些线,然后使用FILLET命令实现了这一点,但结果可能有点不稳定,所以我相信有更好的方法来实现这一点。此外,我需要这是一个多段线,或至少分组,当它这样做时,它可以我镜像,复制,等在图纸的其他部分。这就引出了一个问题,是否最好将is创建为一个块,然后在需要时使用它。
 
这又是一个完全自动化的过程的一部分,我已经在这个过程中工作了几个世纪了,所以它必须完全通过代码来完成。不允许用户输入或选择。
194519nh6bhh1z4kvjv8hk.jpg
回复

使用道具 举报

17

主题

1274

帖子

25

银币

后起之秀

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

铜币
260
发表于 2022-7-5 18:55:40 | 显示全部楼层
为什么不把你画的画成一块,然后用代码插入呢?
回复

使用道具 举报

rlx

21

主题

1505

帖子

1551

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
81
发表于 2022-7-5 19:04:07 | 显示全部楼层
或者只需命令polyline、LL、UL、UR、LR,然后(setvar“FILLETRAD”您的半径),最后使用fillet命令中的polyline选项和(entlast)
回复

使用道具 举报

180

主题

639

帖子

463

银币

中流砥柱

Rank: 25

铜币
897
发表于 2022-7-5 19:10:54 | 显示全部楼层
汤布。在整个绘图过程中会有各种尺寸的,所以我正在制作一个defun,它可以在任何地方绘制任何尺寸。这是我的工作,它是准确的,但我想可能有一个更好的方法来做到这一点。我用8个不同的点将物体分割成几段,一个在每条线段的末端,另一个在弧的每条中心线上
  1. ;;; NOTCHES
  2. (setq notchcenterline 6       
  3. notchwidth 3.25
  4. notchdepth 0.5625
  5. ledgerwidth 0.5
  6. notchrad 0.25
  7. )
  8. (setq np1 (polar (polar pt1 0 (- notchcenterline (/ notchwidth 2.))) a270 ledgerwidth)
  9. np2 (polar np1 a90 (+ (- notchdepth notchrad) ledgerwidth))
  10. np3 (polar np2 0 notchrad)
  11. np4 (polar np3 a90 notchrad)
  12. np5 (polar np4 0 (- notchwidth (* notchrad 2)))
  13. np6 (polar np5 a270 notchrad)
  14. np7 (polar np6 0 notchrad)
  15. np8 (polar np1 0 notchwidth)
  16. )
  17. (command "._LINE" np1 np2 "")
  18. (setq l1 (entlast))
  19. (command "._LINE" np4 np5 "")
  20. (setq l2 (entlast))
  21. (command "._LINE" np7 np8 "")
  22. (setq l3 (entlast))
  23. (command "._ARC" "c"         np3 np4 np2)
  24. (setq a1 (entlast))
  25. (command "._ARC" "c"         np6 np7 np5)
  26. (setq a2 (entlast))
  27. (command "._PEDIT" l1 "Y" "J" l2 l3 a1 a2 "" "")
回复

使用道具 举报

12

主题

152

帖子

140

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
60
发表于 2022-7-5 19:14:12 | 显示全部楼层
然后我只做一个动态块。
回复

使用道具 举报

12

主题

152

帖子

140

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
60
发表于 2022-7-5 19:23:59 | 显示全部楼层
也许是这样?
 
福比尔。图纸
 
Lotsa在CAD中做事情的方法。
 
干杯
回复

使用道具 举报

26

主题

1495

帖子

20

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2022-7-5 19:29:13 | 显示全部楼层
您需要添加基点值:
 
  1. [b][color=BLACK]([/color][/b]defun make_lwpline [b][color=FUCHSIA]([/color][/b]x y r[b][color=FUCHSIA])[/color][/b]
  2. [b][color=FUCHSIA]([/color][/b]entmake [b][color=NAVY]([/color][/b]list [b][color=MAROON]([/color][/b]cons 0 [color=#2f4f4f]"LWPOLYLINE"[/color][b][color=MAROON])[/color][/b]
  3.               [b][color=MAROON]([/color][/b]cons 100 [color=#2f4f4f]"AcDbEntity"[/color][b][color=MAROON])[/color][/b]
  4.               [b][color=MAROON]([/color][/b]cons 67 0[b][color=MAROON])[/color][/b]
  5.               [b][color=MAROON]([/color][/b]cons 410 [color=#2f4f4f]"Model"[/color][b][color=MAROON])[/color][/b]
  6.               [b][color=MAROON]([/color][/b]cons 8 [color=#2f4f4f]"0"[/color][b][color=MAROON])[/color][/b]
  7.               [b][color=MAROON]([/color][/b]cons 100 [color=#2f4f4f]"AcDbPolyline"[/color][b][color=MAROON])[/color][/b]
  8.               [b][color=MAROON]([/color][/b]cons 90 6[b][color=MAROON])[/color][/b]
  9.               [b][color=MAROON]([/color][/b]cons 70 0[b][color=MAROON])[/color][/b]
  10.               [b][color=MAROON]([/color][/b]cons 43 0[b][color=MAROON])[/color][/b]
  11.               [b][color=MAROON]([/color][/b]cons 38 0[b][color=MAROON])[/color][/b]
  12.               [b][color=MAROON]([/color][/b]cons 39 0[b][color=MAROON])[/color][/b]
  13.               [b][color=MAROON]([/color][/b]cons 10 [b][color=GREEN]([/color][/b]list 0 0[b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  14.               [b][color=MAROON]([/color][/b]cons 42 0[b][color=MAROON])[/color][/b]
  15.               [b][color=MAROON]([/color][/b]cons 10 [b][color=GREEN]([/color][/b]list 0 [b][color=BLUE]([/color][/b]- y r[b][color=BLUE])[/color][/b][b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  16.               [b][color=MAROON]([/color][/b]cons 42 -0.414214[b][color=MAROON])[/color][/b]
  17.               [b][color=MAROON]([/color][/b]cons 10 [b][color=GREEN]([/color][/b]list r y[b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  18.               [b][color=MAROON]([/color][/b]cons 42 0[b][color=MAROON])[/color][/b]
  19.               [b][color=MAROON]([/color][/b]cons 10 [b][color=GREEN]([/color][/b]list [b][color=BLUE]([/color][/b]- x r[b][color=BLUE])[/color][/b] y[b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  20.               [b][color=MAROON]([/color][/b]cons 42 -0.414214[b][color=MAROON])[/color][/b]
  21.               [b][color=MAROON]([/color][/b]cons 10 [b][color=GREEN]([/color][/b]list x [b][color=BLUE]([/color][/b]- y r[b][color=BLUE])[/color][/b][b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  22.               [b][color=MAROON]([/color][/b]cons 42 0[b][color=MAROON])[/color][/b]
  23.               [b][color=MAROON]([/color][/b]cons 10 [b][color=GREEN]([/color][/b]list x 0[b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  24.               [b][color=MAROON]([/color][/b]cons 42 0[b][color=MAROON])[/color][/b]
  25.               [b][color=MAROON]([/color][/b]cons 210 [b][color=GREEN]([/color][/b]list 0 0 1[b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b][b][color=NAVY])[/color][/b][b][color=FUCHSIA])[/color][/b][b][color=BLACK])[/color][/b]
  26. [b][color=BLACK]([/color][/b]initget 7[b][color=BLACK])[/color][/b]
  27. [b][color=BLACK]([/color][/b]setq x [b][color=FUCHSIA]([/color][/b]getdist [color=#2f4f4f]"\nX Axis:   "[/color][b][color=FUCHSIA])[/color][/b][b][color=BLACK])[/color][/b]
  28. [b][color=BLACK]([/color][/b]initget 7[b][color=BLACK])[/color][/b]
  29. [b][color=BLACK]([/color][/b]setq y [b][color=FUCHSIA]([/color][/b]getdist [color=#2f4f4f]"\nY Axis:   "[/color][b][color=FUCHSIA])[/color][/b][b][color=BLACK])[/color][/b]
  30. [b][color=BLACK]([/color][/b]initget 7[b][color=BLACK])[/color][/b]
  31. [b][color=BLACK]([/color][/b]setq r [b][color=FUCHSIA]([/color][/b]getdist [color=#2f4f4f]"\nFillet Radius Axis:   "[/color][b][color=FUCHSIA])[/color][/b][b][color=BLACK])[/color][/b]
  32. [b][color=BLACK]([/color][/b]make_lwpline x y r[b][color=BLACK])[/color][/b]
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 19:32:44 | 显示全部楼层
我的0.05美元,您可以绘制任意多条腿的样条线,然后使用全局圆角所有顶点对样条线进行二次排序。Lisp程序在这里的某个地方。
 
对于使用lisp的各种半径,第1个rad、第1行、第2行使用Accept next line或new rad绘制rad提示符。
 
大卫给你一个前端
  1. (if (not AH:getval3)(load "getvals"))
  2. (ah:getval3 "Enter height" 5 4 "Enter width" 5 4 "Enter rad" 5 4)
  3. ; returns as string val1 val2 val3

 
194520rwb5t8o9z50ot9rt.jpg
GETVALS。拉链
回复

使用道具 举报

26

主题

1495

帖子

20

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2022-7-5 19:38:55 | 显示全部楼层
 
很酷!
回复

使用道具 举报

26

主题

1495

帖子

20

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2022-7-5 19:45:24 | 显示全部楼层
下面是我将如何添加基点:
 
  1. [b][color=BLACK]([/color][/b]defun make_lwpline [b][color=FUCHSIA]([/color][/b]x y r b / bx by bz[b][color=FUCHSIA])[/color][/b]
  2. [b][color=FUCHSIA]([/color][/b]setq bx [b][color=NAVY]([/color][/b]car b[b][color=NAVY])[/color][/b]
  3.      by [b][color=NAVY]([/color][/b]cadr b[b][color=NAVY])[/color][/b]
  4.      bz [b][color=NAVY]([/color][/b]caddr b[b][color=NAVY])[/color][/b][b][color=FUCHSIA])[/color][/b]
  5. [b][color=FUCHSIA]([/color][/b]entmake [b][color=NAVY]([/color][/b]list [b][color=MAROON]([/color][/b]cons 0 [color=#2f4f4f]"LWPOLYLINE"[/color][b][color=MAROON])[/color][/b]
  6.               [b][color=MAROON]([/color][/b]cons 100 [color=#2f4f4f]"AcDbEntity"[/color][b][color=MAROON])[/color][/b]
  7.               [b][color=MAROON]([/color][/b]cons 410 [color=#2f4f4f]"Model"[/color][b][color=MAROON])[/color][/b]
  8.               [b][color=MAROON]([/color][/b]cons 100 [color=#2f4f4f]"AcDbPolyline"[/color][b][color=MAROON])[/color][/b]
  9.               [b][color=MAROON]([/color][/b]cons 90 6[b][color=MAROON])[/color][/b]
  10.               [b][color=MAROON]([/color][/b]cons 70 0[b][color=MAROON])[/color][/b]
  11.               [b][color=MAROON]([/color][/b]cons 43 0[b][color=MAROON])[/color][/b]
  12.               [b][color=MAROON]([/color][/b]cons 38 bz[b][color=MAROON])[/color][/b]
  13.               [b][color=MAROON]([/color][/b]cons 39 0[b][color=MAROON])[/color][/b]
  14.               [b][color=MAROON]([/color][/b]cons 10 [b][color=GREEN]([/color][/b]list bx by[b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  15.               [b][color=MAROON]([/color][/b]cons 10 [b][color=GREEN]([/color][/b]list bx [b][color=BLUE]([/color][/b]+ by [b][color=RED]([/color][/b]- y r[b][color=RED])[/color][/b][b][color=BLUE])[/color][/b][b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  16.               [b][color=MAROON]([/color][/b]cons 42 -0.414214[b][color=MAROON])[/color][/b]
  17.               [b][color=MAROON]([/color][/b]cons 10 [b][color=GREEN]([/color][/b]list [b][color=BLUE]([/color][/b]+ bx r[b][color=BLUE])[/color][/b] [b][color=BLUE]([/color][/b]+ by y[b][color=BLUE])[/color][/b][b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  18.               [b][color=MAROON]([/color][/b]cons 10 [b][color=GREEN]([/color][/b]list [b][color=BLUE]([/color][/b]+ bx [b][color=RED]([/color][/b]- x r[b][color=RED])[/color][/b][b][color=BLUE])[/color][/b] [b][color=BLUE]([/color][/b]+ by y[b][color=BLUE])[/color][/b][b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  19.               [b][color=MAROON]([/color][/b]cons 42 -0.414214[b][color=MAROON])[/color][/b]
  20.               [b][color=MAROON]([/color][/b]cons 10 [b][color=GREEN]([/color][/b]list [b][color=BLUE]([/color][/b]+ bx x[b][color=BLUE])[/color][/b] [b][color=BLUE]([/color][/b]+ by [b][color=RED]([/color][/b]- y r[b][color=RED])[/color][/b][b][color=BLUE])[/color][/b][b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  21.               [b][color=MAROON]([/color][/b]cons 10 [b][color=GREEN]([/color][/b]list [b][color=BLUE]([/color][/b]+ bx x[b][color=BLUE])[/color][/b] by[b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  22.               [b][color=MAROON]([/color][/b]cons 210 [b][color=GREEN]([/color][/b]list 0 0 1[b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b][b][color=NAVY])[/color][/b][b][color=FUCHSIA])[/color][/b][b][color=BLACK])[/color][/b]
  23. [b][color=BLACK]([/color][/b]initget 7[b][color=BLACK])[/color][/b]
  24. [b][color=BLACK]([/color][/b]setq x [b][color=FUCHSIA]([/color][/b]getdist [color=#2f4f4f]"\nX Axis:   "[/color][b][color=FUCHSIA])[/color][/b][b][color=BLACK])[/color][/b]
  25. [b][color=BLACK]([/color][/b]initget 7[b][color=BLACK])[/color][/b]
  26. [b][color=BLACK]([/color][/b]setq y [b][color=FUCHSIA]([/color][/b]getdist [color=#2f4f4f]"\nY Axis:   "[/color][b][color=FUCHSIA])[/color][/b][b][color=BLACK])[/color][/b]
  27. [b][color=BLACK]([/color][/b]initget 7[b][color=BLACK])[/color][/b]
  28. [b][color=BLACK]([/color][/b]setq r [b][color=FUCHSIA]([/color][/b]getdist [color=#2f4f4f]"\nFillet Radius Axis:   "[/color][b][color=FUCHSIA])[/color][/b][b][color=BLACK])[/color][/b]
  29. [b][color=BLACK]([/color][/b]initget 1[b][color=BLACK])[/color][/b]
  30. [b][color=BLACK]([/color][/b]setq b [b][color=FUCHSIA]([/color][/b]getpoint [color=#2f4f4f]"\nBase Point:   "[/color][b][color=FUCHSIA])[/color][/b][b][color=BLACK])[/color][/b]
  31. [b][color=BLACK]([/color][/b]make_lwpline x y r b[b][color=BLACK])[/color][/b]
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-12 13:28 , Processed in 0.595636 second(s), 75 queries .

© 2020-2025 乐筑天下

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