乐筑天下

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

[编程交流] 拿到第一分?

[复制链接]

41

主题

301

帖子

265

银币

后起之秀

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

铜币
209
发表于 2022-7-6 15:11:04 | 显示全部楼层 |阅读模式
您好。
希望一切顺利。当我戒酒的时候。
 
我现在正试图从“getdist”那里获得分数。
 
这是目前为止最基本的布局。
谢谢你的帮助
回复

使用道具 举报

0

主题

269

帖子

279

银币

限制会员

铜币
-4
发表于 2022-7-6 15:17:35 | 显示全部楼层
1.Getdist旨在返回一段距离。如果你想要2分,我建议;
 
(setq t2(getpoint“\n选择第一个点:”)
(setq t3(getpoint t2“\n现在是另一个点:”)
 
2。(setq t4(\(+(car t2)(car t3)))你是否省略了除数,我假设2如。。哦,是的,分号不正确。。
(setq t4(/(+(车辆t2)(车辆t3))2)
 
3、你在做什么
回复

使用道具 举报

41

主题

301

帖子

265

银币

后起之秀

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

铜币
209
发表于 2022-7-6 15:23:55 | 显示全部楼层
对不起,伙计,没想到会这么快回复,我把它贴了出来,然后想,嗯,这是一些糟糕的即时编码,我需要我的记事本。
 
我更新了。
我知道这种方法,但我想保留这样的选项,即如果用户现在这样做,他们仍然能够保持距离。
 
我希望你能理解我想表达的意思。
两个圆的中心点的功。
因此,两点之间的距离给出了高度。
回复

使用道具 举报

2

主题

439

帖子

536

银币

限制会员

铜币
-14
发表于 2022-7-6 15:28:12 | 显示全部楼层
距离和中点计算示例:
 
  1. (defun c:diss(/ pt1 pt2 mPt di)
  2. (and
  3.    (setq pt1(getpoint "\nSpecify first point: "))
  4.    (setq pt2(getpoint pt1 "\nSpecify second point: "))
  5.    (setq mPt(mapcar '/ (mapcar '+ pt1 pt2) '(2 2 2)))
  6.    (setq di(distance pt1 pt2))
  7.    (alert(strcat "Point 1 = " (vl-princ-to-string pt1)
  8.           "\nPoint 2 = " (vl-princ-to-string pt1)
  9.           "\nMidpoint = " (vl-princ-to-string mPt)
  10.           "\nDistance = " (rtos di)
  11.           ); end stracat
  12.   ); end alert
  13.    ); end and
  14. (princ)
  15. ); end c:diss
回复

使用道具 举报

41

主题

301

帖子

265

银币

后起之秀

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

铜币
209
发表于 2022-7-6 15:29:43 | 显示全部楼层
的确对不起,如果我不清楚我很擅长这样做。但这不允许用户在命令行中输入“68”。以及相距68的pt1和pt2。这就是我面临的问题。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 15:38:14 | 显示全部楼层
这种安排怎么样:
 
  1. (defun c:test (/ pt1 pt2)
  2. (initget 128)
  3. (setq pt1 (getpoint "\nSpecify Distance or Select First Point > "))
  4. (if (eq (type pt1) 'LIST)
  5.    (setq pt2 (getpoint pt1 "\nSelect Second Point > ")))
  6. (alert (vl-princ-to-string pt1))
  7. (princ))
回复

使用道具 举报

CAB

29

主题

781

帖子

430

银币

中流砥柱

Rank: 25

铜币
526
发表于 2022-7-6 15:40:26 | 显示全部楼层
您应该测试空响应,[输入]键
对于(listp x)或(eq(type pt1)’LIST,as nil将返回true
  1. (defun c:test (/ pt1 pt2)
  2. (initget 128)
  3. (setq pt1 (getpoint "\nSpecify Distance or Select First Point > "))
  4. (cond
  5.    ((null pt1) (alert "Nothing entered."))
  6.    ((and (listp pt1)
  7.          (setq pt2 (getpoint pt1 "\nSelect Second Point > ")))
  8.     (alert (vl-princ-to-string (distance pt1 pt2)))
  9.    )
  10.    ((alert (vl-princ-to-string pt1)))
  11. )
  12. (princ)
  13. )
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 15:46:02 | 显示全部楼层
很好的观点CAB-感谢您的调整
回复

使用道具 举报

CAB

29

主题

781

帖子

430

银币

中流砥柱

Rank: 25

铜币
526
发表于 2022-7-6 15:50:44 | 显示全部楼层
当用户选择第一个点时,这一个捕捉到了错误的第二个点。
  1. (defun c:test (/ pt1 pt2)
  2. (initget 128)
  3. (setq pt1 (getpoint "\nSpecify Distance or Select First Point > "))
  4. (cond
  5.    ((null pt1) (alert "Nothing entered."))
  6.    ((and (listp pt1)
  7.          (setq pt2 (getpoint pt1 "\nSelect Second Point > ")))
  8.     (alert (vl-princ-to-string (distance pt1 pt2)))
  9.    )
  10.    ((and (listp pt1) (null pt2)) (alert "Bad 2nd point."))
  11.    ((alert (vl-princ-to-string pt1)))
  12. )
  13. (princ)
  14. )
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 15:53:30 | 显示全部楼层
这都是关于错误捕捉的
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-4 19:11 , Processed in 0.963426 second(s), 72 queries .

© 2020-2025 乐筑天下

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