|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
06.05.2017, 20:30 | #1 | |
.NET C# Как правильно получить BlockDefinition зная имя блока?
Регистрация: 02.07.2016
Сообщений: 249
|
||
Просмотров: 10130
|
|
||||
Цитата:
http://adn-cis.org/opredelenie-imeni...vke-bloka.html http://adn-cis.org/kak-najti-vse-vst...ogo-bloka.html
__________________
Сообщество программистов Autodesk в СНГ - техническая поддержка |
||||
|
||||
Регистрация: 02.07.2016
Сообщений: 249
|
За ссылки спасибо!
Тем не менее, данные у меня куда-то пишутся. И откуда-то читаются. Притом для каждого блока данные пишутся в разные места и читаются для каждого блока свои данные. Тут демонстрацию записал: https://youtu.be/dmycbAlXKqU Данные пишу этими функциями: Код:
Подозреваю, что данные пишутся и читаются как раз потому, что я пишу их не в блок, а не пойми куда... в какой-то btr.BlockBeginId; Последний раз редактировалось valerik88, 07.05.2017 в 08:13. |
|||
|
||||
Цитата:
В Вашем коде, ObjectId для определения динамического блока Вы получаете с помощью br.DynamicBlockTableRecord. В .NET API вставка блока - это BlockReference, что вполне логично, с точки зрения бывшего лиспописателя. А вот определение блока - это не BlockDefinition, как ожидается, а объект BlockTableRecord, что не поддается логике поначалу. Ничего, привыкнете ----- добавлено через ~3 мин. ----- Эти объекты создаются и редактируются внутренними механизмами AutoCAD. Так что, нет никакой уверенности в том, что Ваши данные будут там надежно храниться.
__________________
Толковый выбор приходит с опытом, а к нему приводит выбор бестолковый. (The Mechanic) |
||||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,040
|
Задом наперед задача как то поставлена - имхо: вместо того, чтобы хранить внешне информацию о блоке, включая имя самого блока и файла, где он размещен - пытаются запихать информацию внутри определения блока)
p.s. еще Comments есть (если написать две функции преобразования в строку и обратно). Правда, еще смотреть надо - есть ли ограничение на длину и на кодировку. |
|||
|
||||
Регистрация: 02.07.2016
Сообщений: 249
|
Не понимаю зачем нужно хранить где-то отдельно информацию о блоке и думать как их связать и правильно передавать, если можно в самом блоке хранить и передавать прямо в dwg файле.
|
|||
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588
|
Для того, что бы иметь возможность централизованно хранить и изменять эту самую информацию, а так же не передавать весь массив информации постороннем лицам.
|
|||
|
||||
Регистрация: 02.07.2016
Сообщений: 249
|
Цитата:
Offtop: Цитата:
Тему можно закрывать |
|||
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588
|
Вы не понимали, Вам разъяснили. Стоит или нет сейчас такая задача, не важно. Всему свое время.
Напрасно Вы ерничаете, это вопрос не профессионализма работы в автокаде, а паттернов архитектуры программы. Использование этих паттернов как правило предполагает разделение данных, логики и отображения. По этому Вам и намекнули, что неплохо было бы разделить данные и логику... |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,040
|
Offtop: чтобы стать профессионалом - этим надо заниматься основное рабочее время)
Просто при таком подходе: когда все взаимосвязано, а не разбито на отдельные функции/классы по выполняемому функционалу - развитие/модернизации программы превращается в поиск того, почему тронули в одном месте - и перестало нормально работать в другом месте. А если разбито по функционалу - отладили один раз и забыли. А если нужно внести изменение - то внесли изменения в отдельные классы с учетом взаимодействия с другими частями программы и уже знаете, что вылетающие косяки с 99% процентной вероятностью связаны с этими классами. Не экономьте на коде, экономьте свое время и нервы. |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Динамический блок внутри другого блока | Engineer_Sergii | Динамические блоки | 5 | 12.07.2018 09:42 |
Реальные координаты объектов блока | kpyjaroshenko | .NET | 1 | 26.02.2017 12:12 |
Присвоение атрибуту блока значения атрибута другого блока. | shartal | Программирование | 4 | 14.11.2013 14:02 |
Проблема с базовой точкой блока и вхождением блока в DXF | nogaems | Программирование | 5 | 29.08.2013 15:46 |
Перевод имени блока в имя переменной и обратно | Supermax | Программирование | 11 | 14.12.2009 23:26 |