明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4014|回复: 26

救命啊,,救命啊,,大虾们,,哭求一个小程序。。。。

  [复制链接]
czc520hx 该用户已被删除
发表于 2012-4-23 22:08 | 显示全部楼层 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2012-4-23 23:33 来自手机 | 显示全部楼层
cass下面有这功能,lisp也很容易实现的。
发表于 2012-4-24 01:00 | 显示全部楼层
一窍不通,求源代码...
czc520hx 该用户已被删除
 楼主| 发表于 2012-4-24 09:23 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
czc520hx 该用户已被删除
 楼主| 发表于 2012-4-24 09:23 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
czc520hx 该用户已被删除
 楼主| 发表于 2012-4-24 09:26 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2012-4-24 09:28 | 显示全部楼层
连哭带跪
大呼要命
快打110
czc520hx 该用户已被删除
 楼主| 发表于 2012-4-24 09:29 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2012-4-24 11:00 来自手机 | 显示全部楼层
ynhh 发表于 2012-4-24 09:28
连哭带跪
大呼要命
快打110

论坛有专门的交易区,如果真的很急就去那里招标吧!顺便支持下论坛发展!……
发表于 2012-4-24 20:23 | 显示全部楼层
本帖最后由 changyiran 于 2012-4-24 20:26 编辑
czc520hx 发表于 2012-4-24 09:29
,,,急急急

  1. (defun c:tt( / EL1 EL2 F F1 GCB GCZ JZGC LCB LCGC LCGCB N V1 V2 V3 WJM YGCZ)
  2.   (command"undo""m")
  3.   (setq v1(getvar"osmode"))
  4.   (setq v2(getvar"cmdecho"))
  5.   (setq v3(getvar"blipmode"))
  6.   (setq v4(getvar"dimzin"));保存控制对主单位值的消零处理的当前值
  7.   (setvar"blipmode"0)
  8.   (setvar"cmdecho"0)
  9.   (setvar "osmode"0)
  10.   (setvar"dimzin"0);保留小数位数时如果位数不足可以补零
  11.   (setq f(getfiled"请选择数据文件""""dmt"0))
  12.   (setq f1(open f "r")n 0)
  13.   (setq wjm(read-line f1)lcb'()gcb'()jzgc 0)
  14.   (while wjm
  15.     (while(vl-string-search","(if(setq lcgc(read-line f1))lcgc "tcb"));如果是nil就退出吧
  16.         (setq lcgcb(read(strcat"("(thdh lcgc)")")));获得里程高程表
  17.         (setq ygcz(cadr lcgcb));保存原高程表
  18.         (setq lcgcb(list (car lcgcb)(+ (cadr lcgcb)jzgc 60)));获得增加基准高程后的里程高程表
  19.         (entmake(list'(0 . "line")(list 10 (car lcgcb)(+ 60 jzgc))(list 11 (car lcgcb)(cadr lcgcb))));生成竖线
  20.         (entmake(list'(0 . "text")(cons 1 (rtos ygcz 2 3))'(40 . 2)(list 10 (-(car lcgcb)6.33333)(+ 70 jzgc))));高程值注记
  21.         (entmake(list'(0 . "text")(cons 1 (rtos (car lcgcb) 2 3))'(40 . 2)(list 10 (-(car lcgcb)6.33333)(+ jzgc 50))));里程点注记
  22.         (setq lcb(cons(list 10(car lcgcb)(+ 60 jzgc))lcb))
  23.         (setq gcb(cons (cons 10 lcgcb) gcb))
  24.         (setq gcz(cons (cadr lcgcb)gcz))
  25.         (setq n(1+ n));计算里程点数
  26.     )
  27.         (setq el1(append(list'(0 . "LWPOLYLINE")'(100 . "AcDbEntity")'(100 . "AcDbPolyline"))(list(cons 90 n)) lcb ));里程图元表
  28.         (setq el2(append(list'(0 . "LWPOLYLINE")'(100 . "AcDbEntity")'(100 . "AcDbPolyline"))(list(cons 90 n)) gcb ));高程图元表
  29.         (setq el3(append(list'(0 . "text")(cons 1 wjm)'(40 . 10)(list 10 (-(/ (cadr(car lcb))2)6.33333)(+ jzgc 30)))));剖面线名图元表
  30.         (entmake el1);生成里程线
  31.           (entmake el2);生成高程线
  32.         (entmake el3);生成剖面线名
  33.         (setq wjm lcgc lcb'()gcb'()n 0 jzgc(apply'max gcz))
  34.   )
  35.   (close f1)
  36.   (setvar "osmode"v1)
  37.   (setvar"cmdecho"v2)
  38.   (setvar"blipmode"v3)
  39.   (setvar"dimzin"v4)
  40.   (alert"运行完毕")
  41. )
记得每个里程数据的第一行为其名字
学习重要,不能只求源代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-19 16:27 , Processed in 0.461618 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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