|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
|
||||
Регистрация: 25.12.2005
Москва
Сообщений: 13,626
|
wetr, ты пойми, автор темы делает СТП для себя, для своей организации. Но он не может насаждать свои правила другим организациям. У себя он может удалить точки, но ведь в другой организации точки все равно останутся. Он не может удалить точки "как класс". И не надо думать за чужую контору, они сами сообразят, надо им точки удалять или не надо.
А по поводу СТП вообще - скажу так: сама идея подобных СТП ущербна, поскольку не имеет под собой законодательной базы. А сами точки ("Point") могут использоваться, например, при создании высотных отметок, по которым потом строятся горизонтали. Я раньше применял точки в 3D-построениях для удобной привязки "УЗЕЛ" ("NODE"). |
|||
![]() |
|
||||
Регистрация: 24.05.2009
Екатеринбург
Сообщений: 86
|
Кулик Алексей aka kpblc , насчет кода осмелюсь так сказать (if (<= cadver 2007) вместо (if (<= cadver 2010) и со строки(repeat 3 (vla-purgeall adoc)) программа работает некорректно, т.е. не выполняет нормально AUDIT и PURGE А так класс! Да хорошо бы пристегнуть переменную DEMANDLOAD! А насчет темы, точки - это частности! Главное инструменты, помогающие жить, неважно как их назовешь. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
Код в #18 подправил. Немного.
Насчет if и прочего: код вообще-то сделан для конкретной ситуации (например, explodeproxy2007.arx находится в путях поддержки AutoCAD), универсальный будет намного длиннее. В 2010 версии команда removeallproxy имеет немного другой формат, поэтому я там и сделал подобную проверку. Вот еще вариант (уже более гибкий, т.к. будет работать во всех версиях, где возможна подгрузка explodeproxy.arx); сам файл explode*.arx может находиться в любом уровне вложенности путей поддержки: Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 24.05.2009
Екатеринбург
Сообщений: 86
|
Кулик Алексей aka kpblc
Насчет вот этого не понял, поправите, если не так Цитата:
так что будет уместней (<= cadver 2007) А так за основу взял код из поста №24 и макрос на первую кнопку из поста №16 будет такой ^C^C^P(if(not clear-dwg)(load"clear-dwg"));^P(clear-dwg);_ai_selall;_copyclip;_qnew; переменную DEMANDLOAD наверно скриптом прикрутить к ярлыку запуска AutoCAD? А как объединить 1 со 2 кнопкой из поста №16 + листы? |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
В 2008:
Код:
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 24.05.2009
Екатеринбург
Сообщений: 86
|
В 2009 по крайней мере
Команда: removeallproxy Очистить список масштабов? [Да/Нет] <Да>: Но это первая чистка масштабов, основной инструмент - это приведение списка масштаба согласно ГОСТу, спасибо автору VVA http://forum.dwg.ru/showpost.php?p=302360&postcount=75 вот файл SetScale.LSP, где внесены эти масштабы |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
kheylan, у меня 2009 нет. Значит, в проверке надо либо устанавливать (<= cadver 2009), либо вообще отказываться от этой штукенции и пытаться выполнить удаление прокси-объектов самостоятельно (весьма неблагодарное дело на самом деле)
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 24.05.2009
Екатеринбург
Сообщений: 86
|
Кулик Алексей aka kpblc извини за назойливость. но я всегда понимал, что (if <текст-выражение> <выражение-тогда> [<выражение-иначе>]) (if (<= cadver 2007) (command "removeallproxy") (command "removeallproxy" "_y") ) ;_ end of if выражение будет выполняться для 2007,2006 и тд истина <выражение-тогда> а 2008, 2009, 2010, если ложь <выражение-иначе> |
|||
![]() |
|
||||
Я использовал в случах, когда надо что-то моделировать и передавать в стороннюю программу, которая требует именно точки.
Ещё у геодезистов разных специализаций (топосъемка, гоеметрия объекта) многим вспомогательным программам (или LISP'ам) надо скармливать точечные массивы. И которые отдают данные тоже в точках. В обычной работы вместо точки, как правило, просто рисуешь (п)линию нулевой длины :) P.s. Боярин, попроси автора перименовать-таки тему. Я думал, тут что-то вкусненькое, а тут какое-то уныние.
__________________
Reshaping the STEM field |
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
Александр Бауск, его уже 2 раза просили. Третья просьба будет уже более "жесткой": или переименовывается тема, или она закрывается через 12 часов.
kheylan, в 2008 версии запроса на восстановление списка масштабов нет. Учитывая, что в 2009 теоретически загружается такая же версия arx, что и в 2007-2008, там ожидать запроса бесполезно. Поэтому если версия AutoCAD до 2009 включительно, то выполнять explodeproxy. Если выше - с подтверждением очистки списка масштабов.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Более продуктивно было-бы рассказать как, например, нажатие на кнопку Линейный размер (не штатную кнопку, а самодельную) приводит к созданию стиля, пригодного для данного масштаба, слоя, в который размер устанавливается, оба становятся текущими и следует запрос, мол, давай, размерь. Потом восстанавливаются текущими то, что было до взятия команды. Как это сделать на макросах описано в книге Язык макрокоманд и создание кнопок. Но с тех пор много воды утекло. Появились аннотации. Хорошо-бы сделать подобное под них, да на лиспе. Алексей как модератор может закрыть тему, но как программист мог-бы ее и развить, в этом-ли направлении, или в подобном. Да и стоит-ли закрывать? Появится, возможно, другой автор и продолжит тему. Да и топикстартер не сказал последнего слова. Пусть считает мой пост направлением для размышления. Точки это действительно мелко для такого броского названия
|
|||
![]() |
|
||||
Регистрация: 24.05.2009
Екатеринбург
Сообщений: 86
|
Да, точки - это, конечно мелко, но это было нужно на тот момент. Но в шапке темы было написано: Предлагаю собрать здесь ссылки на команды, макросы и т.д., которые необходимы для поддержки стандарта.
Я думал народ поделится или посоветует что-нибудь! Примерно, вот в таком стиле: С 2008 появилась переменная SETBYLAYERMODE с помощью которой можно легко задать всем объектам свойства ПоСлою и варьировать ею задавая отдельные свойства ПоСлою. У нас свойства ПоСлою - один из постулатов стандарта. Свойства ПоСлою Нажмите кнопку. Свойства всех объектов будут ПоСлою ^C^C^P(setvar "setbylayermode" 127);_ai_selall;_setbylayer;;; Цвет ПоСлою Выберите объекты, чтобы задать Цвет ПоСлою выбранным объектам ^C^C^P(setvar "setbylayermode" 97);_select;\_setbylayer;_previous^M;;; ТипЛинии ПоСлою Выберите объекты, чтобы задать ТипЛинии ПоСлою выбранным объектам ^C^C^P(setvar "setbylayermode" 98);_select;\_setbylayer;_previous^M;;; Вес ПоСлою Выберите объекты, чтобы задать Вес ПоСлою, выбранным объектам ^C^C^P(setvar "setbylayermode" 100);_select;\_setbylayer;_previous^M;;; Последний раз редактировалось kheylan, 06.10.2009 в 21:41. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
kheylan, почти убедил. Но именно "почти". Самое главное: через месяц найти что-либо полезное в этой теме не сможет никто (если тема будет развиваться). И прежде всего саму эту тему никто не найдет.
В правилах, конечно, не прописано "один вопрос - одна тема", но это не зря рекомендуют. Одно дело - сносить объекты точек; другое - устанавливать параметры объектам; третье - создавать стили и т.п. Мешать все в одну кучу не есть гуд.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Vova, а зачем вообще создавать отдельный стиль под каждый масштаб? Dim scale overall исчерпывает эту проблему.
![]()
__________________
Reshaping the STEM field |
||||
![]() |
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Привожу пример из доаннотейского периода. Пусть есть несколько ВЭ с разными масштабами. Соответствующие куски модели надо заполнять внемасштабными элементами, в том числе и размерами. У нас делается так: сначала надо нажать кнопку масштаба. Скажем, 1:50. Затем все, что рисуется с кнопок нашего меню, исходит из мышки нужной величины. В том числе размеры. В проставляемый размер программа вкладывает нужный overall, при этом образуется стиль, в имя которого входит цифра 50. Образуется также слой, в имя которого входит 50. Только что образованным стилем в только что созданном слое (без всяких шаблонов и стандартов предприятия) проставляется первый и последующие размеры данного масштаба. При нажатии масштабной кнопки, допустим, 1:100 при нажатии затем разных кнопок вставки внемасштабного блока, текста, размеров, штриховок, типов линии все повторяется, образуются, если надо, новые стили и слои.
Ты предлагаешь вместо разных стилей для размеров иметь один, но много раз Style Overrides. Слои все равно надо плодить, иначе не получится отключить ненужное, если один и тот-же кусок попадает в разномасштабные ВЭ. Так тоже можно. программа при этом не упростится, количество стилей уменьшится до одного, но пользователям стремно видеть Style overrides. Все хотят с ним бороться, не понимая сути. Много стилей не напрягают, в отличие от Style Overrides Последний раз редактировалось Vova, 07.10.2009 в 04:38. |
|||
![]() |
|
||||
Регистрация: 24.05.2009
Екатеринбург
Сообщений: 86
|
Наверно тему нужно было начинать с основных пунктов проверки чертежа - это текстовые и размерные стили.
Начнем с текстовых стилей и приведение их к единому. Здесь у нас основной инструмент, хвала автору VVA http://forum.dwg.ru/attachment.php?a...9&d=1228383759 , на базе которого создан макрос ISO Сначала выбираем ISO, потом выбираем стили которые будем приводить в соответствие со стилем ISO (Совет- выбрать все) ^C^C_AUDIT;_Yes;^C^C_-style;ISO;isocpeur;0;0.8;0;_N;_N;^C^C^P(if (null C:CTS)(load "ChangeTextStyles"));CTS;(cts:layer-status-save);(ru-textstyle-update "*");TSUP;TEXTSTYLE;ISO;^H ISO - это наш стиль, ваш стиль может быть, который вашему сердцу мил. Жизнь нас заставила использовать этот инструмент, когда к нам стали приходить такие чертежи как "Невидимый текст" |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
kheylan, тебе достаточно было снять использование BigFont в описаниях стилей, а потом выполнить регенерацию. Это так, в качестве альтернативного решения.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |