找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 992|回复: 7

[原创]:cad点坐标生成数据文件,用于计算输入等

[复制链接]
发表于 2005-4-28 10:23:40 | 显示全部楼层 |阅读模式

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

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

×
拾取Cad点坐标生成数据文件,用于计算输入等,例如ANSYS, sap,桥梁博士等
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2005-4-28 23:15:35 | 显示全部楼层
怎么没有生成坐标数据文件啊?楼主是不是上传错了?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-4-29 12:09:11 | 显示全部楼层
这个程序是在d盘根目录下生成一个node.txt文件,的确是可以用的。
小程序,但很实用,不错。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-4-29 17:08:59 | 显示全部楼层
楼主你好,希望你能够修改一下程序,可以指定坐标文件存储路径和名称!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-4-29 20:35:02 | 显示全部楼层
程序功能:多义线顶点序号及坐标标注,可输出坐标数据到文本文件。
[php]
(load "xyp_lib")
;|
加载通用函数
如果已经下载xyp_lib并放到搜索路径下可以不再下载!
下载地址:http://www.xdcad.net/forum/showthread.php?s=&threadid=325268
如果已在acad.lsp中添加了(load "xyp_lib"),可以直接运行下面的程序。
|;


;;----------------------------------------------------------------------
;|
;;;功能 : 多义线顶点序号及坐标标注,可输出坐标数据到文本文件。
适用于 POLYLINE 及 LWPOLYLINE 图元 <lmf97231>
多义线编号--起始点随意选
在对管线(多义线)用LISP程序进行自动编号和座标计算时,有时需要编号顺时针递增,
有时又需要编号逆时针递增,在选取多义线时,通过选取点来确定编号方向,也就是说当
选取左半部分时从左往右开始,选取右半部分时从右往左开始。
2005.02.26 根据<xxming>的要求,修改标注闭合多义线存在的问题
2005.04.29 增加输出坐标数据到文本文件功能
|;
(defun c:test065 ()
  (cmdla0)
  (jzhz)
  (setq        tx1 (ukword 1 "1 2" "\n确定顶点顺序 : 1-正向/2-反向" tx1)
        tx2 (ukword 1 "Y N" "\n是否输出顶点坐标数据:Y-是/N-否" tx2)
  )
  (if (= tx2 "Y")
    (progn
      (setq ffn        (getfiled "\n保存的坐标文件" "坐标" "txt" 1)
            ff        (open ffn "w")
      )
    )
  )
  (command ".undo" "BE")
  (while (setq s1 (entsel "\n\t选择对象<退出> : "))
    (if        (or (= (dxf 0 (entget (car s1))) "POLYLINE")
            (= (dxf 0 (entget (car s1))) "LWPOLYLINE")
        )
      (progn
        (setq eobj (vlax-ename->vla-object (car s1))
              i           -1
        )
        (if (= tx1 "1")                        ;正向
          (progn
            (while
              (setq
                pt0 (vlax-curve-getPointAtParam eobj (setq i (1+ i)))
              )
               (princ)
            )
            (if        (= (dxf 70 (entget (car s1))) 1)
              (setq n (- i 1))
              (setq n i)
            )
            (setq i -1)
            (repeat n
              (setq
                pt0 (vlax-curve-getPointAtParam eobj (setq i (1+ i)))
              )
              (mkla "坐标编号" 1)
              (command "text"
                       "j"
                       "mr"
                       (polar pt0 (* pi 0.75) (* sc 200))
                       (* sc 400)
                       "0"
                       (rtos (+ 1 i) 2 0)
              )
              (mkla "坐标" 3)
              (X_zb pt0)
              (if (= tx2 "Y")
                (wr-tx pt0 ff)
              )
            )
          )
          ;;反向
          (progn
            (while
              (setq
                pt0 (vlax-curve-getPointAtParam eobj (setq i (1+ i)))
              )
               (princ)
            )
            (if        (= (dxf 70 (entget (car s1))) 1)
              (setq n (- i 1))
              (setq n i)
            )
            (setq i -1)
            (repeat n
              (setq
                pt0 (vlax-curve-getPointAtParam eobj (setq i (1+ i)))
              )
              (mkla "坐标编号" 1)
              (command "text"
                       "j"
                       "mr"
                       (polar pt0 (* pi 0.75) (* sc 200))
                       (* sc 400)
                       "0"
                       (rtos n 2 0)
              )
              (setq n (1- n))
              (mkla "坐标" 3)
              (X_zb pt0)
              (if (= tx2 "Y")
                (wr-tx pt0 ff)
              )
            )
          )
        )
      )
    )
  )
  (if (= tx2 "Y")
    (progn
      (close ff)
      (princ (strcat "\n 坐标写至=>" ffn))
    )
  )
  (command ".undo" "E")
  (cmdla1)
)
;;;
(defun wr-tx (point filename / tx)
  (setq        tx (strcat (rtos (+ 1 i) 2 0)
                   ":"
                   (rtos (car point) 2)
                   ","
                   (rtos (cadr point) 2)
           )
  )
  (write-line tx filename)
)
[/php]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

使用道具 举报

已领礼包: 363个

财富等级: 日进斗金

发表于 2014-3-14 11:24:29 | 显示全部楼层
看一下,在那儿呢

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-25 00:37 , Processed in 0.213362 second(s), 44 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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