All checks were successful
dev - build & deploy naar test / build-and-deploy (push) Successful in 34s
- Teken alle 28 scènes vanaf een leeg canvas opnieuw met samenhangende silhouetten en detailniveaus per leerjaar. - Geef dieren soortspecifieke anatomie, natuurlijke verhoudingen en vloeiende realistische contouren. - Borg gesloten vulvakken, correcte laagvolgorde en blijvend zichtbare contour- en binnenlijnen. - Verwijder de oude reparatielaag en voeg anatomische en functionele regressietests toe.
187 lines
16 KiB
JavaScript
187 lines
16 KiB
JavaScript
/* teach — nieuwe kleurboekatlas voor groep 3-4 */
|
|
"use strict";
|
|
|
|
function proOcean(){return coloringScene(
|
|
coloringPart("rect","ocean-paper",'x="4" y="4" width="792" height="592" rx="28"')+
|
|
coloringPart("path","ocean-floor",'d="M 4 472 C 131 433 258 448 391 477 C 529 506 660 486 796 443 L 796 596 L 4 596 Z"')+
|
|
coloringFigure("reef-fish",
|
|
coloringPart("path","fish-tail",'d="M 221 282 C 170 252 127 210 86 190 C 103 236 104 303 88 350 C 131 332 174 304 221 292 Z"')+
|
|
coloringPart("path","fish-dorsal-fin",'d="M 288 207 C 325 159 374 151 411 190 C 365 190 328 201 297 226 Z"',2)+
|
|
coloringPart("path","fish-ventral-fin",'d="M 310 350 C 348 384 397 382 421 346 C 379 357 344 359 310 350 Z"',3)+
|
|
coloringPart("path","fish-silhouette",'d="M 205 286 C 257 199 374 180 472 218 C 519 237 553 263 577 290 C 550 329 512 353 462 365 C 365 388 258 360 205 286 Z"')+
|
|
coloringPart("path","fish-gill-cover",'d="M 484 230 C 462 262 462 318 486 351 C 527 337 557 316 577 290 C 554 264 524 243 484 230 Z"',2)+
|
|
coloringPart("path","fish-side-patch",'d="M 332 212 C 311 253 310 317 334 365 C 367 372 399 371 430 365 C 410 316 409 255 429 203 C 396 197 362 201 332 212 Z"',2)+
|
|
coloringPart("path","fish-pectoral-fin",'d="M 474 286 C 447 290 423 310 417 340 C 450 344 480 324 490 299 Z"',3)+
|
|
coloringDot(528,270,6)+
|
|
coloringLine("path",'d="M 538 310 Q 555 319 569 306 M 241 286 C 275 271 300 271 327 286 M 286 211 C 273 247 273 322 290 355" fill="none"',3)
|
|
)+
|
|
coloringFigure("green-sea-turtle",
|
|
coloringPart("path","turtle-rear-flipper",'d="M 453 414 C 418 403 391 416 381 445 C 409 466 443 457 473 434 Z"',2)+
|
|
coloringPart("path","turtle-front-flipper-far",'d="M 601 372 C 634 335 676 320 707 338 C 690 377 655 399 612 410 Z"',2)+
|
|
coloringPart("path","turtle-front-flipper-near",'d="M 590 438 C 636 444 675 469 682 507 C 637 514 597 488 569 453 Z"')+
|
|
coloringPart("path","turtle-shell",'d="M 409 414 C 416 342 478 305 551 316 C 614 326 646 369 633 423 C 620 478 563 500 503 484 C 445 469 407 449 409 414 Z"')+
|
|
coloringPart("path","turtle-neck",'d="M 615 374 C 639 355 663 345 686 347 L 700 400 C 672 407 646 416 625 431 Z"',2)+
|
|
coloringPart("path","turtle-head",'d="M 674 352 C 696 329 735 332 753 359 C 770 384 756 418 726 427 C 695 436 671 413 668 383 C 667 369 669 359 674 352 Z"')+
|
|
coloringPart("path","turtle-shell-center",'d="M 476 344 C 520 323 576 336 602 374 C 615 416 587 459 540 467 C 492 469 449 441 448 402 C 449 376 459 356 476 344 Z"',2)+
|
|
coloringDot(728,369,5)+
|
|
coloringLine("path",'d="M 498 335 C 482 370 482 430 503 466 M 563 333 C 585 369 588 427 570 461 M 454 391 C 498 371 557 372 612 397 M 451 426 C 498 447 557 449 602 430 M 721 401 C 733 405 743 403 750 397" fill="none"',3)
|
|
)+
|
|
coloringPart("path","ocean-seagrass-a",'d="M 103 535 C 81 481 87 423 118 376 C 135 434 131 489 118 540 Z"',2)+
|
|
coloringPart("path","ocean-seagrass-b",'d="M 157 542 C 137 486 151 434 187 397 C 196 451 183 503 170 545 Z"',3)
|
|
)}
|
|
|
|
function proGarden(){return coloringScene(
|
|
coloringPart("rect","garden-paper",'x="4" y="4" width="792" height="592" rx="28"')+
|
|
coloringPart("path","garden-soil",'d="M 4 418 C 149 380 280 403 401 435 C 535 470 661 437 796 399 L 796 596 L 4 596 Z"')+
|
|
coloringFigure("roman-snail",
|
|
coloringPart("path","snail-foot",'d="M 79 473 C 149 459 224 466 293 470 C 337 472 370 464 401 447 C 429 431 463 435 479 456 C 465 492 426 505 376 506 H 120 C 91 506 73 493 79 473 Z"')+
|
|
coloringPart("path","snail-shell",'d="M 107 421 C 91 346 139 282 213 278 C 288 274 344 329 340 402 C 336 468 276 490 207 477 C 151 467 117 450 107 421 Z"')+
|
|
coloringPart("path","snail-head-neck",'d="M 331 438 C 347 386 371 355 408 351 C 446 347 474 372 476 410 C 479 447 448 475 409 474 C 381 474 359 460 331 438 Z"',2)+
|
|
coloringDot(399,391,4)+coloringDot(441,392,4)+
|
|
coloringLine("path",'d="M 393 367 C 385 336 375 318 359 303 M 442 368 C 451 336 462 318 478 304 M 405 430 C 417 434 430 433 441 427 M 159 417 C 152 361 191 325 239 331 C 283 337 303 376 286 413 C 270 448 220 451 198 424 C 181 403 191 375 218 374 C 238 373 250 390 242 406" fill="none"',2)
|
|
)+
|
|
coloringFigure("seven-spot-ladybird",
|
|
coloringPart("path","ladybird-leaf",'d="M 493 455 C 544 398 665 387 730 434 C 685 500 571 525 493 455 Z"',2)+
|
|
coloringPart("path","ladybird-leg-back-a",'d="M 561 419 C 530 398 503 397 483 412 L 493 428 C 515 418 538 424 558 442 Z"',3)+
|
|
coloringPart("path","ladybird-leg-back-b",'d="M 563 466 C 530 471 509 487 505 509 L 526 511 C 534 490 550 482 573 481 Z"',3)+
|
|
coloringPart("path","ladybird-leg-front-a",'d="M 677 414 C 705 392 733 392 752 408 L 741 425 C 719 415 697 422 680 439 Z"',3)+
|
|
coloringPart("path","ladybird-leg-front-b",'d="M 682 465 C 714 469 737 484 742 506 L 721 509 C 713 488 697 480 674 480 Z"',3)+
|
|
coloringPart("path","ladybird-body",'d="M 544 431 C 550 365 596 329 649 338 C 701 347 728 392 715 447 C 702 502 652 520 604 500 C 564 484 540 462 544 431 Z"')+
|
|
coloringPart("path","ladybird-pronotum",'d="M 642 339 C 679 336 710 355 724 385 C 708 406 682 416 655 407 C 634 395 629 365 642 339 Z"',2)+
|
|
coloringPart("path","ladybird-wing-left",'d="M 548 411 C 567 370 605 350 642 356 C 639 397 644 449 656 498 C 617 508 569 485 552 452 C 545 438 543 424 548 411 Z"',2)+
|
|
coloringPart("path","ladybird-wing-right",'d="M 642 356 C 675 357 705 382 715 418 C 720 454 696 489 656 498 C 644 449 639 397 642 356 Z"',3)+
|
|
coloringDot(684,374,4)+
|
|
coloringPart("circle","ladybird-spot-left-one",'cx="590" cy="397" r="12"',2)+
|
|
coloringPart("circle","ladybird-spot-left-two",'cx="579" cy="447" r="13"',3)+
|
|
coloringPart("circle","ladybird-spot-left-three",'cx="623" cy="469" r="12"',3)+
|
|
coloringPart("circle","ladybird-spot-right-one",'cx="681" cy="411" r="12"',2)+
|
|
coloringPart("circle","ladybird-spot-right-two",'cx="686" cy="457" r="12"',3)+
|
|
coloringLine("path",'d="M 650 357 C 642 402 645 450 656 498" fill="none"',3)
|
|
)+
|
|
coloringFlower(167,201,"garden-daisy",.82,3)+
|
|
coloringLine("path",'d="M 167 226 V 365 C 133 336 103 341 89 370 M 167 303 C 196 275 228 281 241 310" fill="none"',2)
|
|
)}
|
|
|
|
function proWindmill(){return coloringScene(
|
|
coloringPart("rect","windmill-paper",'x="4" y="4" width="792" height="592" rx="28"')+
|
|
coloringPart("path","polder-field",'d="M 4 416 C 156 383 286 405 407 435 C 539 468 663 439 796 402 L 796 596 L 4 596 Z"')+
|
|
coloringPart("path","polder-canal",'d="M 4 505 C 165 472 287 491 410 522 C 538 552 661 536 796 497 V 596 H 4 Z"',2)+
|
|
coloringFigure("smock-windmill",
|
|
coloringPart("path","mill-base",'d="M 305 503 L 345 215 H 483 L 532 503 Z"')+
|
|
coloringPart("path","mill-cap",'d="M 329 216 C 345 147 380 112 416 111 C 454 112 491 149 504 216 Z"')+
|
|
coloringPart("path","mill-door",'d="M 381 404 C 381 377 395 363 414 363 C 433 363 447 377 447 404 V 503 H 381 Z"',2)+
|
|
coloringPart("path","mill-window-left",'d="M 353 282 H 395 V 333 H 353 Z"',3)+
|
|
coloringPart("path","mill-window-right",'d="M 437 282 H 479 V 333 H 437 Z"',3)+
|
|
coloringPart("path","mill-sail-north",'d="M 405 201 L 382 22 L 413 18 L 432 201 Z"')+
|
|
coloringPart("path","mill-sail-east",'d="M 431 205 L 648 116 L 660 145 L 438 231 Z"',2)+
|
|
coloringPart("path","mill-sail-south",'d="M 431 235 L 479 526 L 447 530 L 405 240 Z"',2)+
|
|
coloringPart("path","mill-sail-west",'d="M 402 229 L 172 346 L 157 318 L 394 204 Z"',3)+
|
|
coloringPart("circle","mill-hub",'cx="416" cy="219" r="29"')+
|
|
coloringLine("path",'d="M 394 26 L 420 198 M 644 128 L 438 216 M 465 522 L 418 242 M 170 331 L 394 216 M 328 368 H 500 M 323 409 H 508" fill="none"',3)
|
|
)+
|
|
coloringFigure("polder-house",
|
|
coloringPart("path","polder-house-wall",'d="M 53 376 H 241 V 501 H 53 Z"',2)+
|
|
coloringPart("path","polder-house-roof",'d="M 31 376 L 146 273 L 264 376 Z"',2)+
|
|
coloringPart("path","polder-house-door",'d="M 125 425 H 170 V 501 H 125 Z"',3)+
|
|
coloringPart("path","polder-house-window-a",'d="M 76 402 H 113 V 446 H 76 Z"',3)+
|
|
coloringPart("path","polder-house-window-b",'d="M 184 402 H 221 V 446 H 184 Z"',3)
|
|
)+
|
|
coloringCloud("polder-cloud",608,84,.72,3)
|
|
)}
|
|
|
|
function proDinosaurValley(){return coloringScene(
|
|
coloringPart("rect","dinosaur-paper",'x="4" y="4" width="792" height="592" rx="28"')+
|
|
coloringPart("path","dinosaur-ground",'d="M 4 434 C 145 397 275 417 399 449 C 535 483 662 451 796 412 L 796 596 L 4 596 Z"')+
|
|
coloringFigure("volcanic-valley",
|
|
coloringPart("path","volcano",'d="M 34 435 L 153 210 L 286 435 Z"',2)+
|
|
coloringPart("path","volcano-rim",'d="M 116 279 L 153 210 L 193 280 L 174 267 L 154 290 L 137 265 Z"',3)+
|
|
coloringPart("path","volcano-smoke-a",'d="M 126 190 C 102 171 109 140 134 134 C 127 105 151 83 177 94 C 199 81 225 100 222 126 C 241 145 228 174 203 178 C 182 197 151 198 126 190 Z"',3)
|
|
)+
|
|
coloringFigure("brachiosaurus",
|
|
[384,456,544,604].map((x,i)=>coloringPart("path","dinosaur-leg-"+i,`d="M ${x} 409 C ${x-3} 449 ${x-5} 499 ${x+2} 535 C ${x+17} 541 ${x+38} 541 ${x+52} 534 L ${x+47} 517 C ${x+39} 476 ${x+42} 438 ${x+35} 400 Z"`,i>1?2:1)).join("")+
|
|
coloringPart("path","dinosaur-silhouette",'d="M 275 382 C 229 357 178 338 119 325 C 166 319 211 321 258 330 C 300 337 339 324 374 294 C 416 258 472 248 526 267 C 552 275 573 287 591 302 C 603 252 613 201 619 153 C 625 106 641 74 668 68 C 697 61 725 82 728 112 C 731 139 711 159 684 159 C 681 215 681 277 694 342 C 707 405 681 453 633 470 C 574 491 499 475 446 446 C 384 413 331 409 275 382 Z"')+
|
|
coloringPart("path","dinosaur-belly",'d="M 369 330 C 423 299 502 301 555 330 C 593 351 620 383 629 424 C 581 454 516 454 457 426 C 419 407 387 377 369 330 Z"',2)+
|
|
coloringPart("path","dinosaur-cheek",'d="M 655 101 C 673 82 705 88 714 112 C 709 140 678 151 657 135 Z"',3)+
|
|
coloringDot(696,109,4)+
|
|
coloringLine("path",'d="M 690 137 C 701 141 711 140 718 134 M 292 350 C 331 361 358 379 382 407 M 433 534 H 467 M 505 534 H 539 M 592 534 H 626 M 650 534 H 684" fill="none"',2)
|
|
)+
|
|
coloringPart("circle","dinosaur-sun",'cx="86" cy="93" r="42"',3)
|
|
)}
|
|
|
|
function proSpringNest(){return coloringScene(
|
|
coloringPart("rect","spring-paper",'x="4" y="4" width="792" height="592" rx="28"')+
|
|
coloringPart("path","spring-hill",'d="M 4 440 C 144 401 278 423 400 455 C 535 489 662 455 796 417 L 796 596 L 4 596 Z"')+
|
|
coloringFigure("nesting-branch",
|
|
coloringPart("path","nest-branch",'d="M 42 468 C 176 422 308 422 436 450 C 552 475 668 461 759 421 L 770 455 C 662 496 546 506 424 482 C 297 456 177 458 52 503 Z"')+
|
|
coloringLeaf("nest-leaf-left",107,442,-28,.86,2)+
|
|
coloringLeaf("nest-leaf-right",688,448,22,.84,3)
|
|
)+
|
|
coloringFigure("blackbird",
|
|
coloringPart("path","bird-tail-top",'d="M 332 356 C 279 344 229 355 190 387 C 240 401 291 397 341 378 Z"',2)+
|
|
coloringPart("path","bird-tail-bottom",'d="M 340 379 C 288 387 244 410 216 446 C 267 444 310 427 354 397 Z"',2)+
|
|
coloringPart("path","bird-silhouette",'d="M 322 373 C 326 315 374 278 437 279 C 465 259 493 234 522 215 C 553 194 594 202 617 230 C 640 258 635 299 607 323 C 590 338 569 344 547 341 C 532 377 502 406 457 418 C 397 433 326 413 322 373 Z"')+
|
|
coloringPart("path","bird-wing",'d="M 364 339 C 397 302 456 299 493 331 C 487 376 445 406 393 399 C 366 385 355 363 364 339 Z"',2)+
|
|
coloringPart("path","bird-beak",'d="M 607 248 L 681 275 L 611 294 C 620 277 619 264 607 248 Z"',2)+
|
|
coloringPart("path","bird-throat",'d="M 536 294 C 563 280 600 286 617 310 C 599 340 559 350 532 330 Z"',3)+
|
|
coloringDot(582,246,5)+
|
|
coloringLine("path",'d="M 399 322 C 423 341 442 367 447 399 M 396 414 L 389 459 M 459 416 L 466 459 M 389 459 l -18 10 M 389 459 l 17 9 M 466 459 l -17 9 M 466 459 l 18 10" fill="none"',2)
|
|
)+
|
|
coloringFigure("woven-nest",
|
|
coloringPart("path","nest-bowl",'d="M 476 430 C 509 396 626 393 666 426 C 657 489 614 518 568 516 C 520 513 487 484 476 430 Z"',2)+
|
|
coloringPart("path","nest-rim",'d="M 469 420 C 509 392 628 390 672 420 C 641 450 505 451 469 420 Z"')+
|
|
coloringPart("path","nest-egg-a",'d="M 521 410 C 514 378 529 356 552 356 C 575 357 585 382 578 413 Z"',2)+
|
|
coloringPart("path","nest-egg-b",'d="M 565 407 C 560 374 577 350 601 352 C 625 355 633 383 623 412 Z"',3)+
|
|
coloringLine("path",'d="M 492 448 C 536 467 607 469 650 449 M 506 476 C 544 489 597 491 632 477" fill="none"',3)
|
|
)
|
|
)}
|
|
|
|
function proFireStation(){return coloringScene(
|
|
coloringPart("rect","fire-paper",'x="4" y="4" width="792" height="592" rx="28"')+
|
|
coloringPart("path","fire-road",'d="M 4 471 H 796 V 596 H 4 Z"')+
|
|
coloringFigure("fire-station-building",
|
|
coloringPart("path","station-wall",'d="M 27 247 H 301 V 481 H 27 Z"',2)+
|
|
coloringPart("path","station-roof",'d="M 10 247 L 164 121 L 319 247 Z"')+
|
|
coloringPart("path","station-door-left",'d="M 58 330 H 158 V 481 H 58 Z"',2)+
|
|
coloringPart("path","station-door-right",'d="M 158 330 H 270 V 481 H 158 Z"',2)+
|
|
coloringPart("path","station-emblem",'d="M 121 188 C 121 160 139 142 164 142 C 189 142 207 160 207 188 C 207 216 188 231 164 231 C 140 231 121 216 121 188 Z"',3)+
|
|
coloringLine("path",'d="M 164 158 V 218 M 136 188 H 192 M 58 376 H 270 M 108 330 V 481 M 214 330 V 481" fill="none"',3)
|
|
)+
|
|
coloringFigure("fire-engine",
|
|
coloringPart("path","engine-chassis",'d="M 259 439 H 735 L 760 489 H 238 Z"')+
|
|
coloringPart("path","engine-body",'d="M 291 306 H 541 V 441 H 291 Z"')+
|
|
coloringPart("path","engine-cab",'d="M 541 326 H 656 C 679 326 697 340 710 362 L 752 439 H 541 Z"',2)+
|
|
coloringPart("path","engine-window-side",'d="M 566 347 H 620 V 392 H 566 Z"',2)+
|
|
coloringPart("path","engine-window-front",'d="M 633 347 H 660 C 674 347 685 356 693 370 L 707 392 H 633 Z"',3)+
|
|
coloringPart("path","engine-equipment-panel",'d="M 322 334 H 476 V 413 H 322 Z"',2)+
|
|
coloringPart("path","engine-ladder",'d="M 300 282 L 575 214 L 582 242 L 308 309 Z"',2)+
|
|
coloringPart("circle","engine-wheel-left",'cx="355" cy="482" r="48"')+
|
|
coloringPart("circle","engine-wheel-right",'cx="661" cy="482" r="48"')+
|
|
coloringPart("circle","engine-hub-left",'cx="355" cy="482" r="21"',2)+
|
|
coloringPart("circle","engine-hub-right",'cx="661" cy="482" r="21"',2)+
|
|
coloringPart("circle","engine-hose-reel",'cx="416" cy="373" r="31"',3)+
|
|
coloringLine("path",'d="M 326 274 L 562 216 M 365 257 L 371 294 M 411 246 L 417 283 M 457 235 L 463 272 M 503 224 L 509 261 M 393 373 C 401 349 437 355 438 379 C 436 401 405 405 397 385" fill="none"',3)
|
|
)
|
|
)}
|
|
|
|
function proBeeMeadow(){return coloringScene(
|
|
coloringPart("rect","bee-paper",'x="4" y="4" width="792" height="592" rx="28"')+
|
|
coloringPart("path","bee-meadow",'d="M 4 456 C 145 415 280 438 402 469 C 535 503 663 468 796 431 L 796 596 L 4 596 Z"')+
|
|
coloringFigure("western-honeybee",
|
|
coloringPart("path","bee-hindwing",'d="M 337 258 C 283 225 230 231 207 269 C 225 310 281 324 340 295 Z"',2)+
|
|
coloringPart("path","bee-forewing",'d="M 367 260 C 330 199 344 139 390 127 C 435 152 439 218 399 272 Z"')+
|
|
coloringPart("path","bee-abdomen",'d="M 270 326 C 282 273 333 250 390 268 C 445 285 478 327 466 371 C 454 417 403 438 349 419 C 296 400 259 368 270 326 Z"')+
|
|
coloringPart("path","bee-stripe-one",'d="M 319 276 C 342 267 369 267 393 275 C 377 311 375 365 391 419 C 366 424 344 420 325 412 C 308 366 307 317 319 276 Z"',2)+
|
|
coloringPart("path","bee-stripe-two",'d="M 416 287 C 439 302 456 322 466 345 C 449 367 439 389 437 407 C 419 418 402 421 384 419 C 404 370 405 320 416 287 Z"',3)+
|
|
coloringPart("path","bee-thorax",'d="M 437 289 C 454 257 489 246 519 262 C 548 278 558 315 542 345 C 525 376 488 387 458 369 C 430 351 420 319 437 289 Z"')+
|
|
coloringPart("path","bee-head",'d="M 513 268 C 533 232 575 219 607 241 C 639 263 645 307 622 339 C 599 371 555 376 527 350 C 504 328 499 293 513 268 Z"')+
|
|
coloringPart("path","bee-compound-eye",'d="M 566 244 C 590 237 613 253 615 276 C 611 299 586 307 566 295 C 551 282 551 259 566 244 Z"',2)+
|
|
coloringPart("path","bee-mandible",'d="M 607 303 C 628 301 644 313 645 327 C 633 341 614 344 598 334 Z"',3)+
|
|
coloringLine("path",'d="M 557 239 C 541 210 514 201 491 210 M 596 229 C 590 196 605 177 630 170 M 340 292 C 326 330 329 374 347 414 M 397 276 C 383 321 387 378 407 414 M 461 369 L 448 414 M 481 376 L 478 424 M 519 364 L 531 411 M 544 345 L 566 386" fill="none"',2)+
|
|
coloringLine("path",'d="M 230 272 C 267 267 305 276 337 293 M 365 251 C 387 216 400 175 390 127" fill="none"',3)
|
|
)+
|
|
coloringFigure("bee-flowers",
|
|
coloringFlower(121,439,"bee-flower-a",.74,2)+
|
|
coloringFlower(677,449,"bee-flower-b",.74,3)+
|
|
coloringLine("path",'d="M 121 463 V 548 M 677 473 V 548 M 121 512 C 96 492 78 501 72 520 M 677 514 C 704 493 722 503 727 522" fill="none"',2)
|
|
)
|
|
)}
|