Как автоматически пронумеровать листы в автокаде
First, create a block for the sheet-title (command _Block). You can create a few blocks - for the title page, for the rest of the drawings and just to the sheet number. It does not matter what you call these blocks.
Add the block attribute (_Attdef command). It is important that the attribute was a name “PageNo” (or SheetNo or Page or Sheet or specify a different attribute name in settings). This attribute should not be a constant.
Additionally, you can also add two more attribute: PageCount and Title. Attribute PageCount (or SheetCount or Pages or From) can be a constant then total number of sheets to be wrote. Title (or Name or SheetName or SheetTitle or DrawingName) - is the name of this drawing for the table of contents.
Arrange blocks on each sheet. Place the sheets in order. If you arrange drawings directly in the model, then keep in mind that the program will number them, focusing on the block insertion point downwards. For blocks with the same Y coordinate of the insertion point numbering will go from left to right.
Give the name of each sheet, by editing the attribute "Title" or just give distinct names to sheet bookmarks (to Layout).
Call the command PNo. First, the program will look for the blocks on the layout in the paper-space. If it do not find – program will look at the model.
Next, the program will record the number to each block. If layout contain several blocks with the sheet number attribute, the number is written in only one block.
Then the program will record the total number of sheets. If you are using Autodesk® AutoCAD® layouts program will write total number of layouts, even if some of them do not have the title block. If the search is in model space, the program will simply recalculate how many blocks found.
At finish table of contents will be copied to the clipboard. You can insert a table of contents into the text field just by pressing CTRL+V. Or switch to another program such as Word or Excel and paste the contents back.
Next, the program will try to insert a table of contents into the AutoCAD table. By default, the program looks for a table titled "Table of Contents". If the table is not found, the program will ask you to select the table.
Follow the messages on the console. There may be program messages.
Program settings are available in the normal settings dialog AutoCAD (_Options command) at last tab «A>V>C> PageNo». This window can be called by clicking the small arrow in the bottom corner of the ribbon panel «A>V>C> PNo». There you can change the names of the desired attributes. To return to the default name, leave the field empty settings. You can select a number greater than 1 for the first page.
In the settings window there is a button for calling the insertion settings dialog in the table. The PNo command stores its own settings for Paste To Table. They may differ from the settings of the PTT command. Some settings affect the behavior of the PNo command
- Title - the command will insert “Table of contents” string in first row of table.
- Headers - the command will insert column headers “Page” and “Name” in start row of table of contents.
- Show dialog - if the option is enabled, the Table Select dialog will be displayed. Default off.
You can also adjust the output messages of the program, see the plug-in version and call window enter the activation code.
First, create a block for the sheet-title (command _Block). You can create a few blocks - for the title page, for the rest of the drawings and just to the sheet number. It does not matter what you call these blocks.
Add the block attribute (_Attdef command). It is important that the attribute was a name “PageNo” (or SheetNo or Page or Sheet or specify a different attribute name in settings). This attribute should not be a constant.
Additionally, you can also add two more attribute: PageCount and Title. Attribute PageCount (or SheetCount or Pages or From) can be a constant then total number of sheets to be wrote. Title (or Name or SheetName or SheetTitle or DrawingName) - is the name of this drawing for the table of contents.
Arrange blocks on each sheet. Place the sheets in order. If you arrange drawings directly in the model, then keep in mind that the program will number them, focusing on the block insertion point downwards. For blocks with the same Y coordinate of the insertion point numbering will go from left to right.
Give the name of each sheet, by editing the attribute "Title" or just give distinct names to sheet bookmarks (to Layout).
Call the command PNo. First, the program will look for the blocks on the layout in the paper-space. If it do not find – program will look at the model.
Next, the program will record the number to each block. If layout contain several blocks with the sheet number attribute, the number is written in only one block.
Then the program will record the total number of sheets. If you are using Autodesk® AutoCAD® layouts program will write total number of layouts, even if some of them do not have the title block. If the search is in model space, the program will simply recalculate how many blocks found.
At finish table of contents will be copied to the clipboard. You can insert a table of contents into the text field just by pressing CTRL+V. Or switch to another program such as Word or Excel and paste the contents back.
Next, the program will try to insert a table of contents into the AutoCAD table. By default, the program looks for a table titled "Table of Contents". If the table is not found, the program will ask you to select the table.
Follow the messages on the console. There may be program messages.
Program settings are available in the normal settings dialog AutoCAD (_Options command) at last tab «A>V>C> PageNo». This window can be called by clicking the small arrow in the bottom corner of the ribbon panel «A>V>C> PNo». There you can change the names of the desired attributes. To return to the default name, leave the field empty settings. You can select a number greater than 1 for the first page.
In the settings window there is a button for calling the insertion settings dialog in the table. The PNo command stores its own settings for Paste To Table. They may differ from the settings of the PTT command. Some settings affect the behavior of the PNo command
- Title - the command will insert “Table of contents” string in first row of table.
- Headers - the command will insert column headers “Page” and “Name” in start row of table of contents.
- Show dialog - if the option is enabled, the Table Select dialog will be displayed. Default off.
You can also adjust the output messages of the program, see the plug-in version and call window enter the activation code.
First, create a block for the sheet-title (command _Block). You can create a few blocks - for the title page, for the rest of the drawings and just to the sheet number. It does not matter what you call these blocks.
Add the block attribute (_Attdef command). It is important that the attribute was a name “PageNo” (or SheetNo or Page or Sheet or specify a different attribute name in settings). This attribute should not be a constant.
Additionally, you can also add two more attribute: PageCount and Title. Attribute PageCount (or SheetCount or Pages or From) can be a constant then total number of sheets to be wrote. Title (or Name or SheetName or SheetTitle or DrawingName) - is the name of this drawing for the table of contents.
Arrange blocks on each sheet. Place the sheets in order. If you arrange drawings directly in the model, then keep in mind that the program will number them, focusing on the block insertion point downwards. For blocks with the same Y coordinate of the insertion point numbering will go from left to right.
Give the name of each sheet, by editing the attribute "Title" or just give distinct names to sheet bookmarks (to Layout).
Call the command PNo. First, the program will look for the blocks on the layout in the paper-space. If it do not find – program will look at the model.
Next, the program will record the number to each block. If layout contain several blocks with the sheet number attribute, the number is written in only one block.
Then the program will record the total number of sheets. If you are using Autodesk® AutoCAD® layouts program will write total number of layouts, even if some of them do not have the title block. If the search is in model space, the program will simply recalculate how many blocks found.
At finish table of contents will be copied to the clipboard. You can insert a table of contents into the text field just by pressing CTRL+V. Or switch to another program such as Word or Excel and paste the contents back.
Next, the program will try to insert a table of contents into the AutoCAD table. By default, the program looks for a table titled "Table of Contents". If the table is not found, the program will ask you to select the table.
Follow the messages on the console. There may be program messages.
Program settings are available in the normal settings dialog AutoCAD (_Options command) at last tab «A>V>C> PageNo». This window can be called by clicking the small arrow in the bottom corner of the ribbon panel «A>V>C> PNo». There you can change the names of the desired attributes. To return to the default name, leave the field empty settings. You can select a number greater than 1 for the first page.
In the settings window there is a button for calling the insertion settings dialog in the table. The PNo command stores its own settings for Paste To Table. They may differ from the settings of the PTT command. Some settings affect the behavior of the PNo command
- Title - the command will insert “Table of contents” string in first row of table.
- Headers - the command will insert column headers “Page” and “Name” in start row of table of contents.
- Show dialog - if the option is enabled, the Table Select dialog will be displayed. Default off.
You can also adjust the output messages of the program, see the plug-in version and call window enter the activation code.
Суть дела в следующем. Есть проект, выполненный в одном файле.
В пространстве листа сформирован весь проект с соответсвующей нумерацией листов. Каким образом можно сделать так, чтобы при вставке или удалении листа нумерация остальных листов менялась автоматически? [sm1402]
Но вообще, такие файлы - извращение
Лучше уж воспользоваться Sheet set из автокад 2005
Или воспользоваться СПДС 2.5 / MechaniCS 4.5 - там это дело уже решено. Правда, не дешево оно обходится - что по деньгам, что по нервам.
__________________ --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
Насчет извращений ты не прав, удобно работать, когда весь проект в одном файле, все под рукой, всего лишь переключаешься между листами.
Используйте Sheet Set однозначно. И нумерация и общие данные и работающие ссылки и архивация в формате dwf(также с работающими ссылками) - все это Sheet Set
Насчет извращения - лично я согласен. Sheet set manager не зря ввели.
Ладно, это лирика. В момент вставки формата надо поставить флажок "Автонумерация". Для уже установленных форматок не рекомендую - номера будут проставлены по своей логике, которую без трех поллитр не поймешь (а к тому моменту уже не до када будет). Поэтому можно снести все установленные форматки и по новой их воткнуть.
Единственное НО: заполнение штампов - обрати внимание, что там и как пишется. Тоже бывает, настроение портит
--- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
В спдс2.5 нумерация автоматическая листов идет в рамке, а необходимо в правом верхнем углу. Да, нельзя ли подробнее про Sheet Set , к своему стыду, я с этой функцией не знаком
Гхм. А с чего это он там? Хотя, в принципе, можно, наверно, отредактировать их шаблоны, но головняка будет.
Про sheet set manager можно прочитать здесь.
--- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
Что касается нумерации листов, то кроме нумерации в штампах, идет сквозная нумерация альбома в правом верхнем углу, не я это придумал, а гемороя доставляет. За полезную ссылку большое спасибо.
Я просто проставляю в месте штампа вместо номера блок с атрибутом. Потом просто запускаю прогу и она меняет значение атрибута этого блока на порядковый номер листа (как они следуют на чертеже).
Вот прога:
Сразу говорю с vla функциями я не сильно дружу.
Код однозначно можно оптимизировать и подстроить под себя.
[ATTACH]1123772657.dwg[/ATTACH]
__________________
Когда под рукой нет ничего кроме молотка - всё вокруг кажется гвоздями.
Выбор правильного инструмента - залог успеха в любом деле.
Если штамп свой, то программа проставляет номер листа и кол-во листов. Если чужой, т.е. имя блока не "*ШТАМП*", то нуиеруемый атрибут указывается вручную. Пользуйтесь на здоровье и сугубо и трегубо благодарите меня за то, что я есть.
ZZZ, огромная благодарность, при запуске кода вылетает окно вставки блока, но это единственное побочное явление, а все остальное делает отменно. Лентяю тоже спасибо, но мне требовалась
нумерация в углу страницы, штамп у меня сделан в виде блока с атрибутами- там и так все нормально заполняется.
Можно поподробнее.
Там только при вставке блока запрашивается значение атрибута, но это лечится легко, просто выставить в свойстве атрибута Preset на yes. А прога вызывать окно не должна, и у меня не вызывала ни разу.
У меня ищё вопросик к пользователям СПДС (у меня СПДС нет).
Там штамп вставлен блоком с атрибутами?
Усли да, то для универсализма, хотелось бы узнать имя блока и теги атрибутов лист и листов.
>Лентяй
У Вас прога меняет значение только в текущем листе. Но это легко изменить. За пример использования vla спасибо. Всё понятно. Получается лингвическая ситуация - "понимать понимаю, а сказать не могу". Это всё дело вкуса, на чём програмить.
Я считаю, что главное не способ реализации программы, а заложеная в прогу идея.
Может Вы знаете как на vla определить выбранные layout, в смысле кликаешь с зажатым ctrl.
Также у меня есть идейка проставлять номера листов и в начале имени листа (вкладки), что при публицировании их расположит так как надо и видно будет на вкладке какой лист.
__________________
Когда под рукой нет ничего кроме молотка - всё вокруг кажется гвоздями.
Выбор правильного инструмента - залог успеха в любом деле.
Штампами от спдс мы не пользуемся, сделали свои, если нужны, оставь
мыло, вышлю. А причин вылета окна может быть куча, у меня на каде чего только не навешано, временами довески друг с другом не ладят.
>Sergk
У Вас наверное какаято довеска использует реактор на редактирование блоков, а прога меняет значение атрибута.
Мыло моё есть в профиле, но мне самодельные штампы не нужны, так как у самого свой самодельный штамп.
Успехов.
__________________
Когда под рукой нет ничего кроме молотка - всё вокруг кажется гвоздями.
Выбор правильного инструмента - залог успеха в любом деле.
но мне требовалась нумерация в углу страницы, штамп у меня сделан в виде блока с атрибутами- там и так все нормально заполняется. |
А вот здесь - подробнее. В каком углу? Если в левом верхнем и текст ввкрх ногами, типа как номер чертежа по ЕСКД, то это одно, а если чего-то другое - то это совсем другое дело. Так что грузите детали, куда вам всунуть имя/номер листа, а я уже соот-но ихменю свой лисп.
Наверное уже все решили эту задачу, но.
Похоже что не конкретно тут указано.
Я решил это следующим, простым относительно способом:
Находим файл, на своём ПК,под названием- acad"год"doc.lsp. (в моём случае 2014) при установленном АКАД, или "accaddoc.lsp"(наверное английская версия), открываем с помощью Блокнота и в конце всего, задаём(записываем) переменную- "(setvar "useri1" (length (layoutlist)))".
Сохраняем. теперь у нас есть информация о полном количестве листов в зарезервированной переменной Useri1
(Думаю легче дописать строку в одном системном файле АКАД всем ПК в локальной сети проектирующей организации, чем каждому устанавливать плагины, или отдельные программы ради нумерации)
Это позволяет нам обращаться к переменной с общим количеством листов через заранее заданную LISP переменную, (системную переменную. )
После этого, при загрузки любого документа, у нас уже есть переменная с общим количеством листов.
Далее. достаточно обратиться к переменной Useri1 через поле c помощью Diesel Expression:
"$(getvar,useri1)"- чтоб иметь общее количество листов через свойство "поле" в числовом выражении.
Для текущего номера листа в зависимости от заданного названия по умолчанию "Лист1","Лист2","Лист3". в поле, в части для вставленного поля- Diesel Expression пишем следующее:
"$(substr,$(getvar,ctab),5)"
Этот метод работает при вставки полей.
Для текущего номера листа в зависимости от заданного названия по умолчанию "Лист1","Лист2","Лист3". в поле, в части для вставленного поля- Diesel Expression пишем следующее:
"$(substr,$(getvar,ctab),5)"
При 5 в конце формулы не выводятся четыре позиции с начала текста имени листа (при имени "Лист2" возвращает "2") при отсутствии символов возвращает "----", при 1 возвращает как есть!
При 5 в конце формулы не выводятся четыре позиции с начала текста имени листа (при имени "Лист2" возвращает "2") при отсутствии символов возвращает "----", при 1 возвращает как есть!
Есть файл, в нем несколько листов в пространстве модели, в штампе на каждом листе в месте простановки номера листа стоит блок с атрибутом "ЛИСТ", можно ли пронумеровать все листы (автоматически не выбирая каждый атрибут) если все листы точно распологаются друг за другом по Х . И если можно занесением общего количества листов (блоков с атрибутами "ЛИСТ") в штамп на первом листе (тоже блок с атрибутом "ЛИСТОВ").
Наверное многово хочу, но если кто знает подскажите.
Всё это просто как угол дома реализуется.
1. Выбери блоки штампа.
2. Отсортируй по Х
3. Расставь номера листов, заменой атрибута "ЛИСТ"
4. В первом листе замени атрибут "ЛИСТОВ"
Как-то поднималась тема по поводу нумерации свай. Переделанная программа под штампы. Тэги атрибутов блоков ЛИСТ и ЛИСТОВ
Маркирует по Х или У оси.
Спасибо за програмку, всё работает.
Можно сделать так чтоб не приходилось выбирать объекты, а сразу определялись блоки с атрибутом ЛИСТ и нумеровались по оси X или Y
Как уйти от такой ситуации, у меня на первом листе блок с атрибутами ЛИСТ и ЛИСТОВ расположен выше по Y,а все остальные на одном уровне, можно чтоб по Y не имело значения какая координата, сортировалось только в зависимости от X .
Огромное спасибо, то что надо
Вот нашел ваш форум, другого про нумеруцию листов нету. А если чертеж не в модели а на листах находится, и при этом:
Допустим имеем 10 листов, с похожими наименованиями, и поочередными номерами страниц. При это не обязательно чтобы первый лист начинался с 1, он может и с другой цифры начаться, ведь часть проекта может быть и в другом файле. Чтобы не переименовывать все листы по очереди (если есть нужда), было бы удобно заполнить название только первого листа, отметить все листы подлежащие перенумернацие, и получить в итоге похожие названия листов, разнумерованные по очереди. При этом перенумернацие подлежат только выделенные листы (ведь в файле могут быть листы которые не надо трогать).
Листы обычно у меня именуются так:
“1” “2” “3”
или
“К-1” “К-2” “К-3”
или
“КМ 1” “КМ 2” “КМ 3”
Модератору. Прсти что повторяюсь, но ты сам говорил ищи про нумерацию листов, вот я и нашел.
В штампике уже поле, а в шитсет пока не хочется лезть, хотя не исключаю на будущее
P.S. Дай свой файл пожалста. Посмотреть хочу как у тебя.
файлик не дам, извини А рассказать могу - в текст номера листа вставляй поле завязанное на номер sheet-а в подшивке, оно называется current Sheet number останется только в менеджере подшивок (sheet set manager) пронумеровать листы.
А понял, у тебя там сверх секретный проект. Мог бы хотя это все добро стереть, потом спургенить весь файл нафиг и только шитсет с полями оставить. Хотя и так понятно. Спасибо.
Я еще хотел узнать ты как ведомость чертежей делаешь. Тоже в шитсете? Ею можешь поделиться?
Читайте также: