乐筑天下

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

取得随机数

[复制链接]

3

主题

13

帖子

2

银币

初来乍到

Rank: 1

铜币
25
发表于 2005-12-20 01:09:15 | 显示全部楼层 |阅读模式
我如何将随机数(通过RND生成)存储在用户1
该图中?set variable“useri 1”,((10 * Rnd) + 1)返回错误

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

16

主题

168

帖子

39

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
197
发表于 2005-12-20 02:14:07 | 显示全部楼层
这是你想要的,但它冷得更好
  1. Public Sub TESTRND()
  2. Dim num As Double, e As Double
  3. e = 0.25 ' MUST BE INITIALIZED TO SOMETHING, OR IT REPEATS THE SAME NUMBER
  4. num = (10 * (Rnd(e)) + 1)
  5. ThisDrawing.SetVariable "Userr1", num
  6. End Sub

回复

使用道具 举报

3

主题

13

帖子

2

银币

初来乍到

Rank: 1

铜币
25
发表于 2005-12-20 06:34:20 | 显示全部楼层
感谢
USERRx或USERIx返回相同的东西...错误
嗯,实际上我正在尝试从Vlisp存储。例如:
  1. (defun msgbox (title button msg / useri1 r)   
  2.   (setq useri1 (getvar "useri1"))  
  3.   (vla-eval
  4.     (vlax-get-acad-object)
  5.     (strcat
  6.       "ThisDrawing.SetVariable "USERI1","
  7.       "MsgBox (""
  8.       msg
  9.       "","
  10.       (itoa button)
  11.       ",""
  12.       title
  13.       "")"
  14.     )
  15.   )
  16.   (setq r (getvar "useri1"))
  17.   (setvar "useri1" useri1)  
  18.   r
  19. )

这工作得很好,允许我在没有DCL的情况下显示基本界面... msgbox返回一个存储在USERI1中的值,那么我可以毫无麻烦地使用它。
以同样的方式,我认为
  1. ThisDrawing.SetVariable "USERI1", ((10 * Rnd) + 1)

将起作用
回复

使用道具 举报

154

主题

1274

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1936
发表于 2005-12-20 08:51:26 | 显示全部楼层
我看到的唯一问题是,useri1存储一个整数,而rnd(至少在vba中)生成一个实数(double)
回复

使用道具 举报

3

主题

13

帖子

2

银币

初来乍到

Rank: 1

铜币
25
发表于 2005-12-20 10:01:51 | 显示全部楼层
如果您将RND调用的值放在一个变量中,您应该能够将它放在useri1中,而不会发生意外,或者至少将数据从一个变量移动到一个整型变量,然后再移动到useri1中
回复

使用道具 举报

116

主题

996

帖子

9

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1466
发表于 2005-12-20 10:37:50 | 显示全部楼层
ThisDrawing.SetVariable “USERR1”, (CDbl ((10 * Rnd) + 1))
应该可以正常工作...
回复

使用道具 举报

116

主题

996

帖子

9

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1466
发表于 2005-12-20 10:55:35 | 显示全部楼层
好!
技巧书的另一行!
谢谢!
回复

使用道具 举报

154

主题

1274

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1936
发表于 2005-12-28 07:56:56 | 显示全部楼层
我不相信你必须转换calc结果,只要确保其中一个数字常量是真实的
  1. ThisDrawing.SetVariable "USERR1", ((10.0 * Rnd) + 1)

回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-5 01:04 , Processed in 0.297280 second(s), 69 queries .

© 2020-2025 乐筑天下

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