明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3184|回复: 10

求依据坡度水平线标注标高。求高手出手谢谢

[复制链接]
发表于 2012-12-20 21:11:31 | 显示全部楼层 |阅读模式
1明经币



测试文件:

操作:
1---指定起点输入标高
2---指定方向并输入坡度值
3---进行标高标高并生成高度线
麻烦哪位高手出手帮忙谢谢。。。。。。。
附件: 您需要 登录 才可以下载或查看,没有账号?注册

最佳答案

查看完整内容

直线的比例不是很清楚,按照1:1000写的,您试试看,有什么问题再改
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2012-12-20 21:11:32 | 显示全部楼层
直线的比例不是很清楚,按照1:1000写的,您试试看,有什么问题再改
  1. (defun c:test1 ( / oldos pt1 pd ptx bg1 bgx disx pt2)
  2.   (setq oldos (getvar "osmode"))
  3.   (setvar "osmode" 513)
  4.   (setq        pt1  (getpoint "\n选择起点:")
  5.         bg1  (getreal "\n输入起点标高:")
  6.         pd  (getreal "\n输入终坡度:")
  7.   )
  8.   (entmake (list '(0 . "SOLID")
  9.                  '(8 . "DIM_ELEV");默认有该图层
  10.                  (cons 10 pt1)
  11.                  (cons 11 (mapcar '+ '(300 300 0) pt1))
  12.                  (cons 12 (mapcar '+ '(-300 300 0) pt1))
  13.                  (cons 13 (mapcar '+ '(-300 300 0) pt1))
  14.            )
  15.   )
  16.   (entmake (list '(0 . "text")
  17.                  '(8 . "PUB_TEXT");默认有该图层
  18.                  '(10 0 0 0)
  19.                  (cons 11 (mapcar '+ '(0 400 0) pt1))
  20.                  (cons 1 (rtos bg1 2 3))
  21.                  '(40 . 300)
  22.                  '(41 . 0.75)
  23.                  (cons 50 0)
  24.                  '(7 . "_TCH_DIM");默认有该样式
  25.                  '(72 . 1)
  26.                  '(73 . 0)
  27.            )
  28.   )
  29.   (while (setq ptx (getpoint "\n选择插入点:"))
  30.     (setq disx (/(distance pt1 ptx)1000)
  31.           bgx  (+ bg1 (* disx pd))
  32.           pt2 (mapcar '+ (list 0 (- bgx bg1) 0) ptx)
  33.     )
  34.       (entmake (list '(0 . "SOLID")
  35.                  '(8 . "DIM_ELEV");默认有该图层
  36.                  (cons 10 pt2)
  37.                  (cons 11 (mapcar '+ '(300 300 0) pt2))
  38.                  (cons 12 (mapcar '+ '(-300 300 0) pt2))
  39.                  (cons 13 (mapcar '+ '(-300 300 0) pt2))
  40.            )
  41.   )
  42.     (entmake (list '(0 . "line")
  43.                    (cons 10 ptx)
  44.                    (cons 11 pt2)
  45.              )
  46.     )
  47.   (entmake (list '(0 . "text")
  48.                  '(8 . "PUB_TEXT");默认有该图层
  49.                  '(10 0 0 0)
  50.                  (cons 11 (mapcar '+ '(0 400 0) pt2))
  51.                  (cons 1 (rtos bgx 2 3))
  52.                  '(40 . 300)
  53.                  '(41 . 0.75)
  54.                  (cons 50 0)
  55.                  '(7 . "_TCH_DIM");默认有该样式
  56.                  '(72 . 1)
  57.                  '(73 . 0)
  58.            )
  59.   )
  60.   )
  61.   (setvar "osmode" oldos)
  62.   (princ)
  63. )

评分

参与人数 1明经币 +1 收起 理由
flytoday + 1 很给力!大师能不能取得图纸的当前样式。。图.

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2012-12-21 07:12:18 来自手机 | 显示全部楼层
沉滴好快顶起哈………
回复

使用道具 举报

 楼主| 发表于 2012-12-21 13:42:43 | 显示全部楼层
最好图纸中能选择指定图层图。。
关于样式最好能取得图纸中的当前样式。。

麻烦了谢谢~~~~~~~~~~~~~~~~
回复

使用道具 举报

 楼主| 发表于 2012-12-21 19:29:54 来自手机 | 显示全部楼层
哪位路过滴大师能改改谢谢
回复

使用道具 举报

 楼主| 发表于 2012-12-22 08:45:12 来自手机 | 显示全部楼层
哪位路过滴大师能改改谢谢

点评

要求再细致一些  发表于 2012-12-22 08:47
回复

使用道具 举报

发表于 2012-12-22 08:49:24 | 显示全部楼层
flytoday 发表于 2012-12-22 08:45
哪位路过滴大师能改改谢谢

(defun c:test1 ( / oldos pt1 pd ptx bg1 bgx disx pt2)
  (setq oldos (getvar "osmode"))
  (setvar "osmode" 513)
  (setq        pt1  (getpoint "\n选择起点:")
        bg1  (getreal "\n输入起点标高:")
        pd  (getreal "\n输入终坡度:")
  )
  (entmake (list '(0 . "SOLID")
   ;              '(8 . "DIM_ELEV");默认有该图层
                 (cons 10 pt1)
                 (cons 11 (mapcar '+ '(300 300 0) pt1))
                 (cons 12 (mapcar '+ '(-300 300 0) pt1))
                 (cons 13 (mapcar '+ '(-300 300 0) pt1))
           )
  )
  (entmake (list '(0 . "text")
;                '(8 . "PUB_TEXT");默认有该图层
                 '(10 0 0 0)
                 (cons 11 (mapcar '+ '(0 400 0) pt1))
                 (cons 1 (rtos bg1 2 3))
                 '(40 . 300)
                 '(41 . 0.75)
                 (cons 50 0)
    ;             '(7 . "_TCH_DIM");默认有该样式
                 '(72 . 1)
                 '(73 . 0)
           )
  )
  (while (setq ptx (getpoint "\n选择插入点:"))
    (setq disx (/(distance pt1 ptx)1000)
          bgx  (+ bg1 (* disx pd))
          pt2 (mapcar '+ (list 0 (- bgx bg1) 0) ptx)
    )
      (entmake (list '(0 . "SOLID")
    ;             '(8 . "DIM_ELEV");默认有该图层
                 (cons 10 pt2)
                 (cons 11 (mapcar '+ '(300 300 0) pt2))
                 (cons 12 (mapcar '+ '(-300 300 0) pt2))
                 (cons 13 (mapcar '+ '(-300 300 0) pt2))
           )
  )
    (entmake (list '(0 . "line")
                   (cons 10 ptx)
                   (cons 11 pt2)
             )
    )
  (entmake (list '(0 . "text")
      ;           '(8 . "PUB_TEXT");默认有该图层
                 '(10 0 0 0)
                 (cons 11 (mapcar '+ '(0 400 0) pt2))
                 (cons 1 (rtos bgx 2 3))
                 '(40 . 300)
                 '(41 . 0.75)
                 (cons 50 0)
   ;              '(7 . "_TCH_DIM");默认有该样式
                 '(72 . 1)
                 '(73 . 0)
           )
  )
  )
  (setvar "osmode" oldos)
  (princ)
)

评分

参与人数 1明经币 +1 收起 理由
bzhjl + 1 赞一个!

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2012-12-22 12:14:40 | 显示全部楼层
本帖最后由 flytoday 于 2012-12-22 12:27 编辑

现在代码不受指定图层与样式限制了
可以用了谢谢大师出手相助
非常感谢


回复

使用道具 举报

发表于 2012-12-23 22:18:31 | 显示全部楼层
确实不错,建筑设计中绘制车道非常有用!此程序中的标高是从低由高增加的。程序是否可以增加标高由高向低呢?谢谢!
回复

使用道具 举报

发表于 2014-10-10 10:38:50 | 显示全部楼层
不知道运行命令啊。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-23 08:41 , Processed in 0.211174 second(s), 36 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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