在GeoDMS(Object Vision的一种地理编码语言)中,我无法在GeoDmsRun.exe中运行代码,而我可以在GeoDmsGui.exe中运行而不会出现问题。问题在于,它找不到确实未定义但明显隐含在GeoDMS中某处的参数“值”。 GUI可以找到此参数。
我尝试定义使用显式查找的值
attribute<uint32>values1:=values;
但是那没有用。最好在不必使用任何隐式变量的情况下获得此查找功能,但是该怎么做呢?
代码:
unit<uint32> heatNet2 := unique(buildingWithHeatDemand/roadID)
, dialogType = 'map'
, dialogData = 'geometry'
{
attribute<rdc> geometry(arc) := lookup(values,input/geographic/roads/geometry);
}
版本:7177
感谢您的帮助!
答案 0 :(得分:0)
unique(D->V)
运算符的确定义了属性E->V
,名称为结果单元values
的名称E
,该属性将结果单元E
映射到找到的值V
中的。 GeoDmsRun.exe应该与GeoDmsGui.exe一样处理脚本,因此在http://www.mantis.objectvision.nl将此问题报告为一个好主意。
与此同时,您可以尝试显式定义values属性:
unit<uint32> heatNet2 := unique(buildingWithHeatDemand/roadID)
, dialogType = 'map'
, dialogData = 'geometry'
{
attribute<input/geographic/roads> values(heatNet2);
attribute<rdc> geometry(arc) := lookup(values,input/geographic/roads/geometry);
}
现在明确定义的values
将引用唯一运算符结果的属性。