Вопрос по формату цифрового классификатора RSC

Не знаете, где задать вопрос? Задавайте здесь.
Ответить
Dann
Новоприбывший
Сообщения: 4
Зарегистрирован: 02 фев 2015, 13:42
Репутация: 0

Вопрос по формату цифрового классификатора RSC

Сообщение Dann » 18 май 2016, 14:44

Здравствуйте форумчане.
На днях ознакомился с описанием формата классификатора RSC. В принципе, вопросов после прочтения не возникло, но практика эту ситуацию исправила. Для работы с классификатором я использовал этот парсер, код ниже будет связан напрямую с ним.
Собственно, решил я попробовать достать точечные знаки из него, чтобы перевести их в более удобоваримый формат SVG для быстрого предпросмотра классификатора без ГИС "Интеграции" или ГИС "Оператор". Тут-то и сразу возник вопрос по координатам.
Как сказано в описании формата "Координаты берутся от точки привязки вправо и вниз в соответствии с типом цепочки. У цепочек с типом более 1 существуют выделенные точки.Координаты выделенных точек берутся от левого верхнего угла. Две выделенные точки для окружности, круга, эллипса – центр и радиусы по вертикали и горизонтали (для окружности и круга совпадают). Четыре выделенных точки для сектора и дуги: центр, радиусы по вертикали и горизонтали (одинаковые), начало и конец дуги." Но на деле эти правила применить не получается.
В приложенном текстовом файле я показал значение одного из знаков:

Код: Выделить всё

for code, obj in rsc.objects_dict.iteritems():
     print rsc.parameters_dict['screen'][obj['internal_code']]
example.txt
Описание одного из знаков
(2.07 КБ) 629 скачиваний
В нем видно, что X,Y координаты фрагментов очень малы по сравнению со значениями отметок по осям и точки привязки {(start/end/anchor)point_(hor/vert)}. Если с площадями и линиями более менее понятно, что у них координаты заданы относительно точки привязки (anchorpoint), то про остальные возможные типы цепочки такого сказать нельзя, ибо если их координаты считать также, как координаты линий, то получается белиберда, а не знак. В прикрепленном файле можно посмотреть, как знак должен выглядеть.
example_point_vector.png
Знак
example_point_vector.png (7.3 КБ) 3059 просмотров
Видно, что линии, образующие букву V должны считаться относительными центра окружности, но как это понять, если мы должны считать ее координаты относительно левого верхнего угла, который является начальной отметкой {startpoint_(hor/vert)}, насколько я понимаю, и который имеет значения исчисляемые в сотнях тысяч, а не просто в тысячах?

Ответить

Вернуться в «Я новичок!»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость