Использование формата SVG для CAD систем.

Автор Vitek, 16.06.13, 02:57:25

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Vitek

скинте на електронку vitaliy@sytnik.lviv.ua файл чертежа, посмотрю. Может линии объединены в блок.

Всё она конвертирует, но моя библиотека 6-ти летней давности, интереснее, последняя компиляция была в 2009, единственное, что у меня не писала оформление, но работает и с NURBS and BEZIER, проблем нет и бинарный формат компактнее, но в любом случае, Вам за Ваш труд спасибо.

GkmSoft

Спасибо, Vitek за библиотеку!

Мы сейчас делаем экспорт в PDF 2D.

И столкнулись с одной проблемой.
Для осевых линий в Компасе написано (и по ГОСТу так должно быть) и реализовано,
что они начинаются и оканчиваются на длинных отрезках.

У Вас, как я понял, эта проблема тоже еще не решена.

Например, в экскаваторе, справа-вверху на чертеже в Компасе осевая линия оканчивается на длинный штрих, а у Вас там короткий штрих.

Предлагаю искать решение этой проблемы совместно.

Vitek

Идеи для решения этой проблемы есть, как протестирую внесу в следующй резиз альфа

GkmSoft

Дело в том что придумать какой-нибудь алгоритм для решения данной проблемы - не сложно.
Сложнее обеспечить одинаковую работу обеих алгоритмов (нашего алгоритма и алгоритма, используемого в Компасе) - это нужно для того, чтобы изображение в SVG/PDF формата точно соответсововало Компасовскому.

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

А иначе это будет бесконечно - на каком-нибудь чертеже обязательно будет различие между изображением чертежа в Компасе и SVG\PDF.

Vitek

Если внимательно посмотреть в Компасе чертежи то видно что для каждой длины отрезка есть свой шаг чередования линий и пунктиров, в SVG я могу предусмотреть например для осевых отрезки с длиной 0..25, 30..40, 45..60, и т.д. рисовать с одним шагом пунктиры, а для 25.01...29.99, 40.01...44.99, и т.д. рисовать с другим шагом пунктиры. При этом не сильно у меня увеличивается сам чертёж.
Для отверстий осевую линию тоже рисовать как в компасе: 4-ри от центра, а не две.
Я сейчас над такими деталями не сильно думаю, для меня главное построить общую архитектуру и продемонстрировать её в действии, а детали по ходу улучшать.

Vitek


vitteoz

Коллеги, алгоритм очень простой:
1. Сохранить чертеж как PDF
2. Открыть PDF, например, в Adobe Illustrator
3. Сохранить как SVG
4. открыть SVG  в блокноте и скопировать текст
5. текст вставить в HTML-блок на сайте
и вуаля!

Николай

Интересно. А можно ли всё это сделать программно. чтобы впоследствии анализировать полученный текст?