乐筑天下

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

请帮帮忙

[复制链接]

26

主题

112

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
216
发表于 2004-4-4 18:48:00 | 显示全部楼层 |阅读模式
请各位高手帮帮忙,
(defun c:bia(/ n pt txt pt1 pt2 pt3 pttxt)
         (setq n(getint "\n 输入标示零件个数: " )
                                                                         txt(getstring "\n 输入起始零件序号: " )
                                                                                 pt(getpoint "\n 输入标记线连接点: " )
                                                                 pt1(list (+ (car pt) 6) (cadr pt))
                                                         pttxt(list (+ (car pt) 3) (+ (cadr pt) 2.4))
         )
         (setq cl(getvar "clayer"))
         (setq os(getvar "osmode"))
         (setvar "clayer" "w文字标注")
         (setvar "osmode" 0)
         (command"line" pt pt1 "")
         (command"text" "mc" pttxt 3.5 0 txt)
         (repeat (- n 1)
                         (setq pt2(polar pt1 (/ (* pi 7) 4) 1.4))
                         (command"line" pt1 pt2 "")
                         (setq pt3(polar pt2 (/ pi 4) 1.4))
                         (setq pt4(list (+ (car pt3) 6)         (cadr pt3)))
                         (command"line" pt2 pt3 pt4 "")
                         (setq pttxt(list (+ (car pt3) 3) (+ (cadr pt) 2.4)))                 
                         (setq txt (rtos (+ (atoi txt) 1) 2 0))
                         (print txt)
                         (command "text" "MC" pttxt 3.5 0 txt)                         
                         (setq pt1 pt4)
         )
         (setvar "clayer" cl)
         (setvar "osmode" os)
         )
它只能实现方式1,我想同时实现方式1和方式2,我应该怎么改?
回复

使用道具 举报

26

主题

3072

帖子

10

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3177
发表于 2004-4-4 19:02:00 | 显示全部楼层
方式1是什么东西,方式2又是什么东西?说清楚点...
回复

使用道具 举报

26

主题

112

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
216
发表于 2004-4-4 19:04:00 | 显示全部楼层
噢,真不好意思,好久不见你,想你

srv0mcxwiqi.jpg

srv0mcxwiqi.jpg

回复

使用道具 举报

26

主题

112

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
216
发表于 2004-4-4 19:47:00 | 显示全部楼层
我的意思是,我只要告诉程序我是想用方式一,还是方式二,然后它选择用哪种方式标。您是这样理解的吗
回复

使用道具 举报

26

主题

3072

帖子

10

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3177
发表于 2004-4-4 20:22:00 | 显示全部楼层
如果你选择了跟PT连的那条直线,或许可以根据直线的角度来判断使用方式1还是方式2
做的时候,你最好将方式1或2做成子函数,在主还是只要根据需要调用某一个就可以了
回复

使用道具 举报

yxp

122

主题

702

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1188
发表于 2004-4-4 21:43:00 | 显示全部楼层
(command "line" poi
                         (progn (setvar "osmode" 0)
                                                                                                                                         (princ "\n 退出/:")
                                                                                                                                         pause)                 ;第二点
                         (progn
                                                                                                                 (setq qz (entget (entlast))
                                                                                         qpoi        (cadr (assoc 10 qz))
                                 zpoi        (cadr (assoc 11 qz))
                                         )
                                         (if (

ba2hludt5w5.jpg

ba2hludt5w5.jpg


如图
回复

使用道具 举报

yxp

122

主题

702

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1188
发表于 2004-4-4 21:47:00 | 显示全部楼层
(defun c:bia(/ n pt txt pt1 pt2 pt3 pttxt d)
         (setq n(getint "\n 输入标示零件个数: " )
                                         txt(getstring "\n 输入起始零件序号: " )
        d(getstring "\n 在左还是在右: ")
                                                         pt(getpoint "\n 输入标记线连接点: " )
                 )
(if(= "r" d)
         (setq pt(list (- (car pt) (+ (* 6 n) (* 2 (- n 1)))) (cadr pt)))
         )
         (setq pt1(list (+ (car pt) 6) (cadr pt))
                         pttxt(list (+ (car pt) 3) (+ (cadr pt) 2.4))
        )
         (setq cl(getvar "clayer"))
         (setq os(getvar "osmode"))
         (setvar "clayer" "w文字标注")
         (setvar "osmode" 0)
         (command"line" pt pt1 "")
         (command"text" "mc" pttxt 3.5 0 txt)
         (repeat (- n 1)
                         (setq pt2(polar pt1 (/ (* pi 7) 4) 1.41421))
                         (command"line" pt1 pt2 "")
                         (setq pt3(polar pt2 (/ pi 4) 1.41421))
                         (setq pt4(list (+ (car pt3) 6)         (cadr pt3)))
                         (command"line" pt2 pt3 pt4 "")
                         (setq pttxt(list (+ (car pt3) 3) (+ (cadr pt) 2.4)))                 
                         (setq txt (rtos (+ (atoi txt) 1) 2 0))
                         (print txt)
                         (command "text" "MC" pttxt 3.5 0 txt)                         
                         (setq pt1 pt4)
         )
         (setvar "clayer" cl)
         (setvar "osmode" os)
         )
回复

使用道具 举报

26

主题

112

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
216
发表于 2004-4-5 14:36:00 | 显示全部楼层
左右方向未提示用户该输入什么,总不能输入一个“在左”或“在右”吧,提示语最好这样写:[在右(R)]:
判断这样:(if (= "R"        (strcase d))...
ps:头像是你本人照片吗?好靓哦,发到社区留言里置顶的帖子里吧,好多人
回复

使用道具 举报

26

主题

3072

帖子

10

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3177
发表于 2004-4-5 15:15:00 | 显示全部楼层
你告诉我,这张照片给你的感觉是不是我很土,不许说谎,
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-8-15 20:03 , Processed in 1.333735 second(s), 73 queries .

© 2020-2025 乐筑天下

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