设为首页收藏本站

晓东CAD家园-论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2738|回复: 14

[分享]:《湘源控制性详细规划CAD系统》用地图例生成l

[复制链接]
发表于 2005-12-15 12:13:09 | 显示全部楼层 |阅读模式

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

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

x
感觉原系统的图例生成不太好,自己捣腾一晚上,编了一个lsp程序,程序还不完善,但主要功能已经能够实现!
因为是不常用的程序,所以也没打算进一步修改,贴上来,有兴趣的朋友可以参考一下!

附件里是用地性质的一个模版文件,放到cad的支持路径就行了!


  1. (defun c:ydtl ()
  2.   (defun drawtl        (txt ydmch pt0 /)
  3.     (pt pt0)

  4.     (setq layname (strcat "YD-" txt))
  5.     (entmake (list '(0 . "HATCH")
  6.                    '(100 . "AcDbEntity")
  7.                    '(67 . 0)
  8.                    '(410 . "Model")
  9.                    (cons 8 Layname)
  10.                    '(100 . "AcDbHatch")
  11.                    '(10 0.0 0.0 0.0)
  12.                    '(210 0.0 0.0 1.0)
  13.                    '(2 . "SOLID")
  14.                    '(70 . 1)
  15.                    '(71 . 0)
  16.                    '(91 . 1)
  17.                    '(92 . 3)
  18.                    '(72 . 0)
  19.                    '(73 . 1)
  20.                    '(93 . 4)
  21.                    (cons 10 pt1)
  22.                    (cons 10 pt2)
  23.                    (cons 10 pt3)
  24.                    (cons 10 pt4)
  25.                    '(97 . 0)
  26.                    '(75 . 0)
  27.                    '(76 . 1)
  28.                    '(98 . 0)
  29.              )

  30.     )
  31.     (entmake (list '(0 . "TEXT")
  32.                    '(8 . "YD-CODE")
  33.                    (cons 10 pt5)
  34.                    '(40 . 25.0)
  35.                    (cons 1 txt)
  36.                    '(50 . 0.0)
  37.                    '(41 . 0.5)
  38.                    '(51 . 0.0)
  39.                    '(7 . "DIMHT")
  40.                    '(71 . 0)
  41.                    '(72 . 1)
  42.                    (cons 11 pt5)
  43.                    '(73 . 2)
  44.              )
  45.     )
  46.     (entmake (list '(0 . "TEXT")
  47.                    '(8 . "TX-图例")
  48.                    (cons 10 pt6)
  49.                    '(40 . 25.0)
  50.                    (cons 1 ydmch)
  51.                    '(50 . 0.0)
  52.                    '(41 . 0.7)
  53.                    '(51 . 0.0)
  54.                    '(7 . "黑体")
  55.                    '(71 . 0)
  56.                    '(72 . 0)
  57.                    '(73 . 0)
  58.              )
  59.     )
  60. (entmake (list '(0 . "LWPOLYLINE")
  61.                '(100 . "AcDbEntity")
  62.                '(67 . 0)
  63.                '(410 . "Model")
  64.                '(8 . "YD-CODE")
  65.                '(100 . "AcDbPolyline")
  66.                '(90 . 2)
  67.                '(70 . 129)
  68.                '(43 . 1.5625)
  69.                '(38 . 0.0)
  70.                '(39 . 0.0)
  71.                (cons 10 pt7)
  72.                (cons 40 w)
  73.                (cons 41 w)
  74.                '(42 . 1.0)
  75.                (cons 10 pt8)
  76.                (cons 40 w)
  77.                (cons 41 w)
  78.                '(42 . 1.0)
  79.                '(210 0.0 0.0 1.0)
  80.          )
  81. )


  82.   )

  83.   (defun removedups (pts / pl)
  84.     (while pts
  85.       (setq p        (car pts)
  86.             pts        (cdr pts)
  87.             pts        (vl-remove-if '(lambda (x) (equal x p 1e-10)) pts)
  88.             pl        (cons p pl)
  89.       )
  90.     )
  91.     (reverse pl)
  92.   )
  93.   (defun remdl (pfn k / roop fn a val)
  94.     (setq roop T
  95. ;;;        id   (strcase(strcat "[" id "]"))
  96.           k
  97.            (strcase (strcat k "=*"))
  98.     )
  99.     (if        (setq pfn (findfile pfn))
  100.       (progn
  101.         (setq fn (open pfn "r"))
  102.         (while (and (setq a (read-line fn))
  103.                     roop
  104.                )
  105.           (if (wcmatch (strcase a) k)
  106.             (setq roop nil
  107.                   val  (substr a (strlen k))
  108.             )
  109.           )
  110.         )
  111.         (close fn)
  112.       )
  113.     )
  114.     val
  115.   )
  116.   (defun pt (pt0 /)
  117.     (setq pt1 pt0
  118.           pt2 (polar pt1 0 (* sca 150))
  119.           pt3 (polar pt2 (* pi 0.5) (* sca 56.4))
  120.           pt4 (polar pt1 (* pi 0.5) (* sca 56.4))
  121.           pt5 (polar (polar pt1 0 (* sca 75)) (* pi 0.5) (* sca 28.2))
  122.           pt6 (polar (polar pt1 0 (* sca 180)) (* pi 0.5) (* sca 13.2))
  123.           pt7 (polar pt5 0 (* sca 27.5))
  124.           pt8 (polar pt5 pi (* sca 27.5))
  125.     )
  126.   )
  127. (setq sca 0.75
  128.       w  (* sca 1.5625) )
  129.   (princ "选择用地编号:")
  130.   (setq        ss    (ssget '((0 . "text") (8 . "YD-CODE")))
  131.         pt0   (getpoint "点取插入点:")
  132.         ss_l  (sslength ss)
  133.         n     0
  134.         txt_l nil
  135.   )
  136.   (while (< n ss_l)
  137.     (setq ent        (ssname ss n)
  138.           txt        (cdr (assoc 1 (entget ent)))
  139.           txt_l        (cons txt txt_l)
  140.           n        (1+ n)
  141.     )
  142.   )
  143.   (setq        new_txt_l (vl-sort (removedups txt_l) '<)
  144.         l          (length new_txt_l)
  145.         n          0
  146.   )
  147.   (while (< n l)
  148.     (setq txt        (nth n new_txt_l)
  149.           ydmch        (remdl "yd.mdl" txt)
  150.           n        (1+ n)
  151.     )
  152.     (drawtl txt ydmch pt0)
  153.     (setq pt0 (polar pt0 0 (* sca 450)))
  154.     (pt pt0)
  155.   )

  156. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2005-12-17 13:25:35 | 显示全部楼层
*-*d
怎么没人回帖呢?
我都不敢用这个东西。
是不是真的呀???
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

点击这里给我发消息

已领礼包: 193个

财富等级: 日进斗金

发表于 2005-12-18 09:19:19 | 显示全部楼层
不错,简便多了!希望继续有好的程序上传,我会关注此贴的!
我一直在用这个规划软件,很好用!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

发表于 2006-1-6 18:00:16 | 显示全部楼层
没有用过这个软件,不知道效果如何啊,用过的网友可以推荐一下吗
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-1-6 19:29:06 | 显示全部楼层
我也一直在用《湘源控制性详细规划CAD系统》,感觉它的用地图例不是很好。多谢楼主的修改。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

使用道具 举报

发表于 2006-7-29 07:22:05 | 显示全部楼层
我对这种什么程序向来就是白痴的!呵呵
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

使用道具 举报

发表于 2006-8-17 09:37:08 | 显示全部楼层
只是为了个图例就装个代码,感觉没必要啊,怎么回事?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2013-5-30 05:46:19 | 显示全部楼层
呵呵, 有机会尝试一下。希望跟楼主学习学习。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2019-9-21 03:29 , Processed in 0.226203 second(s), 62 queries , Gzip On, WinCache On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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