Если кому интересен этот тупой эффект, то вот формула радиуса кольца из "Элементарного учебника физики": r=sqrt((2*R-h)*h). Меняя R анимируем картинку. Меняя h строим кольца.
Если кому интересен этот тупой эффект, то вот формула радиуса кольца из "Элементарного учебника физики": r=sqrt((2*R-h)*h). Меняя R анимируем картинку. Меняя h строим кольца.
C Nonsense in BASIC, 0:1
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
всё интересно
Вообще-то эта формула взята из раздела "кольца Ньютона", но картинка будет такая же как для дифракции.r-радиус требуемого кольца, R - радиус линзы, h - толщина воздушной прослойки.
Добавлено через 21 минуту
#include <conio.h>
#include <math.h>
#include <graphics.h>
//r=sqr(2*h*r)
void main(void)
{
const x=640/2,y=480/2,r=500;
int graphdriver=DETECT,graphmode,r0,r1,r2,h;
initgraph(&graphdriver, &graphmode,"..\\bgi");
for (h=0;h<20:h+=2)
{
r0=sqrt(2*(h+1)*r);
r1=sqrt(2*(h+2)*r);
for (r2=r0;r2<r1;r2++)
circle (x,y,r2);
}
getch();
}
Последний раз редактировалось Krenon; 23.05.2007 в 16:23. Причина: Добавлено сообщение
C Nonsense in BASIC, 0:1
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)