feat(kæde): læse-adapter for produktioner, stalde, marker og udbytte

This commit is contained in:
2026-09-30 13:37:58 +02:00
parent 49eed51202
commit 2a7769d090
4 changed files with 239 additions and 0 deletions
+11
View File
@@ -291,6 +291,17 @@ function ADFields.shapeSignature(verts)
roundTo(cx, 1), roundTo(cz, 1))
end
-- Markens areal i hektar (shoelace på {x,z}-polygonen, /10000); 0 uden en flade (under 3 hjørner).
function ADFields.polygonAreaHa(verts)
if type(verts) ~= "table" or #verts < 3 then return 0 end
local n, twiceArea = #verts, 0
for index = 1, n do
local a, b = verts[index], verts[index % n + 1]
twiceArea = twiceArea + a.x * b.z - b.x * a.z
end
return math.abs(twiceArea) / 2 / 10000
end
-- Hjørnernes gennemsnit (nil uden hjørner).
function ADFields.polygonCenter(verts)
if verts == nil or #verts == 0 then return nil end