Haluttaisiin siis tehdä animaatio, jossa kuutio muuttuu tilavuudeltaan yhtä suureksi palloksi. Kuution nurkkia pitää siis lähteä siirtämään kohti kappaleen keskipistettä ja kuution tahkojen keskipisteitä kauemmaksi keskustasta.
Jos vaikka ajatellaan kuution nurkkien olevan koordinaatistossa (-1,-1,-1)...(1,1,1), niin kuution tilavuus olisi 8. Vastaavan tilavuuden pallon säde on noin 1,24. Kuution nurkan etäisyys keskipisteestä on n. 1,41. Eli nurkkapisteen pitäisi siirtyä 1,41->1,24 ja tahkon keskipisteen 1->1,24. Ja tietenkin niiden välillä olevien pisteiden oikeassa suhteessa asemaansa nähden.
Mitenköhän tuota lähtisi purkamaan? Kuutiossa on ainakin kuusi tahkoa ja kahdeksan nurkkapistettä. Miten pallon pinta jaetaan kuuteen yhtä suureen osaan, jotka vastaisivat kuution tahkoja?
Kuution sisällehän jää pallo, joka ei muutu lainkaan. Sen tilavuus on noin 4,19. Siirreltävää "massaa" on siten 3,81. Tuo tieto ei varmaan mitään hyödytä, mutta kaikki liikuteltavat pisteet on joka tapaksessa 1-säteisen pallon ulkopuolella.
Jos vaikka ajatellaan kuution nurkkien olevan koordinaatistossa (-1,-1,-1)...(1,1,1), niin kuution tilavuus olisi 8. Vastaavan tilavuuden pallon säde on noin 1,24. Kuution nurkan etäisyys keskipisteestä on n. 1,41. Eli nurkkapisteen pitäisi siirtyä 1,41->1,24 ja tahkon keskipisteen 1->1,24. Ja tietenkin niiden välillä olevien pisteiden oikeassa suhteessa asemaansa nähden.
Mitenköhän tuota lähtisi purkamaan? Kuutiossa on ainakin kuusi tahkoa ja kahdeksan nurkkapistettä. Miten pallon pinta jaetaan kuuteen yhtä suureen osaan, jotka vastaisivat kuution tahkoja?
Kuution sisällehän jää pallo, joka ei muutu lainkaan. Sen tilavuus on noin 4,19. Siirreltävää "massaa" on siten 3,81. Tuo tieto ei varmaan mitään hyödytä, mutta kaikki liikuteltavat pisteet on joka tapaksessa 1-säteisen pallon ulkopuolella.
Vastaukset 5
Vanhimmat
Löysin tuollaiset kaavat: https://i.imgur.com/5kPW3sa.png
Pitää tutustua onko noista mihinkään. Ainakin arvoilla (1,1,1) tulee (0,716, 0,716, 0,716), joka on 1,24-säteellä yhtä etäällä origosta.
Joo tuo vaikuttaisi hyvältä. Jokaisen pisteen interpoloi sen ja origon yhdistävää suoraa myöten uuteen päätepisteeseensä. Siihenhän saisi varmaan erinäköisiä muodon muljahteluja kun käyttää erilaisia interpolaatiofunktioita(?)
Tee ensin toimiva animaatio 8 nurkkapisteen ja 6 tahkon keskipisteen siirtämiseksi. Samalla selviää suuri osa ongelmista.
Sitten lisäät mukaan kaikkien sivujen keskipisteet, Niitä on 12 kpl. Liikuta kaikkia pisteitä origon kautta kulkevia akseleita pitkin. Symmetristä ja helppo laskea. Tiedät alku- ja loppupisteiden sijainnit. Pallon ja kuution tunnistaa helposti jo 26 pisteestä. Älä käytä mitään sini- tai kosiniunktioita yms. Tietokone laskee kaiken ihan riittävän nopeasti ihan peruskaavoja käyttäen. Ei kiirettä!
Kiitos vinkistä. Pitää pureskella tuota ideaa.
Helppo homma. Tee funktio K(a), joka antaa kuution pisteen origosta lähtevän vektorin a suunnassa. Laske tarvittavan saman tilavuuden olevan pallon säde ja vastaavasti funktio P(a), joka antaa pallon pisteen origosta lähtevän vektorin a suunnassa. Olkoon alkutilanteessa (kuutio) t=0 ja lopputilanteessa (pallo) t=1. Tällöin ajanhetkellä t muotoutuneen kappaleen pinta on vektorin a suunnassa pistessä x = tP(a) (1-t)K(a).