fix: kikker en savannedieren grondig herzien (v0.4.82-beta)
All checks were successful
dev - build & deploy naar test / build-and-deploy (push) Successful in 35s

- Kikker in de vijverplaat herbouwd: brede achterpoten opzij en kleine
  voorvoeten vooraan in plaats van twee identieke dunne armen die als
  een teddybeer lazen; grassprietjes verplaatst die over de nieuwe voet liepen
- Boomstam bij de savanneplaat smalt nu naar rechts toe in plaats van te
  verbreden, en de zebra is 45px opgeschoven: kop en oor liepen eerder
  dwars door de stam heen
- Poel onder de dieren meeverschoven met de zebra
- Systemische fout gevonden en gefixt in de vijver- en savanneplaat: de
  oogpitjes van kikker, libelle, giraffe en zebra zaten in de tier-2
  detailgroep, dus op niveau 1 (de eenvoudigste stand) hadden deze dieren
  helemaal geen ogen. Nu staan de pitjes op niveau 1 al zichtbaar, terwijl
  het oogvak zelf pas op niveau 2 verschijnt als invulwerk

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011YErxhic5w9K57zmt8Q1uS
This commit is contained in:
Ramon 2026-07-30 22:39:29 +02:00
parent 84fd02d135
commit 67553361b8
3 changed files with 53 additions and 35 deletions

View file

@ -1 +1 @@
0.4.81-beta 0.4.82-beta

View file

@ -2,7 +2,7 @@
"use strict"; "use strict";
/* version shown until /api/version resolves (or if the fetch fails, e.g. offline). /* version shown until /api/version resolves (or if the fetch fails, e.g. offline).
Kept in sync by hand with the VERSION file at the repo root on every release. */ Kept in sync by hand with the VERSION file at the repo root on every release. */
const VERSION = "0.4.81-beta"; const VERSION = "0.4.82-beta";
/* Safari en oudere mobiele browsers behandelen 100vh/100% soms als de hoogte /* Safari en oudere mobiele browsers behandelen 100vh/100% soms als de hoogte
achter hun adres- en navigatiebalk. visualViewport geeft de werkelijk achter hun adres- en navigatiebalk. visualViewport geeft de werkelijk
zichtbare hoogte; de CSS gebruikt deze pixelwaarde als betrouwbare bron en zichtbare hoogte; de CSS gebruikt deze pixelwaarde als betrouwbare bron en

View file

@ -225,19 +225,32 @@ function plateEcosystem(){
coloringDot(571,388,5)+ coloringDot(571,388,5)+
coloringLine("M 500 380 C 514 376 528 374 542 374 M 500 418 C 514 422 528 424 542 424",2)))+ coloringLine("M 500 380 C 514 376 528 374 542 374 M 500 418 C 514 422 528 424 542 424",2)))+
coloringGroup("frog", coloringGroup("frog",
/* echte poten met een knik en een voet: de lensvormen die er stonden /* een zittende kikker heeft brede achterpoten opzij en twee kleine
lazen als blaadjes naast de kikker */ voorvoeten vooraan onder de buik - twee identieke dunne armen aan
coloringFlat("frog-far-leg","M 244 494 C 212 494 186 508 174 530 L 174 552 C 174 562 200 562 200 552 L 200 540 C 212 528 230 520 250 516 Z","#3fae6a")+ weerszijden lazen als een teddybeer in plaats van een kikker */
coloringFlat("frog-near-leg","M 424 494 C 456 494 482 508 494 530 L 494 552 C 494 562 468 562 468 552 L 468 540 C 456 528 438 520 418 516 Z","#3fae6a")+ coloringFlat("frog-hind-leg-left","M 262 468 C 212 466 174 490 164 526 C 160 546 176 564 200 562 C 224 560 246 540 252 514 C 254 498 258 482 262 468 Z","#3fae6a")+
coloringFlat("frog-hind-leg-right","M 406 468 C 456 466 494 490 504 526 C 508 546 492 564 468 562 C 444 560 422 540 416 514 C 414 498 410 482 406 468 Z","#3fae6a")+
coloringContour("frog-body","M 244 496 C 244 448 284 418 334 418 C 384 418 424 448 424 496 C 424 532 384 548 334 548 C 284 548 244 532 244 496 Z","#3fae6a")+ coloringContour("frog-body","M 244 496 C 244 448 284 418 334 418 C 384 418 424 448 424 496 C 424 532 384 548 334 548 C 284 548 244 532 244 496 Z","#3fae6a")+
coloringContour("frog-head","M 262 434 C 262 398 294 376 334 376 C 374 376 406 398 406 434 C 406 458 374 470 334 470 C 294 470 262 458 262 434 Z","#3fae6a")+ coloringContour("frog-head","M 262 434 C 262 398 294 376 334 376 C 374 376 406 398 406 434 C 406 458 374 470 334 470 C 294 470 262 458 262 434 Z","#3fae6a")+
coloringCircle("frog-foot-left",194,556,20,"#3fae6a")+
coloringCircle("frog-foot-right",474,556,20,"#3fae6a")+
coloringCircle("frog-front-foot-left",296,558,18,"#3fae6a")+
coloringCircle("frog-front-foot-right",372,558,18,"#3fae6a")+
/* de oogpitjes staan buiten de tier-2 detailgroep, en ná die groep in
de tekenvolgorde: zo blijft er op niveau 1 een gezicht te zien (de
oogvakken zelf horen nog wel bij het invulwerk van niveau 2) en
verdwijnen de pitjes op niveau 2 niet onder het witte oogvak */
coloringGroup("frog-detail", coloringGroup("frog-detail",
coloringCircle("frog-eye-left",302,388,22,"#f7c948")+ coloringCircle("frog-eye-left",302,388,22,"#f7c948")+
coloringCircle("frog-eye-right",366,388,22,"#f7c948")+ coloringCircle("frog-eye-right",366,388,22,"#f7c948")+
coloringDot(302,388,9)+coloringDot(366,388,9)+
coloringFlat("frog-belly","M 266 496 C 282 526 302 540 334 542 C 366 540 388 526 402 496 C 400 532 372 548 334 548 C 296 548 268 532 266 496 Z","#f7c948"),2)+ coloringFlat("frog-belly","M 266 496 C 282 526 302 540 334 542 C 366 540 388 526 402 496 C 400 532 372 548 334 548 C 296 548 268 532 266 496 Z","#f7c948"),2)+
coloringDot(302,388,9)+coloringDot(366,388,9)+
coloringLine("M 306 448 C 320 458 348 458 362 448",2)+ coloringLine("M 306 448 C 320 458 348 458 362 448",2)+
coloringLine("M 274 480 C 296 490 372 490 394 480 M 260 524 C 284 536 384 536 408 524",3))+ coloringLine("M 274 480 C 296 490 372 490 394 480 M 260 524 C 284 536 384 536 408 524",3)+
coloringLine("M 186 566 L 178 578 M 194 570 L 194 582 M 202 566 L 210 578"+
" M 466 566 L 458 578 M 474 570 L 474 582 M 482 566 L 490 578"+
" M 288 570 L 282 580 M 296 572 L 296 584 M 304 570 L 310 580"+
" M 364 570 L 358 580 M 372 572 L 372 584 M 380 570 L 386 580",2))+
/* vier vleugels symmetrisch aan weerszijden van het lijf in plaats van /* vier vleugels symmetrisch aan weerszijden van het lijf in plaats van
twee dunne slierten aan één kant - dat las niet als vleugels */ twee dunne slierten aan één kant - dat las niet als vleugels */
coloringGroup("dragonfly", coloringGroup("dragonfly",
@ -247,11 +260,11 @@ function plateEcosystem(){
coloringFlat("dragonfly-wing-back-left",coloringPetalPath(600,250,155,85,24),"#2fb7a8")+ coloringFlat("dragonfly-wing-back-left",coloringPetalPath(600,250,155,85,24),"#2fb7a8")+
coloringContour("dragonfly-body","M 588 232 C 588 224 596 220 600 220 C 604 220 612 224 612 232 C 616 260 614 300 606 336 C 604 342 596 342 594 336 C 586 300 584 260 588 232 Z","#7557c8")+ coloringContour("dragonfly-body","M 588 232 C 588 224 596 220 600 220 C 604 220 612 224 612 232 C 616 260 614 300 606 336 C 604 342 596 342 594 336 C 586 300 584 260 588 232 Z","#7557c8")+
coloringCircle("dragonfly-head",600,200,19,"#7557c8","coloring-contour")+ coloringCircle("dragonfly-head",600,200,19,"#7557c8","coloring-contour")+
coloringDot(592,196,5)+coloringDot(608,196,5)+
coloringGroup("dragonfly-detail", coloringGroup("dragonfly-detail",
coloringDot(592,196,5)+coloringDot(608,196,5)+
coloringLine("M 590 250 L 610 250 M 592 275 L 608 275 M 594 300 L 606 300",2)))+ coloringLine("M 590 250 L 610 250 M 592 275 L 608 275 M 594 300 L 606 300",2)))+
coloringGroup("front-reeds", coloringGroup("front-reeds",
coloringLine("M 160 590 C 168 556 172 534 170 512 M 190 594 C 200 562 204 542 204 520 M 640 588 C 648 556 652 534 650 514",2),2) coloringLine("M 90 590 C 98 556 102 534 100 512 M 120 594 C 130 562 134 542 134 520 M 640 588 C 648 556 652 534 650 514",2),2)
); );
} }
@ -261,9 +274,12 @@ function plateSavanna(){
coloringCircle("sun",654,124,64,"#f28c3c","coloring-contour")+ coloringCircle("sun",654,124,64,"#f28c3c","coloring-contour")+
coloringFlat("far-plain","M 4 316 C 140 288 280 306 420 320 C 550 332 680 326 796 306 L 796 396 L 4 396 Z","#f7c948")+ coloringFlat("far-plain","M 4 316 C 140 288 280 306 420 320 C 550 332 680 326 796 306 L 796 396 L 4 396 Z","#f7c948")+
coloringFlat("plain","M 4 396 L 796 396 L 796 596 L 4 596 Z","#f7c948")+ coloringFlat("plain","M 4 396 L 796 396 L 796 596 L 4 596 Z","#f7c948")+
coloringFlat("waterhole","M 96 552 C 96 522 168 504 250 504 C 332 504 396 522 396 552 C 396 578 332 590 248 590 C 166 590 96 578 96 552 Z","#2fb7a8")+ coloringFlat("waterhole","M 116 552 C 116 522 188 504 270 504 C 352 504 416 522 416 552 C 416 578 352 590 268 590 C 186 590 116 578 116 552 Z","#2fb7a8")+
coloringGroup("acacia", coloringGroup("acacia",
coloringContour("acacia-trunk","M 116 396 C 132 344 146 288 150 224 L 200 224 C 204 288 218 344 234 396 Z","#8b5a3c")+ /* de rechterkant van de stam smalt naar beneden toe in plaats van te
verbreden, zodat de zebra ernaast kan staan zonder dat kop en stam
door elkaar heen lopen */
coloringContour("acacia-trunk","M 116 396 C 132 344 146 288 150 224 L 200 224 C 196 288 182 344 170 396 Z","#8b5a3c")+
coloringFlat("acacia-branch-left","M 150 236 C 116 226 84 214 56 200 L 62 182 C 92 196 124 208 156 216 Z","#8b5a3c")+ coloringFlat("acacia-branch-left","M 150 236 C 116 226 84 214 56 200 L 62 182 C 92 196 124 208 156 216 Z","#8b5a3c")+
coloringFlat("acacia-branch-right","M 200 236 C 234 226 266 214 294 200 L 288 182 C 258 196 226 208 194 216 Z","#8b5a3c")+ coloringFlat("acacia-branch-right","M 200 236 C 234 226 266 214 294 200 L 288 182 C 258 196 226 208 194 216 Z","#8b5a3c")+
coloringContour("acacia-canopy","M 30 196 C 12 168 40 138 84 138 C 106 112 168 106 202 130 C 254 122 304 146 306 180 C 308 198 288 208 254 206 L 80 206 C 50 206 34 202 30 196 Z","#3fae6a")+ coloringContour("acacia-canopy","M 30 196 C 12 168 40 138 84 138 C 106 112 168 106 202 130 C 254 122 304 146 306 180 C 308 198 288 208 254 206 L 80 206 C 50 206 34 202 30 196 Z","#3fae6a")+
@ -305,33 +321,35 @@ function plateSavanna(){
coloringFlat("giraffe-hoof-hind-far","M 646 556 L 688 556 L 686 570 L 656 574 Z","#8b5a3c")+ coloringFlat("giraffe-hoof-hind-far","M 646 556 L 688 556 L 686 570 L 656 574 Z","#8b5a3c")+
coloringFlat("giraffe-hoof-hind-near","M 608 564 L 656 564 L 654 580 L 618 584 Z","#8b5a3c")+ coloringFlat("giraffe-hoof-hind-near","M 608 564 L 656 564 L 654 580 L 618 584 Z","#8b5a3c")+
coloringFlat("giraffe-hoof-fore-far","M 540 566 L 580 566 L 578 580 L 548 584 Z","#8b5a3c")+ coloringFlat("giraffe-hoof-fore-far","M 540 566 L 580 566 L 578 580 L 548 584 Z","#8b5a3c")+
coloringFlat("giraffe-hoof-fore-near","M 504 574 L 550 574 L 548 590 L 512 594 Z","#8b5a3c")+ coloringFlat("giraffe-hoof-fore-near","M 504 574 L 550 574 L 548 590 L 512 594 Z","#8b5a3c"),2)+
coloringDot(506,170,6),2)+ coloringDot(506,170,6)+
coloringLine("M 434 190 C 438 200 446 206 456 208 M 682 450 C 692 462 700 476 704 490",2)+ coloringLine("M 434 190 C 438 200 446 206 456 208 M 682 450 C 692 462 700 476 704 490",2)+
coloringLine("M 512 444 C 548 458 630 462 684 452 M 494 256 C 510 262 526 270 536 276 M 548 520 C 560 526 574 526 584 522",3))+ coloringLine("M 512 444 C 548 458 630 462 684 452 M 494 256 C 510 262 526 270 536 276 M 548 520 C 560 526 574 526 584 522",3))+
coloringGroup("zebra", coloringGroup("zebra",
coloringFlat("zebra-hind-leg-far",coloringLegPath(366,458,560,28,14,24,5),"#ffffff")+ /* 45px naar rechts geschoven, samen met de smallere boomstam hierboven:
coloringFlat("zebra-fore-leg-far",coloringLegPath(267,456,560,26,13,22,-4),"#ffffff")+ eerder liepen kop en oor van de zebra dwars door de stam heen */
coloringFlat("zebra-tail","M 384 428 C 404 442 416 462 420 486 C 406 482 392 468 382 448 Z","#ffffff")+ coloringFlat("zebra-hind-leg-far",coloringLegPath(411,458,560,28,14,24,5),"#ffffff")+
coloringContour("zebra-body","M 222 446 C 220 404 258 380 306 380 C 356 380 392 404 394 446 C 396 480 356 496 306 496 C 254 496 224 480 222 446 Z","#ffffff")+ coloringFlat("zebra-fore-leg-far",coloringLegPath(312,456,560,26,13,22,-4),"#ffffff")+
coloringContour("zebra-neck","M 222 428 C 212 388 202 352 196 322 L 248 306 C 260 348 272 388 284 424 C 264 442 240 444 222 428 Z","#ffffff")+ coloringFlat("zebra-tail","M 429 428 C 449 442 461 462 465 486 C 451 482 437 468 427 448 Z","#ffffff")+
coloringFlat("zebra-hind-leg-near",coloringLegPath(337,464,570,30,15,26,6),"#ffffff")+ coloringContour("zebra-body","M 267 446 C 265 404 303 380 351 380 C 401 380 437 404 439 446 C 441 480 401 496 351 496 C 299 496 269 480 267 446 Z","#ffffff")+
coloringFlat("zebra-fore-leg-near",coloringLegPath(239,462,570,30,14,26,-5),"#ffffff")+ coloringContour("zebra-neck","M 267 428 C 257 388 247 352 241 322 L 293 306 C 305 348 317 388 329 424 C 309 442 285 444 267 428 Z","#ffffff")+
coloringContour("zebra-head","M 186 324 C 168 298 182 268 210 262 C 240 256 264 276 266 304 C 248 326 214 336 186 324 Z","#ffffff")+ coloringFlat("zebra-hind-leg-near",coloringLegPath(382,464,570,30,15,26,6),"#ffffff")+
coloringFlat("zebra-muzzle","M 188 292 C 164 284 144 294 138 312 C 154 328 176 332 196 324 Z","#26344a")+ coloringFlat("zebra-fore-leg-near",coloringLegPath(284,462,570,30,14,26,-5),"#ffffff")+
coloringContour("zebra-head","M 231 324 C 213 298 227 268 255 262 C 285 256 309 276 311 304 C 293 326 259 336 231 324 Z","#ffffff")+
coloringFlat("zebra-muzzle","M 233 292 C 209 284 189 294 183 312 C 199 328 221 332 241 324 Z","#26344a")+
coloringGroup("zebra-stripes", coloringGroup("zebra-stripes",
coloringFlat("stripe-a","M 252 392 C 258 420 258 454 252 490 L 274 492 C 280 454 280 420 274 390 Z","#26344a")+ coloringFlat("stripe-a","M 297 392 C 303 420 303 454 297 490 L 319 492 C 325 454 325 420 319 390 Z","#26344a")+
coloringFlat("stripe-b","M 298 382 C 304 412 304 450 298 494 L 320 494 C 326 450 326 412 320 382 Z","#26344a")+ coloringFlat("stripe-b","M 343 382 C 349 412 349 450 343 494 L 365 494 C 371 450 371 412 365 382 Z","#26344a")+
coloringFlat("stripe-c","M 344 386 C 350 414 350 450 344 490 L 364 486 C 370 448 370 414 364 386 Z","#26344a")+ coloringFlat("stripe-c","M 389 386 C 395 414 395 450 389 490 L 409 486 C 415 448 415 414 409 386 Z","#26344a")+
coloringFlat("stripe-mane","M 206 266 C 218 300 232 338 246 372 L 266 364 C 252 328 238 292 226 262 Z","#26344a")+ coloringFlat("stripe-mane","M 251 266 C 263 300 277 338 291 372 L 311 364 C 297 328 283 292 271 262 Z","#26344a")+
coloringFlat("zebra-ear","M 262 286 C 284 274 306 276 316 290 C 300 304 276 304 262 298 Z","#ffffff")+ coloringFlat("zebra-ear","M 307 286 C 329 274 351 276 361 290 C 345 304 321 304 307 298 Z","#ffffff")+
coloringFlat("zebra-hoof-hind-far","M 348 548 L 388 548 L 386 562 L 358 566 Z","#26344a")+ coloringFlat("zebra-hoof-hind-far","M 393 548 L 433 548 L 431 562 L 403 566 Z","#26344a")+
coloringFlat("zebra-hoof-hind-near","M 316 556 L 360 556 L 358 570 L 326 574 Z","#26344a")+ coloringFlat("zebra-hoof-hind-near","M 361 556 L 405 556 L 403 570 L 371 574 Z","#26344a")+
coloringFlat("zebra-hoof-fore-far","M 264 566 L 308 566 L 306 580 L 274 584 Z","#26344a")+ coloringFlat("zebra-hoof-fore-far","M 309 566 L 353 566 L 351 580 L 319 584 Z","#26344a")+
coloringFlat("zebra-hoof-fore-near","M 240 574 L 290 574 L 288 590 L 250 594 Z","#26344a")+ coloringFlat("zebra-hoof-fore-near","M 285 574 L 335 574 L 333 590 L 295 594 Z","#26344a"),2)+
coloringDot(214,290,6),2)+ coloringDot(259,290,6)+
coloringLine("M 146 308 C 150 318 158 324 168 326 M 382 450 C 392 462 400 474 404 486",2)+ coloringLine("M 191 308 C 195 318 203 324 213 326 M 427 450 C 437 462 445 474 449 486",2)+
coloringLine("M 232 442 C 268 456 344 460 390 450 M 210 334 C 224 342 236 350 244 356 M 258 512 C 270 518 284 518 294 514",3))+ coloringLine("M 277 442 C 313 456 389 460 435 450 M 255 334 C 269 342 281 350 289 356 M 303 512 C 315 518 329 518 339 514",3))+
coloringGroup("grass-front", coloringGroup("grass-front",
coloringFlat("grass-tuft-a","M 430 566 C 432 540 438 518 448 498 C 452 522 454 544 452 566 C 458 542 466 522 478 506 C 476 532 472 552 466 566 Z","#3fae6a")+ coloringFlat("grass-tuft-a","M 430 566 C 432 540 438 518 448 498 C 452 522 454 544 452 566 C 458 542 466 522 478 506 C 476 532 472 552 466 566 Z","#3fae6a")+
coloringGroup("grass-extra", coloringGroup("grass-extra",