Страница 1 из 1

Нормализация векторных данных

Добавлено: 24 авг 2009, 10:36
believer
Добрый день!
Как при растеризации векторных данных сделать преобразования аффинными?

Re: Растеризация

Добавлено: 24 авг 2009, 17:14
believer
Как при растеризации векторных данных сделать преобразования аффинными?
Возможно ли это с учетом заданной погрешности преобразования?

Re: Растеризация

Добавлено: 24 авг 2009, 17:48
Максим Дубинин
Аффинное преобразование используется для перехода от одной систем координат к другой.
Растеризация - процесс перевод одного типа формата в другой.
Непонятно, каким образом у вас складываются эти два понятия? Поясните вопрос.

Re: Растеризация

Добавлено: 24 авг 2009, 18:01
believer
sim писал(а):Аффинное преобразование используется для перехода от одной систем координат к другой.
Растеризация - процесс перевод одного типа формата в другой.
Непонятно, каким образом у вас складываются эти два понятия? Поясните вопрос.
По сути, я хочу представить векторные данные таким образом, чтобы координаты узлов векторных объектов были привязаны к сетке с фиксированным шагом. Получается так называемая псевдовекторная модель хранения данных. Только вот боюсь, что аффинность преобразований будет не сохранена. Как считаете друг?

Re: Растеризация

Добавлено: 26 авг 2009, 10:00
dart
believer писал(а):
sim писал(а):Аффинное преобразование используется для перехода от одной систем координат к другой.
Растеризация - процесс перевод одного типа формата в другой.
Непонятно, каким образом у вас складываются эти два понятия? Поясните вопрос.
По сути, я хочу представить векторные данные таким образом, чтобы координаты узлов векторных объектов были привязаны к сетке с фиксированным шагом. Получается так называемая псевдовекторная модель хранения данных. Только вот боюсь, что аффинность преобразований будет не сохранена. Как считаете друг?
Считаем, что то что вы называете "координаты узлов векторных объектов были привязаны к сетке с фиксированным шагом" можно трактовать как банальный термин "точность координат". К примеру, если у вас точность нанесения объектов 10 см, то можно перефразируя сказать, что вершины привязаны к узлам сетке 10на10 см. А так еще немного каша в голове, ИМХО

Re: Растеризация

Добавлено: 26 авг 2009, 10:23
believer
dart писал(а):Считаем, что то что вы называете "координаты узлов векторных объектов были привязаны к сетке с фиксированным шагом" можно трактовать как банальный термин "точность координат".
Это и так понятно друг, тему не удачно назвал, согласен. Модератору можно поменять мою тему на: Нормализация векторных данных.

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

Re: Растеризация

Добавлено: 26 авг 2009, 10:45
Максим Дубинин
тему можно самому поменять

мне кажется тут смешение понятий некоторое, если нужно соблюдение прямоугольности углов, то это совсем другое дело, не надо заставлять все аффинно преобразовывать. В целом, надо сначала привязывать растр, а потом векторизовать, а не наоборот.

Re: Нормализация векторных данных

Добавлено: 26 авг 2009, 11:22
believer
надо сначала привязывать растр
Привязали.
потом векторизовать
Векторизовали.

А вот потом полученные векторные данные необходимо округлить (нормализовать). При этом после нормализации параллельные линии должны перейти в параллельные, пересекающиеся прямые перейти в пересекающиеся и т.д. (свойства аффинности). Это возможно? Если да, то как?

Re: Нормализация векторных данных

Добавлено: 26 авг 2009, 18:53
Максим Дубинин
аффинное преобразование это не нормализация, две не параллельные линии в параллельные не переведет, они так и останутся непараллельными, оно сохраняет углы. Векторизовать надо сразу правильно. Смысл тогда привязки, если вы потом собираетесь еще линии спараллеливать.

Re: Нормализация векторных данных

Добавлено: 28 авг 2009, 10:10
believer
sim писал(а):аффинное преобразование это не нормализация, две не параллельные линии в параллельные не переведет, они так и останутся непараллельными, оно сохраняет углы. Векторизовать надо сразу правильно. Смысл тогда привязки, если вы потом собираетесь еще линии спараллеливать.
Согласен друг. А как можно векторизовать объекты растра с привязкой к узлам сетки с конкретным шагом? Какие инструментальные средства использовать? Я вот не нашел готовых ПО под это дело, даже векторизатор RxSpotlight 8 не справляется без дополнительных скриптов.

Re: Нормализация векторных данных

Добавлено: 02 окт 2009, 14:36
Olga_@@@
В AutoCAD 2010, дополнительно к прежним способам привязки, появилась возможность нормализовать графику с помощью наложения условий на графические примитивы. И в этих условиях может быть, то что вам надо - перпендикулятность, параллельность и т.п. Но, афинные преобразования тут ни при чем.

А, если вы навекторизировались по кривому растру, то можно попытаться исправить ошибку средствами AutoCAD Map3D (версия любая) или Civil. Там есть в меню Map > Tools есть команда Rubber Sheet. Вот она тянет и векторную графику и растры. Векторную графику можно выделить рамкой (сразу все объекты) и тянуть в разные стороны по точкам. Вроде бы, там как раз афинные преобразования используются.

Re: Нормализация векторных данных

Добавлено: 05 окт 2009, 13:39
JEY
Добавлю от себя по теме AutoCAD 2010. Там была и остается команда ВЫРОВНЯТЬ или ALIGN, которая выполняет трансформацию выбранных объектов на чертеже по четырем точкам.