Реклама i
Стань нашим партнером - зарабатывай с нами!
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Динамические блоки > Устанавливаемые атрибуты в динамическом блоке и работа с подшивкой.

Устанавливаемые атрибуты в динамическом блоке и работа с подшивкой.

Ответ
Поиск в этой теме
Непрочитано 03.02.2008, 08:05
Устанавливаемые атрибуты в динамическом блоке и работа с подшивкой.
Dmitriy_Altproekt
 
Регистрация: 02.02.2008
Сообщений: 19

Здравствуйте! При работе с AutoCad 2008 возникла следующая проблема:
При создании мной динамического блока основной надписи штампа, а именно вставки в него устанавливаемых атрибутов с полями подшивки, после закрытия файла и открытия его снова происходит смещение координат атрибутов в блоке по осям OX, OY. Причем на разных компьютерах такой блок ведет себя по-разному. Если атрибут состоит из однострочного текста то смещение незначительно и происходит только на оси OX, если же текст атрибута многострочный смещение происходит и на OX, и на OY. Мое желание автоматизировать заполнение штампа основной надписи практически получилось, так как в подшивке уже существуют поля, в которые можно вставить шифр, название проекта адрес, стадию, количество участников и т. д. Все эти поля можно вставить в динамический блок штампа. При создание нового листа подшивки заполнение штампа происходит автоматически. Это мне показалось очень удобным. В СПДС тоже возможна вставка полей в штамп, но такие поля не обновляются. Да и некоторые, некоторые например (НомерЛистаТекушейПодшивки) не вставляются в ячейку с номером текущего листа

Вложения
Тип файла: dwg
DWG 2007
Чертеж1.dwg (151.8 Кб, 4519 просмотров)


Последний раз редактировалось Dmitriy_Altproekt, 03.02.2008 в 10:22. Причина: Вставка файла.
Просмотров: 21360
 
Непрочитано 04.02.2008, 07:46
#21
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,825


х.з. у меня все обновляется, как минимум после регенерации.
Krieger вне форума  
 
Автор темы   Непрочитано 04.02.2008, 08:16
#22
Dmitriy_Altproekt


 
Регистрация: 02.02.2008
Сообщений: 19


Дополнительные свойства обновляются, а поля подшивки нет. Такое ощющение будто листа нет в подшивке. И регенерация не помогает. Вот попробуй создать пару листов и включить их в подшивку. А затем создать блок с мтекстом в котором будет поле например: "НомерТекущегоЛиста" или "НазваниеТекущегоЛиста" в категории полей "Подшивка". после закрытия редактора в блоке не появится не название листа не его номер. Даже если выполнить регенерацию.
Dmitriy_Altproekt вне форума  
 
Непрочитано 04.02.2008, 08:20
#23
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


А если выполнить _.battman или _.attsync?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 04.02.2008, 08:36
#24
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,825


Попробывал. Номер листа появился после регенерации
Krieger вне форума  
 
Автор темы   Непрочитано 04.02.2008, 08:41
#25
Dmitriy_Altproekt


 
Регистрация: 02.02.2008
Сообщений: 19


Алексей а ты читал в чем проблема то? Такого В FAQ нет это уж точно...
Dmitriy_Altproekt вне форума  
 
Автор темы   Непрочитано 04.02.2008, 08:44
#26
Dmitriy_Altproekt


 
Регистрация: 02.02.2008
Сообщений: 19


А у меня появляется только когда в блоке атрибут стоит, вот с текстом не хочет...
Dmitriy_Altproekt вне форума  
 
Непрочитано 04.02.2008, 09:06
#27
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Dmitriy_Altproekt, если честно - по диагонали. Я еще не проснумшись
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 20.02.2008, 10:12
#28
fenix

проектировщик-электрик
 
Регистрация: 20.06.2006
Сообщений: 459
<phrase 1=


цитата из помощи:
Некоторые поля подшивок могут быть вставлены как заменители. Например, пользователь может вставить поле "НомерИНазваниеЛиста" в качестве заменителя. Позднее, после добавления листа в подшивку, поле заменителя будет отображать правильный номер и название листа.

неправда, не получается так.Заменители подшивок ни в атрибуте в блоке, ни в МТекст не реагируют на добавление листа в подшивку, как отображают название поля, так и все. Ни регенерация, ни обновление атрибутов не помогают.

далее: о создании блоков-марки видов в помощи:
В поле "Имя" в группе "Атрибут" введите имя поля.
Нажмите кнопку "Вставить поле", расположенную справа от поля "Значение".
В диалоговом окне "Поле" в группе "Категории полей" выберите "Подшивка".
В списке "Имена полей" выбрать "ПодшЗаменитель".
В группе "Тип заменителя" выберите необходимый тип поля.
В блоке "Временное значение" будет показано поле заменителя.

Нажмите "OK", чтобы выйти из диалогового окна "Поле".
Поле местозаменителя отображает свое имя после закрытия диалогового окна "Поле", например, "НомерЛиста". Когда блок будет вставлен из контекстного меню вкладки "Список видов" в диспетчере подшивок, поле отобразит значение, связанное с листом, в который оно было вставлено, например, номер этого листа.

А вот это правда.
Так что? неужели поля будут обновляться только если их вставлять из диспетчера подшивок? А если на заранее заготовленном шаблоне листа они были? То обновляться не будут? Где-то тут тонкость какя-то? Не уловлю. Помогите...
__________________
ужасно интересно всё то, что неизвестно
fenix вне форума  
 
Непрочитано 20.02.2008, 17:32 вопрос
#29
Сергей567765


 
Регистрация: 20.02.2008
Сообщений: 4


Скажите пожалуйста госпада? возможно ли, в автокад2005 -в одном чертеже удалить все первые символы в атрибуте разных блоков??
Сергей567765 вне форума  
 
Непрочитано 20.02.2008, 18:09
#30
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,091


Цитата:
Сообщение от fenix Посмотреть сообщение
цитата из помощи:
Некоторые поля подшивок могут быть вставлены как заменители. Например, пользователь может вставить поле "НомерИНазваниеЛиста" в качестве заменителя. Позднее, после добавления листа в подшивку, поле заменителя будет отображать правильный номер и название листа.

неправда, не получается так.Заменители подшивок ни в атрибуте в блоке, ни в МТекст не реагируют на добавление листа в подшивку, как отображают название поля, так и все. Ни регенерация, ни обновление атрибутов не помогают.

далее: о создании блоков-марки видов в помощи:
В поле "Имя" в группе "Атрибут" введите имя поля.
Нажмите кнопку "Вставить поле", расположенную справа от поля "Значение".
В диалоговом окне "Поле" в группе "Категории полей" выберите "Подшивка".
В списке "Имена полей" выбрать "ПодшЗаменитель".
В группе "Тип заменителя" выберите необходимый тип поля.
В блоке "Временное значение" будет показано поле заменителя.

Нажмите "OK", чтобы выйти из диалогового окна "Поле".
Поле местозаменителя отображает свое имя после закрытия диалогового окна "Поле", например, "НомерЛиста". Когда блок будет вставлен из контекстного меню вкладки "Список видов" в диспетчере подшивок, поле отобразит значение, связанное с листом, в который оно было вставлено, например, номер этого листа.

А вот это правда.
Так что? неужели поля будут обновляться только если их вставлять из диспетчера подшивок? А если на заранее заготовленном шаблоне листа они были? То обновляться не будут? Где-то тут тонкость какя-то? Не уловлю. Помогите...
Я через такую хрень прошел.
Дело в том, что блок создается В ПРОСТРАНСТВЕ МОДЕЛИ, хочешь ты этого или нет. И даже когда сам блок посажен на лист, все его основные подпримитивы (не атрибуты) относятся к модели. А поля типа НомерТекущегоЛиста работают только с объектами В ПРОСТРАНСТВЕ ЛИСТА.
Поэтому такие поля, всаженные в обычные Мтексты внутри блока, обновятся только после одной дурацкой операции:
надо запустить редактирование блока ПО МЕСТУ и дать РЕГЕН или команду _updatefield.

Насчет атрибутов - не знаю. Проверь значение Fieldeval или опять же примени команду _updatefield
kp+ вне форума  
 
Непрочитано 20.02.2008, 22:01
#31
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


kp+, извини, но сдержаться не могу. При создании блока его описание не принадлежит никакому пространству - оно болтается "само по себе". Ну нету у него хозяина, нету. Кроме файла
Поле НомерТекущегоЛиста не может работать с объектом в пространстве листа. Оно, насколько я понимаю, работает с самим пространством листа и его положением в подшивке, не больше и не меньше.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 21.02.2008, 11:41
#32
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,091


Не буду спорить. Мои "теоретические выкладки" можно пропустить. Но поля типа НомерТекущегоЛиста, всаженные в обычные Мтексты внутри блока, обновятся только после одной дурацкой операции: надо запустить редактирование блока ПО МЕСТУ и дать РЕГЕН или команду _updatefield. Проверено на горьком опыте!
А поля, содержащие ПРЯМЫЕ ссылки на объекты подшивки (без использования понятия "текущий лист", "текущая подшивка"; с прямым указанием файла подшивки и номера листа), обновляются без проблем, где бы не находились!
Не буду вдаваться в теорию. Но в Акад 2006 наблюдаю именно такое поведение подшивок
kp+ вне форума  
 
Непрочитано 21.02.2008, 14:41
#33
fenix

проектировщик-электрик
 
Регистрация: 20.06.2006
Сообщений: 459
<phrase 1=


Цитата:
Сообщение от kp+ Посмотреть сообщение
Не буду спорить. Мои "теоретические выкладки" можно пропустить. Но поля типа НомерТекущегоЛиста, всаженные в обычные Мтексты внутри блока, обновятся только после одной дурацкой операции: надо запустить редактирование блока ПО МЕСТУ и дать РЕГЕН или команду _updatefield. Проверено на горьком опыте!
А поля, содержащие ПРЯМЫЕ ссылки на объекты подшивки (без использования понятия "текущий лист", "текущая подшивка"; с прямым указанием файла подшивки и номера листа), обновляются без проблем, где бы не находились!
Не буду вдаваться в теорию. Но в Акад 2006 наблюдаю именно такое поведение подшивок
так МТекст не в блоке написан, а на форматке листа, форматка в шаблоне, нету никакого блока. Поле : подшЗаменитель название текущего листа.
ну а номер листа - тот да - в атрибуте блока
__________________
ужасно интересно всё то, что неизвестно
fenix вне форума  
 
Непрочитано 21.02.2008, 14:48
#34
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,091


Проверь значение Fieldeval или примени команду _updatefield
kp+ вне форума  
 
Непрочитано 27.02.2008, 05:14
#35
serg01


 
Регистрация: 04.07.2005
Иркутск
Сообщений: 213


Dmitriy_Altproekt
Цитата:
Только вот есть проблема с использованием текста с полями подшивки в блоке. Когда я в редакторе блоков вставляю поле с сылкой на свойство в подшивки оно пустое и после закрытия редактора и вставки блока в лист поле так и остается пустым и не обновляется.
Попробуй сделать поле так. Создаешь атрибут как обычно, сохраняешь блок, бэтманом синхронизируешь его, после этого давишь на блок, вылазит атрибут и вот уже в нем делаешь поле.

Последний раз редактировалось serg01, 27.02.2008 в 05:20.
serg01 вне форума  
 
Непрочитано 13.06.2008, 16:40
#36
Ramzes_XIII


 
Регистрация: 05.07.2007
Украина
Сообщений: 18


Цитата:
Сообщение от Dmitriy_Altproekt Посмотреть сообщение
Только вот есть проблема с использованием текста с полями подшивки в блоке. Когда я в редакторе блоков вставляю поле с сылкой на свойство в подшивки оно пустое и после закрытия редактора и вставки блока в лист поле так и остается пустым и не обновляется.
Используйте синхронизацию блоков с атрибутами.
Ramzes_XIII вне форума  
 
Непрочитано 13.06.2008, 16:46
#37
Ramzes_XIII


 
Регистрация: 05.07.2007
Украина
Сообщений: 18


плавает атрибут? -- поставь перввый сервис пак http://usa.autodesk.com/adsk/servlet...linkID=9240618
Ramzes_XIII вне форума  
 
Непрочитано 15.09.2008, 07:58
#38
Volodich

проектировщик-электрик
 
Регистрация: 20.12.2007
Челябинск
Сообщений: 474


Krieger, посмотрел твой блок из поста 16. Одно не понял, как меняется формат? Lookup -то есть, но почему-то к нему таблички выбора нету. В чем секрет?
И еще, при заполнении штампа таким способом (через свойства чертежа). Получается каждый раз в новом файле нужно создавать эти самые свойства? Можно ли их как-то копировать из файла в файл?
Volodich вне форума  
 
Непрочитано 15.09.2008, 15:58
#39
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,825


Цитата:
Сообщение от Volodich Посмотреть сообщение
Krieger, посмотрел твой блок из поста 16. Одно не понял, как меняется формат? Lookup -то есть, но почему-то к нему таблички выбора нету. В чем секрет?
И еще, при заполнении штампа таким способом (через свойства чертежа).
Голову сломаешь в чем секрет, а секрета нет
Таблицу от форматов ты скорее всего просто не видишь, так как она скрыта Visibility параметром. Сделай показ скрытых объектов и лукап появится. Специально я его не прятал.
Цитата:
Сообщение от Volodich Посмотреть сообщение
И еще, при заполнении штампа таким способом (через свойства чертежа). Получается каждый раз в новом файле нужно создавать эти самые свойства? Можно ли их как-то копировать из файла в файл?
Штатного средства копирования этих свойств не знаю, по-моему такого нет. Можно через лисп, в справке есть даже примерчики, как читать и создавать эти свойства. Во всяком случае можно шаблон подготовить с забитыми полями, но редактировать по отдельности. Если файлов у тебя много, то лучше все-таки использовать подшивки для этого.
__________________
Делай хорошо, плохо само получится.
Krieger вне форума  
 
Непрочитано 16.09.2008, 07:34
#40
Volodich

проектировщик-электрик
 
Регистрация: 20.12.2007
Челябинск
Сообщений: 474


Спасибо! Действительно, секрета нет, кроме моей недогадливости
У меня все время возникают технические трудности вроде бы из-за мелочей. Может кто посоветует как преодолеть. А то приходится огород городить.
1) В спецификации я к №договора (шифру) добавляю "№договора.С", а в ведомости объемов работ ".ВР". Как это лучше сделать? Я вижу только способ как у Krieger'а, - делать еще один лукап, делать 3 разных шифра, один для обычных документов, другой для спецификации, третий для ведомости работ. И масштабировать их.
2) Например, мне не нужна часть надписей типа "нач.отд" или "н/контр" (как пример). Как их по одной редактировать или убирать? Разве что атрибутами?
3) У меня акад 2006, нету многострочных атрибутов. Как лучше всего заполнять название чертежа? Я пока что думаю, что вообще вручную текст таскать...

Вообще иногда кажется что проще рамку оставлять блоком, а текст уже вписывать отдельно вручную. Как будто бы проще, но умом-то понимаю что коряво это. Видимо просто от неопытности не получается сделать универсально.
Volodich вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Динамические блоки > Устанавливаемые атрибуты в динамическом блоке и работа с подшивкой.

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В динамическом блоке wipeout при array не хочет идти на задний план Red Nova Динамические блоки 8 18.09.2016 12:14
Проблема при использовании в динамическом блоке атрибута Даниил Динамические блоки 13 31.05.2013 09:16
Массив в динамическом блоке DANZZ Динамические блоки 15 20.05.2008 16:40