线程评级:
  • 0票(s) - 0平均
  • 1
  • 2
  • 3.
  • 4
  • 5
创建自定义渲染器?
# 1
是否可以使用API创建自定义应用程序?

我想为路径规划功能创建一个WebGL应用程序。
# 2
如果你需要一个浏览器WebGL视图,我建议你激活以下选项:

工具-选项-其他-激活本地Web服务器视图

然后,按照突出显示的链接在浏览器中查看您的活动RoboDK站。如果您从同一网络中的另一台计算机连接到此地址,它也应该工作。



RoboDK有一个API,允许您自定义和自动化操作。RoboDK API可在c#, Python, c++, Visual Basic和Matlab中使用。此外,您还可以直接从我们的API编程机器人并生成品牌特定代码,因此您可以使用RoboDK作为通用编程平台。更多信息请点击这里:
//www.sinclairbody.com/doc/en/RoboDK-API.html
https://github.com/RoboDK/RoboDK-API
# 3
谢谢,我知道网络视图功能,但我想做的不仅仅是查看,而是在浏览器中创建一个实际的应用程序(编程机器人)。这可能吗?
# 4
在这种情况下,浏览器的目的只是查看RoboDK场景中正在发生的事情。您可以使用RoboDK API来移动RoboDK中的机器人,任何浏览器视图都将更新以匹配RoboDK的3D环境中发生的事情。RoboDK可以只是一个正在运行的进程(您不需要显示RoboDK窗口,例如,在启动RoboDK时传递/NOUI参数将在幕后运行RoboDK)。

我认为Chrome扩展(假设你坚持Chrome)将是最合适的选择,你需要在浏览器中嵌入你的控件。在这种情况下,您将不得不在Javascript中实现RoboDK API(可能不是一件容易的任务)。由于RoboDK API使用TCP/IP套接字协议,您可能必须使用Node.JS或类似的东西才能使用套接字。
我想我明白了。你是说我可以创建一个node.js web服务器,在RoboDK进程和浏览器之间充当代理。节点服务器将有一个web套接字连接到客户端,并流式传输Item树的“状态”,然后可以通过自定义WebGL渲染器将其可视化。这是正确的吗?
# 6
不,RoboDK在这两种情况下都作为服务器工作:
1-一个Javascript/Node.js客户端与RoboDK通信,并设置/移动工作站,但你想要(它需要Sockets,而不是websockets)。这可能是一个Chrome扩展。
2-浏览器显示场景,并使用WebSockets与RoboDK保持连接。
# 7
我明白了。但我真正想要的是创建我自己的自定义渲染器,而不是使用RoboDK原生渲染器。我想控制着色器、几何等。

您认为API足够健壮以支持这个用例吗?
# 8
你可以使用API(插件接口)来定制OpenGL渲染器,而不是WebGL。
# 9
你能把文档链接到插件界面吗?我找不到。另外,是否可以在ubuntu docker镜像中安装RoboDK ?当我尝试运行安装程序时,我得到这个错误:

QStandardPaths: XDG_RUNTIME_DIR未设置,默认为'/tmp/runtime-root'
qt.qpa.screen: QXcbConnection:无法连接到显示器
无法连接到任何X显示器。

有没有无头模式?
以下链接提供了有关插件接口的文档:
//www.sinclairbody.com/doc/en/PlugIns/index.html
(我们很快就会在GitHub上建立一个公共存储库)

通常RoboDK在没有OpenGL支持的情况下无法运行。但是,您可以尝试通过/NOUI参数(或-NOUI)运行RoboDK,以避免使用3D场景。在这种情况下,RoboDK不会将资源用于显示目的。




浏览此主题的用户:
1客人(年代)