Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Название темы: Выпуклая оболочка
Показать сообщение отдельно
pva pva вне форума

Аватара для pva

Ветеран


Сообщения: 1180
Благодарности: 279

Профиль | Отправить PM | Цитировать


Вообще-то нужно уточнить, что ты понимаешь под выпуклой оболочкой.
Если это-кривая, заданная параметрически {f(n), g(n)}, то её длина -
Integral(sqrt(df(n)^2+fg(n)^2)), или численно (на С):

const double dn=1;
double length1=0;
for(n=0;n<N;n++) {
 register double df=f[n]-f[n-1];
 register double dg=g[n]-g[n-1];
 length1+=sqrt(df*df+dg*dg)*dn;
}
cout<<"length1="<<length1<<endl;

или, если как функция, то Integral(sqrt(1+df(n)^2)), или

const double dn=1;
double length1=0;
for(n=0;n<N;n++) {
 register double df=f[n]-f[n-1];
 length1+=sqrt(df*df+1)*dn;
}
cout<<"length1="<<length1<<endl;

Отправлено: 13:39, 08-12-2003 | #2

Название темы: Выпуклая оболочка