как получить размер диагональ экрана в сантиметрах?
я здесь нашел пример как получить диагональ экрана. и он не правильно считает. даже если я перевел в сантиметры.
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
double x = Math.pow(dm.widthPixels / dm.xdpi, 2);
double y = Math.pow(dm.heightPixels / dm.ydpi, 2);
double screenInches = Math.sqrt(x + y);
screenInches *= 2.54;
у меня планшет, а он показывает диагональ как будто экран в диагонали около 12 сантиметров. а экран у меня вроде больше 20 сантиметров. как правильно считать? я попробовал поделить на другое значение.
double x = Math.pow(dm.widthPixels / dm.densityDpi, 2);
double y = Math.pow(dm.heightPixels / dm.densityDpi, 2);
значение уже блин, получается 21 сантиметр, но у меня экран где-то 26 сантиметров.
Ответы (1 шт):
Автор решения: Виталий Перятин
→ Ссылка
Cуть этого кода заключается в нахождении ширины экрана, потом нахождении высоты экрана, а потом получения диагонали через стандартную формулу Пифагора. У Вас неверно написана формула Пифагора
Эта строка:
double screenInches = Math.sqrt(x + y);
должна выглядеть так:
double screenInches = Math.sqrt(x * x + y * y);