找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1217|回复: 6

[编程申请]:请教

[复制链接]
发表于 2002-11-23 17:39:32 | 显示全部楼层 |阅读模式

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

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

×
我新学的lisp语言,很多的函数还不会用,编了一个最简单的程序,就是在一 点上点击一下即在该点上给出该点的坐标值,但不知为什么送上屏幕的值很长的,小数点后有将近七位数,能不能帮一下忙截取小数点后的二位数啊.另小东CAD的工具箱有三M多,没有U盘下载很费劲的.还有哪位朋友能帮我找个矢量化的软件?谢谢了?大图我们单位有数字化仪,小的比如A4大小的图还用数字化,太傻了吧?再次感谢了.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2002-11-23 23:36:14 | 显示全部楼层
这个问题就不用xd麻烦了,我给你试着回答一下!
你用getpoint得到一点pt,求出其横纵坐标值
(setq ptx(car pt)  pty(cadr pt))
然后在实数转化串rtos,保留小数点后3位,即:
(setq ptx (rtos ptx 2 3) pty (rtos pty 2 3))
2-代表十进制,3-小数点后保留3位
然后将实数串ptx、pty用command函数调用cad的“text"写出或者
赋值给带属性的块属性值即可.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 593个

财富等级: 财运亨通

发表于 2002-11-24 08:41:02 | 显示全部楼层
补充一点,Rtos 生成的小数点位数还受系统变量 DIMZIN 影响。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2002-11-24 13:41:48 | 显示全部楼层

谢谢

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

使用道具 举报

发表于 2002-11-24 18:16:35 | 显示全部楼层
我这儿也有一个  考虑了坐标系可能旋转
(defun  C:qt( /  pt x y fname ang pt1 pt2 y1 osm tp ang1 alpha)
  (setvar "cmdecho" 0)

  (setq osm (getvar "osmode" ))

  (command "ucs" "_world")  ;;;;;;注意坐标系
  (setq pt (getpoint "\n 点取要标注的点: "))

  (setq x (rtos (car pt) 2 2) y (rtos (cadr pt) 2 2))

  (setq x (strcat "Y=" x) y (strcat "X=" y))
    (setq pt1 (getpoint  "\n 点取文本插入点: "))
  (setq pt2 (getpoint pt1 "\n 点取一点表示文本方向: "))

  (command "line" pt pt1 pt2 "")
;;;;;;;;;;;;;;;;;;;;;jinwei increased 2002/4/18
;(setq pt2 pt1)
;;;;;;;;;;;;;;;;;;;;;

  (setvar "osmode" 0)
  (setq qth (getvar "textsize"))
  (setq alpha 0 a  (ucsorview))
  ;(setq ang1 (- (angle pt1 pt2) alpha))
  (setq  ang1 (angle pt1 pt2))
  (setq ang (*  (/ ang1 pi ) 180))
  

;;
  (command "text" pt1  qth ang x)
  (command "text" (setq tp (polar pt1 (+ ang1 1.5708 ) (* 1.3 qth  )))  qth ang y)
;;(command "text" (polar tp (+  ang1 1.5708) (* 1.3 qth  )) qth  ang "  坐标:");;如果你需要增加其他文字说明
  (setvar "osmode" osm)
  (command "ucs" "p")
  (princ)

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

使用道具 举报

发表于 2002-11-24 19:17:08 | 显示全部楼层

有关矢量处理的回复

最初由 盛十二 发布
[B]我新学的lisp语言,很多的函数还不会用,编了一个最简单的程序,就是在一 点上点击一下即在该点上给出该点的坐标值,但不知为什么送上屏幕的值很长的,小数点后有将近七位数,能不能帮一下忙截取小数点后的二位数啊.另小东... [/B]

//HI~!

我帮你找个矢量化的软件:
在晓东cad空间的下载中心----矢量处理Scan2CAD 5.0(标准版)
Scan2CAD 是一个可以工作PC机上的、在任何扫描仪和任意尺寸大小的图纸、任意CAD程序下的光栅图到矢量图转换处理的软件。非常容易的把光栅图转换成可以编辑的CAD标准的DXF文件。

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

使用道具 举报

 楼主| 发表于 2002-11-26 20:31:02 | 显示全部楼层

谢谢

也谢谢楼的朋友,但不知这个软件用的效果如何?我在工程师之家下了一个什么什么R2V的,也不错,但只是演示版的,不能用,让我伤透了心.我下东西要求别人的,自己单位也能下的,只是要领导批,麻烦的.但仍要感谢的.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-26 03:45 , Processed in 0.182576 second(s), 44 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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