Hallo zusammen,
ich hab da ein kleines Problem. Und zwar möchte ich die Arbeitsbreite von Anbaugeräten ermitteln und das auch wenn diese mehrere WorkAreas haben. Aus diesem Grund habe ich folgenden Teil in eine eigene Funktion ausgelagert:
[lua]function PTOLimiter:getWorkAreas(xmlFile, key)
print("key: " ..key);
local waStart = Utils.indexToObject(self.components, getXMLString(xmlFile, key .. "#startIndex"));
local waWidth = Utils.indexToObject(self.components, getXMLString(xmlFile, key .. "#widthIndex"));
if waStart ~= nil and waWidth ~= nil then
print("waStart: " ..waStart.. ", waWidth: " ..waWidth);
local sx, sy, sz = getTranslation(waStart);
local wx, wy, wz = getTranslation(waWidth);
local wW = math.abs(sx) + math.abs(wx);
return PTOLimiter:round(wW, 1);
else
print("waStart und waWidth = nil");
return 0;
end;
end;[/lua]
Das Problem an der Sache ist, "waStart" und "waWidth" bekommen keinen Wert zugewiesen, egal wie ich es drehe und wende. Der "key" wird aber ordentlich übergeben und hat in diesem Fall den Wert "vehicle.workAreas.workarea". Komischerweise hat es, als es noch keine eigene Funktion war, tadellos funktioniert...
Hat zufällig jemand ne Idee warum ich keine Werte erhalte? Vielleicht seh ich auch einfach den Wald wieder vor lauter Bäumen nicht...