Форум проєктувальників електричних та слабострумних мереж

Проєктування => Програми, САПР та ін. => AutoCAD => Тема розпочата: Qx від 19 Серпень 2009, 10:53:03

Назва: Прикладная программа для сбора данных о полилиниях и блоках чертежа
Відправлено: Qx від 19 Серпень 2009, 10:53:03
Уважаемые господа, хочу поделится информацией о небольшой программе, которую я
написал для сбора данных о полилиниях и блоках чертежа. Краткое описание:

Запуск и результат работы:
Программа(QX)  рассчитана на работу с открытым чертежом. После обработки чертежа программа формирует файл-отчет. Структура файла – html и может просматриваться в Internet Explorer. Отчет рассчитан на дальнейшую обработку в Microsoft Excel и имеет расширение XLS.

1) Считаем полилинии (длинномерные материалы):
Программа, для каждого включенного слоя в отдельности, определяет количество полилиний, считает суммарную длину всех линий, определяет длину самой короткой и длинной линии (для проверки).

2) Анализируем блоки:
Программа анализирует блоки с редактируемыми атрибутами. Для каждого включенного слоя программа определяет: имя слоя, имя блока, количество блоков на слое.

3) Расширенная информация:
Для каждого блока, в зависимости от выбранного варианта отчета (доступно 3 варианта – простой, средний, полный) формирует таблицу с данными: № слоя, имя слоя, имя блока координаты блока, ID блока (+/-/-), данные о линии, присоединенной к блоку (длина линии, имя слоя линии,  ID лини или количество линий, присоединенных к блоку), значение текстового атрибута (-/-/+)

4) Определение топологии (в табличном виде):
Программа анализирует данные БЛОК-ЛИНИЯ(И) или БЛОК-ЛИНИЯ(И)-БЛОК(И), при этом формируется таблица, со следующими данными:
Узловой блок (№ блока, имя слоя блока, имя блока, значение текстового атрибута блока) – линия (длина присоединенной линии, имя слоя, ID лини) -  блок на втором конце линии (№ блока, имя слоя блока, имя блока, значение текстового атрибута блока)

5) Предусмотрен поиск на чертеже линии или блока по ID
После ввода ID искомого элемента активируется AutoCAD с напечатанной в командной строке командой «линия» с указанными координатами элемента. Нажав на клавишу «пробел» или «ввод» от искомого объекта к текущему положения курсора будет тянуться линия, по которой легко обнаружить искомый объект.

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

Для защиты программы от неавторизированного использования применена аппаратная защита HASP. Защищенное HASP приложение посылает запросы к ключу HASP, подключенному к компьютеру. Если возвращаемый HASP ответ имеет надлежащую форму, а лицензия, хранящаяся на ключе HASP, действительна, приложение продолжает работу. Если ответ неверен, приложение не будет загружено.

Вот такая вот программка, хотелось бы узнать Ваше мнение о ее полезности.  :)
Назва: Re: Прикладная программа для сбора данных о полилиниях и блоках чертежа
Відправлено: andery від 19 Серпень 2009, 11:26:40
Хотелось бы увидеть саму програмку )
Ну и какие цели преследовались при составлении програмки?
Назва: Re: Прикладная программа для сбора данных о полилиниях и блоках чертежа
Відправлено: Qx від 19 Серпень 2009, 12:03:50
Цель создания данной программки -  считать с высокой точностью оборудование и материалы при проектировании. При большом количестве слоев с полилиниями (длинномерным материалам  - различные типы и функциональное предназначение кабелей и т.д.) и слоев со счетными материалами (спуски о подъемы кабелей, электрофурнитура, светильники и т.д.)  программка все считает, а полученную таблицу легко обрабатывать в Excel для формирования спецификации. При изменения в чертеже достаточно обновить данные.

Могу отправить по почте интерфейс программки  :)
Назва: Re: Прикладная программа для сбора данных о полилиниях и блоках чертежа
Відправлено: rza від 19 Серпень 2009, 12:52:38
Я так понимаю она платная, и опробывать ее без поекупки не получится
Назва: Re: Прикладная программа для сбора данных о полилиниях и блоках чертежа
Відправлено: Bobertigra від 19 Серпень 2009, 13:11:50
Кто-то хочет изучить спрос без тестирования программы. Нам нужны коты в мешке?
Назва: Re: Прикладная программа для сбора данных о полилиниях и блоках чертежа
Відправлено: Qx від 19 Серпень 2009, 13:14:24
да, на написание программы было потрачено некоторое количество  времени, но есть несколько вариантов:
 
1 – Вы можете передать мне чертеж и я, после обработки файла,  отправлю Вам файл-отчет;
2 – я могу передать Вам программку с ключом защиты (USB) для тестирования под залог  :)
Назва: Re: Прикладная программа для сбора данных о полилиниях и блоках чертежа
Відправлено: rza від 19 Серпень 2009, 13:51:42

Цитата: Qx
2 – я могу передать Вам программку с ключом защиты (USB) для тестирования под залог
Цитата: Qx
2
под залог чего??? бред какой-то тут люди собрались чтоб бесплатно делится своей информацией, а не устраивать куплю-продажу
Назва: Re: Прикладная программа для сбора данных о полилиниях и блоках чертежа
Відправлено: zamtmn від 19 Серпень 2009, 14:00:15
Qx
Оригинальный подход)) ты всеръез думаешь продать такую программу? для этого есть море бесплатных программ аналогов.
Быдешь раздавать бесплатно, и то не факт что найдешь пользователей))
Назва: Re: Прикладная программа для сбора данных о полилиниях и блоках чертежа
Відправлено: Qx від 19 Серпень 2009, 14:04:53
Спасибо за вопрос, действительно, согласен с тем, что форум не место для торга.
Под залогом подразумевается стоимости ключа защиты программки.  :)
Назва: Re: Прикладная программа для сбора данных о полилиниях и блоках чертежа
Відправлено: Qx від 19 Серпень 2009, 14:29:45
Главная идея состоит в использовании универсального блока с определенным набором текстовых атрибутов, скрытых для просмотра кроме первого, который, собственно виден на чертеже.

Универсальный блок содержит уникальные параметры для всего оборудования, и заполняются при необходимости. В результате обработки чертежа получается таблица, сравнимая с таблицами баз данных. Одним из атрибутов может быть заказной код устройства, которое этот блок обозначает. Количество записей в таблице отчета будет соответствовать количеству блоков, и средствами простой выборки можно определять количество устройств с определенным кодом.  :)
Назва: Re: Прикладная программа для сбора данных о полилиниях и блоках чертежа
Відправлено: andery від 19 Серпень 2009, 15:42:31
Qx,
Половину того что делает Ваша программа - автокад умеет делать сам, и при правильном использовании инструмeнтов автокада все данные можна получить самому и к тому же быстро.
Что касается пунктов 4,5, то необходимость использования этих функций возможна только при знании куда и где применять эти результаты этих операций. О применение этих результатов я пока догадываюсь только интуитивно.
Конкретно для чего используется п.4 и 5 ?
Назва: Re: Прикладная программа для сбора данных о полилиниях и блоках чертежа
Відправлено: hi_tech від 19 Серпень 2009, 15:51:04
andery, я так понимаю для составления кабельного журнала, т.е. определения "Начало", "Конец", "Линия"
Назва: Re: Прикладная программа для сбора данных о полилиниях и блоках чертежа
Відправлено: zamtmn від 19 Серпень 2009, 16:03:25
>>я так понимаю для составления кабельного журнала, т.е. определения "Начало", "Конец", "Линия"

не все соединено просто линиями, бывают разрывы, переходы с этажа на этаж (возможно с разными масштабами) и т.д. + линии доведены не до точки вставки а до границы блока. с кабельным журналом не всё так просто((

на правах рекламы: http://shamangrad.net/project.php?act=view&prj=zcad
трассировка кабелей на планах, кабельный журнал, подписи трасс
Назва: Re: Прикладная программа для сбора данных о полилиниях и блоках чертежа
Відправлено: Qx від 20 Серпень 2009, 09:28:41
Практическое применение функции определения топологии (п.4) – при проектировании кабельных трасс системы умный дом на базе KNX/ЕIВ (http://ru.wikipedia.org/wiki/EIB), в частности при проектировании трассы прокладки шинного кабеля необходимо соблюдать определенные правила – максимальная длина линии не должна превышать 1000 м, причем расстояние между двумя компонентами не должно превышать 700 м . Расстояние между источником питания и компонентом не должно превышать 350 м. Если питание линии обеспечивается двумя источниками питания, то расстояние между ними должно быть более 200 м, а также необходимо учитывать количество устройств и их потребляемую мощность.

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

Относительно совмещения координат точки вставки блока и координат начала линии – если линии наносить с привязкой а чертеж делать в масштабе 1:1 то проще их совместить, дотянув линию и сделав пару кликов мышкой. Можно определять свободные концы линий возле блока, но это существенно замедлит работу программы, да и количество линий возле блоков может быть разной соответственно велик вероятность ошибки. 

Во вложении чертеж и соответствующие ему отчеты   :)