明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 779|回复: 5

[提问] 三点画室内门的程序画出来不对,请大神指点

[复制链接]
发表于 2025-3-2 17:46:04 | 显示全部楼层 |阅读模式

(defun c:Door3P (/ pt1 pt2 pt3 ang width door_len)
  (setvar "cmdecho" 0) ; 关闭命令回显
  ;-- 用户输入处理 --
  (if (and (setq pt1 (getpoint "\n选择门洞插入点: "))
           (setq pt2 (getpoint pt1 "\n指定开启方向端点: "))
           (setq pt3 (getpoint pt2 "\n指定门板宽度确认点: ")))
    (progn
      ;-- 参数计算 --
      (setq ang (angle pt1 pt2))   ; 计算开启角度
      (setq width (distance pt2 pt3)) ; 计算门板宽度
      (setq door_len (distance pt1 pt2)) ; 门板长度默认取墙厚

      ;-- 图层设置 --
      (command "-layer" "m" "门构件" "c" "7" "" "lw" "0.3" "" "") ; 创建门图层

      ;-- 绘制门板矩形 --
      (command "pline"
        pt1
        (polar pt1 (+ ang (/ pi 2)) (/ width 2)) ; 计算左上角点
        (polar (polar pt1 ang door_len) (+ ang (/ pi 2)) (/ width 2)) ; 右上角点
        (polar pt1 ang door_len) ; 右下角点
        "c") ; 闭合多段线

      ;-- 绘制开启弧线 --
      (command "arc" pt1 "c" pt2 (polar pt1 ang door_len)) ; 三点画弧

      (princ "\n门构件绘制完成!"))
    (princ "\n输入点无效,操作已取消。"))
  (princ))


回复

使用道具 举报

发表于 2025-3-3 09:07:23 | 显示全部楼层
  1. (defun c:tt ()
  2.   "三点画门"
  3.   (if (and (setq pt1 (getpoint "\n选择门洞插入点: "))
  4.            (setq pt2 (getpoint pt1 "\n指定开启方向端点: "))
  5.            (setq pt3 (getpoint pt2 "\n指定门板宽度确认点: "))
  6.       )
  7.     (progn
  8.       (setq ang   (angle pt1 pt2) ; 计算开启角度
  9.             width (* (distance pt2 pt3) 0.5) ; 计算门板宽度
  10.             ww    (distance pt1 pt2) ; 门板长度默认取墙厚
  11.       )
  12.       (command "-layer" "m" "门构件" "c" "7" "" "lw" "0.3" "" "") ; 创建门图层
  13.       (setq pt4  (polar pt1 ang ww) ; 右下角点
  14.             pt1a (polar pt1 (+ ang (/ pi 2)) width) ; 计算左上角点
  15.             pt4a (polar pt4 (+ ang (/ pi 2)) width) ; 右上角点
  16.             pt4b (polar pt4 (- ang (/ pi 2)) width)
  17.       )
  18.       (command "pline" pt1 pt1a pt4a pt4 "c")
  19.       (command "arc" pt1 "c" pt2 pt4b) ; 三点画弧
  20.     )
  21.   )
  22.   (princ)
  23. )
回复 支持 1 反对 0

使用道具 举报

发表于 2025-3-2 18:35:59 | 显示全部楼层
配个图,标注好点的序号,更好理解些。
回复 支持 反对

使用道具 举报

发表于 2025-3-2 21:39:38 | 显示全部楼层
画圆弧 ang 有问题
回复 支持 反对

使用道具 举报

发表于 2025-3-3 09:02:14 | 显示全部楼层
配个图,标注好点的序号,更好理解些。
回复 支持 反对

使用道具 举报

发表于 2025-3-4 08:38:16 来自手机 | 显示全部楼层
配个图,无图无真相
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-21 18:02 , Processed in 0.175354 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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