Настройки округления в Digitals для совместимости площади и периметра с In4 и XMLПроблема с разницей площадей участков в
Digitals и в
XML/In4 обычно возникает из-за разной точности координат, используемых при вычислении площади и периметра.
Дело в том, что
Digitals хранит координаты объектов карты с максимально возможной точностью – 10 и более знаков после запятой. Такая точность необходима для того, чтобы не происходило накопления погрешности при пересчете координат из одной системы координат в другую и других преобразованиях.
Точность координат, записываемых в кадастровый обменный файл (In4), ограничена двумя знаками, а в XML обычно тремя. Таким образом, координаты при записи в In4 всегда округляются до сантиметров и площадь, рассчитанная по таким координатам, будет иметь некоторое отличие от площади, вычисленной по исходным неокругленным координатам.
Рекомендуемые настройкиДля решения этой проблемы в Digitals служит настройка
Точность площади и периметра в меню
Сервис|Настройки|Вид. Рекомендуемое значение обоих настроек для
XML - 3 или 4 знака, а для
In4 – 2 знака, для того, чтобы площадь и периметр в DMF и в In4 не имели отличий:
Данная настройка сохраняет максимальную точность при хранении координат в
Digitals однако искусственно (на лету) округляет их до сантиметров при каждом вычислении площади. При вычислении периметра округление выполняется дважды: для каждой линии участка, сначала округляются координаты ее начальной и конечно точек, а затем округляется вычисленная длина линии. Это необходимо для того, чтобы периметр совпадал с сумой длин линий в таблице длин и углов на графических документах.
Обращаем ваше внимание, что данная настройка не относится к конкретной карте и является глобальной. При ее изменении, площадь и периметр во всех открываемых картах начинают вычисляться по-новому. А поскольку она действует на лету, не затрагивая координат объектов, то ее можно изменять, не опасаясь исказить данные.
Настройка точности периметра также влияет на вычисление отдельных длин линий объекта – в таблицах и при выносе в качестве подписей на план. Если точность периметра установлена в 2 знака, то координаты начальной и конечной точек округляются перед вычислением длины каждой отдельной линии.
Дополнительные настройки округленияВ Digitals также существует возможность принудительно ограничить точность координат карты двумя знаками. Это можно сделать в меню
Карта|Свойства, раздел
Точность координат:
Такой возможностью следует пользоваться с осторожностью, так как она
физически округляет все координаты объектов на карте.
Данная настройка не является глобальной и действует только на текущую карту. Если вы хотите использовать ее на постоянной основе, то откройте шаблон карты по-умолчанию (\Digitals\Normal.dmf), установите для него точность карты в
Карта|Свойства в
2 знака и сохраните. После этого все вновь создаваемые карты будут иметь ограниченную точность. В случае с XML нужно установить точность карты (3 знака) для файла
\Dititals\Templates\XMLNormal.dmf.
Совместимость с Инвент-ГрадПоскольку
Инвент-Град не выполняет округление длины каждой линии объекта при расчете периметра, это может вызывать расхождение его периметра и периметра
Digitals при рекомендуемых настройках. Тем не менее,
Digitals позовляет реализовать и такой вариант вычисления. Для этого нужно, в меню
Карта|Свойства установить для карты точность
2 знака (физически округлив координаты), но задать
Максимум в настройке точности вычисления периметра (
Сервис|Настройки|Вид). Однако мы не рекомендуем такой вариант настроек, так как, в этом случае, периметр не будет совпадать с суммой длин линий в таблицах.
Количество знаков при записи In4 и XMLКоличество десятичных знаков в координатах при записи In4, а также файлов других текстовых форматов (DXF, ASCII) можно изменять на закладке
Запись меню
Сервис|Настройки. Рекомендуемое значение –
3 знака.
Для изменения числа десятичных знаков при сохранении в
XML, нужно установить соответствующую маску для параметра
X в файле
\Dititals\Templates\XMLNormal.dmf в Менеджере параметров. Для двух знаков
0.00, для четырех
0.0000 и т.д.
Почему точка, которая лежала на линии, сместилась после сохранения в In4/XML?Если в свойствах карты не задано ограничение по числу десятичных знаков, то Digitals хранит координаты с максимальной точностью (10-12 знаков). Пристыковка к линии, при этом, выглядит так:
На рисунке видно, что, несмотря на то, что координаты концов нижней линии совпадают с узлами миллиметровой сетки, сама линия не проходит через миллиметровые узлы. Поскольку верхняя линия пристыковывается к нижней в произвольном месте, то координаты точки пристыковки не совпадают с узлом сетки (некратны миллиметрам).
Форматы In4 и XML (а также ASCII, DXF, MID/MIF и др.) являются текстовыми. При записи в них, координаты округляются до 2-3 знаков, в зависимости от настроек записи. При округлении координат до трех знаков (например, при записи в XML), точка пристыковки переместится в ближайший узел миллиметровой сетки, "отскочив" от линии:
Для устранения проблемы, нужно записывать больше знаков после запятой, но это не всегда возможно, так как количество десятичных знаков часто жестко регламентировано инструкциями. Либо добавить точку в нижнюю линию в месте пристыковки. В Digitals для этого существает команда
Правка|Совместить с соседними.
Почему сумма площадей угодий на совпадает с площадью участка при совпадении всех точек?Округление площадей до четырех знаков может вызвать дисбаланс площадей в экспликации даже при точном совпадении точек угодий и участка. Например, участок площадью 1 гектар имеет три угодья равной площади по 0.33333(3) га. После округления площадей мы получим следующую экспликацию с дисбалансом 1кв.м:
Участок 1.0000 га
Угодье1 0.3333 га
Угодье2 0.3333 га
Угодье3 0.3333 га
При большем количестве угодий разница может быть еще более существенной (для 30 угодий по 0.0033 - 10 кв.м). В ДЗК знают об этой проблеме и обычно разница до 5 кв.м. в экспликации допускается.