乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 90|回复: 6

请问下列程序绘的图形为何会变形?

[复制链接]

1

主题

4

帖子

1

银币

初来乍到

Rank: 1

铜币
8
发表于 2004-7-24 09:59:00 | 显示全部楼层 |阅读模式
下列程序我想绘一个粗糙符号,为何到Pt3Pt4不是水平线,Pt4位置移位什么原因造成的?请赐教!(set 'pt1 (getpoint "\n[请确定起始点位置]:"))(set 'ang_pt4 (/ pi 3))(set 'ang_pt3 (* pi 0.66667))(set 'ang_circle (/ pi 2))(set 'distance_p1_p2 12.7017)(set 'distance_p1_p34 5.7735)(set 'distance_p1_circle_center 3.33333)(set 'radius_center 1.66667)(set 'distance_p1_p3040 11.3725)(set 'ang_pt40 1.31415)(set 'ang_pt30 1.82744)(set 'pt2 (polar pt1 ang_pt4 distance_p1_p2))(set 'pt3 (polar pt1 ang_pt3 distance_p1_p34))(set 'pt4 (polar pt1 ang_pt4 distance_p1_p34))
(command "pline" pt2 "w" 0.08 0.08 pt1 pt3 pt4 "")
以上是粗糙度标注程序前一小节,不包括数字标注部分!
回复

使用道具 举报

16

主题

909

帖子

8

银币

中流砥柱

Rank: 25

铜币
973
发表于 2004-7-24 10:28:00 | 显示全部楼层
开始(setvar "OSMODE" 0)试试
回复

使用道具 举报

74

主题

1603

帖子

24

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1906
发表于 2004-7-24 14:57:00 | 显示全部楼层

楼主: 重新改编了你的程序,试试如何?
实际应用中最好是利用带属性的块插入进行标注,不过我对机械作图不了解。
光有符号没有数字,怎么识图?
;;czfh.lsp
(defun c:czfh (/                                 pt1                 ang_pt4                                         ang_pt3
                                                         distance_p1_p2                 distance_p1_p34
                                                         pt2                                 pt3                 pt4
                                                 )
         (PREV)
         (setvar "osmode" 39)                 ;捕捉状态endp,mid,cen,int       
        (setq pt1 (getpoint "\n\t请确定起始点位置: "))
(setvar "osmode" 0)                 ;强制取消捕捉状态
         (setq ang_pt4 (/ pi 3))
         (setq ang_pt3 (* pi 0.66667))
                                        ;(setq ang_circle (/ pi 2))
         (setq distance_p1_p2 12.7017)
         (setq distance_p1_p34 5.7735)
                                        ;(setq distance_p1_circle_center 3.33333)
                                        ;(setq radius_center 1.66667)
                                        ;(setq distance_p1_p3040 11.3725)
                                        ;(setq ang_pt40 1.31415)
                                        ;(setq ang_pt30 1.82744)
         (mkla "粗糙符号" 4)
         (setq pt2 (polar pt1 ang_pt4 distance_p1_p2))
         (setq pt3 (polar pt1 ang_pt3 distance_p1_p34))
         (setq pt4 (polar pt1 ang_pt4 distance_p1_p34))
         (command "pline" pt2 "w" 0.08 0.08 pt1 pt3 pt4 "")
         (POST)
)
(Defun PREV ()
;;; 保存原有系统变量,建立新的系统变量
         (Setq        cmdech (Getvar "Cmdecho")
        oom                         (Getvar "Orthomode")
        osm                         (Getvar "Osmode")
        la                                 (Getvar "Clayer")
         )
         (Setvar "Cmdecho" 0)
         (Setvar "Regenmode" 1)
)
;;; ----------------------- MKLA --------------------------
(Defun MKLA (a b)
;;; 建层: (mala "层名" 颜色号)
         (If (= (Tblsearch "layer" a) nil)
                         (Command "layer" "m" a "c" b a "")
                         (Command "layer" "t" a "s" a "c" b a "")
         )
)
(Defun POST() ;(/ cmdech LA oom osm)
;;; 恢复原有系统变量
         (Setvar "Cmdecho" cmdech)
         (Setvar "Clayer" LA)
         (Setvar "Orthomode" oom)
         (Setvar "Osmode" osm)
         (Terpri)
         (Princ)
)                                        ;Defun
捕捉状态修改说明:
①确定起始点位置前设置捕捉状态endp,mid,cen,int四种基本状态。
②画线前取消捕捉状态。
③画完线再恢复原先的捕捉状态
回复

使用道具 举报

1

主题

4

帖子

1

银币

初来乍到

Rank: 1

铜币
8
发表于 2004-7-26 09:37:00 | 显示全部楼层
取消对象捕捉,确实能消除这一毛病,但是没有对象捕捉,对表面轮廓线进行标注点岂不是很难找到?
回复

使用道具 举报

26

主题

3072

帖子

10

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3177
发表于 2004-7-26 09:41:00 | 显示全部楼层
使用osmode进行控制,需要就设置上,不需要时就取消。。。
回复

使用道具 举报

1

主题

4

帖子

1

银币

初来乍到

Rank: 1

铜币
8
发表于 2004-7-26 09:54:00 | 显示全部楼层
程序里要求首先确定第一点,该点是要被标注轮廓上的一点,也是粗糙度符号的基点,一开始就取消对象捕捉,第一点将无法精确定位!
请继续赐教!
回复

使用道具 举报

1

主题

4

帖子

1

银币

初来乍到

Rank: 1

铜币
8
发表于 2004-7-26 10:16:00 | 显示全部楼层

利用下列语句
(setvar "osmode" 0)取消对象捕捉
再利用(setvar "osmode" 15359)开启对所有对象捕捉捕捉模式
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-8-19 04:13 , Processed in 3.479662 second(s), 66 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表