Реклама i
|
||
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Добавление в модель новых вхождений блоков (уникальных) поштучно
Проектировщик ТХ
Регистрация: 16.11.2009
Сообщений: 139
|
||
Просмотров: 4203
|
|
||||
Цитата:
![]() Сначала создали базу, а теперь думаете как же она должна правильно и удобно работать. Может сначала логику её работы продумать и систему удобного поиска и создания новых блоков организовать, нумерацию, визуальные превьюшки, ну... вам видней, что и как вас не устраивает, а уж потом собственно базу трогать.
__________________
«Артиллерия не токмо грохот, но и наука!» Пётр I |
||||
![]() |
|
||||
Цитата:
![]() Цитата:
Блок с атрибутами (содержимое атрибутов уже заполнено при вставке через центр управления теряется содержимое) Хранилище блоков - один файл либо отдельный файл на каждый блок (на выбор) блоки создаются в ручную на любом этапе проектирования в любом файле Затем набор всех используемых блоков на череже анализируется (лиспом или макросом) и сравнивается с базой блоков анализ производиться по имени блока, по содержанию 2-х или 3-х ключевых атрибутов и если одно из условий не совпадает - выделяется на чертеже и копируется в буфер обмена. Пример: На плане: стул металлический = 15 шт стол обеденный = 4 шт камод = 6 шт в базе: стул металлический шкаф для одежды стол офисный после анализа на плане выделяется 1 (из 4-х) стол обеденный, 1 (из 6 ) камод. и копируется в буфер. Из буфра обмена переноситься в файл библиотеки - в ручную. Это процесс пополнения базы. А теперь процесс извлечения необходимого блока: Что то вроде отдельного открываемого окошка в том же файле, куда производиться вставка, в котором можно задать параметры поиска: 1 . ключевое слово (значение атрибута) 2. Имя блока в нижней части (к примеру) список найденного (построчно с выпиской значений атрибутов найденного блока) при клике на строчку в левой или правой части окна появляется изображение для предпросмотра Все по типу поиска в 2010 автокаде (с параметрами поиска) только еще и с картинкой и что бы работал начиная с 2004 версии Вот как это все воплатить в жизнь? хотябы поэтапно Последний раз редактировалось Sirius2w, 24.05.2010 в 13:37. |
||||
![]() |
|
||||
Регистрация: 26.03.2010
Сообщений: 240
|
При вставке блока атрибуты не теряются - по умолчанию у атрибутов блока нет значений
Если надо без изменений значений - делайте блоки не с переменными атрибутами а с постоянным текстом - называйте блок_с_такими_то_параметрами Блоки можно делать-сохранять как DWG-файлы Сохранять в папку "библиотека" и далее папки по разделам (или файл с блоками - например "блоки столов") Сохранение-вставка ручками, так как не представляю автоконтроль-учет произвольных имен блоков для одного и того же элемента (прямоугольник - стол, мой стол, стол прямоугольный, ... Стол, СТОЛ), или одно и тоже название для разной графики, тут народ пишет что со слоями то не могут добиться обнообразия...
__________________
Толстов Евгений |
|||
![]() |
|
||||
В том то и дело - столов может быть масса, но у каждого свой уникальный код (имя) которое генерируется автокадом при создании этого блока.
нужно сделать программно - сравнение имеющихся имен блоков (в библиотеке) с теми, которые используются на чертеже, если не совпадают (а таких может быть и 20 % и 1% от всего количества) то выделить их - а далее понятное дело - ручками Атрибут должен быть контролируемым, иначе дальнейшее использование блока с этим атрибутом будет неудобным. Вот пример блоков во вложении ![]() |
||||
![]() |
|
||||
Регистрация: 26.03.2010
Сообщений: 240
|
Приехали - имена блоков - автоматом. Не нужен вам уникальный АВТОКАДОВСКИЙ код, нужно Имя-Марка блока-изделия по ассортименту.
Проверка по атрибутам - значения которых также теоретически бесконечно... Если берем например болт марки такойто - то он не может иметь произвольные значения. Кол-во болтов-марок - конечно. Из библиотеки их берут по ассотименту а не какойто произвольный и потом начинают менять и по своему обзывать... Имя блока - это имя блока, в библиотеке он будет-должен быть 1, а атрибуты - это переменные - мало ли кто что напишет - это не создает нового блока, а просто меняет его свойства, как не создается новый блок при новой координате точки вставки, масштаба, слоя... Так что повторяюсь - если нужно одинаковые блоки с разным содержанием текста - то это разные блоки и при встаке разных столов пользователь недолжен менять его характеристики - нужны другие значения - значит вставляй другой объект-блок другой марки, с другим текстом. Другое дело, если динамический блок, с жестко прописанными ограничениями по изменению размеров, с настроенными под марки параметров видимости. Насчет ручной проверки наличия блока в файле библиотеки - одноименный блок просто не получиться туда вставить Если при работе вставляете из библиотеки - то новых блоков не должно появиться, а если создали - то тут же скидывайте в библиотеку - так что все решается организацией работы
__________________
Толстов Евгений |
|||
![]() |
|
||||
Евгений, с организацией проблемы - потому как я сам могу каждый раз при создании блока - добавлять его в библиотеку. Пока я говорю о библиотеке как об одном файле - в котором храниться множество блоков с разными именами.
Второй момент - марка оборудования не всегда может быть именем блока - потому как не все символы можно использовать в имени а тольлько буквы и цыфры и еще пара случаев ... я своих коллег еле-еле научил пользоваться такими блоками (как в примере) и теперь переучить их и заставить исполнять все в точности с вашей инструкцией - не получиться -то лень то забудут ))) а я все контролировать просто не успею. на данном этапе - имя блока имеет не большое значение - самую большую роль играют именно значения атрибутов в них заложена и марка и производитель и наименование и все прочее... Блок внешне может быть одинаковым, но содержание атрибутов может отличаться - это что бы упростить процесс создания новых блоков - не забивать всю информацию в новый блок заново а просто немного изменить значение атрибута и все. но с этим еще можно побороться - по вашему предлождению если есть хоть какое-то изменение в атрибутах - создавать новый блок. На счет вставки блока - если у него такое же имя как и в библиотеке - он просто примет внешний вид того блока, который уже существует в базе, но только атрибуты (значения) останутся неизменными - а мне этого не нужно - необходимо просто вычленить на плане не повторяющиеся блоки и вставить их в библиотеку. Хорошо, допустим - имя блока будет по марке, как и с помощью чего осуществлять быстрый поиск по двум параметрам? ключевое слово в названии (стол* далее любое кол-во символов) марка СП*любое колво символов (оно же имя блока) |
||||
![]() |
|
||||
Регистрация: 26.03.2010
Сообщений: 240
|
Не просто с кучей блоков, но и еще с кучей вставок одного и того же блока с разными значениями атрибутов, а это значит что придется вставлять не как блок из этого файла, а открывать его, искать блок с нужным содержанием полей и копировать его в буфер обмена - кошмар да и только - надо целую программу писать и составлять списки для поиска по различным вариантам содержания различных атрибутов...
- может всеже сделаешь динамические блоки? Посмотри варианты того же двутавра в стандартной вкладке инструментальной палитры - по крайней мере добъешься стандартизации какойто и орграничишь пользователей выбором параметров
__________________
Толстов Евгений |
|||
![]() |
|
||||
Цитата:
Инструментальная палитра - хорошо, но теряются атрибуты как при вставке через центр управления. Динамические блоки (внешняя оболочка) позволяет сохранить неизменными значения атрибутов во вложенных блоках, это приемлемо и для части оборудования можно сделать так. Это удобно когда много однотипного оборудования (например столы разной марки но все в одном динамическом блоке) но как быть с остальным ? мы ведь не только столами занимаемся а еще есть куча (по 1 -2 шт) других элементов оборудование для СТО, Медицины, торговое, школьное и т.д. Получается ОООЧЕНЬ геморно - создать сначала блок, забить значения атрибутов, потом из него сделать динамический или простой блок, что бы сохранить неизменными значения этих атрибутов добавить его в палитру (присвоить имя-марку) ... у меня уже голова кругом... дальше не буду продолжать проще так - создать блок, забить значения атрибутов и поместить в библиотеку его вот и все не нужно сейчас придумавать способ создания блоков - нужно придумать легкий способ поиска готовых с помощью программы по 2-м параметрам (марка оборудования, наименование оборудования) Алгоритм: Параметр поиска "набор символов" сравнивается с значениями атрибутов - совпало значит "истина" нет "ложь" то что совпало - выводиться в виде списка - выбираешь нужную строку (если выдало несколько результатов) и вставляешь блок в чертеж Последний раз редактировалось Sirius2w, 26.05.2010 в 09:43. |
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,431
|
Теряются атрибуты или значения атрибутов?
Кто мешает сделать поля в атрибутах? Если ничего из предложенного в теме не подходит, остается только "чисто программное создание" блоков (ИМХО, конечно).
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 26.03.2010
Сообщений: 240
|
Вот я и говорю - программно
т.к. средствами автокада можно найти блоки или текст в открытом рисунке, да и то - не 1, а все одинаковые, а вот сравнивать с содержимым внешнего файла - без создания базы данных, где будут прописаны имена файла, блока, атрибутов... и программы работы с ней все равно не обойтись... как минимум - создать Excel файл для ручной проверки, надо или нет создавать новый блок, т.е. опять упираемся в обеспечение-организацию рабочего процесса Насчет проверки - есть или нет, уже говорил - не создавать новые, не проверив библиотеку, а там всем блокам метку в имя ставить - библиотечный. Тогда можно будет быстро найти блоки в чертеже без этой отметки Насчет "голова кругом" - закономерный результат и неизбежный этап - всегда в начале все валят в одну кучу (не так и много данных, можно одним взглядом окинуть и вычленить нужное), а вот потом, как захлестнет - хочешь-не хочешь а придется наводить порядок - анализировать и структурировать данные и приручать соседей гигиене в общественном месте
__________________
Толстов Евгений Последний раз редактировалось atollon, 26.05.2010 в 10:29. |
|||
![]() |
|
||||
Кулик Алексей aka kpblc> Теряются значения
Хорошо, спасибо всем, я сам не программист, поэтому проблема останется нерешенной. Значит далее будем в ручную мучиться. Тем более сейчас собрался увольняться с этой работы - развивать эту идею некому. Хотя жаль если честно.... ![]() Очень много труда вложил в нее. Начиналось все с малого - просто создал базу изображений... подучил возможности автокада - добавил к изображениям атрибуты... еще подучил - нашел с помощью добрый людей возможность генерировать готовую оформленную спецификацию оборудования .. еще подучил - сделал несколько групп динамичских блоков из ранее созданных однотипных блоков. еще покопался - нашел возможность средствами автокада делать 2 раздела в одном (стадия "проект" и "рабочее проетирование") минимальными затратами с использованем тех же блоков с атрибутами. ВСЕ ОЧЕНЬ УДОБНО по сравнению с тем как мы работали 2 года назад. Все постигается со временем :-) Последний раз редактировалось Sirius2w, 26.05.2010 в 10:50. |
||||
![]() |
|
||||
Регистрация: 26.03.2010
Сообщений: 240
|
Так и должно быть, так как происходит НЕ перенос объекта, а ВСТАВКА блока, при котором надо их вводить. Ведь в центре управления виден 1 блок, а не сотня его вставок с различными значениями атрибутов, а если для каждого их варианта создавать новый блок, тогда и атрибуты не нужна, достаточно текста.
__________________
Толстов Евгений |
|||
![]() |
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,834
![]() |
Цитата:
По теме "библиотека блоков" написано много, да и по "спецификация оборудования" тоже. Сам просто этим занимался и кое-что (как умел, конечно, сделал). Публиковал мысли и результаты работы по этим темам неоднократно. Приведу только одну ссылку. http://forum.dwg.ru/showthread.php?t...E2%E0%ED%E8%FF
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... |
|||
![]() |
|
||||
Цитата:
нужно при создани блока забить в графу "по умолчанию" необходимые значения - тогда при вставке по умолчанию будет прописываться истина для блока. а потом если не понравиться - отдельный блок редактируется в ручную))) короче меня понесло - щас как разберусь - оформлю результат и напишу подробнее |
||||
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Добавление индекса к именам выбранных блоков | Кочетков Андрей | Программирование | 13 | 30.08.2018 18:35 |
Предложения по расчетным моделям сооружений | aldt | Расчетные программы | 8 | 06.07.2009 17:53 |