乐筑天下

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

[编程交流] autolisp中的实数

[复制链接]
gpd

14

主题

21

帖子

7

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
70
发表于 2022-7-6 10:40:59 | 显示全部楼层 |阅读模式
我有一个lisp例程,它从excel表格中读取点坐标,并在这些点上插入块。所有点都有3位小数。例如
 
614332.785, 2619494.544
 
例行工作很好。
 
现在,在另一个例程中,我得到了块的基点,并将其与excel文件中的坐标进行比较。它们不相同,但略有不同。例如,在上述点插入的块的基点将由lisp报告为(614333.0261949E+006)。造成这种差异的原因是什么。我怎样才能得到相同的精确值。
 
类似地,假设它们是存储在excel单元格中的值6123.494,当我提取该值(使用vlisp)时,系统显示变量的值为6123.494,但当我调用(valx variant value)时,返回值变为6123。为什么会这样。494部分省略。请引导。
 
谢谢
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 10:56:17 | 显示全部楼层
只需按以下方式更改函数中的最后一个数字。
  1. (rtos [color="blue"]YourNumber[/color] 2 [color="red"]3[/color] )

如果发现任何其他错误,最好也粘贴代码,让我们为您检查它们。。。
当做
 
塔瓦特
回复

使用道具 举报

gpd

14

主题

21

帖子

7

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
70
发表于 2022-7-6 11:22:45 | 显示全部楼层
谢谢Tharwat,
 
但我希望结束结果是实数,而不是字符串。rtos可能会将结果转换为字符串。
 
有什么建议吗?
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 11:34:55 | 显示全部楼层
它来了;
  1. (setq a 15.12345)
  2. 15.1235
  3. (setq b (rtos a 2 3))
  4. "15.123"
  5. (setq c ([color="red"]atof[/color] b))
  6. 15.123

 
当做
 
塔瓦特
回复

使用道具 举报

54

主题

3755

帖子

3583

银币

后起之秀

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

铜币
438
发表于 2022-7-6 11:41:53 | 显示全部楼层
阅读开发者指南中的EQUAL。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-6 17:10 , Processed in 0.458714 second(s), 62 queries .

© 2020-2025 乐筑天下

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