| 470 | == vaja64 == |
| 471 | |
| 472 | Izdelajte podprogram za linearno interpolacijo. Program naj vpraša za dve |
| 473 | točki (x,,0,,,y,,0,,) in (x,,1,,,y,,1,,) ter mesto na osi ''x'' za katero |
| 474 | želimo vrednost ''y''. Npr. za |
| 475 | {{{ |
| 476 | 0 0 |
| 477 | 1 1 |
| 478 | 0.5 |
| 479 | }}} |
| 480 | mora vrniti 0.5. |
| 481 | Podprogram naj ima naslednji prototip: |
| 482 | {{{ |
| 483 | #!c |
| 484 | float linear_interpolation(float x, float p0[2], float p1[2]) |
| 485 | }}} |
| 486 | |
| 487 | |
| 488 | == vaja65 == |
| 489 | Podprogram za parametrizacijo daljice naj izpiše koordinato glede na |
| 490 | parameter ''t'', ki je v mejah od 0 do 1. Podobno kot pri vaji 64 preberemo |
| 491 | točki (x,,0,,,y,,0,,) in (x,,1,,,y,,1,,) in parameter ''t''. Prototip |
| 492 | {{{ |
| 493 | #!c |
| 494 | void linear_interpolation(float t, float p0[2], float p1[2]) |
| 495 | }}} |
| 496 | naj izpiše točko s formatom "%.1f %.1f". Prednost parametrične interpolacije |
| 497 | je v tem, da deluje tudi za navpično daljico. Npr. |
| 498 | {{{ |
| 499 | 0 0 |
| 500 | 0 2 |
| 501 | 0.5 |
| 502 | }}} |
| 503 | vrne 0.0 0.5 |
| 504 | |
| 505 | Ko je parameter t=0 se izpiše začetna točka. Pri t=1 pa končna. |
| 506 | |
| 507 | |
| 508 | == vaja66 == |
| 509 | Podobno kot v vaji 65 izdelajte podprogram, ki za parameter t v mejah |
| 510 | od -1 do 1 izpiše točko med podanima točkama. |
| 511 | Ko je parameter t=-1 se izpiše začetna točka. Pri t=1 pa končna. Za t=0 se izpiše točka na sredini. |