最后的Renga API评论

Renga建筑物和结构设计系统正在积极开发中,它具有面向建筑师,KZh和KM,VK,OV,EO和ES工程师的工具。对于每个版本,该系统现在都可以构建功能,该系统分为Renga Architecture,Renga Structure和Renga MEP,并且很快将成为其中一个。随着它的发展和变化,它变得越来越流行。确实,在Renga中,您可以创建建筑物的信息模型,但是您不能(也没有计划)获得漂亮的渲染图,管道的构造或计算估计。当然,您可以将模型从Renga导出为OBJ,IFC,STEP等许多常见格式,但是为了避免中间人的出现并避免在导出/导入过程中可能误解数据,最好通过API进行操作。

伦加环保部

最初,当出现创建Renga API的问题时(在Renga Architecture的第一个版本发布之后),我们根据当时的要求仅关注C ++ API。

随着Renga的发展,我们开始从开发人员那里收到有关在Renga下是否可以用C#和其他语言编写以及支持哪些版本的Visual Studio的问题。

然后,在分析了用户的API可用性之后,我们考虑更改技术。

事实是C ++ API非常困难。它高度依赖于编译器,即如果SDK是由Visual Studio编译器编译的,则您可能无法使用gcc对其进行编译,因为名称处理未标准化,因此虚拟表,模板等的实现可能会有所不同。在Visual Studio本身中,版本之间的编译设置和对标准的支持也可能有所不同。

通常,可以忍受这种情况,例如,使用虚拟功能至最低程度(并因此继承),而不使用模板,并在一段时间内不使用所使用的标准和开发环境。

另外,我们可以为不同的环境和/或系统版本创建API的多个版本。
但是,我们还是决定另辟look径。经过研究,他们选择了COM。
这个标准是在1993年开发的,也就是说,它不仅是旧的,而且是超级明星。但是它允许我们为用户提供一个API,使用它您可以用C ++,C#或其他与COM兼容的语言编写插件,此外,您还可以使用COM API进行访问从第三方应用程序到Renga,包括使用动态类型语言编写的应用程序,例如Python。

Renga API帮助

我必须说,Renga API帮助详细介绍了如何开始,使用什么以及如何使用它。但我们仍然告诉您,您需要为Renga编写扩展程序。

因此,以任何语言编写Renga扩展程序都需要:

  1. Renga并了解在使用该系统时您究竟想自动化什么。
  2. Renga软件开发套件。
  3. Microsoft Visual Studio。任何低于2012年的版本。
  4. 编程基础知识。

您可以在系统的网站帮助开发人员的博客以及VKFacebook上的组中找到有关Renga系统及其功能的信息,并在其中发布网络研讨会的公告和记录,还可以找到该系统的真实用户并与他们聊天。因此,我们将省略对系统的了解,但是将指定API现在可以满足的要求。

使用Renga API,您可以:

  • 在模型中选择对象并在Renga中处理对象选择事件;
  • 接收和更改对象参数,
  • ;
  • ;
  • , , ..;
  • , ;
  • 3D ;
  • IFC;
  • DWG/DXF;
  • , , ,
  • , .
  • .

目前,您无法通过API创建新对象,这已在计划中,但不能用于下一个版本。

应当指出,Renga API是应用户要求而扩展的,如果您在此列表中没有看到所需的自动化功能,请与我们联系,我们将讨论您的想法。

如果我们仅继续使用C ++ API进行工作,则功能集很可能是相同的,但是我们几乎可以肯定,并非所有的Renga扩展都将诞生。顺便说一句,您可以在网站上看到我们已知的扩展列表

现在,让我们看看最终我们为用户提供的API。要获得Renga SDK,您只需下载它。要使用它,您可以研究和使用存档中的示例。

图片

SDK中提供了一些示例,这些示例可以用C ++和C#编写扩展,以及使用Python连接到Renga的示例。如何使用部分中的Renga API帮助列出了使用本部分技术的示例。

C ++和C#插件的示例演示了几乎所有的API功能,在Python示例中,您将找到如何使用它从第三方应用程序在Renga中创建自定义属性,以及如何使用脚本自动打开,保存和关闭Renga项目。

目前,Renga可以从C ++二进制DLL和.NET程序集加载插件,并使用动态类型的语言(例如Python,VBScript,1C等),您可以从第三方程序访问Renga API以获取必要的数据。
总的来说,我们对过渡到COM API以及它为我们的用户带来的机会感到高兴。

从Renga调用的任何Renga扩展名都必须包含该插件的二进制文件和扩展名为.rndesc的.xml文件,其内容如下:

<RengaPlugin>
   <!--   -->
   <Name>Best Plugin</Name>
   <!--   -->
   <Version>1.0</Version>
   <!--    -->
   <Copyright>Copyright text</Copyright>
   <!--   Renga API -->
   <RequiredAPIVersion>2.3</RequiredAPIVersion>
   <!--   cpp/net -->        
   <PluginType>Plugin type</PluginType>
   <!--    -->                     
   <PluginFilename>Best_Plugin.dll</PluginFilename> ->
   <Vendor>Renga</Vendor>                           
</RengaPlugin>

要将扩展连接到Renga,您需要将其安装或复制到Renga \ Plugins安装文件夹中。.rndesc文件中包含的信息显示在Renga设置窗口的扩展选项卡中。

我们相信,凭借所获得的知识和我们的编程知识,任何开发人员都可以为Renga编写扩展。但是如果您有扩展Renga的想法,并且在实现方面存在问题,请在论坛上撰写或在ServiceDesk中注册请求我们欢迎您提出问题!

All Articles