chore: diagnose pr. mark i loggen (v1.62.9)

This commit is contained in:
2026-10-02 22:39:57 +02:00
parent 3beb5b8800
commit 82eb12fb17
3 changed files with 16 additions and 2 deletions
+13
View File
@@ -410,6 +410,7 @@ local function newScan(adEnv, entry)
table.insert(candidates, {x = (cx + verts[index].x) / 2, z = (cz + verts[index].z) / 2})
end
-- 2) én opgave pr. kandidat: er punktet stadig mark? (bygninger fjerner areal)
scan.candidates = #candidates
for _, candidate in ipairs(candidates) do
push(scan, function()
local ok, onField = pcall(isOnField, candidate.x, candidate.z)
@@ -552,6 +553,18 @@ local function finishScan(adEnv, scan)
if ADCourseCache ~= nil and ADCourseCache.checkField ~= nil then pcall(ADCourseCache.checkField, info.id, info.shapeSig) end
ADFields.cache[info.id] = info
ADFields.listCache = nil
-- diagnose: første scanning af hver mark (og når den skifter til/fra "kan ikke dyrkes") i loggen
local state = ADFields.readFieldState(info.field)
local summary = string.format("F%s scannet: %d af %d punkter på mark, polygon %d hjørner, markjord %s, afgrøde %s, med i listen %s",
tostring(info.id), #scan.points, scan.candidates or 0, #(info.verts or {}),
state == nil and "ukendt" or (state.noFieldGround and "NEJ (groundType NONE)" or "ja"),
tostring(info.fruitName or "-"), info.cultivable == false and "NEJ" or "ja")
ADFields.scanLog = ADFields.scanLog or {}
local key = tostring(info.cultivable ~= false)
if ADFields.scanLog[info.id] ~= key then
ADFields.scanLog[info.id] = key
Logging.info("ADSmartPickup: " .. summary)
end
end
-- Marklisten (ejede marker) i portioner af 25 marker pr. frame.