找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 883|回复: 9

[每日一码] 隧道断面绘制

[复制链接]

已领礼包: 5295个

财富等级: 富甲天下

发表于 2021-4-12 17:13:14 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
本帖最后由 tzfcn 于 2021-4-14 16:25 编辑

;; sddm隧道断面绘制程序 ;; 雄鹰套改于2021-4-5
(defun c:sddm (/ ilst)
  (xyp-start)
  (defun main-pro (/ p0)
    (while (setq p0 (getpoint "\n中心基点<退出>: "))
      (xyp-Group0)
      (hzsddm p0 $r1 $r2 $r3 $r4 $h1 $h2)
      (xyp-Group1)
    )
  )
  (xyp-initSet
    '(k0 $r1 $r2 $r3 $r4 d1 $h1 $h2)
    '("0" 5700. 8200. 1000. 15000. 2500. 1610. 1600.)
  )
  (setq    ilst '(":row{"
    ("k0" "" "ib" "-2" "40" "sddm001" "(princ)")
    "spacer;"
    ("" "隧道参数" ":boxed_column{")
    ("$r1" "上半圆半径" "real" "10")
    ("$r2" "帮底圆半径" "real" "10")
    ("$r3" "底角圆半径" "real" "10")
    ("$r4" "底拱圆半径" "real" "10")
    ("$h1" "巷底上拱中高差" "real" "10")
    ("$h2" "巷底底拱中高差" "real" "10")
    "spacer;"
    "}"
    "}"
    )
  )
  (if (= (xyp-Dcl-Init Ilst "【隧道断面绘制】" t) 1)
    (main-pro)
  )
  (xyp-end)
)


sddm(隧道断面).lsp

1.89 KB, 下载次数: 28, 下载积分: D豆 -1 , 活跃度 1

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 914个

财富等级: 财运亨通

发表于 2021-4-13 06:54:36 | 显示全部楼层
稍微介绍一下呀

点评

不用花豆豆的代码,试用的好就用,觉得不好就不用,标题意义明确,不用赘述的。  详情 回复 发表于 2021-4-14 09:06
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 146个

财富等级: 日进斗金

发表于 2021-4-13 07:50:14 | 显示全部楼层
少了e派函數 有就更完善了 感謝樓主分享

点评

e派函数可以使代码更清晰,为什么不用?  详情 回复 发表于 2021-4-14 09:07
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 4365个

财富等级: 富可敌国

发表于 2021-4-14 08:26:08 | 显示全部楼层
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 5295个

财富等级: 富甲天下

 楼主| 发表于 2021-4-14 09:06:45 | 显示全部楼层
xk15c 发表于 2021-4-13 06:54
稍微介绍一下呀

不用花豆豆的代码,试用的好就用,觉得不好就不用,标题意义明确,不用赘述的。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 5295个

财富等级: 富甲天下

 楼主| 发表于 2021-4-14 09:07:50 | 显示全部楼层
janshyl 发表于 2021-4-13 07:50
少了e派函數 有就更完善了 感謝樓主分享

e派函数可以使代码更清晰,为什么不用?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 5295个

财富等级: 富甲天下

 楼主| 发表于 2021-4-14 09:15:56 | 显示全部楼层
本帖最后由 tzfcn 于 2021-4-14 16:27 编辑

;; sddm隧道断面绘制程序 ;; 雄鹰套改于2021-4-5
(defun c:sddm (/ ilst)
  (xyp-start)
  (defun main-pro (/ p0)
    (while (setq p0 (getpoint "\n中心基点<退出>: "))
      (xyp-Group0)
      (hzsddm p0 $r1 $r2 $r3 $r4 $h1 $h2)
      (xyp-Group1)
    )
  )
  (xyp-initSet
    '(k0 $r1 $r2 $r3 $r4 d1 $h1 $h2)
    '("0" 5700. 8200. 1000. 15000. 2500. 1610. 1600.)
  )
  (setq    ilst '(":row{"
    ("k0" "" "ib" "-2" "40" "sddm001" "(princ)")
    "spacer;"
    ("" "隧道参数" ":boxed_column{")
    ("$r1" "上半圆半径" "real" "10")
    ("$r2" "帮底圆半径" "real" "10")
    ("$r3" "底角圆半径" "real" "10")
    ("$r4" "底拱圆半径" "real" "10")
    ("$h1" "巷底上拱中高差" "real" "10")
    ("$h2" "巷底底拱中高差" "real" "10")
    "spacer;"
    "}"
    "}"
    )
  )
  (if (= (xyp-Dcl-Init Ilst "【隧道断面绘制】" t) 1)
    (main-pro)
  )
  (xyp-end)
)

;; hzsddm 隧道断面 (hzsddm p0 $r1 $r2 $r3 $r4 $h1 $h2)
(defun hzsddm (p0 $r1 $r2 $r3 $r4 $h1 $h2 / d1 o1 o1p1 o1p2 o2 o2a o2p1    o3 o3a o3p1 o3p2 o4 o4p2)
  (setq   
    o1   (xyp-Pt2Y p0 $h1)
    d1   (- $r2 $r1)
    o2   (xyp-Pt2X o1 (- d1))
    o2a  (xyp-Pt2X o1 d1)
    o4   (polar p0 (/ pi 2) (- $r4 $h2))
    o3a  (xyp-2Pt2Side o4 o2 (- $r4 $r3) (- $r2 $r3))
    o3   (xyp-2Pt2Side o2a o4 (- $r2 $r3) (- $r4 $r3))
    o1p1 (xyp-Pt2X o1 $r1) ;上半圆弧右起点
    o1p2 (xyp-Pt2X o1 (- $r1)) ;上半圆弧左终点
    o3p1 (polar o3 (+ pi (angle o3 o2a)) $r3) ;角拱上起点
    o3p2 (polar o3 (angle o4 o3) $r3) ;角拱下终点
    o4p2 (polar o3a (angle o4 o3a) $r3) ;底拱右终点
    o2p1 (polar o3a (angle o2 o3a) $r3) ;角拱上终点
  )
  (xyp-Arc-CPP o1 o1p1 o1p2) ;上半圆拱
  (xyp-Arc-CPP o2a o1p2 o3p1) ;左帮底弧
  (xyp-Arc-CPP o3 o3p1 o3p2) ;左底角弧
  (xyp-Arc-CPP o4 o3p2 o4p2) ;底拱
  (xyp-Arc-CPP o3a o4p2 o2p1) ;右底角拱
  (xyp-Arc-CPP o2 o2p1 o1p1) ;右底帮拱弧
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 5295个

财富等级: 富甲天下

 楼主| 发表于 2021-4-14 09:17:50 | 显示全部楼层
没有办法,老是自作聪明的乱改代码
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 4365个

财富等级: 富可敌国

发表于 2021-4-25 16:07:11 | 显示全部楼层
楼主厉害
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 33个

财富等级: 招财进宝

发表于 2022-6-8 14:34:32 | 显示全部楼层
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-4-19 23:51 , Processed in 0.426388 second(s), 51 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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