Robodk论坛
Python路径,打印,调试等。- 可打印的版本

+-Robodk论坛(//www.w5838.com/forum
+ - 论坛:robodk(en)(EN)(//www.w5838.com/forum/forum-robodk-en
+---论坛:Robodk API(//www.w5838.com/forum/forum-robodk-api
+---线程:Python路径,打印,调试等(/螺纹python-paths打印 - 剥削-ETC



Python路径,打印,调试等。-Hoolymama-05-09-2018

嗨,有几个问题..我目前正在通过在接口中添加Python程序项来编写Python脚本。

1.如果我添加print或sys.stderr.write(),那就去哪里?我尝试从外壳启动Robodk,但我在外壳中没有看到任何输出。我想我可以使用TKINTER制作控制台,但是如果存在,我更喜欢更简单的东西。

2.我注意到文档中对游戏机模式的引用,但我找不到有关使用它的文档。控制台模式是通过python shell与Robodk交互的方法吗?

2.我尝试使用robolink.selection()
但是我得到了错误:“ robolink”对象没有属性'选择'
我在/applications/robodk.app/contents/python中注意到./robolink.py和./robolink/robolink.py。第一个文件具有选择(),第二个文件没有。有什么区别?为什么我的脚本在我的偏好中找到python文件夹路径设置为:/applications/robodk.app.app/contents/python/当我的偏好中找到版本()?

非常感谢!!

朱利安


回复:Python路径,打印,调试等。-Hoolymama-05-09-2018

一些解决方案

1.我设置了记录仪以写入文件,然后在外壳中尾随-f以查看结果。

3.我删除了./robolink/robolink.py,现在它只是使用./robolink.py,可以找到selection()。


回复:Python路径,打印,调试等。-阿尔伯特-05-14-2018

嗨朱利安,

要显示从Python程序到Robodk窗口的消息,您可以使用以下命令:
robolink.showmessage(“您的消息”,blocking = true)
如果将其设置为非阻止,则将显示在Robodk窗口的状态栏中。如果您从Robodk启动Python脚本,则仅在您的脚本失败时才显示Python(STDOUT,STDERR)完成的所有印刷品。

您可以独立启动自己的Python程序,并使用Robodk API与Robodk进行互动。Robodk API使用内部TCP/IP通信,因此您甚至可以远程控制Robodk。您会在以下方式找到一些其他设置:
  • ROBODK-PREFERENCES-ORTHORT-ROBODK API(如果您使用的是Mac)
  • Tools-Options-Othert-Robodk API(用于Windows和Linux)
如果您想在与Robodk互动时分别运行Python程序,则应为Python安装Robodk API:
PIP安装Robodk

有一些命令行选项可以启动Robodk:
//www.w5838.com/doc/en/robodk-api.html#commandline
例如,这使您可以在设置项目时将Robodk隐藏起来。

在Mac上,Robodk从Robodk启动Python脚本时自动使用以下文件夹作为Python路径:
/applications/robodk.app/contents/python/

此外,正确的Mac(v3.4.6)的Robodk的最新版本正确包括Robolink.Selection()方法。

阿尔伯特


回复:Python路径,打印,调试等。-Hoolymama-05-15-2018

嗨,阿尔伯特,

这一切现在更有意义。我安装了Python API,可以从Python Shell中与Robodk交谈。我想这意味着我也可以直接从Maya内部与Robodk进行通信,例如,将动画转换为目标或导出模型。

谢谢!


回复:Python路径,打印,调试等。-阿尔伯特-05-18-2018

是的,可以将Robodk与Maya结合在一起。
您可以将Robodk API用于Python同时集成Maya和Robodk。

因此,如果您想使用Robodk外部的Robolink和Robodk库运行Python脚本,则可能必须使用PIP安装任何其他Python库,以安装Robodk API:
CD通道Python PIP
PIP安装Robodk

让我知道您是否面临任何挑战,我可以提供帮助。


回复:Python路径,打印,调试等。-Hoolymama-05-19-2018

谢谢阿尔伯特!到目前为止一切都很好。我已经编写了脚本以在Robodk中重新生成Maya对象:转换为框架,定位器到目标,网格到形状。接下来,我将以CurveFollow项目发送Maya曲线。如果对任何人都有使用,我很乐意将此代码公开(清理时)。

朱利安