Метка «конвертация»

Преобразование чисел из одного типа в другой обычно ведется таким образом, чтобы не потерять лишних чисел, т.е. из меньшего типа к более вместительному. Но что, если предыдущий разрабочик использовал конвертацию из Double во Float и стали пропадать копейки в отчетах?
В статье приводится изучение конвертации плавающих чисел в Java:

    99999999.33333333 -> 100000000.0000000
    98888888.33333333 ->  98888888.0000000
     2974815.78000000 ->   2974815.7500000

Давайте разберемся, к чему приводит такое преобразование и почему все происходит именно так. Ведь казалось бы, раз используемые в проекте числа далеки от максимальных значений типов float и double, то конвертация его из первого во второй не должна повлечь за собой отрицательных последствий в большинстве случаев.
Читать полностью »

image
В данной статье я опишу способ преобразования изображения bmp в матрицу, элементами которой будут значения цветов каждого пикселя.
Каждый пиксель bmp — изображения несет информацию о своем цвете из модели RGB ( цветовая модель изображения, которая состоит из трех компонентов R — red, G — green, B — blue ). Значение каждой компоненты RGB может быть в пределах 0… 255. Это дает возможность закодировать 255*255*255 цветов.
Значение цвета RGB удобнее хранить в hex формате ( шестнадцатерично ), где значение каждой компоненты находятся в пределах 00… FF. Комбинация 000000 — соответствует черному цвету, FFFFFF — белому.
Для начала работы откроем пространство имен Drawing:

   using System.Drawing ;

Создадим новый экземпляр класса Bitmap:

  Bitmap bmp = new Bitmap ( " c :  1.bmp " ) / / c :  1.bmp - адрес изображения

Для хранения значения цвета пикселя можно создать отдельную структуру, полями которой будут компоненты RGB, но я решил использовать класс Color из пространства имен Drawing. Для получения цвета используем метод GetPixel( x, y ), где x, y — координаты пикселя изображения. Если вы хотите использовать собственную структуру для хранения цвета, а не экземпляр класса Color, тогда для получения отдельной компоненты RGB можно использовать метод bmp.GetPixel(x, y).x, где x – R, G или B.

  Color[,] color = new Color[bmp.Width, bmp.Height];
  for (int y = 0; y < bmp.Height; y++)
       for (int x = 0; x < bmp.Width; x++)
       {
          color[x, y] = bmp.GetPixel(x, y); 
       }

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js