Сложно сегодня найти человека, который бы не сталкивался с машинной графикой в тех или иных проявлениях. Если человек начинает интересоваться алгоритмами, лежащими в её основе, то одними из первых будут алгоритмы Брезенхема. Беда лишь в том, что мне до сих пор не попадалось простого и вразумительного описания этих алгоритмов, а уж тем более — реализации. В этой статье я попытаюсь по возможности просто рассказать о семействе алгоритмов Брезенхема, а также приведу готовый к использованию код на JavaScript, который практически не отличается от кода на C/C++ . Код можно брать и использовать, предварительно написав автору благодарственное письмо.
Хотелось бы выразить свои глубокие и искренние чувства к разработчикам стандартов www и тем, кто их реализует. Вариант JavaScript-кода, работающий во всех доступных броузерах, т.е. IE 6.0, NN 7.0 и Opera 6.0x, не отличается красотой и изысканностью. Впрочем, «к науке, которую я в настоящий момент представляю, это отношения не имеет».
Итак, назначение алгоритмов Брезенхема — нарисовать линию на растровом устройстве, как правило, на мониторе. Как можно видеть на рисунке 1, не все пиксели, входящие в изображение линии, лежат на этой линии, то есть задача алгоритма — найти наиболее близкие пиксели. Главное достоинство алгоритма Брезенхема в том, что в нём не используется в цикле дорогостоящая операция умножения. Алгоритм подходит для прямых или кривых второго порядка*. Существуют модификации алгоритма для четырёхсвязной (т.е. соседними считаются точки, отличающиеся на 1 по одной координате) и восьмисвязной (т.е. соседними считаются точки, обе координаты которых отличаются не больше, чем на 1) линий. Здесь приведён второй вариант — более сложный, но и дающий лучший результат.
Основная идея алгоритма в том, что линия, которую надо нарисовать, делит плоскость на две части. Уравнение кривой записывается в виде Z = f (x,y) . Во всех точках кривой Z = 0 , в точках, лежащих над кривой Z > 0 , а в точках под кривой Z < 0 . Нам известны координаты начала отрезка, то есть точки, заведомо лежащей на искомой кривой. Ставим туда первый пиксель и принимаем Z = 0 . От текущего пикселя можно сделать два шага — либо по вертикали (по горизонтали), либо по диагонали на один пиксель. Конкретные направления шагов выбираются в зависимости от типа линии, которую надо нарисовать. Делая шаг, мы мы вычисляем, как изменятся значение Z:
ΔZ = Z" x Δx + Z" y Δy
При одном из возможных шагов Z растёт, при другом — уменьшается. Каждый шаг выбирается с тем расчётом, чтобы значение Z для нового пикселя было как можно ближе к 0. Таким образом, мы будем двигаться вдоль линии, создавая её изображение.
Сразу договоримся, что алгоритм для прямой не рисует горизонтальные и вертикальные линии. Это связано с тем, что рисование таких линий можно реализовать гораздо более простым способом, часто на уровне BIOS или драйвера.
Оставшиеся отрезки делятся на две группы: горизонтальные и вертикальные. Если представить уравнение прямой в виде y = kx , то горизонтальными считаются отрезки, у которых |k| ≤ 1 , а вертикальными — у которых |k| > 1 . Отнеся отрезок к одной из групп, мы можем поменять местами координаты концов так, чтобы горизонтальные отрезки всегда рисовались слева направо, а вертикальные — сверху вниз.
Для горизонтальных отрезков каждый новый пиксель будет правее предыдущего на 1, при этом он может также быть выше (ниже), т.е. возможны два шага — вправо и вправо-по диагонали. Для вертикальных отрезков возможные шаги — вниз и вниз-по диагонали.
Если координаты концов отрезка (x 1 ,y 1) и (x 2 ,y 2) соответственно, то при каждом шаге по оси x Z изменяется на 1, а по оси y — на (x 2 -x 1)/(y 2 -y 1) . Чтобы не связываться с делением и остаться в пределах целочисленной арифметики, переменную Z будем изменять соответственно на y2-y1 и x2-x1 . Вот, собственно, и вся математика, остальное можно понять из кода.
Алгоритм рисования дуги останется за рамками статьи, а вот алгоритм для рисования окружности получился значительно проще, чем для прямой. Связано это со многими причинами.
Во-первых, мы рисуем только одну восьмую часть окружности — от π/2 до π/4 , причём в обратном направлении, то есть по часовой стрелке. Вся остальная окружность получается путём отражения этой части относительно центра окружности, горизонтальной и вертикальной осей, а также прямых y = x + b и y = -x + b , проходящих через центр окружности.
Во-вторых из-за симметрии отклонения линии от окружности не так заметны, как отклонения от прямой, поэтому Z можно сравнивать с нулём, не вычисляя максимально допустимого отклонения.
Допустимые шаги — вправо и вправо-по диагонали, а изменение Z зависит от значений x и y , но зависимость линейная, поэтому операция умножения не требуется.
Вот, собственно, и всё. Ниже вы найдёте скрипт, демонстрирующий работу описанных алгоритмов, а для того, чтобы понять, как он работает, просто посмотрите исходный текст страницы.
Удачи!
Если хотите увидеть демонстрацию работы алгоритмов в окне броузера, включите JavaScript!
|
Алгоритм Брезенхема был предложен Джеком Е. Брезенхэмом (Jack E. Bresenham) в 1962 году и предназначен для рисования фигур точками на плоскости. Этот алгоритм находит широкое распространение в машинной графике для рисования линий на экране. Алгоритм определяет, какие точки двумерного растра необходимо закрасить.
Графическая интерпретация алгоритма Брезенхема представлена на рисунке.
Для рисования прямых отрезков на плоскости с использованием алгоритма Брезенхема запишем уравнение прямой в общем виде
f(x,y)=Ax+By+C=0
где коэффициенты A и B выражаются через коэффициенты k и b уравнения прямой. Если прямая проходит через две точки с координатами (x1 ;y1 ) и (x2 ;y2 ) , то коэффициенты уравнения прямой определяются по формулам
A=y2-y1
B=x1-x2
C=y1∙x2-y2∙x1
Для любой растровой точки с координатами (xi ;yi ) значение функция
Таким образом, одним из методов решения того, какая из точек P
или Q
(см. рисунок) будет отображена на следующем шаге, является сравнение середины отрезка |P-Q|
со значением функции f(x,y)
. Если значение f(x,y)
лежит ниже средней точки отрезка |P-Q|
, то следующей отображаемой точкой будет точка P
, иначе - точка Q
.
Запишем приращение функции
∆f=A∆x+B∆y
После отображения точки с координатами (xi,yi) принимается решение о следующей отображаемой точке. Для этого сравниваются приращения Δx и Δy , характеризующие наличие или отсутствие перемещения по соответствующей координате. Эти приращения могут принимать значения 0 или 1. Следовательно, когда мы перемещаемся от точки вправо,
когда мы перемещаемся от точки вправо и вниз, то
∆f=A+B ,
когда мы перемещаемся от точки вниз, то
Нам известны координаты начала отрезка, то есть точки, заведомо лежащей на искомой прямой. Ставим туда первую точку и принимаем f
= 0
. От текущей точки можно сделать два шага - либо по вертикали (по горизонтали), либо по диагонали на один пиксель.
Направление движения по вертикали или горизонтали определяется коэффициентом угла наклона. В случае если угол наклона меньше 45º, и
|A|<|B|
с каждым шагом осуществляется движение по горизонтали или диагонали.
Если угол наклона больше 45º, с каждым шагом движение осуществляется вертикали или диагонали.
Таким образом, алгоритм рисования наклонного отрезка следующий:
Реализация на C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#include
using
namespace
std;
void
Brezenhem(char
**z, int
x0, int
y0, int
x1, int
y1)
{
int
A, B, sign;
A = y1 - y0;
B = x0 - x1;
if
(abs(A) > abs(B)) sign = 1;
else
sign = -1;
int
signa, signb;
if
(A < 0) signa = -1;
else
signa = 1;
if
(B < 0) signb = -1;
else
signb = 1;
int
f = 0;
z = "*"
;
int
x = x0, y = y0;
if
(sign == -1)
{
do
{
f += A*signa;
if
(f > 0)
{
f -= B*signb;
y += signa;
}
x -= signb;
z[y][x] = "*"
;
}
else
{
do
{
f += B*signb;
if
(f > 0) {
f -= A*signa;
x -= signb;
}
y += signa;
z[y][x] = "*"
;
} while
(x != x1 || y != y1);
}
}
int
main()
{
const
int
SIZE = 25; // размер поля
int
x1, x2, y1, y2;
char
**z;
z = new
char
*;
for
(int
i = 0; i < SIZE; i++)
{
z[i] = new
char
;
for
(int
j = 0; j < SIZE; j++)
z[i][j] = "-"
;
}
cout <<
"x1 = "
; cin >>
x1;
cout <<
"y1 = "
; cin >>
y1;
cout <<
"x2 = "
; cin >>
x2;
cout <<
"y2 = "
; cin >>
y2;
Brezenhem(z, x1, y1, x2, y2);
for
(int
i = 0; i < SIZE; i++)
{
for
(int
j = 0; j < SIZE; j++)
cout <<
z[i][j];
cout <<
endl;
}
cin.get(); cin.get();
return
0;
}
Алгоритм Брезенхема также может применяться в задачах управления, например, для регулирования мощности или скорости вращения. При этом горизонтальной осью является ось времени, а заданное значение устанавливает коэффициент угла наклона прямой.
Если пространство недискретно, то почему Ахиллес обгоняет черепаху? Если же пространство дискретно, то как частицы реализуют алгоритм Брезенхема?
Я давно задумываюсь над тем, что собою представляет Вселенная в целом и законы её работы в частности. Порою описания некоторых физических явлений на той же Википедии достаточно запутаны, чтобы оставаться непонятными даже для человека, который не шибко далёк от данной области. Тем более не повезло мне подобным - тем, кто от этой области по крайней мере был весьма далёк. Однако, с несколько другой плоскостью - алгоритмами, я, будучи программистом, сталкиваюсь почти ежедневно. И однажды, в процессе реализации некоего подобия 2d-физики в консоли, я подумал: «А ведь Вселенная - это по сути такая же консоль неизвестной размерности. Есть ли причины думать, что для линейного движения на, так сказать, экране этой консоли, частицы не должны реализовывать алгоритм Брезенхема?». И кажется, причин нет.
Всех, кому интересно, что вообще такое алгоритм Брезенхема, как он может быть связан с физикой и как это может повлиять на её интерпретацию - добро пожаловать под кат. Возможно, Вы найдёте там косвенное подтверждение существования параллельных Вселенных. Или даже вложенных друг в друга Вселенных.
F(x) = 0
и
F(x) = x
А теперь представим, что отрезок необходимо повернуть ещё на 10 градусов, например. Тогда мы получим классическую однородную линейную функцию:
F(x) = x * tan(55)
И нарисовать график этой функции обычной ручкой на обычном листке не составит труда для любого ученика 7 класса. Однако что делать в случае с нашим предполагаемым листком бумаги, который дискретен по клеткам? Ведь тогда возникает необходимость выбирать, какие именно клетки закрашивать при рисовании линии. Тут нам на помощь и приходит алгоритм Брезенхема.
Сей аглоритм был разработан Джеком Брезенхемом в 1962 году, когда тот работал в IBM. Он до сих пор используется для реализации виртуальной графики во многих прикладных и системных комплексах, начиная с оборудования на производстве и заканчивая OpenGL. Используя этот алгоритм, можно рассчитать максимально подходящее приближение для заданной прямой при заданном уровне дискретности плоскости, на которой эта прямая располагается.
Реализация на Javascript для общего случая
var draw = (x, y) => { ... }; // функция для рисования точки
var bresenham = (xs, ys) => {
// xs, ys - массивы и соответственно
let deltaX = xs - xs,
deltaY = ys - ys,
error = 0,
deltaError = deltaY,
y = ys;
for (let x = xs; x <= xs; x++) {
draw(x, y);
error += deltaError;
if ((2 * error) >= deltaX) {
y -= 1;
error -= deltaX;
};
};
};
Ещё одним косвенным подтверждением дискретности пространства может служить суждение, исходящее из вышеописанного: если при определённом уменьшении масштабов наблюдаемого, сие теряет способность быть описанным с помощью евклидовой геометрии, то очевидно, что при преодолении минимального порога расстояния метод геометрического описания субъекта всё равно должен быть. Пусть в такой геометрии одной параллельной прямой может соответствовать более одной другой прямой, проходящей через точку, не принадлежащую исходной прямой, или в такой геометрии вообще нет понятия параллельности прямых или даже вовсе понятия прямых, однако имеет место быть любой, гипотетически представляемый метод описания геометрии объекта меньше минимальной длины. И, как известно, есть одна теория, претендующая на способность описать такую геометрию в пределах известного минимального порога. Это теория струн. Она предполагает существование чего-то , что учёные зовут струнами или бранами, сразу в 10/11/26 измерениях в зависимости от интерпретации и математической модели. Мне лично кажется, что примерно так всё и обстоит и для обоснования своих слов я проведу с Вами мысленный эксперимент: на двумерной плоскости при полной «евклидности» её геометрии работает уже упоминавшееся правило: через одну точку можно провести только одну прямую, параллельную данной. Теперь масштабируем это правило на трёхмерное пространство и получим два из него вытекающих новых правила:
Иначе говоря, или Ахиллес никогда не догонит черепаху, или мы в Матрице вся обозримая Вселенная и известная физика, скорей всего - лишь капля в огромном океане возможного разнообразия реальности.
Планшетные компьютеры (они же планшеты) можно разделить на 2 группы. Первая группа - планшеты на операционной системе Андроид, на которые приходится 65% мирового рынка планшетов. Как правило, они среднего размера (от 7 до 10 дюймов) и призваны выполнять функции, которые реализованы и на смартфонах, но на планшетах это делать гораздо удобнее. Имеется в виду чтение электронных книг, просмотр видео и фильмов, игры. Вторая группа - планшеты, как правило, на операционных системах Windows 10 (доля в мире 9%) и iOS (доля в мире 26%), которые поддерживают клавиатуру и могут стать достойными конкурентами ноутбуков, т.к. на таких планшетах можно полноценно работать в том числе и за счет большого экрана (у подобных планшетов экран может быть 12 дюймов и даже более). Есть большие планшеты с клавиатурой и на Андроиде, однако по функционалу они несколько уступают планшетам на Windows 10 и iOS.
Исходя из вышесказанного, определить однозначно лучший планшет сложно, ведь для тех, кому нужен планшет для чтения электронных книг и просмотра фильмов, не подойдет 12-дюймовая модель, да и клавиатура будет ни к чему. Планшет на Андроиде будет удобен тому, у кого смартфон также на Андроиде, т.к. обмен данными между устройствами будет проще, к тому не придется привыкать к новой операционной системе. Для поклонников больших экранов 7-дюймовый Андроид-планшет может с успехом заменить смартфон, если будет поддерживать сим-карты, 3G и LTE. Тем же, кто ищет планшет как более легкую и компактную замену ноутбуку, Андроид-планшет средних размеров покажется лишь игрушкой.
В нашем рейтинге самых лучших планшетов на 2016 год представлены все виды планшетов: от планшетофонов до конкурентов ноутбуков, при этом преимущество отдано последним за счет большего функционала. При составлении рейтинга учитывались отзывы в Яндекс-Маркете, обзоры различных моделей, технические характеристики, соотношение цена-качество. В топ-10 вошли модели всех лидеров по продажам планшетов в мире, за исключением Amazon, т.к. эта компания не представлена на российском рынке.
Средняя цена - 7 370 рублей. Планшет от российского производителя получил 82% пятерок по отзывам в Яндекс-Маркете. Технические характеристики: операционная система Android 5.1, процессор Intel Atom x3 C3230 1200 МГц, 4 ядра, 8 гб встроенной и 1 гб оперативной памяти, есть слот для карт памяти до 32 гб, глянцевый экран 10,1 дюйма разрешением 1024x600, поддержка Wi-Fi, 2 сим-карты, 3G, камера 2 мп, фронтальная камера 0,3 мп, вес 630 г.
9 место
Средняя цена - 6 850 рублей. Модель осени 2016 года от немецкого производителя получила 75% пятерок по отзывам в Яндекс-Маркете . Технические характеристики: операционная система Android 5.1, процессор MediaTek MT8321 1300 МГц, 4 ядра, 8 гб встроенной и 1 гб оперативной памяти, есть слот для карт памяти до 32 гб, глянцевый TFT IPS экран 7 дюймов разрешением 1280x800, поддержка Wi-Fi, 2 сим-карты, 3G, камера 2 мп, фронтальная камера 0,3 мп, время автономной работы 4 часа, вес 210 г.
8 место
Средняя цена - 5 990 рублей. Бюджетная модель от российского производителя получила 75% пятерок по отзывам в Яндекс-Маркете. Технические характеристики: операционная система Android 5.1, процессор MediaTek MT8321 1200 МГц, 4 ядра, 8 гб встроенной и 1 гб оперативной памяти, есть слот для карт памяти до 32 гб, экран 9 дюймов разрешением 1024x600, поддержка Wi-Fi, две сим-карты, 3G, камера 2 мп, фронтальная камера 0,3 мп, время автономной работы 4 часа, вес 525 г. Эта модель представляет собой лучшее соотношение "цена-качество" для тех, кому нужен планшет с большим экраном.
Средняя цена - 16 740 рублей. Эта модель от второго по величине китайского производителя планшетов получила очень хорошие отзывы в Яндекс-Маркете - 90% пятерок. Технические характеристики: операционная система Android, процессор MediaTek MT8389 1200 МГц, 4 ядра, 32 гб встроенной и 1 гб оперативной памяти, есть слот для карт памяти до 64 гб, глянцевый TFT IPS экран 8 дюймов разрешением 1280x800, поддержка Wi-Fi, 3G, камера 5 мп, фронтальная камера 1,6 мп, время автономной работы 16 часов, вес 401 г.
6 место.
Средняя цена - 18 000 рублей. Данная модель от тайваньского производителя, появившаяся в продаже в августе 2016 года, получила 76% пятерок по отзывам в Яндекс-Маркете. Это лучший показатель в каталоге планшетов этого производителя. Технические характеристики: операционная система Android, процессор Qualcomm Snapdragon 650 MSM8956 1800 МГц, 8 ядер, 16 гб встроенной и 2 гб оперативной памяти, есть слот для карт памяти до 128 гб, глянцевый TFT экран 8 дюймов разрешением 2048x1536, поддержка Wi-Fi, сим-карты, 3G, LTE, камера 8 мп, фронтальная камера 2 мп, время автономной работы 11 часов, вес 320 г.
Средняя цена - 31 400 рублей. Флагман от второго по продажам производителя планшетов в мире получил 67% пятерок по отзывам в Яндекс-Маркете. Технические характеристики: операционная система Android, процессор Samsung Exynos 5433 1900 МГц, 8 ядер, 32 гб встроенной и 3 гб оперативной памяти, есть слот для карт памяти до 128 гб, глянцевый Super AMOLED Plus экран 8 дюймов разрешением 2048x1536, поддержка Wi-Fi, камера 8 мп, фронтальная камера 2,1 мп, время автономной работы в режиме просмотра видео 14 часов, вес 265 г. Есть сканер отпечатка пальца.
Портал 4PDA в обзоре данной модели пишет: "Даже если быть максимально придирчивым, трудно не признать, что планшет у Samsung получился практически идеальным. Конечно, камера в нём не такая хорошая, как во флагманских смартфонах компании (и всё равно остаётся одной из лучших среди планшетов), да и отсутствие NFC удивляет. Но всё остальное у устройства на высоте. В качестве наиболее впечатляющей фишки отметим дисплей, позволяющий без проблем пользоваться устройством даже под солнечными лучами. Что касается производительности, то о её нехватке можно не беспокоиться, как минимум ближайший год. И, в целом, начинка планшета останется актуальной ещё не менее 2–3 лет".
Средняя цена в России - 38 690 рублей. Купить Huawei MediaPad M2 10.0 LTE 64Gb на AliExpress можно за 21,8 тыс. рублей (доставка в Россию бесплатна). Модель от крупнейшего китайского производителя планшетов, появившаяся в 2016 году, получила 85% пятерок по отзывам в Яндекс-Маркете. Технические характеристики: операционная система Android, процессор HiSilicon Kirin 930 2000 МГц, 8 ядер, 64 гб встроенной и 3 гб оперативной памяти, есть слот для карт памяти, глянцевый TFT IPS экран 10,1 дюйма разрешением 1920x1200, поддержка Wi-Fi, сим-карты, 3G, LTE, поддержка стилуса, сенсор отпечатка пальца, камера 13 мп, фронтальная камера 5 мп, вес 500 г.
Портал 4PDA в обзоре данной модели пишет: "Новинка от Huawei - редкий пример «достойного» во всех смыслах планшета под управлением ОС Android. На устройстве можно с большим комфортом играть, смотреть фильмы, рисовать, обрабатывать фото и видео, работать с документами и таблицами, читать без зумирования PDF-журналы и книги со сложной вёрсткой, а также выполнять множество других задач. Аппарат отличается высоким качеством сборки и материалов, превосходным дисплеем, мощными и хорошо звучащими динамиками и предлагает длительное время автономной работы. Устройство несомненно подойдёт как требовательным домашним пользователям, так и профессионалам в качестве надежного рабочего инструмента".
Средняя цена - 70 990 рублей. Данная модель последнего поколения от ведущего мирового производителя планшетов (см. ) набрала 89% пятерок по отзывам в Яндекс-Маркете. Технические характеристики: операционная система iOS, процессор Apple A9X, 2 ядра, 128 гб встроенной и 4 гб оперативной памяти, без слота для карты памяти, огромный TFT IPS глянцевый экран 12.9 дюйма разрешением 2732x2048, поддержка Wi-Fi, сим-карты, 3G, LTE, камера 8 мп, фронтальная камера 1,2 мп. iPad Pro 12.9 поддерживает возможность работы с клавиатурой, что позволяет превратить данный планшет в ноутбук. Также поддерживает стилус Apple Pencil. Вес 723 г.
Вот что пишет о данном модельном ряде компания Apple на своем официальном сайте: "iPad Pro - это не просто следующее поколение iPad. По большому счёту, это новая концепция персонального компьютера для современного мира. По своей производительности он превосходит большинство портативных PC, а самые сложные задачи на iPad Pro решаются легко и естественно: прикосновениями, жестами и штрихами карандаша Apple Pencil. У 12,9-дюймового дисплея iPad Pro самое высокое разрешение среди всех устройств iOS. Процессор A9X с 64-битной архитектурой позволяет iPad Pro без труда справляться с задачами, для которых раньше требовалась мощность рабочей станции или PC. Не говоря уже о тех, для которых PC просто не предназначен. A9X обеспечивает не только впечатляющую мощь, но и эффективную работу аккумулятора до 10 часов".
Как мы видим, характеристики Apple iPad Pro 12.9 128Gb просто превосходны, за исключением разве что не самых современных основной и фронтальной камеры. Для тех, кто планирует использовать планшет для игр, просмотра фильмов, для работы, Apple iPad Pro 12.9 станет самым лучшим решением, хотя из-за высокой цены данная модель не каждому по карману.
Средняя цена - 56 290 руб. Еще один представитель семейства iPad Pro появился в продаже весной 2016 года и набрал на сегодня 75% пятерок по отзывам в Яндекс-Маркете. Технические характеристики не могут не впечатлять: операционная система iOS, процессор Apple A9X, 2 ядра, 128 гб встроенной и 2 гб оперативной памяти, без слота для карты памяти, TFT IPS глянцевый экран 9,7 дюйма разрешением 2048x1536, поддержка Wi-Fi, сим-карты, 3G, LTE, камера 12 мп, фронтальная камера 5 мп. iPad Pro 12.9 поддерживает возможность работы с клавиатурой, что позволяет превратить данный планшет в ноутбук. Также поддерживает стилус Apple Pencil. Вес 444 г.
В описании данной модели на официальном сайте Apple сказано: "Дисплей 9,7-дюймового iPad Pro работает в том же цветовом пространстве, что применяется в индустрии цифрового кино. С расширенным цветовым диапазоном насыщенность красок на iPad Pro до 25% выше, чем у предыдущих моделей iPad. Поэтому цвета выглядят более живыми, яркими и естественными. Новый 9,7-дюймовый iPad Pro оснащён дисплеем True Tone. В нём используются четырёхканальные датчики освещённости, которые автоматически подстраивают цвета дисплея под окружающее освещение. Благодаря этому чтение становится более комфортным занятием, сравнимым с чтением обычной книги".
Если сравнивать эту модель с iPad Pro 12.9, то видим меньше (но вполне достаточно) оперативной памяти, лучшие по качеству камеры, а также меньшие размеры и вес. Для большинства пользователей планшетов последние два пункта скорее плюс, чем минус, т.к. такой планшет проще носить с собой, с него удобнее читать электронные книги. Не стоит забывать и про цену почти на 15 тысяч рублей меньше, чем у модели iPad Pro 12.9. Поэтому модель iPad Pro 9.7 находится выше в нашем рейтинге.
Средняя цена - 51 290 рублей. Этот планшет получил 75% пятерок по отзывам в Яндекс-Маркете. Технические характеристики: операционная система Windows 10, 4 гб оперативной памяти и целых 128 гб встроенной памяти, для тех, кому 128 гб мало, есть слот для карт памяти, очень большой экран 12.3 дюйма разрешением 2736x1824, поддержка Wi-Fi, основная камера 8 мп, фронтальная 5 мп. Surface Pro 4 поддерживает возможность работы с клавиатурой, что позволяет превратить данный планшет в ноутбук. Также поддерживает стилус. Вес 786 г.
Из отзывов: "Он хорош во всем! Легкий, тонкий, шикарный дисплей, мощный, тихий, супер клавиатура которую всегда можно отбросить, полноценная Win 10, очень красивый. Очень долго выбирал! Смотрел Acer switch 12, Yoga 3 Pro, Yoga 3 11, Surface pro 3. По ощущениям с другими устройствами просто не сравнится".
Обзор планшета с двумя операционными системами
22.09.2016
Основные характеристики Teclast X98 Plus II
Ультракитайский планшет с двумя операционными системами на борту, да ещё и с экраном сверхвысокого разрешения.
Честно говоря, были опасения. Но нет. До идеала, конечно, как от полюса до экватора. И характерные уши торчат изо всех щелей. Тем не менее, устройство получилось вполне годным и рабочим. Мощности железа хватает. Памяти много (особенно оперативки). Экран довольно скромный и "несовременный", но действительно с высоким разрешением. Батарейка так себе. Про камеры лучше не вспоминать. GPS нет.
С игрушками (я тестировал только андроидные) проблем особых нет. Железо хорошо справляется со всем. Ну, разве что интерфейс в восьмом Асфальте не слишком гладко работает. Другой вопрос, что бандура таких размеров подойдёт далеко не для всякой игры. В FIFA или RiptideGP2 играть тупо неудобно - далеко тянуться до нужных участков экрана.