工具在使用过程中会磨损。使用这些工具的机器需要在测量磨损后校正其NC(即数控)程序。
我已经创建了一个XSD模型并生成了管理这些测量的JAXB类,现在我想自动生成NC代码来设置机器上的测量差异。
要生成的代码基本上具有此格式(可能还有一些静态前缀/后缀代码):
$TC_DP<x>[<t>, <D>] // 1 < x <= 25, 1 < D <= 12
使用t
being工具的ID,D
是这个工具的最前沿,并且x
being与前沿相关的参数。
对于不同的工具,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仍然是一个未来的前景。 QVTo可以为您提供半声明性解决方案。