Farmer-Fix: Klima-Fallback laengengrad-bewusst + "Vernalisation" ersetzt
- defaultZoneByLatitude: bei 32-38 Grad nicht mehr pauschal "mittelmeer" (das gab kontinentalem Innerasien wie Westchina faelschlich Mittelmeerklima -> "Mediterraner Reisanbau" in Xinjiang). Jetzt nur in echten Mittelmeer- Laengenfenstern (Mittelmeerbecken/Kalifornien/Chile/Kap/SW-Australien), sonst "wueste". lon wird jetzt an die Funktion uebergeben. - crops.json: Weizen-Fachbegriff "Vernalisation" durch "kuehle Winter, die der Winterweizen fuer die spaetere Kornbildung braucht" ersetzt (Thomas: gehoert nicht ins Lehrwerk). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -41,7 +41,7 @@
|
||||
},
|
||||
"narratives": {
|
||||
"S1": [
|
||||
"Klimatisch ein Glücksgriff: Sommer mild bei 18–22 °C, ausreichend Niederschlag (500–700 mm), kühle Winter zur Vernalisation. Die Halme stehen kniehoch, Ähren prall mit ~40 Körnern. Ertrag ~5–6 t/ha — europäischer Spitzenwert.",
|
||||
"Klimatisch ein Glücksgriff: Sommer mild bei 18–22 °C, ausreichend Niederschlag (500–700 mm), kühle Winter, die der Winterweizen für die spätere Kornbildung braucht. Die Halme stehen kniehoch, Ähren prall mit ~40 Körnern. Ertrag ~5–6 t/ha — europäischer Spitzenwert.",
|
||||
"Goldgelbe Felder bis zum Horizont. Der Mähdrescher hat zu tun. Korn-Qualität top, mahlfähig zu Mehl Type 550. Volle Lieferung."
|
||||
],
|
||||
"S2": [
|
||||
|
||||
@@ -137,12 +137,21 @@ window.FarmerEngine = (function () {
|
||||
return null;
|
||||
}
|
||||
|
||||
function defaultZoneByLatitude(lat) {
|
||||
function defaultZoneByLatitude(lat, lon) {
|
||||
const a = Math.abs(lat);
|
||||
if (a < 15) return 'tropisch_feucht';
|
||||
if (a < 23) return 'tropisch_trocken';
|
||||
if (a < 32) return 'subtropisch_feucht';
|
||||
if (a < 38) return 'mittelmeer';
|
||||
if (a < 38) {
|
||||
// Mittelmeerklima gibt es NUR an bestimmten West-/Küstenlagen — nicht im
|
||||
// kontinentalen Inneren (z. B. Westchina!). Ohne passendes Klima-Polygon
|
||||
// daher nur in den echten Mittelmeer-Längenfenstern „mittelmeer", sonst
|
||||
// trockenes Binnenland → „wueste".
|
||||
const L = (lon == null) ? 0 : lon;
|
||||
const med = (lat > 0 && ((L >= -10 && L <= 42) || (L >= -123 && L <= -116))) // Mittelmeerbecken · Kalifornien
|
||||
|| (lat < 0 && ((L >= -74 && L <= -70) || (L >= 17 && L <= 25) || (L >= 115 && L <= 120))); // Zentralchile · Kapregion · SW-Australien
|
||||
return med ? 'mittelmeer' : 'wueste';
|
||||
}
|
||||
if (a < 50) return 'gemaessigt_feucht';
|
||||
if (a < 60) return 'kontinental';
|
||||
if (a < 68) return 'boreal';
|
||||
@@ -274,7 +283,7 @@ window.FarmerEngine = (function () {
|
||||
zoneId = 'wasser'; isWater = true;
|
||||
} else {
|
||||
const zone = getZoneAt(latlng);
|
||||
zoneId = zone ? zone.properties.id : defaultZoneByLatitude(latlng.lat);
|
||||
zoneId = zone ? zone.properties.id : defaultZoneByLatitude(latlng.lat, lon);
|
||||
isWater = false;
|
||||
}
|
||||
const field = {
|
||||
|
||||
Reference in New Issue
Block a user