明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 773|回复: 6

[讨论] 请教:如何用grread动态画一个固定宽高比(比如宽:高=2)的矩形?

[复制链接]
发表于 2020-11-10 20:49:09 | 显示全部楼层 |阅读模式
请教:如何用grread动态画一个固定宽高比的矩形?
如:一个宽:高=2:1的矩形
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2020-11-10 23:23:40 | 显示全部楼层
  1. (defun c:tt () ;tt(动态宽高比=2矩形)
  2.   (while (setq p0 (getpoint "\n基点<退出>: "))
  3.     (setq mode t)
  4.     (while mode
  5.       (setq code (grread nil 15 0) cd (car code))
  6.       (cond ((member cd '(2 3 25)) (setq mode nil))
  7.             ((= cd 5)
  8.              (redraw)
  9.              (setq pt (cadr code)
  10.                    dx (- (car pt) (car p0))
  11.                    dy (* dx 0.5)
  12.                    p2 (list (car pt) (+ (cadr p0) dy))
  13.                    p1 (list (car p2) (cadr p0))
  14.                    p3 (list (car p0) (cadr p2))
  15.              )
  16.              (grvecs (list 1 p0 p1 1 p1 p2 1 p2 p3 1 p3 p0))
  17.             )
  18.       )
  19.     )
  20.     (redraw)
  21.     (command "Rectang" "non" p0 "non" p2)
  22.   )
  23.   (princ)
  24. )
发表于 2020-11-11 08:41:46 | 显示全部楼层
画矩形动态用不着这么复杂啊,getcorner 啊
 楼主| 发表于 2020-11-24 19:00:22 | 显示全部楼层
 楼主| 发表于 2020-11-24 19:00:51 | 显示全部楼层
菜卷鱼 发表于 2020-11-11 08:41
画矩形动态用不着这么复杂啊,getcorner 啊

getcorner 能固定宽高比吗
发表于 2020-11-25 08:49:38 | 显示全部楼层
mandala 发表于 2020-11-24 19:00
getcorner 能固定宽高比吗

你好是个钻石会员
  1. (defun c:tt (/ pt1 pt2 p-p p+p)
  2.   (setq pt1 (getpoint "\n起始点:"))
  3.   (initget 1)
  4.   (setq pt2 (getcorner pt1 "\n大概结束点:"))
  5.   (setq p-p (mapcar '- pt2 pt1))
  6.   (if (>= (car p-p) (* 2 (cadr p-p)))
  7.     (setq p+p (mapcar '+ pt1 (list (* 2 (cadr p-p)) (cadr p-p) 0.0)))
  8.     (setq p+p (mapcar '+ pt1 (list (car p-p) (* 0.5 (car p-p)) 0.0)))
  9.   )
  10.   (setvar 'cmdecho 0)
  11.   (command "Rectang" "non" pt1 "non" p+p)
  12.   (setvar 'cmdecho 1)
  13. )

点评

这个不能动态显示形状  发表于 2020-11-25 09:00
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-17 18:48 , Processed in 0.189793 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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