powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
16 сообщений из 16, страница 1 из 1
Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
    #38811586
discrecity
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день, уважаемое сообщество.
Вообщем, помогите, пожалуйста, хотя бы сформулировать запрос для Гугла...
Мозг уже сломал.

Суть вопроса:

Вот есть у нас, например, система координат монитора. Она дискретная, так...

Для простоты рассмотрим только одну ось этой система координат - ось X.

Предположим на этой оси я задал отрезок AB, с координатами (0, 2).
Т.е. точка A имеет координату X = 0, а точка B имеет координату X = 2.
Длинна отрезка AB равна 3 пикселям: пиксель0, пиксель1 и пиксель2.

Теперь увеличу масштаб отрезка AB в 2 раза: промасштабирую точки А и B.
Ожидаю, что длинна нового отрезка A'B' тоже увеличиться в 2 раза, т.е. будет равен 6-ти пикселям. Вот тут то и трабл...
- точка A' имеет координату A*2 = 0*2 = 0;
- точка B' имеет координату B*2 = 2*2 = 4;
отсюда видно, что длинна нового отрезка A'B' = 5 пикселей: пиксель0, пиксель1, пиксель2, пиксель3 и пиксель4.

Где мои рассуждения неверны?
...
Рейтинг: 0 / 0
Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
    #38811630
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так считать надо
Код: sql
1.
Xb - Xa + 1
...
Рейтинг: 0 / 0
Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
    #38811653
discrecity
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dima TТак считать надо
Код: sql
1.
Xb - Xa + 1



Так и считаю:

Длинна AB = 2 - 0 + 1 = 3;
Длинна A'B' = 4 - 0 + 1 = 5;

И вот где проблема: 5 <> (3 * 2)...
...
Рейтинг: 0 / 0
Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
    #38811661
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
discrecity,

ты считаешь расстояние между центрами пикселей и добавляешь единичку
5= 2*2+1
...
Рейтинг: 0 / 0
Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
    #38811673
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
discrecityТеперь увеличу масштаб отрезка AB в 2 раза: промасштабирую точки А и B.
...
Где мои рассуждения неверны?Ноль не масштабируется - это начало отсчёта.
Если хотите удвоить размер (длину) отрезка - удвойте и рассчитайте новые координаты.
...
Рейтинг: 0 / 0
Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
    #38811704
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
discrecityИ вот где проблема: 5 <> (3 * 2)...
4 + 1 = 2 * 2 + 1

Ты строишь отрезок длиной 2 (два) пикселя , но т.к. его края попадают на центры пикселей, и пиксель неделим, то получается 3 пикселя:

Код: plaintext
1.
2.
 |-----|  Отрезок 2
[0][1][2] Пикселей 3

Понял?
...
Рейтинг: 0 / 0
Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
    #38811717
discrecity
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dima T4 + 1 = 2 * 2 + 1

Ты строишь отрезок длиной 2 (два) пикселя , но т.к. его края попадают на центры пикселей, и пиксель неделим, то получается 3 пикселя:

Код: plaintext
1.
2.
 |-----|  Отрезок 2
[0][1][2] Пикселей 3

Понял?

Да, спасибо большое, Dima T, наводит на мысли...
Но, пока не пойму как это использовать... нужно подумать...
...
Рейтинг: 0 / 0
Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
    #38811730
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
discrecityНо, пока не пойму как это использовать... нужно подумать...
Если AB = 3, то AB*2 = (3-1)*2 + 1 = 5
...
Рейтинг: 0 / 0
Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
    #38815943
discrecity
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dima TdiscrecityНо, пока не пойму как это использовать... нужно подумать...
Если AB = 3, то AB*2 = (3-1)*2 + 1 = 5

И что? Масштабирование длинны отрезка и масштабирование его концов (точек) не есть одно и тоже?
...
Рейтинг: 0 / 0
Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
    #38815971
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Масштабирование длины отрезка и масштабирование его концов (точек) не есть одно и тоже.
...
Рейтинг: 0 / 0
Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
    #38816092
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
discrecityВот есть у нас, например, система координат монитора. Она дискретная, так...


Есть разные мониторы, так что она НЕ дискретная.
Даже если забыть о аппаратных плоттерах и векторных мониторах, работу
монитора в режиме OpenGL или DirectX (естественно, не только монитора, а всей подсистемы граф. вывода на экран) вряд ли можно назвать дискретной.
...
Рейтинг: 0 / 0
Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
    #38816099
Barlone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
discrecityДобрый день, уважаемое сообщество.
Вообщем, помогите, пожалуйста, хотя бы сформулировать запрос для Гугла...
Мозг уже сломал.

Суть вопроса:

Вот есть у нас, например, система координат монитора. Она дискретная, так...

Для простоты рассмотрим только одну ось этой система координат - ось X.

Предположим на этой оси я задал отрезок AB, с координатами (0, 2).
Т.е. точка A имеет координату X = 0, а точка B имеет координату X = 2.
Длинна отрезка AB равна 3 пикселям: пиксель0, пиксель1 и пиксель2.

Теперь увеличу масштаб отрезка AB в 2 раза: промасштабирую точки А и B.
Ожидаю, что длинна нового отрезка A'B' тоже увеличиться в 2 раза, т.е. будет равен 6-ти пикселям. Вот тут то и трабл...
- точка A' имеет координату A*2 = 0*2 = 0;
- точка B' имеет координату B*2 = 2*2 = 4;
отсюда видно, что длинна нового отрезка A'B' = 5 пикселей: пиксель0, пиксель1, пиксель2, пиксель3 и пиксель4.

Где мои рассуждения неверны?Надо рассматривать исходный отрезок как-то так: [0, 3) то есть с 0 (включая левую точку) до 3 (не включая правую точку). Тогда все хорошо масштабируется: удваиваем - [0, 6), утраиваем - [0, 9).
...
Рейтинг: 0 / 0
Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
    #38816171
discrecity
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Barlone...Надо рассматривать исходный отрезок как-то так: [0, 3) то есть с 0 (включая левую точку) до 3 (не включая правую точку). Тогда все хорошо масштабируется: удваиваем - [0, 6), утраиваем - [0, 9).

Хорошо. Я тоже пришел к такому выводу. Только как это выразить в коде?
Например:
Код: pascal
1.
[0; 3) ~ 0; 2 + (1 - eps)



А что такое eps ? Как его посчитать?
...
Рейтинг: 0 / 0
Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
    #38816537
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
discrecity, не нужен тебе никакой eps для данной задачи.

Для проверок используешь >= (больше либо равно) и < (строго меньше).
...
Рейтинг: 0 / 0
Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
    #38817446
Фотография S.G.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytondiscrecity, не нужен тебе никакой eps для данной задачи.
а какая у него задача? ;)
Мне кажется, то что выложено не сама задача, а свое видение решения некоторой подзадачи.

А векторная графика именно для этого и придумана - легко масштабировать и вообще делать преобразования геометрических фигур.
...
Рейтинг: 0 / 0
Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
    #38817448
Фотография S.G.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а.
я не прочитал до конца. тут другой eps, а не формат пост-скрипт :)
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Пиксель. Дискретность. Масштаб. Проблема длинны. "N-1"
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]