工具在使用过程中会出现磨损。使用这些工具的机器需要在测量磨损后纠正其 NC(即数控)程序。
我已经创建了一个 XSD 模型并生成了管理这些度量的 JAXB 类,现在我想自动生成 NC 代码来设置机器上的测量差异。
要生成的代码基本上具有以下格式(可能还加上一些静态前缀/后缀代码):
$TC_DP<x>[<t>, <D>] // 1 < x <= 25, 1 < D <= 12
与t
是工具的 ID,D
成为该工具的前沿,并且 x
是与切削刃相关的参数。
对于不同的工具t
, x
和D
有不同的含义,例如$TC_DP1[10, 2]
是工具 10 上边缘 2 的长度。$TC_DP1[5, 2]
可以是工具 5 上边缘 2 的宽度。
我正在寻找一种方法来以声明方式定义 $TC_DP<x>[<t>, <D>]
之间的映射格式和我创建的模型,以便为我生成 NC 代码。
最佳答案
根据您提供的信息,几乎任何声明性转换工具都是相同的。
您定义将每个新值与旧值相关联的计算(通常是 OCL 查询)。这些计算包含在映射/关系/规则中,以创建其槽包含新值的新对象。
如果您今天想以声明方式编写代码,我建议您使用 ATL 或 Henshin。 QVTr 仍然具有一定的 future 前景。 QVTo 可以为您提供半声明式解决方案。
关于java - 模型转换为平台特定 (NC) 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49027999/