等高线赋值函数
本帖最后由 linshiyin2 于 2012-3-27 17:08 编辑谁能搞出这个效果的lisp,设置起始高程、步长、增减,拉线与之相交的多段线赋值高程,完成后所赋值高程的多段线改变颜色(蓝色),不设置起始高程,拉线时读取第一条线的高程值,填入起始高程。
步骤:
1拉线确定哪些多段线赋值,多段线有先后顺序
2读取第一条多段线高程,填入起始高程,dcl设置步长增减
3按顺序赋值z高程,同时改变多段线颜色,
4删除拉线。
ok
qiuhaitao110 发表于 2013-11-5 17:04
我自己写的代码 可以计算计曲线 和首曲线 并区分
插件还在么,能不能分享一个,谢谢。1281125288@qq.com 本帖最后由 Gu_xl 于 2012-10-10 09:09 编辑
拉线改等高线高程
以下是核心源码,仅供学习参考,未提供全部自定义函数源码,自定义函数可去我的网盘下载函数库!
**** Hidden Message *****
版主你好!谢谢支援! 老大给力啊,程序不错,请教一下,如何通过拉线顺序获取对象呢,知道这个就好办了啊, 等高线比较少碰触领域,学习一下咯! 本帖最后由 linshiyin2008 于 2012-3-28 00:39 编辑
(defun C:gcfz(/ p1 p2 ss)
(setvar "blipmode" 0)
(initget 1)
(setq p1 (getpoint "\n第1点:")) ;给出第一点
(initget 1)
(setq p2 (getpoint p1 "\n第2点:")) ;给出第二点
(setq ss (ssget "F" (list p1 p2) '((0 . "*polyline"))))
(while (setq ed (car ss));;;返回表中的第一个元素
(setq ed (entget en1))
(setq ed (subst (cons 10 bg) (assoc 10 ed) ed ));;;修改高程z
(setq ed (subst (cons 62 "5") (assoc 62 ed) ed ));;;改成蓝色
(entmod ed)
(setq ss (cdr ss));;;剩下的元素
)
);;;end gcfz
(defun getdata( / );;获取dcl数值
)
(defun readdata( / );;返回第一对象的z高程数值并传给dcl
)
自己写的,累了写不下去了
等高线比较少用good dear sir
nice
进来向各位学习了。。。 看看G版的是否满足楼主要求了?