查看: 0|回复: 0

【官网翻译】如何通过代码读取FlexSim中对象得精确位置?

[复制链接]

主题

0

回帖

783

积分

中级会员

积分
783
发表于 2017-10-14 16:54:43 | 显示全部楼层 |阅读模式
[align=left][font=黑体]原帖地址[/font][font=宋体]:[/font][font=宋体]https://answers.flexsim.com/questions/43941/read-exact-object-location-in-flexsim-by-code.html[/font][/align][align=left][font=宋体]原作者:[/font][u][color=red]Robin Brunner; [/color][/u][u][color=red]Jorg Vogel;[/color][/u][u][color=red]  Matt Long[/color][/u][/align][align=left][font=宋体]问题描述:如何通过代码读取[/font]FlexSim[font=宋体]中对象得精确位置?[/font][/align][align=left][u][color=red]Robin Brunner:[/color][/u][/align][align=left][font=宋体]论坛的朋友们大家好,[/font][/align][align=left][font=宋体]我正在使用一个[/font]SQL[font=宋体]数据库,它要存储来自[/font]FlexSim[font=宋体]模型的几乎所有的信息。[/font][font=宋体]我想将对象所有的空间位置数据从对象的[/font]treenode[font=宋体]写入数据库。[/font][font=宋体]现在的问题是[/font]FlexSim[font=宋体]中“[/font]sample-tool[font=宋体]”的建议命令只是传递一个整数。[/font][font=宋体]因此,像[/font]3.25[font=宋体]这样的[/font]x[font=宋体]位置被保存为只有[/font]3。[font=宋体]有没有其他方法可以从[/font]FlexSim[font=宋体]读取空间数据呢?[/font][/align][align=left][font=宋体]我使用的命令是:[/font][/align][align=left]pd(current.as(Object).location.x);[/align][align=left][color=red][url=https://answers.flexsim.com/users/461/joerg.v.html]Jörg Vogel[/url][/color] :[color=red][/color][/align][color=#333333][font=Consolas][size=10.0pt]pf(current.as(Object).location.x);[/size][/font][/color][align=left]pd[font=宋体]()仅打印输出离散值。[/font] [font=宋体]这显然是一个整数值。[/font][/align][align=left]pf[font=宋体]()打印浮点值。[/font][/align][align=left][font=宋体]如果使用[/font]print[font=宋体](),那么实际的命令就是将不同类型的值打印到输出中。[/font][/align][align=left][u][color=red]Robin Brunner:[/color][/u][/align][align=left][font=宋体]回复:[/font][/align][align=left][font=宋体]你说得对。[/font] pf[font=宋体]([/font]current.as[font=宋体]([/font]Object[font=宋体])[/font].location.x[font=宋体])打印出精确的位置值。[/font][/align][align=left][font=宋体]那么将这个数字转换成一个字符串是一个问题。[/font][/align][align=left][font=宋体]好的,忘了设置[/font]numtostring[font=宋体]精度![/font][font=宋体]现在一切[/font]OK[font=宋体]。[/font][/align][align=left][u][color=red]Matt Long[/color][/u][/align][align=left][font=宋体]回复:[/font][/align][align=left][font=宋体]如果打印固定资源的位置,则[/font]print[font=宋体]()命令就足够了:[/font][/align][color=#333333][font=Consolas][size=10.0pt]print(current.location.x);[/size][/font][/color][align=left][font=宋体]或者获取对象的中心位置[/font][/align][color=#333333][font=Consolas][size=10.0pt]print(current.getLocation(0.5, 0.5, 0));[/size][/font][/color][align=left][font=宋体]如果您要打印在模型中移动的或任务执行中的[/font][font=宋体]临时实体[/font][font=宋体]的位置,则需要首先调用[/font]updatelocations[font=宋体]()。[/font][/align][color=#333333][font=Consolas][size=10.0pt]updatelocations(item);[/size][/font][/color][color=#333333][font=Consolas][size=10.0pt]print(item.location.x);[/size][/font][/color][color=#333333][font=Consolas][size=10.0pt]//or[/size][/font][/color][color=#333333][font=Consolas][size=10.0pt]print(item.getLocation(0.5, 0.5, 0));[/size][/font][/color]
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注公众号

相关侵权、举报、投诉及建议等,请发 E-mail:admin@discuz.vip

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.|京ICP备14043114号-2

在本版发帖
关注公众号
QQ客服返回顶部