Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Vykreslení grafu funkce, jak řešit přepočet hodnot? - programování

Ahoj,

dělám program, který vykreslí matematickou funkci (je jedno jakou), tuto funkci vykreslí.

Jde o to, že mě nenapadá algoritmus, který by přepočítal hodnoty, aby se vešli do okna velkého 1000x1000 px.

Rekneme, že zadám funkci cos(x), vypočítám y na itnervalu x = <-2000, 2000>, tyto hodnoty mám uložené v poli a nyní je chci vykreslit, vykreslím, avšak, pokud budu chtít vykreslit například x^3, hodnoty budou značně veliké - nevejdou se do vykreslovací oblasti (1000x1000px).

Nenapadá mě nic vhodného, jak hodnoty transformovat, aby se vešli, zakládám pro to diskuzi a prosím někoho o radu :-)

Předmět Autor Datum
Přepočítat ty hodnoty tak, aby se do toho rozsahu vešly.
Wikan 29.12.2013 21:13
Wikan
O to jsem se pokoušel, ale nenašel jsem funkční řešení pro všechny funkce, jejich hodnoty se liší až…
MašinkaTomáš 29.12.2013 21:16
MašinkaTomáš
A to vadí? Najdeš si maximum a minimum a jedeš.
Wikan 29.12.2013 21:17
Wikan
Stále to nechápu, Pokud mám papír 1000x1000px, souřadnice 0,0(x,y) jsou přesně ve středu a já chci…
MašinkaTomáš 29.12.2013 21:37
MašinkaTomáš
koeficient = (reálné_maximum - reálné_minimum) / (požadované_maximum - požadované_minimum) požadova…
Wikan 29.12.2013 21:46
Wikan
Ale veď to je jednoduché... :-) Vykreslovacia oblasť = 1000 1000 * aktualna_hodnota / max_hodnota…
pme 29.12.2013 21:57
pme
Děkuji oboum za rady, ano je to jednoduché, z celým programem se dělám již 3 den(pouze spím a pak pr… poslední
MašinkaTomáš 29.12.2013 22:06
MašinkaTomáš

Stále to nechápu,

Pokud mám papír 1000x1000px, souřadnice 0,0(x,y) jsou přesně ve středu a já chci kreslit x^2, max všech hodnot je 4000000 a min všech hodnot je 0. Měl bych tedy všechny hodnoty dělit 10000? Takhle to myslíš? - Abych se s maximem dostal na 400 - což se tam ještě vejde a 100 mi zbyde volného místa..

Zpět do poradny Odpovědět na původní otázku Nahoru