float x;
float y;
float z;
const int numOfPoints=2; //количество источников точек
float object[numOfPoints][3]; //содержит точки объекта
object[0][0] = float(SIZE2); //define the objects
object[0][1] = float(SIZE2);
object[0][2] = float(1000);
object[0][0] = float(SIZE2+50); //определяем объекты
object[0][1] = float(SIZE2+50);
object[0][2] = float(1000);
//************************************************************
//инициализируем hol
for(i=0;i<SIZE;i++)
{ for(j=0;j<SIZE;j++)
hol[i][j] = 0;
}
//************************************************************
//рассчитываем поля
h=0; //инициализация
while ( h < numOfPoints) //циклимся по всем точкам
{
x= object[h][0];
y= object[h][1];
z= object[h][2];
i = 0; //сброс в ноль
while (i<SIZE) //цикл по рядам
{
cout <<i<<" ";
j=0;
while(j<SIZE) //цикл по колонкам
{
hol[i][j] = hol[i][j] +
cos(sqrt(float(
(x-(i))*(x-(i)) //рассчитываем расстояние
+ (y-(j))*(y-(j))
+ (z*z)))); //берём косинус посчитанного поля
j++; //инкремент колонки
}
i++; //инкремент ряда
}
h++; //переходим к следующей точке
}
//************************************************************
//оцифровка матрицы
i=0; //ряд
while(i<SIZE)
{
j=0; //колонка
while (j<SIZE)
{
if (hol[i][j]>0) //устанавливаем в 1 для всех значений >1
hol[i][j] = int(1);
else // 0 – для всех остальных
hol[i][j] = int(0);
j++; //колонка
}
i++; //ряд
}
//*************************************************************
//запись в файл
i=0;
while(i<SIZE)
{
j=0; //колонки
while (j<SIZE)
{
outfile<<hol[i][j]<<" ";
j++;
}
outfile<<endl; //в конце ряда – перевод строки
i++;
}
return 0;
}