|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Расчет спецификаций из мтекстов
ՃԱՐՏԱՐԱԳԵՏ, տ.գ.թ.
Торонто
Регистрация: 23.10.2007
Сообщений: 1,990
|
||
Просмотров: 204551
|
|
||||
Регистрация: 25.12.2005
Москва
Сообщений: 13,626
|
Видишь - Щитать никто не хочет.
Если бы у тебя был не MText, а Text, то я бы предложил посмотреть сюда: http://www.caduser.ru/cgi-bin/f1/board.cgi?t=19574jg |
|||
![]() |
|
||||
Цитата:
![]()
__________________
«Артиллерия не токмо грохот, но и наука!» Пётр I |
||||
![]() |
|
||||
Profan По указанной ссылке есть и для мтекса вариант. Большое спасибо..
Код выглядит так Цитата:
Последний раз редактировалось Red Nova, 27.01.2008 в 00:27. |
||||
![]() |
|
||||
Инженер Регистрация: 15.08.2007
Питер
Сообщений: 36
![]() |
Попробуй следующий код:
Sub SummaMText() Dim SelSetColl As AcadSelectionSets Dim CirSet As AcadSelectionSet Dim item As AcadMText Dim Summa As Double Set SelSetColl = ActiveDocument.SelectionSets Set CirSet = SelSetColl.Add("Mt") CirSet.Select acSelectionSetAll ' For Each item In CirSet Summa = Summa + CDbl(item.TextString) Next item CirSet.Delete Set CirSet = Nothing Set SelSetColl = Nothing MsgBox Summa ' выводит сумму в окне End Sub Эта прога тупо перебирает все входящие в активный чертеж МТексты и выдает в окне сумму входящих в них чисел. Если нужна сумма не всех имеющихся МТекстов, а только по выбору, или сумму выводить не в окне, а в другом Мтексте, то код надо будет доработать. ЗЫ: Гы, пока я писал код, сам нашел :-)
__________________
Ошибку нашел и исправил, но в чем она заключалась, так и не понял... |
|||
![]() |
|
||||
А как на счет того, чтоб проводить более сложные вычисления, отмечая цифры мтекста. Скажем отнять, умножить, вознести в квадрат. Для этих целей наверное программка посложнее нужна, с интерфейсом похожим на калькулятор. Никто не знает такой для 2008-го?
|
||||
![]() |
|
||||
Лисп с поста 5 работает так. Выбираешь мтксты или тексты, enter выходит сообщение что сумма цифр равна ***. Далее указываешь точку где в последствии появляется мтекст с содержащейся искомой в нем суммой. Программа хорошая, но уж очень хочется чтоб в конце сумма не выводилась в новом мтексте, а записывалась в уже существующий мтекст по принципу оверрайт. Прошу помочь с переделкой лиспа.
|
||||
![]() |
|
||||
Цитата:
__________________
14 Ибо если вы будете прощать людям согрешения их, то простит и вам Отец ваш Небесный (Мф 6, 14) |
||||
![]() |
|
||||
Инженер Регистрация: 15.08.2007
Питер
Сообщений: 36
![]() |
С ЛИСПом не знаком, а на VBA попробовать можно.
Скинь небольшой файл, с которым можно работать. Укажи, какие МТЕксты складывать (или какие другие мат. вычисления), а в какой - вставлять результат... Может, там какие критерии есть для выделения или еще что... Без этого задача кажется совсем неопределенной...
__________________
Ошибку нашел и исправил, но в чем она заключалась, так и не понял... |
|||
![]() |
|
||||
В штатном калькуляторе цифры надо копировать поштучно, а используя лисп с поста 5 можно отметить разом нужные мтексты содержащиеся в которых цифры надо сложить, и результат выводится в новом мтексте, только мне удобнее чтоб результат вписывался в уже существующий мтекст.
>Критерий никаких при выделении нет, выделяешь нужные мтексты, те что рядом – рамкой, другие поштучно, enter, результат готов. Попробуй попользоваться Лиспом с поста 5, думаю станет понятно. А экспериментировать можешь с любым файлом где создано несколько мтекстов с содержащимися в них цифрами, скажем 2, 15, 56. Выделяешь их, складываешь, насколько я помню алгебру, результат равен 73, ну или возле того. ![]() |
||||
![]() |
|
||||
конструктор Регистрация: 05.03.2007
Сообщений: 64
|
Цитата:
Цитата:
Код:
|
|||
![]() |
|
||||
конструктор Регистрация: 05.03.2007
Сообщений: 64
|
|
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,445
|
Ну замени
Код:
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Инженер-теплотехник Регистрация: 17.08.2006
Смоленск
Сообщений: 311
|
Где-то здесь уже выкладывал этот лисп, но даже сам найти не смог
![]() Программа написана без использования vla-функций, работает на 2002-м АвтоКАДе, по идее пойдет и на Brics/ZW/Proge CADах. PS: Что за прикол с похожими темами? Это по какому критерию они похожи? |
|||
![]() |
|
||||
Инженер-теплотехник Регистрация: 17.08.2006
Смоленск
Сообщений: 311
|
>> Red Nova
Ну-у, собснно, в 2008-м я не тестировал, даже не видел ![]() Только что проверил этот же файл на седьмом - все работает. После первого запроса Esc случайно не нажали? Если нет, тогда в коде убрать переопределение функции *error*, и посмотреть, какую ошибку выдает. Это что-то: ни у кого из знакомых нет АвтоКАДа 2008! Так что сам никак проверить не смогу. ![]() |
|||
![]() |
|
||||
Дома прогнал на 2007-м, тоже самое, не работает, а на домашнем 2008-м (у меня и тот и другой стоят) работает, но как я понял не совсем корректно.
После запуска команды 1.Укажите текст или [ Число / Функция / Результат / Выход] <Выход>: Дальше если нажать на кокой–либо текст выходит вот что 2.Выберите действие [ + / - / * //] <Отмена>: Выбираешь Кокой–то знак, далее в ком. строке пишется идущее вычисление, если выбрать подменю, скажем 3.Результат Тогда выходит послание 4.Вы хотите выйти без сохранения результата вычислений? [Да / Нет] <Нет> По–моему после пунктов 1 и 3 идет неправильное действие. И почему это интересно программа так непостоянна, более менее заработала на одном компьютере из трех. ![]() |
||||
![]() |
|
||||
Инженер-теплотехник Регистрация: 17.08.2006
Смоленск
Сообщений: 311
|
Странно, впервые с таким сталкиваюсь. Есть большой парк машин, когда-то проверял на 2002, 4, 6, 7 АвтоКАДах и на разных машинах - везде работало нормально. Может надстройки какие-то есть, вроде СПДСа? Хотя не должно бы влиять.
При правильной работе должно выглядеть так: Код:
В начале выбираемых текстов обязательно должны быть какие-либо цифры, если что другое - такой текст не считается числом. Если в начале работы программы выбрано или введено с клавиатуры число автоматически появится запрос на выбор действия (+-*/); если в начале было задано это действие, то такого запроса не будет. Так что пункты 1 и 2 правильны. Есть возможность выбирать опции при любой раскладке клавиатуры, т.е. а(англ)=ф, d=в(рус), x(англ)=ч и т.д. Цитата:
Если программа не работает по приведенному выше сценарию, выложите здесь пример файла с текстами (в формате 2004 или 7 КАДа) и листинг из комстроки с запросами программы и Вашими ответами. Последний раз редактировалось Олег К., 06.02.2008 в 10:41. |
|||
![]() |
|
||||
На работе вчера менял AutoCAD, сейчас программка тут работает. С одним из вопросов разобрался, остался вот кокой вопрос. После этой строки
Укажите текст или [ Число / Функция / Результат / Выход] <Выход>: р enter какое подменю я б не выбрал, пишет Вы хотите выйти без сохранения результата вычислений? [Да / Нет] <Нет> Следовательно, не выходит никуда вписать результат. |
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,445
|
Попробуй выбирать через конт.меню.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Инженер-теплотехник Регистрация: 17.08.2006
Смоленск
Сообщений: 311
|
"Ничё не понимаю" ©Колобки.
![]() Хотя стоп. Вы же вводите опции по русски? Тогда возможно виновата русская кодировка. У меня ANSI 1251. Попробуйте вводить опции в английской раскладке (выше упоминал). Остается только такое решение. Похоже при неопознанной опции сбрасывается в "пустой ввод", а он по умолчанию = выходу. Последний раз редактировалось Олег К., 06.02.2008 в 14:00. |
|||
![]() |
|
||||
Олег К .Попробовал с клавы, заработало. Спасибо.
![]() Товарищи программисты, есть вопрос по Лиспу с поста 16. С применением этого лиспа, после того как все нужные цифры выбраны, когда жмешь enter вылетает сообщение, что сумма мол такая–та. Жмешь на OK, после этого выбираешь мтекст в который надо все вписать. Можно ли убрать из последовательности вылетающее окно с сообщением о результате? То–есть выбрал цифры которые надо сложить, enter, выбрал текст в который вписываешь результат, enter, конец. ![]() |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Находишь в тексте красную строчку
Код:
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Еще один вопрос к программистам. Лисп отзывается только когда клавиатура на английском, если в этот момент печатаешь на русском, то приходится менять язык для вызова Лиспа. Подскажите пожалуйста как сделать так, чтоб лисп вызывался и в случае ввода русских букв соответственного расположения на клавиатуре?
![]() |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Это ты про какой лисп? Уточни. Тут их много
![]() По поводу русских букв, ты имеешь ввиду вызов команды или опции? Для команд: для примера возьмем лисп из #16 Там определена команда: (defun c:z-calc-text-value (/ value ent obj ss) далее по тексту И добавляем свои команды (например команду Z и Я) Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер-теплотехник Регистрация: 17.08.2006
Смоленск
Сообщений: 311
|
Для подсчета размеров, но только не переопределенных вручную.
Заменить соответствующие строки программы приведенными ниже: Код:
а, и еще изменить номер версии на 4.2 |
|||
![]() |
|
||||
Олег К. Спасибо, работает. А можно так сделать, чтоб в конце можно было результат не в текст списать, а в размер вписать, по принципу text overwrite? И как с размерами, которые уже overwrite? Их тоже иногда сосчитать нужно бывает.
|
||||
![]() |
|
||||
Инженер-теплотехник Регистрация: 17.08.2006
Смоленск
Сообщений: 311
|
Сделаю, но быстро не обещаю, своей работы привалило.
Завтра к вечеру-послезавтра. Для взятия переопределенных размеров строки 61-63 заменить на следующее: Код:
Последний раз редактировалось Олег К., 12.02.2008 в 14:30. |
|||
![]() |
|
||||
Инженер-теплотехник Регистрация: 17.08.2006
Смоленск
Сообщений: 311
|
Надо же, все оказалось проще, чем думал. Мог бы и вчера доделать.
Выкладываю последний вариант. Добавлена работа с размерами и вставка результата в размерный текст, вот только радиусы и диаметры не берет, и дуговые в радианах считает. Да так ли уж часто нужно такие размеры вычислять. Установка числа знаков после запятой снесена в пункт "Опции", по умолчанию =1 (самого этот запрос уже достал). Нельзя ввести ноль - так я от деления на ноль избавился ![]() Еще просьба, кому не лень потестируйте программку в AutoCAD 2008, ZW/Proge/Brics CADах. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Чуток подправил твой код. Теперь игнорирует угловые размеры, обрабатывает дуговой размер. Надеюсь ничего не испортил
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер-теплотехник Регистрация: 17.08.2006
Смоленск
Сообщений: 311
|
Сейчас АКАД заново загрузил, исходная версия v4.3 тоже нормально работает, разве что угловой размер не исключается. В #41 я малость дуговой и угловой размеры перепутал. Вообще, для углового размера можно сделать пересчет из радиан в единицы чертежа, но думаю не стоит мешать линейные и угловые величины.
Кстати, это может быть выложено в "Готовые программы"? Если да - нужно в некоторых местах до ума довести, нет - и так сойдет. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Правь и выкладывай. Я в версию 4.3 как раз и добавил обработку дугового размера и исключил из обработки угловой
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Благодарю. Хорошо сделано.
У меня есть предложение объединить хорошие стороны лиспов выложенных на этом форуме. Есть лисп выложенный Олегом (textcalc4.3) и лисп с поста 16, взятый с сайта caduser. Перечислю положительные стороны каждого (ИМХО). textcalc4.3 – есть возможность работать не только с текстом и мтекстом, но и с размерами используя одну команду. Есть возможность контроля количества цифр после запятой. лисп с поста 16 – Процесс выполнения действий упрощен, можно минимальным затратами времени сосчитать сумму текстов (я еще более его упростил, избавившись от вылетающего окна с содержанием суммы вычисления). Еще тут радует возможность не поштучного выбора, а группового (рамкой). Как бы я хотел чтоб выглядел финальный лисп. При всех достоинствах лиспа от Олега должен сказать, что постоянная нужда выбора подкоманд сбивает с толку, и нет возможности выбрать насколько объектов рамкой. На данный момент я использую оба лиспа. Создал несколько копий Лиспа с поста 16, в них поменял команды вызова и каждому задал определенную функцию ( + - * / ). Фактически нужными для меня оказались команды складывания и умножения. Для работы с размерами я пользуюсь программой от Олега. Олег создал очень интересную программу, с возможностью в процессе вычислений менять функцию, но как показывает практика важнее чтоб команда работала быстро. Предлагаю создать облегченную программу, состоящую из четырех команд (по команде на функцию), без запросов на подфункции. Знаю некоторые возможности созданные Олегом пропадают, но цель в убыстрении процесса вычислений. То есть команда после вызова работает так. (пример для суммирование) -выберите объекты, выбираем размеры или тексты которые нужно просуммировать (выбор возможен и рамкой и поштучно), enter, -выберите объект для записи значения, выбираем размер или текст, enter, (здесь как альтернативу enter-у думаю уместно разместить подменю по поводу округления, после чего опять-таки выбираем объект для записи, enter,) Процесс окончен. Если вы заметили количество действий сведено к минимуму. При этом количество цифр после запятой (округление) предлагаю по умолчанию оставить 1, для других случаев можно оставить запрос от 0 до 9. Надеюсь такой переделанный вариант программы приемлем для Олега, как для автора textcalc. ![]() P.S. textcalc и без предложенных мною изменений рекомендую в “Готовые программы” Последний раз редактировалось Red Nova, 14.02.2008 в 14:55. |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Вот мой аналог #16. Правда результат пишет в новый текст, но это поправимо. Из особенностей:
Разбирает Мтексты по параграфам, Безразличен к . или , в разделителе Остальное в коментариях Код:
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 14.02.2008 в 19:17. Причина: Без запроса Select object: |
|||
![]() |
|
||||
Инженер-теплотехник Регистрация: 17.08.2006
Смоленск
Сообщений: 311
|
На самом деле textcalc может и быстрее работать. В начале выбираем Функция > + > enter и щелкаем подряд на текстах. Есть программа для суммирования, получена урезанием textcalc-v3.2, но там нет размеров и вывода в текст, только в комстроку.
Насчет доработок буду думать. Выбор поштучно или рамкой. Если использовать ssget, то сразу после запроса "Выберите тексты:" вылазит "Select objects:" и от этого никак не избавиться. Мне такое не нравится. А вот при entsel'e пользователь более-менее точно знает в какой именно текст он ткнул. По некоторым причинам не хочу использовать vla-функции. Подумаю, что-нить изобрету. Запрос на кол-во цифр после запятой: "Выберите объект для записи значения [Опции] <Назад>: ". В опциях выбор кол-ва цифр, не зашел в опции - по умолчанию =1. Неплохо бы посмотреть как оформлять готовые программы. VVA или kpblc, ссылку на пример не дадите? Вы вроде собирались эти разделы (программы и функции) к единому виду приводить. Добавлю. Да, можно сделать выбор объектов оптом. Все хорошо, когда используются операции сложения или умножения. А каким образом при "-" и "/" выбрать из набора из чего вычитается и что делится? По-любому первый элемент вычислений придется выбирать отдельно от последующих. Получается три разных программы надо: общая(???), + и *, - и /. Последний раз редактировалось Олег К., 14.02.2008 в 14:27. Причина: думал |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
>Олег К. Там в основном говорилось как оформлять готовые ф-ции. Пример- любая ф-ция в разделе "Программирование->Библиотека функций"
В преамбуле при оформлении готовых программ нужнро описать для чего применяется, какие-то нюансы и органисения. (типа округление чисел из переменной LUPREC, угловые размеры не обрабатываются и т.п.). Дать возможный вариант макроса на кнопочку. Как пример см. здесь Проблема с запросом "Select objects:" тоже решаема, см. новый вариант кода с #46. Там этого запроса нет. Думаю с тем как это сделано разберешься. Так что, как говорится, "Даешь много хороших и разных программ"
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
VVA Жду вариант с возможностью вписать в текст или размер полученный результат. А в этой программе тоже можно сделать из + скажем * при помощи замены кокой–то строчки? Еще очень хотелось бы возможность поиграть с округлением.
Олег.К Честно говоря умножение или отнятие мне ни разу не приходилось использовать (на случай если с ними не получится). Еще в твоей программе плохо то что на моем компьютере (и дома и на работе) не получается мышкой выбрать подменю, команда норовит закончить вычисление. Приходится Клавой работать. |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
res (+ res (apply '+ (mapcar 'atof str)))) и (apply '+ меняем на (apply '*
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
> dextron3 Это спрашивай не у меня, а у Red Nova
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Red Nova, поделись где этот лисп суммирование размеров применять будешь,
я реально не могу найти ему применение... Буду благодарен
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Был у меня тут чертеж, где некоторые размеры переписаны (длинная цепочка), а сверху цепочки надо проставлять общий размер, равный сумме всех переписанных, вот и возникла идея, что если отметить сразу все размеры, суммировать их значения, можно результат вписать в общий размер.
|
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Пробуйте. Команды
SumTN - суммирование тестов в новый текст sumTE - суммирование тестов в существующий текст mulTN - умножение тестов в новый текст mulTE - умножение тестов в существующий текст Команды суммирования/умножения в существующий текст (sumTE, mulTE) могут вставлять полученный результат в текст, размер, атрибут блока, заполненную ячейку таблицы.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
VVA, Попал в точку, то что нужно. Быстро и удобно. Спасибо.
С вопросом разобрались. Теперь хочу предложить кое что посложнее. Как насчет полноценного калькулятора, способного работать с содержанием мтекста, размеров, длин отрезков, площадей замкнутых линий и штриховок и т.п. (выбор объектов происходит как в лиспе с поста 55)? Или уж совсем извращенная мысль. Я пользуюсь numlock калькулятором, может есть вариант его заставить видеть объекты AutoCAD-а? Допускаю что может на этот раз меня занесло, и идеи абсурдные, но было–бы здорово. ![]() |
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,445
|
Red Nova, у тебя какой версии AutoCAD?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Инженер-теплотехник Регистрация: 17.08.2006
Смоленск
Сообщений: 311
|
>> VVA Ну и программка! Куда уж мне теперь лезть!
![]() >> Red Nova По #56. Эт конечно интересно когда надо посмотреть разницу реальной длины объекта и того, что на размере указано. Хотя не совсем понимаю зачем, это в свойствах размера посмотреть можно. Для подсчета длин линий тут программок разных до фига было, ничего изобретать не надо. Для площадей замкнутых фигур и штриховок есть команда AREA. В общем, попробуете объяснить зачем это все в одну кучу сгребать. У меня фантазия не развитая ![]() |
|||
![]() |
|
||||
Цитата:
А смысл в том, чтоб иметь калькулятор, в который можно вместо цифр ввести любое значение меры длины или там еще чего из AutoCAD. Нечто похожее на встроенный калькулятор, но с расширенными возможностями выбора объектов (у встроенного только длина отрезка, угол и координаты). Я часто использую Numlock калькулятор, для спецификаций (с мтекстом правда благодаря Олег К. и VVA разобрались), и других целей, когда в калькулятор вводишь вместо цифр параметры объектов AutoCAD. Разве у вас такого не было? Вопрос сейчас не в том чтоб узнать конкретный параметр (длина, площадь, сумма мтекстов…), для этой цели инструментов вроде как достаточно, а в том, чтоб значение этого параметра быстро ввести в калькулятор. |
||||
![]() |
|
||||
Инженер-теплотехник Регистрация: 17.08.2006
Смоленск
Сообщений: 311
|
Что интересно, в панельке свойств объекта около длины, площади и тп есть значок калькулятора, т.е. это значение можно ввести в калькулятор при его вызове. А вот из калькулятора указать нужное значение уже не получается (AutoCAD 2006). Недоработочка, однако.
А вообще, я никогда не пользовался этим калькулятором, еще с 14-го привык вычисления вести в комстроке через функции лиспа. |
|||
![]() |
|
||||
Цитата:
|
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Для внешних калькуляторов можно значение посылать в clipboard.
Код:
(copyToclipboard "12345") Ну и соответсвенно в калькуляторе вставить из буфера. Подводные камни могут быть в том, что использует внешнее приложение в качестве разделителя дробной и целой части (. или ,)
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
VVA – Как я понял копируется в буфер то что вводишь между кавычками, скажем написал (copyToclipboard "12345"), копируется 12345, если написал (copyToclipboard "gameover"), копируется gameover . Только не понял где это применять? Ведь если вводить что-то в ком строку, но легче это дело сразу в калькулятор ввести. Может я чего не понял?
Меня интересует как ввести в буфер какой–ни–будь параметр объекта AutoCAD. Скажем длину отрезка, или что еще. При этом надо избежать того чтоб сначала эта цифра выходила в ком строке, а-то в таком случае и copy paste сойдет. Если на счет лиспа я что-то не верно понял прошу уточнить. |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Ну так это и имелось ввиду. Есть куча лиспов, считывающих длинну, площадь выбранных примитивов. В конец к ним добавляешь copyToclipboard, и полученный результат копируется в буфер
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, вопрос не в тему конечно, есть ли такой лисп который округляет текстовые приметивы: 3.1459873 было, 3.15 стало, выбор рамочкой все числа,
размеры исходных текстовых приметивово остаются теже, меняется только содержание... буду благодарен
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Выбирай
http://www.caduser.ru/forum/index.ph...#message223183 http://dwg.ru/f/showthread.php?t=3114 http://dwg.ru/dnl/28
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 13.05.2011 в 16:27. |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, спасибо за первую ссылку, там твой лисп TOKR!
(примеч. автора: используется для округления чисел полученных в НумЛук калькуляторе, так как встроенный округлитель работает не совсем так как нужно округляет нормально, но когда большое число разделяет пробелами, что для автокада не допустимо пример: 123 282 000.00, потом с этим числом математические операции не возможно произвести)
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Tokr работает только для текса, VVA, может сделаешь вариант для мтекста, а еще лучше скрестить tokr + sumt, так, чтоб если после завершения выделения текстов нажать enter, то разницы никакой от стандартных действий sumt, но если вместо enter зайти в подменю, можно выбрать любое значение округления от 0 до 9. Да и еще, по умолчанию хорошо бы настроить sumt, чтоб он ответ выдавал округленным с одной цифрой после запятой. Смогём?
![]() |
||||
![]() |
|
||||
Пока VVA думает, у меня еще одна мысль возникла. У меня спецификации “нарисованы”. Часто в спецификациях надо бывает умножить все цифры одного столбца на все цифры второго, и ответ записать в третьем. Можно ли так модифицировать sumt, чтоб когда выбираешь два столбца с мтекстами, то цифры с одинаковой координатой У умножаются друг на друга, потом отмечаешь третий столбец с мтекстами, и результаты умножений вписываются в третий столб, при этом результат вычисления каждой строки вписывается в мтекст на против (у ответов та же координата Y что и у умножаемых цифр).
|
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
1. По поводу tokr + sumt - думаю
2. По поводу хорошо бы настроить sumt, чтоб он ответ выдавал округленным с одной цифрой после запятой - уже все настроено. Просто мне нравятся 2 цифры. Кто со мной не согласен, тот в коде из поста #55 ищет строчки, начинающиеся с (operate_text ... [типа (operate_text '+ t 2) ], так вод 2 - это и есть количество знаков округления. 3. По поводу часто в спецификациях надо бывает умножить все цифры одного столбца на все цифры второго dextron3 такая мысль пришла раньше. Такой лисп есть, причешу - выложу
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Короче так. Всех защитников - с праздником, полузащитников - с полупраздником, нападающих пропускаем. В честь столь знаменательного события, а так же по причине окончания заседания нашего дружного коллектива, находясь в приподнятом настроении, в здравом уме и твердой памяти выкладываю на растерзание сей опус. Измененные и дополненные команды:
SumTN - суммирование тестов в новый текст SumTE - суммирование тестов в существующий текст MulTN - умножение тестов в новый текст MulTE - умножение тестов в существующий текст TOKR - округление текста MulTC - перемножение текстов столбцами Из всего самой большой модификации подверглась TOKR. Округляет тексты, мтексты. Причем мтексты разбирает по параграфам, округляет, потом обратно собирает, снося при этом форматирование. Если в тексте есть поле, то оно перепишется его округленным значением. Я заложил возможность пропустать тексты с полями (игнорировать их), но пока не активизировал. Для активизации нужно найти в коде сточку (text-round item okr t) и заменить на (text-round item okr nil) *** Добавлено MulTCv2 - перемножение текстов столбцами вариант 2 (одной рамкой) sumTSet - установки округления и высоты новых текстов *** Добавлено 03.03.2008 Изменения в сортировке+Beta-версия команды SPEC *** Добавлено 04.03.2008 Чуть подправленная версия SPEC + GRPSP по ТЗ #110 *** Добавлено 04.03.2008 №2 Ноль в массе всех деталей краснеет *** Добавлено 04.03.2008 №3 Если в длине последний символ М (русское или английское), регистр значения не имеет, то значение длины умножается на 1000 ***Добавлено 05.03.2008 Можно обрабатывать 4 или 5 столбцов в команде SPEC, если текст начинается с цифры, то считается что это лист
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 05.03.2008 в 16:54. Причина: Изменения |
|||
![]() |
|
||||
Присоединяюсь к поздравлениям. За лисп спасибо, оценил. Вот тока теперь постоянно с начала идет запрос по поводу округления, а я люблю когда попроще. Попробовал пошарить в лиспе, поменял в некоторых строчках значения на 1 (по аналогии с твоим советом), но напортачил и делу не помог.
Прошу выложить версию с прежним параметром округления по умолчанию для всех функций (у тебя ведь 2 было). А вопрос округления оставить только у TOKR (ну там уж точно без этого никак). По поводу MulTC, тоже оценил, правда ты пошел другим путем, как я понимаю акцент тут стоит не на координате, а на очередности, в результате надо сначала отметить первый столб, потом второй, потом третий, если же акцент стоял на координате, то можно бы было отметить первые два столбца сразу (а может и все 3 сразу, если глубоко подумать). Мелочь конечно и в общем несущественно два действия или три, но как-то всегда думаешь о самом кратком пути. В остальном все путем. Спасибо за труд. |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, с днем защитника отечества тебя!
Предложения: 1. Не пойму для чего при вставвке текста нужно вводить размер (высоту букв), почему не берется высота суммирующихся текстов? (или это кому то особо важно) по аналогии с TextMath калькулятором 2. Последние две команды сверхнеобходимые и нужные, вдвойне спасибо 3. Твои лисп приложения самые рабочие
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 22.02.2008 в 23:13. |
|||
![]() |
|
||||
Мне в голову пришла развратная мысль
![]() Возьмем к дискуссии расчет веса одного лишь элемента, пусть это будит листовая сталь. В строке спецификации данные о элементе записываются так (в отдельных мтекстах). Марка -5х350 Длина 500 Количество 5 Вес ? Вес всех ? Вариант не по госту, но рассмотрим его. Чему равен вес одной детали 5*350*500*(7.85E-6)=6,9кг Вес всех деталей 6,9*5=34,3 (если не учесть неокругленный вариант то 34,5, но мы ведь люди точные ![]() И так задача сводится к тому чтоб взять и помножить из первого текста 5 и 350, помножить их потом на второй текст, ответ вписать в четвертый текст, потом помножить его на количество, и вписать в последний текст, при этом предполагается что тексты веса уже существуют, надо их переписать. Таким образом надо игнорировать – и х из первого текста (не знаю возможно ли это). Прибавлю что x может быть как русской так и английской буквой. В общем идейка вполне на грани бредового ![]() ![]() |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Red Nova, лучше бы в ЕКСЕЛЕ все это сделать, но перенос в автокад почемуто не корректен, жду пока толковую программу выпустят для
правильного пренеоса в Екселл, существующие средства автокада не годятся, не забывай там куча профилей а не только один лист Сделай пока не придумали как я: 1. Создай спеку для всех толщин 2. Сделай последний дополнительный столбик с массой одного метра погонного или квадратного 3. И потом тупо перемножай, а в лайаутах эти цыфры не показывай как бы отрезай 4. я так для дерева сделал
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Цитата:
![]() Попобуй - может понравиться! ![]()
__________________
14 Ибо если вы будете прощать людям согрешения их, то простит и вам Отец ваш Небесный (Мф 6, 14) |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Внес изменения в код поста #72 . Постарался учесть все предложения.
Цитата:
Еще я задал вопрос в #72 (сейчас выделил красным), ответ на который пока не получил
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, спасибо использую только 2 команды лучших аналогов в инете не встречал, особенно второй команды
TOKR - округление текста MulTCv2 - перемножение текстов столбцами вариант 2 (одной рамкой) 1. MulTCv2 в каком диапазоне прыгать могут по Y тексты, чтобы программа выполнялась, или тут ведется подсчет по близлежащему по Y боюсь совершить ошибки при выполнении, а то чреевато подзатыльник от прораба получить 2. Про поля: то я их не использую и не заморачиваюсь 3. MulTCv2 не корректно работает когда выделяешь два столбца по запарке, хотелось бы чтобы выдавалось окно с ошибкой, а то принцип перемножения не понятен (имеется ввиду при выделении всего лишь двух столбцов)
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 25.02.2008 в 19:48. |
|||
![]() |
|
||||
VVA, пока лисп не смотрел, щас буду, на счет вопроса с поста 72, думаю содержание поля следует пропустить (если нет возможности округлить без того чтоб поле потеряло свои функции). А лучше скажи как эту возможность включить, а кому надо сам сделает.
А как насчет вопроса с поста 75 ![]() Wetr, сегодня вновь поставил VetCAD++ (AutoCAD2008), вариант интересный. Вот только у меня СПДС, не знаю как VetCAD с ним сработается, на первый взгляд не очень, и еще не знаешь как сделать так, чтоб мтекст открывался в Акадовском редакторе, А не в Веткадовском, раздражает очень? VetCAD еще потыкаю, не исключаю что пригодится, но пока мне милее обычные мтексты а не блоки, вот бы еще наши программисты на счет автоматизации расчета спецификации с мтекстами программки написали, было бы блаженство. |
||||
![]() |
|
||||
VVA, Просмотрел программу, очень понравилась в sumTSet то что после перегрузки Акада последняя установленная цифра количества единиц после запятой сохраняется в памяти. Это очень полезно, я даже и не наделся на это.
На счет команды MulTCv2, нет слов, так как я в начале и представлял себе ее работу, радует то, что даже при несовпадении координат, программа “думает”, и при набольшем разбросе правильно выполняет действие, я хотел было на такую возможность намекнуть, но не успел, ты сделал все так как надо. |
||||
![]() |
|
||||
Цитата:
А СПДС разве спецификации не умеет считать?
__________________
14 Ибо если вы будете прощать людям согрешения их, то простит и вам Отец ваш Небесный (Мф 6, 14) |
||||
![]() |
|
||||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||||
![]() |
|
||||
Wetr,
Цитата:
Цитата:
Последний раз редактировалось Red Nova, 26.02.2008 в 10:56. |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, вот скриншоты работы команды MulTCv2 для 2х столбцов,
алгоритм не могу сообразить, почему так получается, почему нет окошка об ошибке, если сделать по запарке:
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Было такое дело. Исправил код в посте #72. Так получалось потому, что общее количесво текстов кратно 3. Изменил алгоритм сортировки. Теперь такого быть не должно
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 27.02.2008 в 09:18. |
|||
![]() |
|
||||
VVA, ТЗ составил для основного каталога используемых мною профилей, если кто что хочет добавить, прошу.
Спецификация немного не по госту, но думаю это простительно. (В дальнейшем можем и для других видов спецификаций создать команды подсчета) После завершения действия команды думаю будит уместно если в случае нераспознавания некоторых строк мтексты в графах масс этих строк станут красными. Таким образом можно будит избежать ошибок. (А еще может вылетать сообщение об ошибке.) Цвет использован для того чтобы не путать переменные, в настоящих спецификациях цвет не имеет значения. Надеюсь удастся избежать использования отдельных команд для разных профилей, и программа будет по первому символу мтекста распознавать какое действие тут нужно. (По первому, поскольку дальнейшее содержание не всегда идеально, иногда может быть пропущен или добавлен пробел, или точка, и.т.п.) Отмечать мтексты для расчета следует как в MulTCv2 , то есть отмечаем разов все строчки, и столбцы от графы "Марка" до графы "Вес всех деталей". Прилагаю фонты СПДС, без которых нельзя, в них имеются знаки обозначения профилей. Надеюсь трудностей с исполнением не возникнет, хотя понимаю что труд предстоит значительный и довольно сложный. Заранее благодарю. ![]() |
||||
![]() |
|
||||
геологоразведка, строительство Регистрация: 14.10.2003
Магадан
Сообщений: 311
|
>> VVA
Программа TOKR для нижеследующего MTEXT выдает 0, а по идее должна выдавать 123.456. (1 . "asd{\\Ftxt|c0;f as123.45600\\fTimes New Roman|b0|i0|c0|p18;\\C1;d}f")
__________________
Лень - великий двигатель прогресса! |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA
По мотивам предыдущего лиспа: Предыстория: Черчу последнее время чертежи КМД, рисую косынки (обычный многоугольник если для автокада, из обычных линий или полилинии замкнутой) образмеренные, все стенки и габариты листа. Нужен лисп который находил бы самый большой размер по вертикали, и самый большой размер по горизонтали и округлял бы в большую сторо- ну с шагом по 50мм (было 373 стало 400, было 210 стало 250) Есть предположение что можно высчитывать по габаритам самого элемента Лисп в работе по приведенному скриншоту: 1. Выделите деталь с размерами 2. Размеры заготовки: x=750мм, y=900мм Если уже сталкивался с такими задачами помоги ....
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 27.02.2008 в 07:29. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
>dextron3
Код:
Программа TOKR округляет текст целиком. Поиск и округление чисел в тексте оставлю себе в качестве домашнего задания. >Red Nova Скачал, но пока еще не вникал
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 27.02.2008 в 13:01. Причина: Округление в большую сторону |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, спасибо!
но хотелось бы чтобы округление было в большую сторону, тоесть 210 то 250, 201 то 250, 251 то 300, то есть на завод лучше отправлять с запасом когда будут нарезать, ведь лучше потом сточить чем наварить у тебя 210 округляет 200, теряем сантиметр
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Исправил
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Пробуй снова
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Посмотрел не выходных твое ТЗ. Кое-что накропал. Возникло пару вопросов, в основном касающихмя определения массы проката
1. Для примера возьмем Уголок равнополочный 100x100x10 по ГОСТ 8509-93 Расчет по твоей формуле По таблице проката ТО же для двутавров: I10 по ГОСТ 8239-89 - 9,46 кг I10Б1 по ГОСТ 26020-83 - 8,1 кг 2. Когда указано, что профиль состоит из 2-х двутавров (II), швеллеров ([];][), уголков, разве не надо массу умножать на 2? По п.1 вопросы: - насколько критична разность в массах для уголков? - раз уж все равно нужно "прикручивать" сортамент, может взять за основу «Прокат» Василия Кондрата ?
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 03.03.2008 в 16:56. |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, в этой формуле не учтены скругления полок,
я что то не пойму как выгледеть будет лисп про который идет речь как он будет функционировать если можно алгоритм написать? да из программы прокат само то, так как перебивать профиля из таблиц очень долго,...
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
VVA,
1.Согласен, я не учел округления, подумал, что это маловажно, поскольку очень трудно вывести формулу. Влияние округления в для разных размеров разное, ни добавив определенный процент ни добавив определенную массу точно не получается. Можно вложить в память все гостовские массы для уголков (тот же “прокат”), тока это довольно трудоемко, я не хотел тебя очень загружать. Но так конечно же будет безоговорочно точно. Лично я буду только рад. Для двутавров я формулу не писал, дал перечень из учебника (для двутавров с уклонными полками). Возможно я что-то не правильно дал, так что бери данные из программы “прокат”. 2. Подумал и решил что ты прав на счет сдвоенных профилей. Надо для них массу умножать на 2. |
||||
![]() |
|
||||
промышл проектант Регистрация: 26.05.2005
Изовсехщелей
Сообщений: 323
|
Насчет веса сортамента - ИМХО - логично не изобретать велосипеда и взять за основу базы из «Прокат» Василия Кондрата. Причем Базы 1-1 и из них уже вынимать. Имхо это даст возможность в будущем прицепить любой сортамент в базу спецификации, поскольку «Прокат» довольно популярен и базы под него пополняют многие.
|
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Бета-версия SPEC выложена в посте #72 (там еще некоторые шероховатости в сортировке mulTCv2 были устранены)
Пока-что без "прикручивания" сортамента, по ТЗ в #93. Тестовый пример: (недостающие шрифты CS_Gost2304 брать в #93) ниже. Формат 2004
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Высший пилотаж.
![]() Большое спасибо. Теперь нюансы. 1.С символом диаметр какие-то багги, в одном месте работает, в другом нет. Возможно это связанно с тем что в шрифте есть два знака диаметр, а может еще с чем, чего я не понимаю. Смотри приложенный файл. 2.Фланцы. Забыл сказать, что после фл. Может также стоять или не стоять знак диаметра, так что на него не обращаем внимания, если он не в начале текста. 3.Трубы. Тр может быть написано также и английскими буквами (причем как заглавными так и прописными). 4. То что для нераспознанных формул массы краснеют очень удобно, но после внесения корректировки в неверно понятые строки думаю будет уместно если вновь просчитанные массы, которые уже считаются правильно становились цвета by layer. Иными словами после проведения вычислений предлагаю всем правильно просчитанным массам назначить цвет by layer. 5.Думаю ты прав и надо для сдвоенных профилей помножить массу на 2. 6.Я тут подумал, и думаю что для подсчета массы арматуры, для варианта где считаем не по штучно, а для всей длины (сигмаL=***) наверное правильнее в графе “масса одной позиции” вписывать “-“, а массу вписывать только в графу вес всех позиций. Сорри что с начала не сказал. В остальном пока багов не выявил. Есть идея добавить вариант программы, когда записываешь массу не в существующий мтекст, а в новый, при этом выходит запрос на указание координат х для граф “масса одной поз” и “масса всех поз” С нетерпением жду вариант с профилями по госту. Этот лисп сэкономит кучу моего времени. Хотя почему только моего. Кучу времени многих проектировщиков. Сколько я их знаю, кто работает по схеме рисованные спецификации + калькулятор. Пока внедрил в работу команды выложенные ранее в Sumt, и уже не могу представить свою работу без них, а что дальше будит, когда спецификации на полную заработают, просто блаженство. Как только раньше такого не придумали. |
||||
![]() |
|
||||
VVA, Вот еще прошу такую возможность учесть для всех профилей. (смотри приложенный файл)
По поводу Цитата:
Diman111 Ты бы выложил спецификацию со всеми возможными профилями в формате dwg, тогда попонятнее станет как ее "склеить". |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Выложил в #72 обновленную версию. В команде SPEC учтены "нюансы" из #108 + новая команда GRPSP (по ТЗ #110).
>Red Nova #108 >1,2,3 По поводу включения в обработку неких своих символов, инструкцию выложу, когда будет решен вопрос с профилями. Для умешьшеня вариантов анализа,строка приводится к верхнему регисту. >1 До этоко арматура определялась по наличию знака диаметра %%C, в примере #108 знак диаметра вставлен как UNIKOD \U+E712. Добавил, инструкция будет позже >2 См. 3выше. Теперь знак диаметра удаляется из середины текста >3 см. выше Добавил не только TP английские, но и T анлийское Р-русское и наборот, Т-русское Р-английское >4 сделал >5 Будет учтено с профилями >6Сделал >Diman111 #110 Пробуй команду GRPSP Для подсчета нужно выбирать столбцы количество+ масса. Массой считается последний столбец. Тескт дописывается ниже самого нижнего текста.Для анализа величины смещения берется: - Если строк больше 1, то разность по Y 2 самых нижних текстов 1-го столбца . - Если одна строка, то, двойная высота текста 1-го столбца . >Red Nova #111 Файл просмотрел, какую возможность нужно учесть, так и не понял ![]() Кстати, объявляется конкурс на название команд GRPSP и SPEC. У меня творческий кризис. ![]() ![]()
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 04.03.2008 в 12:05. |
|||
![]() |
|
||||
промышл проектант Регистрация: 26.05.2005
Изовсехщелей
Сообщений: 323
|
Цитата:
![]() Цитата:
В общем технология ввода кол-ва столбцов - автоматическим вычислением или запрос у пользователя - это оставлю на усмотрение автора lispa - УВАЖАЕМОГО VVA |
|||
![]() |
|
||||
VVA,
Цитата:
2.Еще, только что понял, что сигмаL=20м надо принять равным сигмаL=20000, а-то бывает по разному. (м может быть в разных кодировках) Последний раз редактировалось Red Nova, 04.03.2008 в 12:33. |
||||
![]() |
|
||||
VVA, Протестировал изменения, вроде как багов нет, только надо учесть заметки на постах 116 и 117.
А как на счет? Цитата:
|
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Обновил еще раз код в #72. Кое-какие очепятки в SPEC.
Цитата:
Цитата:
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
VVA, На счет точки вставки. Координата у берется как у остальной строчки конкретной позиции, а координата х указывается сначала для первого столбца, затем для второго.
То есть после указывания рамкой исходных данных в ком. строке пишется “укажите координату х для масс одной позиции”, мышкой указываем точку на чертеже, с этой точки берется координата х, затем в ком. строке пишется “ укажите координату х для масс всех позиций”. Все. |
||||
![]() |
|
||||
Пересчитывал свои спецификации новым лиспом, вот что обнаружил. Есть строчка в которой изначально заданы неверные данные, программа пытается ее посчитать, и в графу массы вписывает 0, при этом графа не краснеет. Предлагаю сделать так, чтобы, если в результате вычислений получалось ноль, то этот ноль краснел.
|
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Теперь 0 в графе массы очень стыдно, и он краснеет
![]()
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Неа, не краснеет, то есть не во всех случаях. Смотри файл. Слушай а это трудно сделать чтобы когда после цифры стоит буква м, то воспринять ее как 000, если не очень сложно, добавь пожалуйста такую возможность.
|
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Он краснеет, когда была ошибка, в твоем случае поставь округление до 2 знаков и увидишь число, отличное от 0. Добавил аланиз метров, но только там, где может быть суммарная длина (арматура, уголки)
Пробуй снова с #72
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Спасибо, теперь все то. Если будешь писать вариант с возможностью записи результатов в новые мтексты, то прошу учесть следующее.
Думаю отдельную команду создавать не стоит, можно в spec добавить следующую возможность. Если после вызова команды выбрать 5 столбцов, то работает первый вариант, а если выбрать 3 столбца, то создаются новые мтексты. Теперь остаются только профили. ![]() |
||||
![]() |
|
||||
dextron3Ты какой командой пробовал? SPEC?
SPEC разработан для пяти столбцов. Смотри к примеру чертеж с поста 122. Для гостовского же варианте VVA разработал GRPSR, (к стати предлагаю VVA переименовать ее в GSPEC). С GRPSR я пока не работал, сегодня попытался на твой файл применить, почему-то появляются новые мтексты ниже рассчитываемой строки. Но в любом случае при расчете масс листа символ “-” перед размерами должен быть не нарисован а вписан в текст. У нас в конторе спецификации не по госту, но как вижу у вас гост. Предлагаю выложить вариант такой спецификации для всех случаев. Там ведь не только лист, но и профили. На основе этого экземпляра можно разработать расширенную версию GRPSR. (Я такой спецификации выложить не могу, так как по госту ни разу не делал ![]() VVA В этой связи предлагаю внести некоторые корректировки в GRPSR и SPEC 1. Переименовать GRPSR на GSPEC. 2. Уточнить действия программы для случая когда в наличии только четыре столбца, причем в первом столбце заданы сразу все размеры плитки (типа 500х450х10). 3. Предлагаю как в GSPEC, так и в GRPSR внести возможность распознать строку для расчета массы листа и без символа “-”. То есть если строка начата сразу с цифр, то она подпадает под формулу для плитки (в GRPSR -500х450х10 равно 500х450х10, в SPEC -500х450 равно 500х450). Последний раз редактировалось Red Nova, 05.03.2008 в 15:28. |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
> dextron3 Red Nova уже ответил.
Цитата:
Обработку 4 или 5 столбцов добавил в SPEC, если текст начинается с цифры, то считается листом. Обновления выложил в #72. Сразу скажу, что рисованные уголки и другие профиля распознавать не буду. В любом случае при расчете масс проката символ проката (уголок, швелер, двутавр, арматура) перед размерами должен быть не нарисован а вписан в текст. Пользуйтесь соответствующими шрифтами.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
> tuguz Лисп из #72 может суммировать или перемножать текст, мтекст, размеры, округлять результат до нужной величины и вставлять полученное значение в новый текст или в существующий текст, мтекст, размер, атрибут блока, ячейку таблицы.
*** Добавлено А тему прочитать уже сложно, за сотню постов уже накропали
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Да, название то у топика осталось с прежних времен, а сейчас в этом смысле все тип топ.
tuguz, Посмотри лисп с поста 72, там шедевр от VVA, этот лисп еще много чего умеет делать чего mycalc не может, суммировать, умножать тексты и размеры, перемножать столбцы текстов друг на друга, задавать нужное округление и даже спецификации считать. А mycalc на 2008-ом не работает (по крайней мере у меня) |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, Red Nova, оказывается я использовал старую версию,
( lisp уже стал как роман "Война и мир", имеется ввиду размер =))) обидело тем что я не использую м-тексты, а обычные не считает... Из моих спецификаций считает только пластины. Пришлось перечитать данную тему чтобы вновь уловить суть... А это очень интересный лисп, оказывается... Если его сделать универсальным, то половина примочек окажуться лишними То что специализированные шрифты использует это не очень хорошо, в некоторых сельских конторах не хватает ума объяснить, админ на диск с доступ закрывает Если есть возможность немного облегчить спецификацию: 1. Для точго чтобы не учитывать картинки, которые заменяются специализированным шрифтом, я предлагаю в последней графе спецификации писать обычное название металлапроката, по которому программа и поределит из какого сортамента какую величину брать, в крайнем случае если такое конечно возможно то брать из ГОСТА и определять марку металлопроката в графе обозначение 2. (м.п.) , означает что в графе масса ед.цы, автоматом вставляется масса 1погонного метра изделия 3. В данную спецификацию добавил частоиспользуемые двутавры, а также профлист, и болты гайки шайбы. 4. Если потребуется какой-то сортамент для базы могу выслать готовые калькуляторе (смотря в каком виде потребуется), опять же можно позаимстовать у Веткада, или у Прокат. 5. Скриншот используемой спецификации с обычными текстами, собрал самые распространенные металлопрокаты =) 6. В электронном виде в РАРе тоже самое что на скриншоте (для испытаний) 7. Получилось 6 столбцов, по другому не смог облегчить, длину вынес в отдельный столбец это особо важная графа Буду ждать замечаний...
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 05.03.2008 в 20:18. |
|||
![]() |
|
||||
Кто-нидь может по госту спецификации выложить, а то и ты dextron3, м я похоже не очень по госту работаем. Ведь в последней графе по закону не пишется нечего такого.
Diman111, частично выложил пример по госту, но не до конца инфу дал. Придется самому покопаться. Очень советую использовать шрифт СПДС, я загнал символы профилей в Simbols мтекст редактора, офигенно удобно. В моей канторе такого типа вопросы я решаю, какой софт юзать и какие шрифты, в этом смысле мне повезло, но думаю если очень захотеть любого можно уломать. По пунктам. 1. Честно говоря мне не очень нравится идея, я все думаю к госту приблизится, и тебе советую, а это получается еще один “левый” вариант, хотя у меня самого тоже вариант “левый”, и не хочу чтобы создалось впечатление что для себя я этот вопрос решил, а твой вариант подвергаю критике. Предлагаю, SPEC так не меняем, если очень хочешь именно такой вариант, то может новую команду для этого сделать ?(спрашиваем у VVA). Придумай для нее название, у VVA творческий кризис. ![]() 2. Про погонные метры учесть надо, я и сам над этим думал. Если во второй графе написано (п.м) либо (м.п), либо п.м либо м.п, (для людей рассеянных все варианты), то умножаем цифру в графе количество на вес одного метра, и записываем в графу масса всего, в графе масса одной детали проставляем знак “-”. 3. Поясни что такое “часто используемые двутавры”, про болты – добавить можно. Для SPEC предлагаю в первом тексте обозначить это дело как “болт М12”, ни естественно М тут переменная. Во второй графе длина болта. К стати их как правильно считать? Может по тому же принципу что и арматуру? Для SPEC2, так как ты и предложил, болт в конце. Еще интересен вариант для проф. листа, но честно говоря для проф. листа я считаю только площадь а не массу. Учесть массу будет трудно, хотя возможно, если все варианты с программу внести, но первым делом конечно же надо внести массы для профилей уголок, швеллер, кв. труба и двутавр, без них туго. ГОСТ Предлагаю осмыслить постановку задачи по госту, так как конечно–же хорошо иметь программу которая налажена под собственный стиль работы, но гост он везде пройдет, и программа станет действительно универсальной. Далее следуют размышления а не предложения по конкретной программе, так как вариант спецификаций по госту я не на все 100 знаю. По госту есть “СПЕЦИФИКАЦИЯ” и “ГРУППОВАЯ СПЕЦИФИКАЦИЯ” Этот гост (ГОСТ 21.101-97) скачать можно тут http://www.rmnt.ru/download.php?id=13.26.19259 “ГРУППОВАЯ СПЕЦИФИКАЦИЯ” – это то что выкладывал Diman111[/b], “СПЕЦИФИКАЦИЯ” – Это тоже, когда в графе количество только один столбец. В столбце наименование тут пишется полное название и длина профиля (смотри ТЗ с поста 110). Именно тут Ане в последнем столбце пишется швеллер, уголок и т.п. Причем для швеллеров и двутавтов пишется так: Швеллер 12В, L=*** Швеллер 12Y, L=*** Швеллер 12C, L=*** Швеллер 12Э, L=*** На счет В, У, С, Э не уверен на 100 процентов что именно так, но скорее всего, поскольку сортаментов на швеллеры несколько: Швеллер-B, Швеллер с уклонными полками, Швеллер с параллельными полками и Швеллер экономичный с параллельными полками. Представляю каких трудов будит стоить все это (а это даже не все) внести в программу. Думаю можно ограничится наиболее часто используемыми, я например в основном использую Швеллер с уклонными полками (У). VVA, Что ты думаешь на этот счет? P,S. - Люди работающие по госту, прошу просветить в нюансы обозначения наименования разных профилей по госту. - Да, и объясните пожалуйста куда вписывается масса всех деталей? А то по госту там такой графы нету? |
||||
![]() |
|
||||
Опять про ГОСТ
VVA Как на счет варианта, чтобы ты создал один экземпляр для каждого профиля который принципом просчета отличается. Затем можно объяснить принцип добавления новых профилей, и все желающие тогда смогут добавлять профили? По-моему похожая идея уже была предложена тобой. Если одобряешь, то буду дальше мысль развивать, на счет того какие именно “принципиальные варианты” надо разработать. |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Red Nova, согласен про последнюю графу,
ведь хотелось какойто поределитель для таблиц, Давай по Циферии ГОСТА будет определятся металлопрокат это самое удобное, а те значки которые я рисую из линии просто не учитывать, а читать только текст Если потребуется могу выдать госты И для двутавров нужно после марки обратить внимание на букву Б1, Б2, это тоже различие А так моя таблица как раз по госту А если лиспу без разницы размеры тыблицы он ведь считает по столюцам то особой разницы для регионов нет
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
> Павлов Андрей. Швеллера и двутавры не считает, т.к. не "прикручена" база проката. Не откуда брать вес погонного метра. > ALL Пошел в нормоконтроль, взял действующие у нас ГОСТы. Так вот, согласно ГОСТ 27772-88 "Прокат для строительных стальных конструкций" ПРИЛОЖЕНИЕ 2 Схемы и примеры условных обозначений, прокат пишется в графе наименование буквами - Уголок, Двутавр и т.д., далее текст в 2 строки. Это я к тому, что надо решить, что есть спецификация по ГОСТ, прежде чем предлагать какие-то решения.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, а почему не сделать общие обозначения, как дополнения к таблице тоесть потом в лайаутах отрезать, а кто как обозначает это их дело, тоесть к таблице будет прилагаться еще строка с названием металло проката, мне без разницы как его назовешь так как это отрезается при распечатке
1. VVA, база проката как должна выглядеть, хотелось бы не переписывать из сортамента а использовать уже забитые из других источников 2. На скриншоте вспомогательная графа... (программа как бы находила определенное сочетание букв в графах и соответсвенно применяла для этого значение из текстовых забитых масс) Тогда алгоритм будет безошибочно: 1. Если в строке найдено Ugl, то иди к базе Уголков, или считай по формуле той то Уголок или на англ Ugl Швеллер.... Shvel и тп. 3. Red Nova, а тебе мой вариант спецификации не понравился чтоли? Вроде учел все профиля
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 06.03.2008 в 13:23. |
|||
![]() |
|
||||
VVA,
Цитата:
![]() Хорошо что ты спросил у нормаконтроля, а-то у меня такой возможности нет. Появилась надежда в будущем действительно прийти к госту. Цитата:
dextron3, Поясню что в твоей версии не то. Как сказал VVA по госту название профиля пишется буквами в строке наименование, и думаю в дальнейшем алгоритм будит различать именно это слово, которое в самом начале, таким образом пропадает нужда писать наименования в конце, а если очень надо именно показать символ швеллер, а не писать его буквами, то тут уж СПДС шрифты рулят. А против твоего варианта я нечего не имею, просто лично для меня он смысла не имеет, так как шрифт СПДП под рукой. А за учтенные профили которых у меня не было, спасибо, над этим можно подумать, думаю дойдем и до этого. Последний раз редактировалось Red Nova, 06.03.2008 в 18:43. Причина: забыл кое-че |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Red Nova, давай универсальную как VVA выложил в файле ТЕСТ,
аналогична моей.... Про обозначение и нечитабельность шрифтов я писал выше
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
промышл проектант Регистрация: 26.05.2005
Изовсехщелей
Сообщений: 323
|
Хотелось бы внести свою ремарку в разбор полетов по поводу госта на оформление спецификаций.
ГОСТ 27772-88 "Прокат для строительных стальных конструкций" ПРИЛОЖЕНИЕ 2 Схемы и примеры условных обозначений - это гост не на оформление спецификации. Это гост на марки стали. Насчет того откуда брать наименование проката - замечу, что в спецификации присутствует графа обозначение, в которой пишется гост. По этому госту мы узнаем и прокат. Далее - насчет тонкостей проката - с уклоном, с паралельными гранями или колонный или балочный - то по госту на конкретный прокат мы должны писать буковку У П К Б ..... - пример: Код:
обозначение СТО АСЧМ 20-93 - дает нам базу Слово 25К2 - нам дают конкретный прокат. Если в строке с номером и наименованием проката стоит буква l или L - то строка кол-ва говорит нам о том, что надо для получения веса перемножить цифру после знака = на вес проката из базы. Если нет буквы l или L то надо погонный вес из базы просто вписать в столбец масса. Кстати насчет листовой стали - у нее тоже есть свой гост, который вы обязаны вписывать ![]() а то тут все спецификации почему то с пустой графой обозначение. Повторюсь. В качестве готовых баз - предлагаю базы прокат василия. Либо простой список вида файл: сто асчм 20-93 (или просто 20-93) - это имя базы внутри список вида [к] .... 25К2=100 25К3=120 .... [Б] ... 20Б1=80 20Б2=90 .... и т.д. Последний раз редактировалось Diman111, 11.03.2008 в 13:39. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
ГОСТ 2.106-96 п.3.17 Цитата, выделено мною Цитата:
В приложении 2 видим пример условного обозначения которое согласно п.3.17 ГОСТ 2.106-96 для "Стандартных изделий" нужно писать в графу "Наименование"
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
VVA[quote]Пост 153QUOTE]
Похоже, что действительно так, и в СПДС и в VetCAD то же. А как на счет добавить профили в SPEC так как в начале обговаривали (хоть и не по госту, но очень хочится этот простятский вариант). Надежда есть? ![]() Diman111, Цитата:
Последний раз редактировалось Red Nova, 11.03.2008 в 17:51. |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
В общем и целом надежда есть. Базу "Проката Василия Кондрата" в том виде, в котором она есть использовать нельзя. Обозначения марок (например для уголка записано как 55 x 55 x 3) записано с пробелами. Поэтому написал конвертер и сконвертировал в формат, удобный мне.
Там есть одна закавыка, которую пока не знаю как разрешить. Касается гнутых швеллеров Швеллеры гнутые по ГОСТ 8278-83 обыч. сталь: 120x80x4 - вес 9.49 Швеллеры гнутые по ГОСТ 8278-83 кач. сталь : 120x80x4 - вес 8.22 возникает вопрос 1. Как узнать, какая сталь 2. Вообше, что делать, когда в базе будет обнаружено 2 марки одного вида проката (например 2 описания двутавра 20Б1) с разными массами? Базу, в том виде, в котором она пока существует, прикрепляю ввиде файла. Несмотря на то, что он имеет расширение lsp, содержание у него вполне текстовое ***Добавлено Это текстовый файл, просто открыть в блокноте
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 11.03.2008 в 19:07. |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, слишком сложно еще и дробные числа рисовать, я редко встречаю такие обозначения, очень не удобно, хочется чегото простого,
Предложенные варианты: мной, Red Nova, Diman111, очень схожи, странно что только 3 человека заинтересовались, этой лучшей и полезнейшей разработкой во всем форуме... ![]() Вот если бы лет пять назад ктонибудь такое разработал я бы где-то полгода жизни съэкономил... ![]()
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Из поста #155
Command: Command: (LOAD "C:/Documents and Settings/Admin/Рабочий стол/prokat.lsp") ; error: bad function: "12Б1" Command: Command: Command: _appload prokat.lsp successfully loaded. Command: ; error: bad function: "12Б1"
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
>dextron3
Цитата:
![]() Цитата:
*** Добавлено Спецификации на КЖ и КМ разные, тут возможны нюансы
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
промышл проектант Регистрация: 26.05.2005
Изовсехщелей
Сообщений: 323
|
Есть ГОСТ 21,101-97 есть 21,501-93.
касаемо записи по ГОСТ 27772-88 - то я имею полное право в чертежах КМ писать марку стали в примечаниях. Есть ведомость металлоконструкций а есть спецификация элементов. Мне кажется тут эти понятия попутались. По гост 21,101-97 прил Ж даны примеры спецификаций элементов, которые я указал в своем ТЗ и расчет по котоых реализовал Уважаемый VVA. Я лишь немного изменил групповую спецификацию под стандарт используемый на нашем предприятии. Также есть небезызвестное СПДС граф в котором реализовано заполнение спецификации по принципам, указаным мною. также в его состав входит справка по станфартам оформления - рекомендую ознакомиться. Необходимо определиться что именно мы тут пытаемся автоматизировать? Ведомость или спецификации для КМ или КМД. проще всего реализовать предлагаемое мною решение по спецификации, согласно приложению Ж. в этом случае мы имеем вместо 2-х этажной записи из поста № 153 запись вида Код:
Марку стали пишем в примечаниях чертежа. Собсно вес мы берем из сортамента а там он один на все марки стали - так что не вижу смысла тут в принципе затрагивать ГОСТ 27772-88. поскольку его круг действий ограничивается: Код:
Между тем по ГОСТ 21.101—93 Код:
|
|||
![]() |
|
||||
VVA,
Цитата:
Цитата:
Diman111, Если можешь дай пожалуйста ссылки на все описанные тобой госты, если ссылок нет, но если вариант отсканируй пожалуйста пору нужных страниц и поделись с нами. Буду очень признателен. Мне и самому не нравится двустрочный вариант описанный VVA, уж больно усложнено, но не хочется от госта отклонятся. Если по госту и вправду можно как ты описал, то думаю все согласятся на этот вариант (надеюсь что так). Цитата:
|
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, я так понял это просто для ознакомления для нас
выложено, чтобы мы тебя проверили правильно ли сортаменты забиты? Почему правдо все в одну строчку забито не удобно проверять... Хотьбы предупридили ![]() А то я уже его во всю в автокад подргужать начал ![]()
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Red Nova, может всетаки откажемся от двух строчного пока не сделали,
я все под одну спеку подгоняю что металл что арматура, что бетон, что КМД, что КЖИ. PS СОКРАЩЕННЫЙ СОРТАМЕНТ МЕТАЛЛОПРОКАТА ДЛЯ ПРИМЕНЕНИЯ В СТРОИТЕЛЬНЫХ СТАЛЬНЫХ КОНСТРУКЦИЯХ ГОСУДАРСТВЕННЫЙ СТРОИТЕЛЬНЫЙ КОМИТЕТ СССР (Госстрой СССР) если кому пригодится конечно, а нет так нет я уже неделю не работаю жду окончания лиспа
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
промышл проектант Регистрация: 26.05.2005
Изовсехщелей
Сообщений: 323
|
Все указанные мною госты выложены в интернете - поиск вам поможет.
По поводу оформления - если вписывать указанный вами 2-х этажный текст - скажите что вы впишите в столбец обозначение а что в столбец наименование. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Diman111, Не нашел прямого подтверждения твоей позиции по поводу госта, если что-то не правильно понял поправь.
Вот вырезки из гостов на которые ты ссылаешься. И там все либо очень мутно, либо про двустрочный вариант. |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, почему Вам не понравилось предложение Diman111,
чтобы лисп детектировал ключевые буквы металла проката: Б1, Ш1, или цыфры госта самого проката, а не стали?
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
> Кто сказал, что мене не понравилось? Как раз таки и хочется, чтобы после определения типа проката, марка говорила однозначно о весе конструкции.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
dextron3,
Цитата:
VVA Надеюсь ты не упустил из виду мою просьбу с поста 161. |
||||
![]() |
|
|||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Прямое подтверждение:
ГОСТ 21.101-97 п. 6.2 Цитата:
Цитата:
ГОСТ 21.501-93 п.4.10 Цитата:
И наконец ГОСТ 2.106-96 ЕСКД п.3.17 нам говорит, что (выделено цветом мной) Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, то что Вы говорили про мультитекст - ни в коем случае
может и госты указывают и заставляют писать в две строки то в электронном виде страдает высота текста, позиции налазиют друг на друга, очень тесная становится спецификация, в глазах ребит если распечатываешь в мелком масштабе ну очень не удобно
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
промышл проектант Регистрация: 26.05.2005
Изовсехщелей
Сообщений: 323
|
Касаемо поста №172.
Все что сказано Касается стандартов нашего предприятия, базирующихся на ГОСТах на оформление. Замечу группа нормоконтроля присутствует. Насчет Цитата:
что касается металлопроката - о чем мы тут и ведем разговор - то все написанное мною базируется на моей практике и практике оформления документации. Пока проблем небыло. В принципе - мы тут спорим о виде записи - но VVA прав в одном - ка кне запиши - анализировать то все равно какую строку. Проблема в том что искать при анализе. а искать надо точное указание на базу сортамента, т.е. ГОСТ и номер проката. Т.е. ищем базу по принципу совпадения Код:
Какова там сталь - на вес не влияет. Так что дискуссию по поводу вида записи можно и прикрыть. Предложенный мною вариант проще анализировать. Предложенный VVA вариант сложнее анализировать. НО НЕ БОЛЕЕ. Ибо алгаритм проанализирует любые строки. Последний раз редактировалось Diman111, 12.03.2008 в 17:19. |
|||
![]() |
|
||||
Предлагаю компромиссный вариант. А что если лисп будит считать массу профилей и когда они записаны в две строки и когда в одну строку как у Diman111, в итоге добавится больше возни для VVA (сорри), но все будут довольны. Ну как, Согласны? Кроме того лисп и в правду станет уникальным, так как двустрочный вариант есть в VetCAD. (Там к стати очень хорошая библиотека материалов. VVA советую посмотреть если еще не пользовался, многое можно перенять). Что мне не нравится в VetCAD это то что там строчки загнаны в блоки. Чтобы просуммировать массу нескольких строчек надо по очереди на них тыкать.
|
||||
![]() |
|
||||
промышл проектант Регистрация: 26.05.2005
Изовсехщелей
Сообщений: 323
|
Мне кажется будет достаточно определения
Код:
Но это VVA виднее ![]() Последний раз редактировалось Diman111, 12.03.2008 в 19:46. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Черновой вариант готов пока для спецификации КЖ. Есть возможность выбирать или 4 столбца (Обозначение Наименование Кол. Масса ед.кг)
или 3 (Наименование Кол. Масса ед.кг). Причем если выбираются 4 столбца, то не все строчки могут быть заполнены в графе "Обозначение". Принцип такой: если в графе "Обозначение" есть текст, то ГОСТ профиля берется из графы "Обозначение", иначе из графы "Наименование". В общем сейчас без разницы, кто и как трактует ГОСТ на спецификации. У кого требуют, тот пишет двухэтажные тексты, не требют - разносит по графам "Обозначение" и "Наименование". Пока не доконца понял с погонными метрами. Но это завтра. Если успею причесать, то завтра выложу пробную версию. PS При навигации буду ориентироваться на зажженные факелы ![]()
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA,
если (м.п.) то считается для 1000мм или для одного метра,ъ по идеи можно писать просто L=1000мм, тоесть одно и тоже а п.м. это традиция, .... PS, а про болтики, гаечки и шайбочки никто не забыл?
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Diman111, про М текст не напоминай,
![]() м-текстами только бабушки проектировщицы пользуются ![]() PS ты пробовал в М-тексте лист общих данных набросать, я пробовал поэтому М-текст вызывает оотварщение
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Регистрация: 16.05.2005
г. Минск
Сообщений: 276
|
Цитата:
/[№ПРОФИЛЯ]$ $[ГОСТ] на L$[№ПРОФИЛЯ]$ $[ГОСТ] это вариант с префиксом для уголка ширины столбцов тоже настраиваются а что мешает их (блоки) выделить рамкой? |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
>nike Это уже сделано. Vetcad называется.
У кого есть ProjectStudio CS. Поделитесь здесь файликом MtlProfiles.mdb. Посмотреть хочется. Цитата:
По поводу погонных метров: там всегда есть строка L=ЧИСЛО п.м. (м.п.)?
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
конструктор Лего Регистрация: 21.10.2005
Краснодар
Сообщений: 205
|
MtlProfiles.mdb из ProjectStudio CS это файл базы данных MS ACCESS. В ProjectStudio есть еще и др. файлы, например с арматурой. Где то на форумах встречал библиотеки lisp для работы с базами данных через ADO. Но диалог по чтению и выбору сортамента из баз данных наверно легче будет написать на VC++ используя классы ADO. Хочется самому такое написать, но я только учусь этому С++. Для Брикса давно писал на чистом лиспе программу по заполнению спецификаций, используя VetCADовские текстовые базы данных. Теперь хочется переделать немного, диалог переписать на arx, т.к. ребята из Bricsys полностью заменили движок DCL (теперь эти DCL диалоги стали растягивающимися).
|
|||
![]() |
|
||||
VetalBY Надо-же сам автор мне ответил. Первый плюс от перемещения форума в раздел программирование
![]() Цитата:
Последний раз редактировалось Red Nova, 13.03.2008 в 20:22. |
||||
![]() |
|
||||
VVA, Гост это конечно нужно. Но не забывай пожалуйста что весь разговор начался с ТЗ с использованием СПДС шрифта, очень надеюсь что я и этот “неправильный” вариант спецификации дождусь с профилями. Напомню для работы на моем предприятии мне надо только уголки, трубы, да двутавры и швеллера с уклонными полками, все как в самом первом ТЗ, только вместо приближенных формул для труб и уголков можно прицепить сортамент. Может я и перейду на гост, но пока что мне очень хочется наконец попользоваться моим вариантом SPEC в полную силу. А то получается что арматуру и листы я моги считать а профили нет (прямо слюнки текут). Прошу не забудь про меня. А то форум плавно повернулся в сторону госта, а мой первоначальный вопрос так и не решился. Мда.
![]() |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
При разборе "Наименования" используется следующий алгоритм:
1. Текст из "Наименования" разбивается на 2. Признактм разбития служит 1-я цифра. 2. Если текст начинается с UNIKOD символов (\U+), то п.1 выполняется с 8 символа, пропуская \U+XXXX 1-я часть текста (та что до цифры) и служит признаком профиля Для строки "Двутавр 20Б1" это будет "ДВУТАВР" Для строки "\U+E725" (швеллер по шрифту CS) - "\U+E725" Вот пример "разбора" Код:
![]() Это я к тому, что признаком проката в тексте из столбца "Наименование" может быть и "Мама мыла раму". Нужно только ее добавить в список. Сейчас очень большая загрузка по работе, поэтому ни вчера, ни сегодня продолжить ее не смогу. Попробую выкроить часик-другой на выходных, но не обещаю.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер-строитель Регистрация: 27.05.2004
Республика Беларусь
Сообщений: 67
|
Здравствуйте .
Задумки и реализация в пограмме очень понравились , хоть и не по ГОСТ , но позволяет считать спецификации . Только , я думаю , свести это в конечном счете в техническую спецификацию стали придется все-равно "ручками" . Или у кого-нибудь есть задумки ,как автоматизировать создание ТСС ? Пока сам пользуюсь вариантом вставки таблиц EXCEL в пространство модели (в модели тормозит меньше) , как OLE-объект , сохраняя связь с EXCEL . В excel подключаю внешний сортамент , сортирую данные по строкам и колонкам и в конечном итоге получаю полуавтоматически ТСС .
__________________
Andrey |
|||
![]() |
|
||||
Регистрация: 16.05.2005
г. Минск
Сообщений: 276
|
Цитата:
Сделал так и пока не пожалел. Эта строка отвечает за формирование "наименования". Пользователь сам может настроить так, как ему надо - с ГОСТом или без, в 2 строки или одну, префикс для профилей под используемый шрифт и т. д. И не так уж это сложно (в хелпе описано). |
|||
![]() |
|
||||
Регистрация: 16.05.2005
г. Минск
Сообщений: 276
|
В VetCAD++ будет ТСС. Уже кое-что сделано в этом направлении и работает. Пока делается для РБ (по СТБ 21.504-2005). Но в бесплатный пакет она полностью не войдет и когда выйдет в свет, сказать не могу пока...
|
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Ну вот я и объявился снова
![]() Пример команд SpecKM и SpecKG. Попытался сделать универсально. Для определения типа проката можно пользоваться шрифтами (типа CS_gost), можно писать буквами, можно писать двухэтажные тексты, можно однострочные, разнося обозначение и наименование по разным столбцам. Обе команды требуют выбора 3-х столбцов, позиции Массы ед и Массы всего задаются рамкой любой ячейки. Во вложении лисп, пример dwg и необходимые шрифты. Если двухэтажный текст вылезет за пределы - не обращать внимания, просто нет нужных шрифтов. Файл prokat.ves должен находится в путях поиска автокада.
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 19.03.2008 в 14:07. |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
1. лисп считает почемуто вместо миллиметров метры, хотя стоит ММ
2. почему когда в графе наименование длинна дается отдельным текстом лисп не замечает
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
> dextron 200,201
1. Если после L= есть буква м (м м.п. п.м.)б то длина считается как метры и умножается на 1000. Там идет проверка на wcmatch *М*. Если длина в мм, то их писать не нужно. 2. В любой графе текст должен быть ОДИН, текст, мтекст - без разницы, но один.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
>203 Это называется гиперссылка. Туда записываются пояснения по расчету или ошибки. Для управления гиперссылкой см. команду
_HYPERLINKOPTIONS. >204 По картинке и я не могу. Файлик приложи.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Файлика не вижу
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Ну начнемс. Ух какие тут дебаты предстоят.
1. Во первых большое спасибо ![]() SPECKM 2. Честно говоря вариант с выбором столбцов масс реализован не совсем удобно. Было бы легче просто указать точкой координату Х вставки масс. То есть вместо выбора рамкой двух углов указываем одну центральную точку столбца. А еще было бы хорошо добавить в команду вариант с оверрайт существующих мтекстов, как в SPEC, лично мне так больше нравится (я в основном работаю с аналогичными спецификациями, по этому создаю одну на основе другой). Причем отдельную команду для этого можно и не создавать, вместо этого можно добавить следующую возможность. Если выбираем три столбца, то далее задаем координаты ввода масс, а если выбрали пять столбцов, то будет оверрайт масс. 3. Можно ли вместо текста вставлять мтекст middle centre justified? (если это возможно то может есть смысл создать отдельную переменную для этого) 4. В выложенном примере по только по одному варианту от каждого профиля. Как различить разные швеллеры (с уклонными, параллельными полками и т.п.) Было бы хорошо иметь пример со всеми возможными комбинациями, так любому будет понятно, и если лисп попадет к кому то не имеющему отношения к нашему форуму то и он разберется. 5. Когда получается синий текст с ссылкой то при нажатии на текст+ctr пишется что система не может найти путь. 6. Не считает трубы (круглые) 7. При наличие профиля “Двутавр 20Б1” масса становится синей, пишется что найдено больше 1 в базе. SPECKG 8. Считаются только лист, арматура и швеллер, причем швеллер только двустрочный. 9. Масса листа записанная в одну строчку сосчиталась в 1000 раз больше чем надо. Последний раз редактировалось Red Nova, 19.03.2008 в 22:00. |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Примечание:
1. Почему не удобно текст одной строкой, а не из двух: размеры и длина, в спецификации легче потом быстро удалить размеры длинна, не подревожив габариты и заменить на метры погонные, (из практики металлисты сначало выдают грубый вариант для строителей где все дается в П,М,) 2. Не понравилось то что лисп прописывает новые цыфры вместо замены старых, как RedNova сказал обычно править приходится готовую спецификацию, а то потом приходится чистить цыфры друг под дружкой 3. Вчера сравнивал 1 вариант Spec, с последним первый гораздо понятнее считает и меньше выделять приходится тоесть за 1 раз 4. Про гиперссылки особо не понял не сипользую вовсе 5. Может я не прав, но почему алгоритм не такой: 1. Выделите 6 столбцов 2. (каждый текс является отдельной ячейкой) 3. Первый текст ГОСТ направляет в нужную сортамента область 4. Второй текст габариты (формулы или ссылка на сортамент выборку, которую можно в ручную обновлять) 4.1 Если фигурирует буква Б1, Б2 и тп. идем в подсортамент в каталоге 5. Если если в третьем тексте МП или М но не мм, то количество равно =1, а в строку количество вводит прочерк "-" 6. Если L=x то считаем по формуле массу, взяв данные из сотрамента вот скриншот:
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Пояснения
SpecKM ищет в базе только тип профиля (например двутавр) и марку (20Б1) Там таких 2 (по ГОСТ 26020-83 и СТО АСЧМ 20-93) поэтому текст синий. Т.к. по ТЗ Red Nova вообще нет графы обозначения. Это не по ГОСТу, поэтому поддержку SpecKM в таком виде пока прекращаю, до полной отладки основного модуля. Тяжело одновременно править в нескольких версиях. Пока остается SpecKG. Все замеченные баги считает/не считает/считает не так или сюда вместе с файликом или мне на почту. После отладки выборки из базы будем думать о вариантах.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Red Nova, нет давай гостом чтобы лишнюю инфу не писать,
я расписал текстом что написано в рамке это наверно универсальный Вот шести столбцовый вариант Двутавр! ГОСТ;20Б1;L=1919мм;18;0;0 или ГОСТ;20Б1;(п.м.);18;0;0 Уголок ГОСТ;40x40x5;L=1919мм;18;0;0 или ГОСТ;80x40x5;L=1919мм;18;0;0 ГОСТ;40x40x5;(п.м.);18;0;0 Арматура по пятистолбчатому выделению С%% является точкой определения С%%- это всеми известный знак диаметра Ф если даже есть гост то его лисп просто не замечает С%%12A-III;L=1919мм;18;0;0 Пластины уже реализованы спасибо или по четырехстрочному выделению гост выделять не нужно если есть гост тоже не замечает если длинна не указана считает как платину по формуле 80x40x5;18;0;0 Швеллер ГОСТ основа Б1 направление на под основу ГОСТ;20Б1;L=1919мм;18;0;0 или ГОСТ;20Б1;(п.м.);18;0;0 Гнутый профиль ГОСТ основа ГОСТ;80x40x5;L=1919мм;18;0;0 Red Nova если я не прав брось в меня камень VVA, будем ждать... спасибо Для спаренных профилей я придумал идентификатор в графе примечания: 2шт. (если лисп обнаруживает буквы шт. , то массу еденицы элемента умножает на 2, легко и просто)
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 20.03.2008 в 18:53. |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, если не получиться все в один лисп загнать
то можно панельку с кнопками сделать чтобы каждый профиль по отдельности считала как бы построчно, а это тоже хорошо я вот сейчас пластины считаю с помощью первого лиспа и доволен
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
VVA
Цитата:
![]() |
||||
![]() |
|
||||
dextron3, Ты не прав. По госту к примеру для двутавра Б1 пишется
двутавр 20 Б1 на правда в две строки. Так что это никак не лишняя инфа. Но камень бросать в тебя я не буду, не долетит по-моему, ему же лететь несколько тысяч километров. ![]() |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Чем рисовать двутавр, а потом для его распознавания рядом писать слово "Двутавр", на мой взляд проще сразу написать в наименовании "Двутавр" и далее по тексту.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, если писать слово двутавр то строчки может не хватить,
и зачем писать ведь определяющей составляющей является цыфирь госта? Пусть кто на что горазд пусть то и пишет, лисп не учитывал бы надпись Обычно пишут профиля с ошибкой Двухтавр от слова Двух тавров Швехлер от слова фахверк Швеллер с двумя Л Угалок от слова галочка Плостина от слова плоский Зачем нам нужны эти ошибки... Чем рисовать двутавр, а потом для его распознавания рядом писать слово "Двутавр", на мой взляд проще сразу написать в наименовании "Двутавр" и далее по тексту. VVA, язык конструктора - чертеж, Интересно как ты будешь писать если будут 2 уголка по диаганали "Ласточкин хвост", швеллера стенками внутрь швеллера коробочка Всетаки лучше нарисовать, проверено на пркатике
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
dextron3,
Цитата:
![]() Цитата:
|
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,445
|
Offtop: Честно говоря, всю жизнь думал, что швеллер пишется с двумя "л"...
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
СПДС не обязательно иметь, достаточно просто шрифт забросить в папочку фонт. И всех делов. Для особо забывчивых сделали склерозник UNICOD кодов. Выложили сюда. Проблем с нашими партнерами в этом уже давно нет. Кстати этот шрифт в плане юникод кодов совместим с СПДС'овскими. Поэтому склерозник можно взять оттуда.
По поводу проблемы со шрифтом из #229, то это проблема не шрифта, а MtmdEdit Мансура Мамкина. Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, я клоню к тому что всетаки ГОСТ 2384218937 является вашим знаком для определения сотрамента,
Код:
проще и лучше я еще не встречал для работы с текстом м-тексты забыл как пережиток прошлого PS всетаки лисп SPEC мне более по душе, простой и понятный
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
dextron3,
Цитата:
Цитата:
|
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Пример ДВУТАВРЫ ПО ГОСТ 19425-74 С УКЛОНОМ ВНУТРЕННИХ ГРАНЕЙ ПОЛОК Марка двутавра 20С вес 27,9 ШВЕЛЛЕРЫ ПО ГОСТ 19425-74 С УКЛОНОМ ВНУТРЕННИХ ГРАНЕЙ ПОЛОК Марка швеллера 20С вес 22,6 И какому знаку будем следовать?
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, где вы такие редкие марки С нашли, еще не встречал
в природе, да и заводы такие не делают сейчас, С- это специальные для машиностроения, а кто дейсвительно их и использует тот не на автокаде работает, а в Автодеск механике, или Солидвокс, а там считаеся автоматом как и в прожект студио... Если это единственное совпадение то можно и не делать а если много, то скажи,... у Василия Кондрата такого нету даже PS VVA Могу сбросить металлургический калькулятор на емаил, по которому работают все и сотаменты ушли в небытие....
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Red Nova, это программка Мансура которая
непроизвольно отучает от использования мультитекста, посомтри в разделе download на данном сайте, PS Она работает быстрее чем обычный текстовый редактор автокада, проверено временем...
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, вы не забыли про мое пожелание отдельный текст длина?
Полностью от наименования не уйти надо прописывать Б1 и Б2 чтобы в подсотамент сослаться
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Red Nova, я сделал видеоролик формат mpeg4
он тебе объяснит почему длина отдельным текстом, это быстрая корректировка спецификации, а не выщелкивать сразу всю строку и потом удалять как посомтришь отпишись...
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 21.03.2008 в 20:57. |
|||
![]() |
|
||||
Регистрация: 19.04.2007
Сообщений: 200
|
Спасибо большое VVA за данную программу!
Помоему алгоритм организован достаточно грамотно: 1. Программа считает как двухстрочные варианты записи в графе Наименование, так и однострочные. 2. Так же если в графе Обозначение записан номер ГОСТа то она обращается к нему, если нет, то по формулам. 3. Можно самому пополнять базу профилей. Единственное конечно хотелось бы чтобы она перезаписывала в существующие МТексты массы, гораздо быстрее получается. to VVA, не понял как добавить в базу Рифленые листы, там необходимо ориентироваться на массу квадратного метра, а в базе только по погонным метрам считается. Скорее всего надо добавлять код. Вид записи рифленых листов в Наименование такой, как я считаю Риф 962х4 L=2367, где 962 - ширина, 4 - толщина. |
|||
![]() |
|
||||
VVA
Испытал снова SPECKG, только что понял что надо и гост рамкой отмечать. 1.С расчетом листа так и не понял. Вот сам глянь файлик. 2.Почему текст масс то italic а то обычный? (глюки какие-то) 3.Вопрос снят 4.Так как на счет добавить вариант с оверрайт. 5.Разве предложенный мною алгоритм вычисления координаты Х для масс не более удобный? 6.Как на счет SPEC+ SPECKM? 7.Вопрос снят 8.Остальные вопросы в файле. Последний раз редактировалось Red Nova, 23.03.2008 в 00:37. |
||||
![]() |
|
||||
LSN,
Цитата:
dextron3, Просмотрел ролик, скажу что для этих целей в нелюбимом тобой мтекст редакторе я делаю очень пригодный фокус. Есть лисп такой, его в свое время VVA откапал, так при помощи этого лиспа можно в simbols добавить свои (custom) символы, вот и можно добавить туда "L= мм" и "(м.п.)" Хотя в общем признаю что так наверное удобнее. |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Red Nova, а ты помнишь мою спецификацию по расчету дерева?
а то что длинна отдельно это уже традиция, это еще с EXELовских времен пошло, (PS Раньше в 2004 автокаде все таблицы спек копирывались их Exela)
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
>LSN
Я сейчас переписываю "разбор" профилей. Поиск типа профилей (двутавр, швеллер) будет искаться по ГОСТ, и только если не найден, то производиться "разбор" строк как делается теперь. Про рифленые листы давай поговорим чуть позже, когда перепишу основное. Так же будет восстановлен вариант и с заменой текстов. Еще будет изменен подсчет веса в зависимости от округления. Пример: Округление до 2-х знаков после запятой Арматура диаметром 8 А1 ГОСТ 5781-82 L=2800 Кол.- 72 Масса 1 метра, кг. -0.395 1. Как сейчас делается Масса единицы: 0.395*2,8=1,078 (В ячейку пишем 1,08) Масса всего:1,078*72=77,61 2. Как будет Масса единицы: 0.395*2,8=1,078 (В ячейку пишем 1,08 и массу единицы изменяем на 1.08) Масса всего:1,08*72=77,76
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
VVA,
Цитата:
P.S. Посмотри файл с #243, там вопросы. |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Цитата:
Если это вопрос к Цитата:
По поводе вопросов с #243 пока на все ответить не смогу, т.к. программу я уже "разобрал" и пока не собрал Но на пару отвечу сразу: Двутавр 25Б1 ГОСТ 26020-83 - нет такого в ГОСТе Швеллер 32x20x2 ГОСТ 8278-83- нет такого швеллера Есть 32x25x3 По поводу разных марок сталей: Какие марки используются и где они пишутся в спецификации? В твоем примере ничего этого нет По остальным вопросам отвечу, когда соберу программу
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
VVA,
Цитата:
В качестве аргумена могу привести то, что в предложенном тобой варианте мы в результате теряем точность. |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, а почему моим раположением марки стали не воспольщоваться, хотя оно вообще на вес конструкции не влияет,
можно вообще игнорировать
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
VVA,
Цитата:
|
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Можете не спорить, добавил в настройку округление массы единицы. Думаю сегодня успею выложить пробный вариант.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
про отдельный текст длинны учел, про и т.п - нет.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, и т.п.
![]() это: 1. Замена чисел, а не прорисовка в пустых ячейках своих (удобно для проверки) ![]() ![]() 2. Легкий способ пополнения баз (т.е. открыл файл с расширением vec, в новом обзаце указал номер госта и пошел перечень номер, вес), это я для того потому что может не все учтено, чтобы сами пользователи добавляли базу и дедлились результатами) 3. Поменьше выхода табличек вы выбрали не то количество столбцов 4. Выделялось все одной рамкой, а не несколькими 5. Не было разделения КМ и КЖ все в под одной гребенкой 6. Ну и как говорилось на базе лиспа SPEC, было (это самый первый варинат) (вторые гораздо сложнее, цвета разные в результатах, текст менялся, ну очень сложно) 7. Про (м.п.), и мм чтобы четко было разделение, без еденицы измерения обычно текст не пишется PS. VVA снова пропал на неделю.... ![]()
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
LSN, в проджект студио прописывет, особенно когда арматуры касается, а так все сторонние надстройки для автокада для подсчета спецификаций используют мм, так как иногда, а скорее всего всегда,
прораб да и сметчик ошибается, потому что обычно не пишутся еденицы измерения системы СИ, а метр является основной еденицей измерения длины данной системы
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Согласен с LSN #269, но добавил, чтобы если есть мм, то считало как мм. За выходные оттестировал явные баги, 31 выложу пробную версию.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Обещанный 3 вариант
Читать readme.txt, смотреть файл Спецификация Тест.dwg Чтобы тексты в таблицах не разъезжалить, в архив добавлены shx шрифты. Достаточно скопировать их в папку Font. PS Забыл сказать, что дополнилась каманда sumTSet. Добавилась установка на округление текста Массы_ед до умножения на количество *** Добавлено 01.04.2008 (Не шутка) В Spec3 - запрос изменен на запрос точки середины колонки Добавлена обработка профилей по ГОСТ 24045-94 Мoи иконки к командам
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 01.04.2008 в 17:58. Причина: Изменения SumT |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Это гиперссылка. По ней ходить никуда не надо. Ее нужно читать. Туда записываются коментарии. Команду для управления гиперссылками я тебе уже давал: _HYPERLINKOPTIONS. Сейчас за достоверность написания не ручаюсь, нет када под рукой
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Спасибо что и те спецификации которыми я пользуюсь учли,
У меня почемуто не считает уголки, а гнутый профиль синим цветом считает Б2 не видит см. скриншот использовал команду Spec5D
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 31.03.2008 в 20:47. |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
А вот для данной записи пластин почемуто не корректно считает,
первый лисп SPEC считал если можно откорректировать, я понял что надо L= прописывать, буду переучиваться PS Нет всетаки в первый лисп удобнее именно для пластин
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 31.03.2008 в 21:43. |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, большое спасибо,
если синим загорается значить считает по формуле если красным значить нет в сортаменте и добить в ручную PS всетаки бы узнать что сделать чтобы ссылкой цыфры не выводились...
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
А вот кнопочку сообразил для лиспа, так сказать соеденил из двух,
в архиве специально формат БМП, для автокада, форум не позволяет открыто выкладывать... естественно каждый свой вид команды вписывает Буду рад замечаниям
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
dextron3, Переименуй архив, а-то при закачке я к примеру случайно переписал вместо архива с поста #273, название тоже, не хорошо получается.
Раз уж начал, то давай и менюшку делай, с разными иконками, на все команды. ![]() |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Обновил код в #273
1.Подумал, подумал и согласился с предложением Red Nova #279 (в Spec3 запрос изменен на запрос точки середины колонки) 2. Добавлена обработка профилей по ГОСТ 24045-94 3. Мoи варианты кнопок к командам
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Добавил в базу весь спектр равнополочных уголков, а также дополнительные ТУ в для гнутых прямоугольных и квадратных профилей,
PS оказывается базы пополнять настолько нудная работа... из предыдущего поста скопировать только ГОСТ 24045-94 VVA, а профлист в метрах квадратных считает (м.кв.) или как отдельные листы???
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 01.04.2008 в 19:58. |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, у Вас профлист в погонных метрах,
хотя часто его считают в квадратных. Вот для м.кв. : Код:
тоесть около 1000 разновидностей получается, тут формулу нужно выводить... гайки с шайбами то понятно...
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 01.04.2008 в 20:23. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Я предполагал, что профлист ситается по погонным метрам
Запись должна быть типа: ГОСТ 24045-94 Н75-750-0.8 L=1000 Алгоритм программы составлен так, что найденный вес в базе умножается на длину, если длина не определена, то она считается 1000 мм. Можно изменить вес в базе на м.кв и изменить алгоритм расчета профлиста, где кол-во будет обозначать м.кв, но тогда по профнаслил будет считаться только по погонным метрам. Короче нужно определиться с профнастилом: или погонные метры или квадратные метры? >dextron3 Приведи пример строки спецификации для болтов.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 19.04.2007
Сообщений: 200
|
VVA, ты правильно считаешь. У тех листов, которые у тебя в базе (проф. листов) идет стандартная ширина. Но есть листы рифленые, с ромбическим и чечевичным рифлением, может и другие есть. Так вот у них вес в сортаменте в кв. м. ГОСТ 8568-77*.
Сам попробывал переделать твой старый код. Может и для нового пойдет, не пробывал пока: 1. LISP: ;;;======= ЛИСТЫ СТАЛЬНЫЕ С РОМБИЧЕСКИМ РИФЛЕНИЕМ ГОСТ 8568-77* (ЛИСТ или ПОЛОСА) + ((vl-position (car WHAT) '("РИФ" "РИФ.")) ;_Сталь листовая (setq L (vl-string-translate "X" "Х" (car(str-str-lst (cadr what) " ")))) ;;;_ Заменяем английское X на русское Х на у первых символов до пробела (setq L (str-str-lst L "Х")) ;;;Диаметр - большее число, толщина - меньнее (setq L (mapcar 'atof L)) (setq Sh (apply 'max L) ;_ ширина kF (apply 'min L) ;_ толщина ) (setq L (find-prokat-ves "Р" (itoa (fix kF)) obz)) (if (= (length L) 1) ;;;Нашли вес по базе (setq ves_det_1 (* (car L) Sh Dlina 0.000001) ves_det_all (* col ves_det_1)) ;;;Вес арматуры определяем как Пи умножить на 0.5 диаметра в квадрате умножить на длину и на *STAL* (setq ves_det_1 5 ves_det_all 5 )) ) 2. Prokat ("Р" 16 "ГОСТ 8568-77" "ЛИСТЫ СТАЛЬНЫЕ С РОМБИЧЕСКИМ РИФЛЕНИЕМ ГОСТ 8568-77*" (("3" 25.1) ("4" 33.5) ("5" 41.8) ("6" 50) ("8" 66.6) ("10" 83) ("12" 99.3))) |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
поз. 16 у нас так обычно профлист в квадратах считается, ну как бы укрупненно, как раньше в СССР чтобы считали я не встречал.
поз. 17 - болт (самый приметивный способ обозначения, буква М это типа для резьбы, ее можно не учитывать) поз. 18 - соотвественно гайка, (столбцов меньше) поз. 19 - шайба (столбцов меньше) PS то что я картинки люблю пририсовывать, перед обозначением, на это не обращай внимания, это моя слабость ![]() это я дал для Spec5D, которую используют у нас частенько
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
LSN, покажите как это будет в спецификации выглядеть, уже в автокаде скриншотом, не могу сообразить для чего лисп еще добавлять, если по марке можно вес найти..
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
VVA, А можно меню добавить к кнопкам. Я бы сам сделал, но как-то пробовал сделать custom и сохранить, и нечего толкового не вышло (загружаю меню, а там пусто)?
Можно сделать две панели инструментов. Одну полную, со всеми кнопками, а другую тоже со всеми кнопками, только загнанными под flyout. |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
>Я с этими куями не заморачиваюсь, делаю панели в блокноте в mns файле и через _menuload импортирую. Будет время сделаю панель.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, помнишь лисп Spec который считал пластины
обозначенные типа: 200x150x5, соответсвтенно длина отсутствовала, можно ли его внедрить в основной лисп к команде Spec5D, чтобы при обнаружении госта пластины считался по формулам лиспа Spec, ГОСТ19903-74 - этот гост, PS Объясню почему, обычно при обозначении пластины затрагиваем сразу две переменные, длинна и ширина, в отличие от всех других элементов сортамента, когда это в одном тексте написано легче перебить, а так как щас я должен сначало вбить ширину, закрыть текст, открыть другой с длинной L= и вбить длину, время тратиться уйма.
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Я уже это исправил. Чуть позже выложе новую версию
Думаю над чечевичным и ромбическим рифлением.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, я нашел баг в просчитывании пог. метров. в арматуре,
не могу понять что делаю не так, или что то в самом алгоритме, тоесть когда погонные метры считает нужно в массе 1ед, вбивать массу 1 п.м. арматуры, напрямую, а у вас две одинаковые цыфры получаются, смотрите скриншо: ЗЫ Команда Spec5D
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Регистрация: 19.04.2007
Сообщений: 200
|
Цитата:
Там просто от толщины зависит. Обозначение Риф. может быть не совсем правильное, т.к. в ГОСТе два наименования таких листов. Последний раз редактировалось LSN, 03.04.2008 в 19:18. |
|||
![]() |
|
||||
Если кто-то будет добавлять в базу данных профили, то прошу выкладывать и сопровождающий файл пример (добавленные строчки к файлу от VVA), Так больше шансов что про это узнают.
dextron3, Это я по поводу твоей добавки вспомнил. VVA, Прошу полезные добавки в сортамент от других пользователей добавлять в свой файл, чтобы при следующем обновлении ничего не потерять. (И файл примера тоже прошу пополнять этими возможностями, ведь про возможные функции пользователь в первую очередь именно из файла примера узнает) |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
> Red Nova #296 Я так и делаю. Пока добавки dextrona не смотрел, но уголки равнополочные и не равнополочные добавил тоже. Потом сравню.
Придумал как различать ромбическое и чечевичное рифление по ГОСТ 8568-77, а заодно листы просечно-вытяжные по ТУ 36.26.11.-5.89, Дюбели-шпильки распорные строительно-монтажные ГОСТ 28457-90. Пока беру паузу на отладку кода.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, а для болтов, гаек и шайб, чтонибудь придумали?
дюбели шпильки особо не применяются если как гвозди то в кг считают, но я не раз не видел
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Следующая версия. Про кое-какие улучшения рассказал в redme.txt.
Распознает листы по ГОСТ 8568-77 с ромбическим или чечевичным рифлением, для ГОСТ 24045-94 распознает погонные или квадратные метры, для ГОСТ 19425-74 отличает Швеллер 20С от Двутавра 20С Придумал как распознавать БОЛТЫ по ГОСТ 7798-70. Пару примеров внес в базу, окончательное наполнение по образу и подобию за dextron3
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
>LSN #294 В твоей записи посчитает как ромбическое рифление. Можно писать как в ГОСТе, распознает. Принцип поиска такой: если в названии есть *чечев*, то чечевичное рифление, иначе ромбическое.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, спасибо!!!
Буду завтра с утра пополнять базу, постараюсь самые ходовые, а то около 1000 разновидностей Для гаек и шайбочек строчку, забыли добавить...(там не как у всех профилей там 4 текста, поэтому) так сказать с примером для того чтобы самостоятельно пополнить, а то я только со Spec5D работаю PS Сделайте кнопочку обнулятор гипрессылок, а то как то не привычно когда текст со значками, не по себе как-то
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 03.04.2008 в 21:29. |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, хотел спросить, вы ничего не подумайте конечно,
![]() можно ли с помощью данного лиспа делать выборку однотипных элементов, и суммировать их, одновременно с просчетом спецификации, т.е. уже не по гостам а по схожести элементов допустим всю арматуру Ф8 с Ф8 суммирует, а уголок 63x63x6 суммирует с уголком 63x63x6, И в итоге мы получаем такой расклад, даже можно просто в командной строке: ***Перечень и общая масса элементов. Выборка.*** "Д" 1 "ГОСТ 26020-83;ГОСТ26020-83" "Двутавры по ГОСТ 26020-83 с параллельными гранями полок" "12Б1" Итого: 605 кг. "30Б1" Итого: 126 кг. "ШВЕЛЛЕРЫ ПО ГОСТ 8240-97 С УКЛОНОМ ВНТРЕННИХ ГРАНЕЙ ПОЛОК" "18А" Итого: 5675 кг. "Арматура по ГОСТ 5781-82" "8" Итого: 46456 кг. "14" Итого: 45432 кг. "16" Итого: 909 кг. "25" Итого: 13445 кг. "28" Итого: 24575 кг. "32" Итого: 46322 кг. ***Ведомость расхода стали готова!***
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 04.04.2008 в 09:43. |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, а можно базу буду для массы 1000болтов делать, а вы в лиспе коэфициент впишите 0.001, и наче сума можно сойти?
PS В сотраменте дается для тысячи болтов, тоесть мне надо все цыфры перебить
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
>#306 Набирай
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, Набрал, только не спрашивайте сколько это нервных клеток истратил, и как я это сделал:
Только это все для 1000 болтов, как я и обещал
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
Можно вернуться к посту #16 данной темы? Этот лисп у меня не работает с мтекстами с измененными свойствами (курсив, жирный, другой стиль текста). Такие измененные мтексты он принимает за ноль. Подскажите пожалуйста, что же делать? И еще как сделать, чтоб он писал в ответе два знака после запятой? У меня 2008 КАД
|
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
![]() Вариант 1: Скачать код с поста #300. Задать округление до 2 знаков командой SumTSet, для суммирования воспользоваться SumTE или SumTN, для округления существующих текстов воспользоваться TOKR Вариант 2: дополнить код из #16 функцией, убирающей форматирование mtext'a
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
VVA, если я правильно понял, Вы предлагаете вариант возвращения текста к стандартным параметрам??(дополнить код из #16 функцией, убирающей форматирование mtext'a) Но ведь мне же нужно, чтоб он был курсивом, т. е. хотелось бы чтоб лисп с #16 видел любой формат....Надеюсь, Вы это имели ввиду??
|
|||
![]() |
|
||||
dextron3,
Цитата:
P.S. А форум то разогнался. У меня один день не было доступа к инету, и столько новых сообщений. Трудно поспеть. |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Red Nova,
1. Что такое фланец? не могу сообразить 2. На второй вопрос используй Spec5 без D 3. Про прочерк пришлось тоже его использовать или Spec5 используй 4. Про рифленый и просечной VVA выложит специально HELP,...
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
dextron3,
Фланец это круглый лист. В принципе по госту такого нету. По старинке привык обозначать. Цитата:
|
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Цитата:
радостями которые получаешь ![]()
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
>Red Nova
1. Фланец, трубу добавил 2. Про прочерк. Он нужен обязательно, т.к. индекс в команде D (Spec5D, говорит, что в спецификации есть 5 ОСНОВНЫХ столбцов (Обозначение, Наименование, Кол-во, Масса_ед, Масса_всего) и ОТДЕЛЬНЫЙ текст Длины. Поэтому там должно что-то быть. Или для этих граф использовать Spec5. Почитай внимательнее readme.txt 3. Про рифление тоже ничего сложного нет, если в наименовании есть подстрока *чечев*, То считается чечевичное, иначе ромбовое. Т.е. запись ГОСТ 8568-77 Лист ромб В-К-ПУ-3.0х1000х1000 и ГОСТ 8568-77 - В-К-ПУ-3.0х1000х1000 воспримется как лист с ромбовым рифлением (т.к. там нет построки *чечев*)
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Ну если только так то сойдет конечно–же. Но давай я логику объясню.
Итак должно быть обязательно 5 столбцов. В чем тут принцип? По какому алгоритму разделяются столбцы. Насколько я знаю в основе координаты У и Х. Если так, то можно четко понять где закончилась одна строка и началась другая. Я не против ограничения на количество столбцов. Но разве нельзя добавить исключение? Скажем так. Если количество столбцов не 5 а 4, то программа анализирует строку и дальше действует как указанно в следующем файле. P.S. У меня у другие интересные предложения были, надеюсь не обойдешь их. |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Дело в том, что столбец "Обозначение" может отсутствовать. Поэтому если не выбрано не 5 а 4 столбца, то программа считает, что отсутсвует столбец Обозначение и добавляет его в начало массива. Если у тебя длина пропущена, то в "Обозначение" добавляется "", твое Обозначение вдвигается в графу Наименование, Наименование в Кол-во, ну и т.п. Поэтому из-за сдвижки найти ничего не удается.
И еще одна немаловажная деталь: Основной код разрабатывается для заполнения спецификаций по ГОСТ, т.е. Гост проката может быть в "Обозначении" или "Наименовании", длина элемента задается как L= в графе "Наименование". Команды и индексом D (Spec5D и Spec3D) - производные и поддерживаться будут ровно настолько, насколько они вписываются в основной алгоритм.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
По поводу вопроса из #324 нереализуемо.
Алгоритм построен следующим образом: 1. Из выбранныз текстов сортировкой по Y, а в пределах каждого Y по X формируются массивы текстов по столбцам "Обозначение" , "Наименование" "Количество" "Масса_ед" "Масса всего". 2.Если выбрано меньше меньше столбцов, чем заказывали (например в Spec5D вместо 6 - 5) то считается, что столбец "Обозначение" имеет значение пусто, но его значение "" добавляется в начало списка элементов строки. 3. Массив длин формируется из графы "Наименование" если это не Spec5D или Spec3D. В этом случае берется из 3 элемента строки. 4. Уже потом стобцы передаются на анализ, где по столбцу "Наименавание" осуществляется поиск типа проката. (т.е. распознается лист, двутавр и т.п.)
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Следующий вариант.
Добавлена команда HYPD (удаление гиперссылок), хотя не понимаю, чем не устраивает команда _HYPERLINKOPTIONS. Добавлены болты, которые подготовил Dextron3. Добавлена сортировка по ГОСТ'у и марке проката с подсчетом массы. Вывод осуществляется в командную строку.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
А в каком виде должна быть запись болта для Spec5D, а то что то не считает...
мне бы из 5 строк + длина скриншот это мое обозначение
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 07.04.2008 в 19:21. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Там длина болта используется для поиска массы. Писать нужно так ка в ГОСТе
Болт М6-6g Х 8.58 Маска для поиска в базе - "М6*[ Х]8." * - любой символ [ Х] - или пробел или Х Т.е можно и так Болт М6 Х 8. Болт М6Х8.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Болт М6 Х 8 для этого выдает прочерки я понял наверно потому что масса при округленни до 2х чисел равна 0
PS Почему этот пяти текстовый алгоритм не применить для нахождения массы пластины, без дополнительного прочерка или еденицы в непечатаемомо слое?
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 07.04.2008 в 20:10. |
|||
![]() |
|
||||
>VVA.
A) Ты уж прости, но я понастырничаю. По #326. Сейчас по графам "Обозначение" , "Наименование", "Длина", "Количество", "Масса_ед", "Масса всего" cортировка идет только в зависимости от количества столбцов. А если сделать сортировку умнее. Столбец "Обозначение" должен определятся не по принципу количества строк. А по первым буквам содержания. Я пока насчитал только три вида нидписей для этой графы. Они начинаются с "ГОСТ", "ТУ" или "СТО" (можно и добавить. Дальше легче. Отделяем "Обозначение" (если оно есть) и рассматриваем остальные строки. Если дальше есть 5 строк, то все по старинке. Если дальше только четыре строки, то возможно два пути. 1. Когда отсутствует строка "Количество" 2. Когда отсутствует строка "Длина" Остается различить эти строки. Это можно сделать так. Если во второй графе есть "ΣL", "Lобщ" , "пн", или "мп" (по моему я перечислил все варианты обозначения погонных метров, если нет, то вы добавте), то это первый вариант. Если нет, то это второй вариант. Помоему все реально. Только нужно поколдовать немного с лиспом. B) Теперь об одном пункте, который ты не учел ранее. Цитирую из файла выложенного ранее. По госту разрешено писать ГОСТ только один раз, а дальше для похожих элементов его можно и не писать. Можно ли бобавить возможность, чтобы при отсутствии Госта для конкретного элемента, программа искала похожие элементы, и найдя элемент с гостом, брала его? Если найдутся похожие элементы с разным гостом, то в ход идет поочередность. Так написав один гост, все элементы идущие ниже приравниваются к нему, до тих пор как в спецификацие (в N-ной строке ниже) находится другой гост, строкам идущем после N-ной строки дается он. С) Скоро буду просить адаптировать SPEC5D к Армянскому (надо приравнять некоторые слова из русского к армянским кодам). Как на это смотришь? Возможно ли в лиспе в отдельном месте (чтобы не разыскивать слова по всему файлу) задать таблица перевола нужных терминов? >dextron3, это что за скрин такой? В смысле что за прогамма. |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Red Nova, а что армянские ГОСТЫ и обозначения не как в бывшем
СССР, или Двутавр по армянски не Двутавр? у нас как есть по казахски тоже самое это калькулятор металлиста
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
>Red Nova
A. Ты не учел РСТ, СТБ, не_знаю_что_на_Украине, серии предприятий (мы, например, такие используем) В длиннах есть Lср и т.п. B. по ГОСТ нужно писать обозначение каждый раз, но для одинаковых можно не писать. Это было сделано для более быстрого ручного заполнения. Т.к. делаешь все на компьютере,то не пиши, а копируй. Алгоритм и так усложнился до такой степени, что вскоре я сам перестану понимать что и где делается. С. В принципе можно. Что нужно переводить - "Двутавр" по русски на "двутавр" по армянски? Т.е. в смысле слова по русски на аналогичные по армянски? > dextron3 Вот [FONT=Arial]ГОСТ 11371-78. Там масса шайб зависит от диаметра резьбы, типа исполнения (1 или 2) и класса точности (C или A)[/FONT]
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Учтем, просто я по калькулятору считал, он не спрашивал,
но мне более важнее ГАЙКИ скажите, форму чтобы я пока базу забивал... PS Болт М6-6g Х 8.58, что означает 6g не согу понять, но кажется что 6 граней, но ведь 5гранных не бывает же PS VVA, спасибо за выборку, теперь в автокаде с удовольствием работаю
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 08.04.2008 в 11:46. |
|||
![]() |
|
||||
VVA,
А Ну я не против указанных добавок. Как я понимаю мое предложение в общем одобрено? B Сдаюсь и не буду настаивать. В конечном итоге и в правду скопировать не трудно. С. Ты правильно понял. Надо перевести слова типа ГОСТ, Уголок, и.т.п dextron3, Цитата:
В основном конечно термины схожи. К примеру "Двутавр" по армянски звучит "Ерктавр", но в любом случае кодировка разная (буквы то армянские). Цитата:
Цитата:
|
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
>Dextron3 Цитата:
A. Буду думать С. Это лучше сделать отдельной командой Цитата:
Почитай внимательнее #327 Цитата:
Нажми F2 и посмотри в командную строчку
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
VVA,
Цитата:
Цитата:
Цитата:
|
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Версия 6
Добавлены Болты, Гайки, Шайбы Новая команда SpecW (Spec Wood) - спецификация деревянных изделий Пример в файле Спецификация.dwg Настройки по SumTSet
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
>VVA.
Я так понемаю, что изменения связанные с прочерком ожидаются где-то в седьмой версие? На счет файла примера. Пока вижу в нем полную информацию только для SPEC5. Скажу чесно, пока и сам не знаю про все функции SPEC5D, (где-то невнемательность, где-то не очень понял), а если я не очень понимаю, то представь что поймет человек к которому лисп поподет не из этого форума. По этому прошу в примере дать все возможные варианты, которые учитываются в лиспе. (Хотябы для SPEC5D). |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, я тоже не могу сообразить как будет выглядеть пример записи в из скриншота для Spec5D, а не могу выделить длинну, и как ее обозначать?
PS А то приходится использовать Spec5, хотя он для меня не приемлем,
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
LSN, спасибо что заметил, действительно нужно, остальное считает правильно
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 08.04.2008 в 20:03. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
По порядку
>LSN #344 Да, наверное так правильнее. Постараюсь сделать >dextron #343 Гайки, шайбы писать не обязательно. Первоначально тип проката определяется по ГОСТ. Пришли мне свои изображения проката (двутавры, швеллеры, болты и т.д.), сделаю пример для Spec5D. Самому лень рисовать. >По поводу #345, #342 и пропадающих длин и количеств. Пока еще кое-сто наклевывается, необходимы кое-какие уточнения: Для графы длин: там не могут быть только одни цифры. Т.е если текст из графы длин, то там либо L=123, либо Lср=123, либо Еще_что_нибудь=123, либо м.п., но не просто 123. Т.е. правило таково Если текст длины есть, то там обязательно должны быть не числовые символы Если текст количества есть, то там должны быть только числовые символы (запятая и точка в расчет не принимаются)
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
VVA,
1. Цитата:
2.А как на счет перевода терминов на другой язык. Идеи есть? Очень на это надеюсь. 3.Как на счет более подробного файла примера? |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, вот...
просто и со вкусом и не надо заморачиваться про головки, грани, резьбы... ![]() Два обозначения встретил впервые, хотел еще сетку "рабицца" включить, тоже чтобы по площади считало, хотябы одной марки если есть желание могу поискать... PS Руки чешуться проект поделать, а проектов то никто не дает
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
dextron3,
Поделись пожалуйста гостом на сетку "рабицца". Очень надо. P.S. А у меня вот есть проект, но он на армянском, пока не трогаю спеку. Жду и надеюсь. Последний раз редактировалось Red Nova, 09.04.2008 в 12:50. |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Говоря про отдельную команду перевода я имел ввиду следующее. Та работаешь на русском, а потом за один раз переводишь на нужный тебе язык.
Если лезть в SpecXX, то действительно возникнут проблемы с новыми версиями, нужно будет переводить базу и т.п. Команда-то получается небольшая и ни от чего не зависящая. Вот как пример. Перевожу на траслит. Вместо траслита подставь свои слова. Чувствительна к регисту, т.е. ГОСТ и ГОСт - два разных слова, оба нужно указать в таблице перевода. Код:
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 09.04.2008 в 14:26. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Двунаправленный по моему очень пригодится. Спасибо. В принципе при помощи этого лиспа довольно не плохо работать с армянским. Но конечно же если бы получилось как я предполагал, то было бы просто супер. Это не реалезуемо?
|
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Программа не трогает знаки диаметра или уголкаЮ она тупо ищет слово слева и заменяет словом справа или наоборот. Я тестировал для ракладки русский-латиница и знаки диаметра оставались на месте. Может дело в шрифтах, кодовой странице или еще в чем либо?
По поводу перевода я уже сказал, что это реализуемо, по нужно: 1. Переводить код и базу, что ограничивает быстроту появления новых версий 2. Транслировать на момент рассчета с армянского на русский вначале и обратно в конце. Код для варианта 2 я выложил в #351. Не проблема вставить в Spec5D трансляцию, но нужно решить проблемы #354
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, спасибо подход понравился, а есть такая возможность чтобы к лиспу переводчик базу прикрепить, англ. армян. казахск. языка , с полным перечнем слов, по типу сущ. лиспа..
Выделение рамкой в силе База вида: арматура;armature двутавр;dvutavr ГИП;GIP и т.п. Не знаю как со специальными казахскими символами, в блокноте, но вворде они печатаются, но с базой отедбной интересней чем, в лисп лезть, неопытный пользователь может там натворить дел. Вот про сетку "рабица": НАЗНАЧЕНИЕ: Сетка рабица применяется для ограждений, теплоизоляционных работ, крепления горных выработок на шахтах и рудниках, просеивания. МАТЕРИАЛ ДЛЯ РАБИЦЫ: низкоуглеродистая сталь Ст1кп, Ст2кп. Без покрытия или оцинкованная. Поверхностная плотность цинка, в зависимости от диаметра проволоки, 50-80 г/м2. Сетка рабица поставляется в рулонах массой до 80 кг, торцы рулона обернуты бумагой или упаковочной тканью, или тарным холстопрошивным полотном, или клееным полотном. Значения, указанные в скобках, распространяются на сетки с квадратной ячейкой. Р - ромбическая ячейка; Р или К - ромбическая или квадратная; К - квадратная.
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 09.04.2008 в 16:14. |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Вот ТЗ для рабицы, пригодится по любому, на этом использующиеся мной
элементы в сортаменте заканчиваются, буду ждать, конечный вариант, если что то забыл, просьба напомнить, сегодня был в институте, сказали что дюбеля, саморезы, гвозди в спеках особо не пишут, так как сметная программа автоматически их считает...
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Red Nova, если честно я сам не понял, как должен алгоритм, срабатывать, может полегче предложить:
Представь себе что есть команда Vedom она отдельная: а также к ней идет спека (со всеми элементами которые считает лисп), но только в ней нет 2х столбцов количество и масса еденицы, а только есть столбец ИТОГО, Сначало лиспом выделяем нашу обычную спецификацию, просчитываем, потом этой командой Vedom, выделяем вспомогательную такблицу, где в Итого указана общая масса, ( к примеру подсветить красным, а где нули оставить как есть чтобы не запутаться), и потом просто переносим в твою заготовку цыфры, а для подсчета общей массы ведомости используем лисп Summ, Сама по себе ведомость расхода нужна я так понял тольок для прораба чтобы деньги примерно прикинуть сколько что стоит, и для сметчика. PS Это только мое предложение, если дальше развиваться лисп будет, а то что выдает лисп на данный момент в командной строке меня устравиает
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
dextron3, Подождем пока комменария от VVA.
По поводу #356. Спасибо, что выложил. В файле word, там в последнем столбе это что, длина рулона? (1000,1500...)? У тебя есть ссылка на калькулятор, которую я просил ранее? |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Вот разобрался вид записи листов для чечевичного и ромбического рифления, для Spec5D
см. скриншот PS я тут подумал может и рабицу таким же образом забить, вот сижу жду от VVA указаний...
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Вот цитата из ГОСТА
Цитата:
|
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Вот сетка рабица для базы но почемуто лисп не считает,
;;; =============== Сетка "Рабица" ГОСТ 5336-80 ==================== ("Ромб." 40 "ГОСТ 5336-80;ГОСТ 5336-80&Ромб." "Сетка Рабица ГОСТ 5336-80" (("5х5%%c1.4" 4.52) ("6х6%%c1.4" 3.73) ("8х8%%c1.4" 2.78) ("8х8%%c1.6" 3.8) ("8х8%%c1.8" 3.8) ("10х10%%c1.4" 2.2) ("10х10%%c1.6" 3.0) ("10х10%%c1.8" 3.0) ("12х12%%c1.6" 2.48) ("12х12%%c1.8" 3.24) ("15х15%%c1.8" 2.57) ("15х15%%c2" 3.25))) ("Квадр." 41 "ГОСТ 5336-80;ГОСТ 5336-80&Квадр." "Сетка Рабица ГОСТ 5336-80" (("15х15%%c2.5" 3.6) ("25х25%%c2.5" 2.15) ("25х25%%c3" 3.36) ("35х35%%c2.5" 1.56) ("35х35%%c3" 2.44) ("45х45%%c3" 1.87) ("45х45%%c4" 2.7) ("50х50%%c4" 2.42) ("60х60%%c4" 2.0) ("80х80%%c5" 2.76) ("100х100%%c6" 3.4)))
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 12.04.2008 в 20:53. |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, а можно сделать обнулятор для гиперссылок сразу для всего чертежа, а не для выделенной области, т.е. перед выдачей чертежей заказчику один раз прошелся и все хвосты почистил...
а то там чучть чуть подрисовал там, потом забыл где, спасибо
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Добавлен ГОСТ на сетку рабицу. Пример записи приведен в файле, см. также сам ГОСТ СЕТКИ СТАЛЬНЫЕ ПЛЕТЕНЫЕ ОДИНАРНЫЕ (ГОСТ 5336-80) По поводу обнуления гиперссылок набери в командной строке _all или сделай кнопку ^C^CHYPD;_all; Позже отключения гиперссылок добавлю в настройку. Добавлена сортировка по классам арматуры. Классы арматуры описываются в базе (prokat.ves) здесь Цитата:
*** Обновление от 15.04.2008 Изменения в коде, касающиеся выборки болтов, анализ выбранных столбцов в Spec5D, изменения в базе записи классов арматуры
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 15.04.2008 в 18:41. |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, а для Spec5D как выглядить обозначение болта гайки и шайбы?
большое спасибо
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 14.04.2008 в 14:39. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Забыл совсем сказать, для Spec5D добавил обработку пропущенных количества, длины, но только чего-то одного. Пример в файле Спецификация.dwg для Spec5D
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
> Red Nova
по поводу #357 у меня таких багов нет, хотел анимированный gif сделать, но пока времени нет по поводу #359 посмотри то, что уже есть. Выполни Spec5D для любой из таблицы своего ТЗ, нажми F2 и посмотри что есть. Учти только, что классов арматуры AI и AIII в базе нет, в базе они описаны как A-I и A-III Нужно или поменять в спецификации или добавить описание в базу Короче выполни Spec5D с учетом #366 #368. Вот мой листинг Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
VVA,
1. По поводу Erevan-Moscow (к стати по английский Yerevan ![]() Про баг на рабочем компе я уже говорил. Пробую дома, вообще не работает. Цитата:
А текст простой. И лисп без изменений, как ты выложил. 2. По поводу V7 Возникли некоторые вопросы. Поскольку примера нету, я сам попытался из примера для SPEC5D, переделать в SPEC5. Получилось вот что. (На чертеже А, В) 3. Спасибо за добавленную возможность избежать текста с прочерком. Единственный вопрос тут в том, что для этого варианта обязателен ГОСТ, хотя для обычного варианта считает и так. Можно ли это добавить и без ГОСТА вариант? 4. По поводу ведомости расхода стали. Конечно же это очень хорошая функция, когда в командной строке виден вес, но это в конечном итоге должно быть на чертеже. Предложенный мною вариант конечно же сложный, но если бы что-то подобное работало, то польза неоценимая. Если я чересчур усложнил задачу, то может подумаем про корректировку? Последний раз редактировалось Red Nova, 14.04.2008 в 22:56. |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
я кажется понял в чем ошибка, в лиспе
тоесть когда A-III, лисп доходит до A-I и дальше не проверят, так как сразу перессылка идет, соответсвенно и с A-II такая же ситуация (но это только мои догадки, но все остальные марки определяет) проблему решил поменяв базе строчку на эту Код:
PS Жду обозначения болтов для Spec5D
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 15.04.2008 в 16:07. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
>Red Nova #374
1. Добавь в начало (vl-load-com) 2. Пока не смотрел 3. Думаю как сделать 4. Если то, что выводит в командную строчку правильно, то вывести в таблицу это дело техники. >Рин Да, установи сейчас, не пожалеешь в будущем. ![]() >dextron #377 Молодца, проблема именно в этом. В программе идет поиск на вхождение подстроки в строку, естественно A-I как часть входит в A-III. Решается так, как ты и сделал. Вообще у нас (в Белоруссии) уже перешли на классы A240, A400,S240,S400
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, пока вы не ушли дайте мне правильное согласно
правилам обозначения для Spec5D: болтов, гаек и шайб, с длинной L=? для болтов. PS Вы получили в личку задачку по сортировке? PS2 тоесть: A240----A-I A400----A-II S240----A-III S400----A-IV Объясните для чего был сдлеан переход, и какую функциаональность он несет,...
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
VVA,
1. Добавил (vl-load-com), лисп заработал, но на домашнем компьютере тоже спец символы СПДС переводятся как вопросы ![]() 2. -------- 3. -------- 4. Я особо не проверял, (тут больше dextron3 в курсе) но вроде как все делом, если вывести это в таблицу и в правду дело техники, то жду с нетерпением. Прокомментируй пожалуйста #375. |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Это что-ли?
Про перевод пришли на почту мне свой файлик с СПДС спецсимволами
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Кстати в мтекстах тоже такая фишка есть. Называется "Скрытие заднего плана"
Обновил sumtV7 в #366 посте.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Неа вру. Не отправил, в личке нет расширенного режима, а следовательно и возможности прикрепить файл. Выкладываю тут. На будущее отправь мне свой мейл, если это возможно.
Про маску мтекста я знал и давно использовал, а про размеры не знал. Последний раз редактировалось Red Nova, 15.04.2008 в 19:02. |
||||
![]() |
|
||||
Я конечно же дико извеняюсь, но ты кажется удалил sumtV7 c #366
![]() Еще одна просьба. Можно в файле примера, в отдельном месте привести список Гостов, которые охватывает лисп? Было бы очень полезно. Последний раз редактировалось Red Nova, 15.04.2008 в 19:01. |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Ты наверное смотришь быстрее, чем я выкладываю
![]()
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Проектируем Регистрация: 03.04.2008
Sever Kavkaza
Сообщений: 122
|
Сегодня скачал последнюю версию sumtV7 с #366. При первой попытке выдает сообщение в командной строке (_speckg неверно сформирванный список на входе). Во второй раз уже нормально, но арматуру считает по формуле, т.е. веса в базе не находит
|
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
>Red Nova #384 Вот что у меня
>Рин Файлик пришли или выложи
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Облом. Непойму в чем межет быть причина. А у тебя точно тот же лисп работает, что и выложенный?
dextron3 Испытай пожалуйста лисп перевода с поста 351. Нужно постороннее мнение. Как у тебя поведет себя файл с поста 384? |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
>RedNova #390 Тот же лисп. А себе его не сохранял. Заново скопировал с поста, и файл с #384, только строчку скопировал ниже.
>Рин Я это не могу объяснить, у меня тоже работает. Здесь как и с Red Nova нужен третий. > Red Nova или Dextron Новая редакция sumTV7 с #366 на тестовом файле работет? В базе поменялся только порядок описания классов арматуры, и все
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, все работает претензий пока нет жду обновления по порядку подсчета выборки,
Red Nova, ну во первых у тебя м-текстом написано, лисп вообще не работает для м-текста, но для обычного текста ведет неккоректно прилагаю свой пример в видеоролике, я сразу сказал что эти дополнительные шрифты ведут себя некорректно, поэтому откажись от их использования, потом начнешь работать с другими конторами тебя реально запарят, не у всех шрифты эти корректно отображаются....
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 16.04.2008 в 19:04. |
|||
![]() |
|
||||
dextron3, спасибо.
VVA, Как только протестирую новую версию дам знать. Erevan-Moscow глючит и у dextron3. Так что проблема в лиспе, а не у моего када. Нет мыслей как исправить? (может можно написать то-же но чуть подругому, глядишь и глюки пропадут) А-то с армянским мне будет туго. Рин, А ты прописал путь к папке с лиспом в AutoCAD? |
||||
![]() |
|
||||
VVA,
Протестировал последнюю версию. SPES5D 1. Не считает болты и гайки (ранье SPES5 считал, а теперь заглох и он). 2. Прошу дать пример расчета на лист чечевицу и ромб. SPES5 и SPES5D 3. Обнаружил что-то очень странное. Беру один и тот же файл примера выложенного тобой. Один экземпляр оставляю в папке Sum7V7, (там и лисп) путь к этой папке прописан в каде, для этого экземпляра все команды работаю нормально (кроме болтов и шайб, но это другой вопрос). Теперь копирую файл примера в другое место. Некоторые строчки теперь отказываются считаться и краснеют (сетки гайки шайбы). В чем дело? Файл тот же. Смотри в приложенном файле пункт три. Лисп в обоих вариантах в автозагрузке. |
||||
![]() |
|
||||
На работе все заработало. Подозреваю что дома я оставил путь к старому файлу базы, и по этому были глюки, вечером посмотрю.
VVA, 1.У меня есть такое предложение. Сейчас когда округление настроено на одну цифру после запетой, то если масса одной детали меньше чем 0,04 то масса одной детали записывается как 0. А масса всех деталей уже ощутимая цифра. Так случается к примеру с болтами. Можно ли сделать так, чтобы в случае когда масса одной детали очень мала, то вместо нуля записывалась скажем 0,006, то есть охватывая первую цифру не равную нулю. 2. Предлагаю ввести новую переменную, дающую возможность изменить цвет приблизительно рассчитываемых масс с синего на белый. 3. Так и не могу разобраться с чеч. листами. Смотри что у меня получается. Последний раз редактировалось Red Nova, 17.04.2008 в 11:52. |
||||
![]() |
|
||||
VVA
Может с переводом на другой язык как-то подругому решить вопрос? А то лиспик у меня теперь только для русских проджектов.
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Давай про перевод в другой теме.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Зачем? Мне ведь не просто перевод нужен, а интеграция перевода в SPEC5d.
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Просто пока проблемы с самим переводом. Интеграция - чисто техническая часть. Да и dextron3 что-то высказывал пожелания про казахский
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Чесно говоря не пойму чем тут поможет переход вопроса на другую тему. Если пока проблемы с переводом, то может с этим вопросом подождать? А проблемы какие, по части программного решения? Помнишь я предпологал, что возможно можно в лиспе создать отдельную дирректорию, где будут находится парные слова перевода (Труба=truba....), это не вариант?
Прокомментируй пожалста пост #401, первые два вопроса если хочешь можешь и пропустить, а с третим хотелось бы понать.
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Про пост #401 чуть позже. Сейчас катастрофически не хватает времени
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Цитата:
![]()
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Версия 8. Добавлена настройка разделителя дробных и целых знаков (sumTSET), в TOKR добавлен запрос подавления незначащих нулей.
По поводу #401 1. Вроде сделал 2. Пока не делал 3. Это виноват сам. Пошел на поводу типа здесь длина есть, а строчкой ниже нет. Это огрехи работы анализатора пропущенных столбцов. Вообще есть большое желание вернуть все назад. Выбрал 5D - будь добр заполни графу длина. Сейчас поправил, но в дальнейшем править анализатор пропущенных стролбцов нет желания, т.к. у нас этим не занимаются. Пишут по ГОСТ, и все работает. *Добавлено 07.05.2008* Добавилась сортировка, округление малых чисел (если вес одной делали меньше 100 грамм, то она округляется с точностью до 4 знаков) Внесены изменения в prokat.ves ! Добавлен прокат марки по для сортамента по умолчанию (сейчас это "Ст3сп")
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 08.05.2008 в 10:12. Причина: Болты по ГОСТ 28778-90 |
|||
![]() |
|
||||
Спасибо за новую версию, щас потыкаем.
Цитата:
__________________
Блог |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, что то не работает с 0.0001 числами всеравно прочерк выдает при округлении 2 знака после запятой,
а попорядку по возрастанию диаметр по прежнему не сортиует =(
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Протестировал.
1. Про подавление нулей. Работает не корректно. Смотри приложенный файл. Тестировал при разном округлении. 2. Про ведомость Вот пример Код:
Добавлю что фланец наверное правильнее прибавить к листам той же толщины. 3. Цитата:
__________________
Блог |
||||
![]() |
|
||||
Думаю лисп для расчета спецификации (“Война и мир том 1”) уже можно считать практически готовым (хотя признаюсь я пока работаю со старым и так и недоделанным вариантом SPEC), Теперь хотелось бы перейти к созданию Лиспа для расчета ведомости расхода стали (можно и продолжить наш лисп), как считаете? Я как-то уже выкладывал свой вариант алгоритма, но судя по реакции (от VVA реакция вообще нулевая) мой вариант особо никого не заинтересовал. Так может вы свой вариант предложите? В любом случае считаю расчет ведомости расхода стали важным продолжением разработки SPEC. Очень надеюсь на ваш энтузиазм.
P.S. Конечный продукт должен быть в форме чертежа. Коммандная строка не совсем то.
__________________
Блог Последний раз редактировалось Red Nova, 05.05.2008 в 22:47. |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Я лично приспособился, и создал свою ведомость расхода, и тупо копирую из командной строки и все понятно, для такой замороки как у тебя я создал две кнопки округлитель до 2 знаков и до 4х, и когда надо просто щелкаю, и все в поряде, так что смотри скриншоты:
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Дык есть же по ГОСТу вариант ведомости. Хоть чуток желательно к нему приблизиться.
А копировать из ком. строки считаю лишней работой. Ведь можно это запросто автоматизировать. Не так как я предлагал, так по другому. Заработает сам ведь перейдешь на него. ![]()
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Обновил версию 8 в #409.
Добавилась сортировка, округление малых чисел (если вес одной делали меньше 100 грамм, то она округляется с точностью до 4 знаков) Внесены изменения в prokat.ves ! Добавлен прокат марки по для сортамента по умолчанию (сейчас это "Ст3сп") Цитата:
Вызываешь TOKR, количество знаков округления - 2 , в ответ на запрос Подавлять замыкающие незначащие нули [Да/Нет] <Да>: один раз отвечаешь "Да", второй "Нет". Сравниваешь результат.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, спасибо!
у меня эта команда не одеквадно себя ведет, ^C^C_HYPD;_all; _Cancel, все объекты превращает в объекты ссылки, которые были свободны, посоветуйте чтонибудь По деревянной спецификации: а как для деревянной спецификации 100грамм учитывает, у меня не работает... Почему нет моего обновления: (кстати у меня чтото перестало считать, тоже не могу сообразить) ;;; =============== Болты самоанкерующиеся распорные для строительства ГОСТ 28778-90 ==================== ("БОЛТ" 40 "ГОСТ 28778-90;ГОСТ28778-90" "Болты самоанкерующиеся ГОСТ 28778-90" (("М6*[ Х]65." 0.03192) ("М8*[ Х]85." 0.06092) ("М10*[ Х]100." 0.09061) ("М12*[ Х]110." 0.13402) ("М16*[ Х]150." 0.19229) ("М20*[ Х]200." 0.4569) ("М22*[ Х]250." 0.7406) ("М24*[ Х]300." 1.15952)))
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 07.05.2008 в 18:41. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
1. HYPD исключил, т.к. есть стандартная команда Автокада. После загрузки sumT.lsp нажми F2 и почитай
Кнопка такая: ^C^C_-HYPERLINK;_Remove;_All;; 2. Цитата:
3. Я бы базу записал так Цитата:
Запись по ГОСТ 28778-90 в спецификации: БСР 8х85 У3 ГОСТ 28778-90 ** Добавлено ** Обновил #409 с примерами для болтов по ГОСТ 28778-90
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 08.05.2008 в 10:13. |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
VVA, для спек 5D марка стали особо не нужна,
а вот про щепки не включено эт зря, мы же разносторонне развиты и КД разделы делаем PS хотел спросить можно ли опцию добавить: ============= ИТОГ РАБОТЫ ============== Класс : Арматура А-III ГОСТ 5781-82 Арматура d= 12 - 20.54 кг., или Lобщ.=30м.п. ------------------------------------------------- Класс : Арматура А-I ГОСТ 5781-82 Арматура d= 8 - 9.16 кг., или Lобщ.=40м.п. ------------------------------------------------- Класс : Арматура ВР-I ГОСТ 5781-82 Арматура d= 5 - 3.54 кг., или L=общ.10м.п. Иной раз по проектам строят обычные люди, приходится долго объяснять как кг в метры переводить, даешь таблицу, не понимают, покупают не то... Буду ждать обновки...
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
Хотелось бы снова вернуться к лиспу с #16(страница 1) и советам VVA #311 и #317(16-я страница). То есть, как дополнить этот код (#16) функцией, убирающей форматирование текста... Также хотелось бы его дополнить функцией замены цвета текста, в который вставляется рассчитанное значение, чтобы идентифицировать обработанные объекты....
(по аналогии с лиспом для суммы длин отрезков http://dwg.ru/f/showthread.php?t=842...D%E8%FF&page=6 , #118) |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Держи. Коментарии в коде. Нужное выделил красным
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
VVA,
Поскольку в разработке главной программы форума пока пауза, у меня возродилась просьба (где то в начале форума уже было). Помнишь самый первый SPEC, еще без гостов. Там все работало кроме швеллеров и двутавров. Прошу добавить возможность их подсчета. Напомню как это выглядело, в базу надо вбить только двутавры с уклоном внутренних граней полок (ГОСТ 8239-89) и швеллеры с уклоном внутренних граней полок (ГОСТ 8240-97). При этом обозначаем просто, как указанно в файле примера. Примитивно конечно же, но все же, людям ленивым типа меня полезно. ![]()
__________________
Блог |
||||
![]() |
|
||||
VVA, Появилась идея приспособить лисп к таблицам, как ты думаешь, можно и на таблицы распространить? Все тоже самое, только отмечаем ячейки вместо мтекстов. Продолжать дальше размышления на этот счет, или шансов нет?
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Red Nova, С таблицами не получится, так как ssget вернет таблицу целиком, а не выбранные ячейки. Хота целиком обрабатывать таблицу может и легче, так как там есть шапка, и известно какой столбец "Марка" , а какой "Масса ед." Но это нужно писать другой код. Пока что я за это браться не буду.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Цитата:
__________________
Блог |
||||
![]() |
|
||||
Решил перейти со SPEC на SPEC5D, обнаружил что не все необходимые госты имею. В гугле искал, но есть далеко не все. Поделитесь пожалста следующими гостами
ГОСТ 24045-94 (по моему профильный настил) ГОСТ 5915-70 (гайки) ГОСТ 11371-78 (шайбы) ГОСТ 5336-80 (сетка, нашел только в виде интернет страницы, хочется по культурнее) ГОСТ 30245-03 (Труба квадратная, тоже нашел только в виде интернет страницы)
__________________
Блог |
||||
![]() |
|
||||
VVA
Обнаружил что SPEC5D массу фланцев считает неправильно, причем если пропустить минус, то считает тоже не правильно, но совсем по другому. Прикрепил бы файл, да форум совсем сума сошел, ничего толком не работает
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
подождем файлик
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Ну ни в какую не крепится файл. Попробую в строчном виде написать результат вычисления
ГОСТ19903-74 / Фл. (знак диаметра)327х12 / - / 4 / 30.8 / 123.2 ГОСТ19903-74 / Фл. (знак диаметра)327х12 / / 4 / 0.0308 / 0.1 Оба ответа ошибочны.
__________________
Блог Последний раз редактировалось Red Nova, 05.07.2008 в 17:57. |
||||
![]() |
|
||||
Так хоть понятно? Имелись в виду колонки
Обозначение/ Наименоваие/Длина/ Количество/ Масса ед/ Масса Всех
__________________
Блог |
||||
![]() |
|
||||
До сих пор файл не прикрепляется.
Обнаружил еще следующее: Если не писать строчку ГОСТ то считает нормально. / / Фл. Ø140x12 / / 10 / 1.5 / 14.5 / / / Фл. Ø140x12 / - / 10 / 1.5 / 14.5 / Если же ее писать, то считает неврно. / ГОСТ19903-74 / Фл. Ø140x12 / / 10 / 0 / 0.1 / / ГОСТ19903-74 / Фл. Ø140x12 / - / 10 / 13.2 / 131.9 / Тот же ГОСТ для обычной листовой стали считает нормально. ![]()
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Принцип определения типа проката:
1. Если есть ГОСТ и этот ГОСТ описан в файле prokat.ves, то тип проката берется из файла (это ЛИСТ). 2. Если описания ГОСТА нет, то пытаемся определить по вхождению символов в наименование (если есть ФЛ. то это Фланец)
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
В prokat.ves, в прокатах листовых ГОСТ19903-74 вписан.
Для обычного листа (прямоугольного) массу считает нормально и по ГОСТ19903-74 и по приближенной формуле, а вот для фланца вписывая ГОСТ19903-74 расчет сходит с ума. ![]()
__________________
Блог |
||||
![]() |
|
||||
Ну вот на конец загрузилось.
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Red Nova, Так как вписан ГОСТ19903-74 и он помечен как ЛИСТ, то и считает как лист. Исправленный prokat.ves (добавно разделение в ГОСТ19903-74 на фланцы и листы) Изменения коснулись этих строк
Цитата:
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Спасибо большое, теперь работает корректно.
__________________
Блог |
||||
![]() |
|
||||
Вот и скрин
__________________
Блог |
||||
![]() |
|
||||
VVA
Лист ромб и Лист чечевица считает под одну массу. Я помню что они отличались. Файл опять не крепит, пишу пример строчно / ГОСТ 8568-77 / Лист ромб-8х100x1000 / / 10 / 6.7 / 66.6 / / ГОСТ 8568-77 / Лист чечевица-8х100x1000 / / 10 / 6.7 / 66.6 / dextron3, А ты что не помнишь последовательность столбцов spec5d? Напомню /Обозначение/ Наименоваие/Длина/ Количество/ Масса ед/ Масса Всех
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
У меня считает правильно
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
У меня тоже на работе заработало, а дома нет
![]() Может остался прописан путь к старому файлу, надо будет проверить.
__________________
Блог |
||||
![]() |
|
||||
VVA
A) Так и не понял в чем дело, на работе работает правильно, дома – нет. Стер всю домашнюю папку, проверил поиском, чтобы файлы нигде не дублировались, скопировал папку с рабочего компа, ну ни в какую чечевичный лисп не считается правильно, значение приравнивается к ромбу. Ну да ладно, спишем на сверх естественные силы. B) Опять думал о ведомости расхода стали. Прежде чем к этому приступить решил посмотреть какие массы выдает команда в ком строке (ты ведь на это будешь основываться если будешь писать лисп расхода стали) Обнаружил следующее. 1. Ну про это ты уже от части знаешь, и на вряд ли сможешь помочь, т.к. наверное это только у меня. Масса чечевичного листа приплюсовывается к массе листа ромба. 2. Масса фланца не приплюсовывается к листам той же толщины, а считается отдельно. Желательно это исправить. Арматура суммируется по принципу госта а разность марки игнорируется. Имел арматуру ГОСТ 5781-82 Ac1 и ГОСТ 5781-82 A500c, получил общую сумму масс. Цитата:
К стати тут в шапке пишет что-то не то, (я про “Прокат ДЛџ СОВМЕСТИМОСТИ”) C) Прошу подправить существующий лисп, и подумать о создании нового лиспа для создания ведомости расхода стали. Помню предлагал вариант, но он оказался больно сложным. Вот придумал более легкий. Смотри ТЗ в файле. Надеюсь ты найдешь время для этой разработки.
__________________
Блог |
||||
![]() |
|
||||
VVA, Думаю задумку с #444 можно еще более упростить.
В файле с #444 ведомость создается на основе существующей заготовки. А что если создавать ведомость как генерируемую таблицу? На мой взгляд так должно быть легче и в программном аспекте, и в аспекте дальнейшего использования. В таком случае алгоритм должен выглядеть так: Отмечаем текст с именем “Изделия-1”, это имя записывается в памяти, затем рамкой отмечаем все детали принадлежащие “Изделию-1”, затем отмечаем текст с именем “Изделия-2” и соответственно рамкой его детали, так продолжается для всех Изделий, когда все изделия уже вписаны в память нажимаем enter, и вставляем сгенерированную таблицу. При вставки таблицы желательно чтобы прежде запрашивался масштабный коэффициент для нее, так как не у всех таблицы 1:1, я к примеру их делаю в модели, и они у меня 1:25.
__________________
Блог |
||||
![]() |
|
|||||||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
1.
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Фрагмент базы Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
||||||||
![]() |
|
||||
1) Спасибо. С добавлением классов арматуры разобрался, работает.
2) С фланцем не работает. Пробовал на рабочем компе, на котором барабашек с листами нет. Вот результат Цитата:
Цитата:
4) А как на счет ведомости стали? Не заинтересовало?
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Подозреваю, что лисп старый
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Вот версия лиспа, листинг которого приводил.
При загрузке будет печататься номер сборки. Цитата:
*** Добавлено *** Теперь для ГОСТ 103-76 и ГОСТ 103-2006 будет писать ПОЛОСА.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Спасибо, по видемому ты был прав что лисп старый. Лисп с#449 работает так как надо.
Цитата:
![]()
__________________
Блог |
||||
![]() |
|
||||
VVA,
А что если автоматизировать создание самой таблицы спецификации (из мтекстов разумеется)? В смысле каждый из нас, конструкторов которые используют твои лиспы типа SPEC5D, сперва должны создать ведомость, которую потом уже можно считать одним кликом при помощи твоей программы. А ведь вся информация, которую мы собираем в таблицу спецификации по большей части уже присутствует на чертеже, и куча времени уходит на ее копирование в спецификацию. Предлагаю создать программу, которая умеет это автоматизировать. Вот ее краткое описание. Задумка пока только для людей вписывающих позиции в выноски СПДС (если будет интерес, то в принципе выносками СПДС можно не ограничиваться). Как большинство конструкторов оформляют позиционную выноску. В первую строку вписывается номер позиции, во вторую строку информацию о прокате (арматуре). При запуске лисп выбирает все позиционные выноски СПДС, фильтрует не информативные (те которые своими параметрами не подходят под наши условия), затем избавляется от дублирующейся информации (та же позиция может быть в разных местах), затем отмечаем приготовленный шаблон спецификации, и лисп переписывает в нее собранную информацию. Думаю основной принцип ясен. Если это тебя заинтересует, то расскажу про все задуманные этапы по подробнее. А пока подожду твоего ответа.
__________________
Блог |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Red Nova, а ты VetCAD 3.5 ++ смотрел, так как все что ты рассказываешь это там реализовано, скачай пробную версию, посмотри, как он считает спецификации, как раз таки там есть выноски, которые запозиционированы, и завязаны со спецификацией, из которой автоматом делается ведомость расхода, потом расскажи что думаешь...
буду ждать...
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Посмотрел VetCad.
Задумка конечно же хорошая. Но. 1. Позиционная выноска есть блок + полилиния. Это неудобно. 2. Чтобы работать с VetCad выносками и спецификациями надо сначала вызывать редактор VetCad. То есть нет энейблера как в СПДС. Добавил И кроме этого. Я не ставлю целью записать в позицию всю информацию о ней, как в VetCad, только то, что уже на чертеже. К примеру графу количество в спецификации следует заполнять самим (после сбора информации из выносок). P.S. 1. А ты что на VetCad перешел? 2. Поздравляю с двухтысячным.
__________________
Блог Последний раз редактировалось Red Nova, 20.07.2008 в 16:28. |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Red Nova, мне кажжется что уже все приркучивать к тому что есть только во вред, помнишь ты писал про фланцы я встваил файл так у меня все пластины перестал считать откатился назад....
Веткад задумка очень даже хорошая я еще как только автокадом пользоваться начал сразу а таком способе задумался, но жаль что программа платная, поэтому не для нас... Раньше на проджект студио слюни текли, специально поизучал, но как дело до проекта дошло такого гемора я еще не встречал, я уже кажется описывал проблему PSconstruction, щас хочу расчитывать, начал Лиру изучать, ну тоже с помощью форума, оказывается расчеты тоже интересное дело, как бы начинаешь не интуитивно а реально чувствовать бетон, напряжения, арматуру, прокаты и т.п., тоже начинай учить... 2/ А спасибо мне сказали кто 10 тыщ сообщений набирает, тот автоматом moderatorom становится, ну естесвенно дается испытательный срок, типа модератор чата и не более..., а там как себя покажешь
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Цитата:
Цитата:
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Red Nova, #451 Я это делать не буду, т.к.
1. Не использую СПДС в работе 2. не интересно.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,445
|
> #451: практически нереализуемо лиспом. Представление СПДС-объектов недостаточно для такого действия.
Добавлено: а штатные средства составления спецификаций (которые идут вместе с СПДС) не пробовал прикрутить? Говорят, получается...
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
VVA,
Понятно, ну собственно я так и предполагал, ты и так во многих вопросах мне помог… Кулик Алексей aka kpblc, Цитата:
Цитата:
Попробую по логике пояснить. Если выбрать СПДС выноску, и зайти в свойства, то мы увидим там (в свитке SPDS Graphics) следующие строки “Первая строка” и “вторая строка” (Возможно необходимо иметь для этого энейблер СПДС). Неужели невозможно лиспом прочитать содержание этих строк? Если их содержимое прочитать, то дальше наличие СПДС не имеет влияния, и дело за стандартными операциями, похожими на те, которые VVA использовал на этом топике (хотя может и очень сложными).
__________________
Блог |
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,445
|
Я был неправ, признаю. Добраться до свойств выноски в принципе можно. Но только прочитать (по-моему, менять невозможно). Вот одно из представлений узловой выноски (полученное по (entget (car (entsel)))):
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Ну вот, это именно то что и требовалось. Ничего в выноске менять не надо. Она только несет исходную информацию. А дальше многократная фильтрация этой информации, упорядочивание, а затем и заполнение ее в заранее преготовленный шаблон.
Продолжение ответа тут. http://dwg.ru/f/showthread.php?t=22894
__________________
Блог |
||||
![]() |
|
||||
VVA,
Подскажи пожалуйста, может есть какие строки в лиспе SPEC5D, отвечающие за создание гиперссылок, и может их можно деактивировать? (проставить спереди строчки символ ";" )
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
http://dwg.ru/f/showpost.php?p=223323&postcount=205
Если нужно удалить, то см. хелп при загрузке sumT.lsp (F2) Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Это я знаю, но честно говоря HYPERLINK (опция _Remove) работает не всегда корректно, часто не удаляет, и еще у нее длинный диалог. Хотел узнать нет ли другого пути. (чтобы по проще)
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
А сделать кнопку для длинного диалога?
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Ну кнопку можно, но если возможно лисп подправить, то не желательно каждый раз запускать после SPEC5D еще и HYPERLINK (опция _Remove). Экономия времени - хорошее дело.
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Тогда _hyperlinkoptions отключи гиперссылки и все
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
А эта переменная в файле сохраняется или в Каде?
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Это команда
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Значит действует на весь кад, а это не желательно. Я часто файлы на сторону передаю, не хочу чтобы все ясно видели, что у меня работает некий лисп для спецификации. Народ бывает разный, не хочу чтобы “нежелательные персонажи” задавали лишние вопросы. По этому если был бы вариант подправить лисп было бы хорошо.
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Найди в файле описание функции
Код:
А рядом помести эту Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
В смысле удалить то что в первом окошке, и поставить вместо этого то что во втором?
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
А да, сорри, не дошло как-то сразу. Поставить символы ";" и за ними поместить
Цитата:
__________________
Блог |
||||
![]() |
|
||||
Инженер-электрик Регистрация: 13.10.2007
Калининград
Сообщений: 151
|
Даже при беглом просмотре дошел только до поста #340... А если мой пост #474....
МУчают сомнения что мой вопрос не прочитают((( (Надеясь на чудо): В теме множество лиспов для расчета спецификаций. К сожалению пригодный для себя не нашел((( Думаю если VVA подсилу все о чем вы тут говорили, то моя задача будет куда легче. У меня на чертеже те же линии и мтексты - которые визуально являются таблицей. Очень хотелось бы "анализирующий" лисп. Который работал бы по принципу сводных таблиц Excelя. Представте себе есть данные: Код:
Код:
Форма таблицы и пример во вложенном файле. И более менее понятное ТЗ с принципом расчета))) Заранее спасибо!
__________________
Можно сопротивляться вторжению армий, вторжению идей сопротивляться невозможно. /В. Гюго/ Последний раз редактировалось Kostinok, 05.08.2008 в 14:42. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
skkkk, В атрибут можно было и лиспом #422. ТОлько выбирать надо сам атрибут
Сейчас можно вставлять в атрибут блока, ячейку таблицы, размер, мтекст, текст. Условие то же. Указавать нужно не блок или таблицу, а атрибут или текст в ячейке. Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
VVA, с таблицей порядок, спасибо
![]() |
|||
![]() |
|
||||
skkkk,
Эх товарищ товарищ. Да где у тебя атрибут то в блоке? Закатал текст в блок, и удивляешься - че это не работает. Введи в редакторе блоков _ATTDEF, появится окно для создания атрибута.
__________________
Блог |
||||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
Ну я почему-то считал, что текст в блоке - это и есть атрибут. Да, стыдно. Но меня никто не учил, поэтому я не расстраиваюсь. Вот тогда вопрос. Во вложении лисп (копирует тексты), так вот он может скопировать текст в текст, загнанный в блок, как у меня. Как это он делает?? Нельзя ли с #476 также научить? А про атрибуты надо почитать, не очень пока понятно, что там к чему
|
|||
![]() |
|
||||
Тебе мой совет, забудь про текст в блоке в таких случаях (иногда текст в блоке полезен, но не тут). Изучи атрибуты. Это не трудно. Что ты будешь делать если этот же блок надо вставить еще раз, но с другим содержанием текста? Для этого атрибут и нужен.
__________________
Блог |
||||
![]() |
|
||||
какую ссылочку?
__________________
Блог |
||||
![]() |
|
||||
Регистрация: 29.07.2008
Сообщений: 55
|
![]() результат выводился делённый на 1000????.....у меня просто в спецификации сечение развёртки в мм., общая длина в метрах, а площадь должна быть в метрах кв.....а в коде програмы не могу найти какой переменной, присваивается численное значение из строки... |
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
Тогда старайся точнее вопрос ставить
![]() Это сделать можно точно, но без гуру лиспа не обойтись. Можешь, пока они не пришли, попробовать вариант отсюда http://dwg.ru/f/showthread.php?t=152...EC%E5%F2%EE%EA # 41, только в строке Код:
|
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
А не лучше вариант из #422 на 22-й странице?
Добавлено. Даже последняя редакция в #476, стр 24. Этот лисп может сразу форматировать обрабатываемый мтекст, также обрабатывает и тексты, атрибуты, ячейки таблицы и может менять цвет результата. Последний раз редактировалось skkkk, 12.08.2008 в 11:51. |
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
Там же нет никаких подменюшек... А чтобы не выскакивало окно "Сумма =", достаточно просто поставить перед словом "alert" в тексте кода точку с запятой.
А что у тебя не получилось, там где одни нули, я не понял? Уважаемые гуру, не могли бы вы помимо задачи OHUKCA немного усложнить данный лисп, чтобы он выполнял следующее: пусть есть тексты с числами a, b и c. Нужно,чтобы лисп выполнял действие (а-b):c*1000. Хотелось бы так: вызываем лисп, кликаем а, b, c, затем правой кнопкой мыши (enter), затем кликаем текст-приемник. Ну и чтобы цвет менял как в #422 и 476. Заранее благодарен:-) |
|||
![]() |
|
||||
Конструирование в области нефтеразведки Регистрация: 10.02.2006
Гомель
Сообщений: 321
|
> skkk
Цитата:
|
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
CB, фрагмент комстроки:
Код:
А вот какая из них?? Не сообразил После выбора текста С вылетает Добавлено: Посидел в лисп-редакторе, накопал лишнюю закрывающую скобку. Ctrl+[ показал, что она тут (красная): Код:
Код:
Код:
Моих мозгов не хватает Последний раз редактировалось skkkk, 13.08.2008 в 01:08. |
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
CB, пока я ковырялся, Вы уже исправили, зря старался в #510
![]() Проверил, все работает отлично ![]() ![]() ![]() Только один нюанс: по задаче было (А-В)/С*1000, а в лиспе получилось +. Я нашел, где подправить, но другие форумчане вдруг запутаются. Огромное, огромное спасибо!! Вы мне очень помогли. Добавлено. А можно внести одну поправочку? Если результат получается отрицательным (при В>А), то он вставлялся бы в ответ "по модулю", как говорили у нас на математике в школе, т.е. без знака минус... Последний раз редактировалось skkkk, 13.08.2008 в 03:31. |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
CB, помогите еще решить маленькую проблемку лиспом?
__________________
инженер проектировшик с опттом программа авто гад образование высшие Последний раз редактировалось dextron3, 13.08.2008 в 21:16. Причина: слово маленькую выделил поярче |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
CB,
это придаток для лиспа из данной темы облегчающий приметивные действа, тоесть: по типу как работал наш предыдущий лисп Алгоритм: 1. Выберите число 2. Укажите текст вставки Число выбирает обычное тоесть 3999, или 3000 А вставляет в текст типа: L=3200мм, заменяет только цыфру Пример 1. Выберите число (текстовый приметив), выберим к примеру обычное число 1800 2. Укажите текст вставки, выберим к примеру текст L=200мм после выполнения лиспа результат будет L=1800мм буду ждать ответа, если чегото не понятно пишите поясню, Данный лисп нужен для того чтобы из ведомости деталей, там указаны длины цыфрами, брал длину и вствалял в спецификацию, уже с миллиметрами и т.п. PS обычно я просто смотрю на эту цыфру запоминаю в голове и вбиваю в спецификаци, а хотелось сделать это автоматически чтобы ускорить процесс проектирования естественно это нужно в специальности КЖ, КМ... за ранее спасибо...
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Конструирование в области нефтеразведки Регистрация: 10.02.2006
Гомель
Сообщений: 321
|
> dextron3
Лисп по поводу #518. Работает и Mtext'ом Первый текст может быть и в виде "L=234мм" - из него вытянется число и вставится во второй текст/mtext, который может быть тоже любого вида... Код:
|
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
CB, спасибище!
а можно сделать чтобы при выборе первой цыфры както лисп давал знать о выборе, к примеру выделял или рамкой, а то в командную строку пиходится смотреть выбрал или нет узнавать
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
VVA
Пытался добавить в код армянские термины, чтобы командой spec5d можно было рассчитать и их. Со всем вроде получилось, а вот с фланцем не то. Армянские слова записываются к примеру так: \U0547\U0580\U057b\U0561\U0576 Вот участок кода в который я пытаясь вклинить армянский термин Код:
Код:
__________________
Блог |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Red Nova, можешь показать как на армянском выглядят чертежи, а то кроме русского немецкого и английского не видел, можно скриншотами..
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
И казахские тоже не видел?
![]()
__________________
Блог |
||||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Red Nova, тут вообще кроме цыфр ничего не понять, у Вас с лева на право пишут? поэтому наверное лисп не работает
![]() у нас все на русском идет еще с советского союза...
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
dextron3, Это лист из старого проекта, без СПДС.
Пишут у нас конечно же с лево на право, и к работе лиспа это не имеет отношения. VVA Я приблизительно чувствую почему у меня не выходит с кодом. В этой строчке ты записал все обозначения исключительно заглавными, Код:
Код:
С армянским скорее всего лажа именно тут. Код не может отличить заглавные и прописные буквы армянского алфавита. Так что же делать? ![]() Уточню также что с трубами и с профильными листами у меня все работает и на армянском. Проблема только с фланцем.
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Перед сравнением все строки с помощью функции strcase приводятся к верхнему регистру. С русским и английским strcase работает корректно. Попробуй с армянским.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 17.11.2008
Сообщений: 21
|
доброго времени суток. почитал тему, все интересно, но немного не мое. не подсажите лисп для подсчета мультитекстов - т.е. сколько раз текст встречается на выбраном участке. желательно, чтобы можно было заранее задать те м-тексты, которые нужно подсчитать. результат подсчета хотелось бы в табличке, но тут уж не до капризов =)
например, на чертеже есть следующие м-тексты: к1, т1, хх12, хх14, %%С100. нужно сосчитать кол-во к1, т1, и сколько всего хх обоих типов, а диаметр 100 не считать совсем. прошу прощения если это уже есть, а я не нашел. |
|||
![]() |
|
||||
VVA, Сорри, не понял. Можно конкретнее, что я должен сделать?
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Код:
>nem Диалоговая функция подсчёта вхождений текстовых символов в файле чертежа Оно? PS Заходи по ссылке через IE
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
http://dwg.ru/dnl/3716 - считает тексты, мтексты размеры (переопределенные)
|
|||
![]() |
|
||||
VVA,
Беда в том, что армянские символы нужно записывать как Код:
Код:
Код:
Код:
![]()
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Red Nova, Запусти этот лисп
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Вот скриншот.
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Попробуй добавить типа такого
("ФЛ" "FL" "ФЛАНЕЦ" "Фланец") Попробуй запустить код #539 из редактора Visual Lispa, а не из командной строки (команда VLISP)
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
VVA,
Цитата:
Цитата:
Код:
CB, Выдает Код:
__________________
Блог Последний раз редактировалось Red Nova, 19.11.2008 в 18:26. |
||||
![]() |
|
||||
dextron3, До иврита пока не дошел.
![]()
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Код:
("ФЛ" "FL" "ФЛАНЕЦ" "\\U+0547\\U+0580\\U+057B\\U+0561\\U+0576")
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
VVA, CB, Если задачка тупиковая, то может как-то обойти ее? Может можно заменить все условие для фланцев? Ведь с трубами к примеру армянские символы прошли.
Добавлено VVA, Цитата:
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Для армянских шрифтов какой в стиле файл используешь?
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Конструирование в области нефтеразведки Регистрация: 10.02.2006
Гомель
Сообщений: 321
|
>Red Nova
Дай ссылку на весь лисп, а то по фрагменту в #525 не понятно что делает ((vl-position (car WHAT) '("ФЛ" "FL" "ФЛАНЕЦ")) и почему в начале двойная скобка... |
|||
![]() |
|
||||
VVA,
Вот шрифт который я использую и строка которую нужно считать как фланец. CB, Последняя версия в этой теме, на #449.
__________________
Блог |
||||
![]() |
|
||||
Может все же посмотрите прикрепленный на #550 файл? Я все в spec5d перевел на армянский, только фланец остался
![]()
__________________
Блог |
||||
![]() |
|
||||
CB,
Не помогает. Дело наверное в алгоритме. По некой причине этот алгоритм не переваривает армянские буквы, а вот алгоритм расчета труб распознает их нормально. Код:
__________________
Блог |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Правильно, в алгоритме (именно ф-ция mark_parser)
В алгоритме заложено, что если есть UNICODE, то только ОДИН символ (диаметр или профиль) Поэтому 1. Замени ф-цию mark_parser этой Код:
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
VVA, Спасибо. Теперь работает
![]()
__________________
Блог |
||||
![]() |
|
||||
VVA
По поводу основного кода. 1. В приложенном ролике показано в чем дело. Если к примеру в столбце количество получилось наложение текстов, то когда рассчитываем только эту строку то выходит сообщение о том что в количестве столбцов есть не соответствия. А если рассчитывать сразу несколько строк, то это сообщение к сожалению не выходит, что затрудняет работу. Я в одном проекте минут 20 искал в чем ошибка, пока не врубился. Прошу изменить код так, чтобы сообщение о несоответствии количества столбцов выходило и в отмеченом случае. Еще было бы хорошо, чтобы эта строка краснела. Так можно будет оперативно ее вычислить, а не искать ошибку во всей спецификацие. 2. Прошу добавить в "Итог Работы" в конце каждого ГОСТа строку с суммой масс всех профилей, и в самом конце общюю сумму всех масс. Вот так Код:
__________________
Блог |
||||
![]() |
|
||||
Регистрация: 12.07.2008
Сообщений: 211
|
Перепробовал кучу программулек, как ваших так и наших англоязычных собратьев и остался разочарован.... У каждой есть свой недостаток, и нет такого чтоб выбрал одну определенную и пользуешься ей..... Нужно использовать несколько разных, потому что одна считает атрибуты, но секущей рамкой не выбирает, другая секущей рамкой выбирает, но не считает атрибуты, третья не считает размеры, четвертая позволяет вставлять резутльтат только как новый текст, пятой нужно все время что-то постоянно вводить с клавиатуры чтоб она работала.... Вобщем идей много и хороших, но все они разбросаны.... Нет чтобы собрать все в кучу.... Ну да ладно... и на том всем спасибо
![]()
__________________
Users are not stupid, they are busy. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
![]()
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
![]()
__________________
Блог Последний раз редактировалось Red Nova, 15.02.2009 в 22:25. |
||||
![]() |
|
||||
VVA,
Ну раз писать код не охота, то помоги хотябы понять как кое что сделать. Вот сижу и пытаюсь подчинить твой код, а он не дается. Возьмем эту часть Код:
Код:
Код:
![]()
__________________
Блог |
||||
![]() |
|
||||
Ну до общей массы еще дойдем, а в ведомость расхода стали по закону нужно заполнить массу определенного Госта тоже.
Добавлено Надо же, программа мне таки поддалась. Вот как надо было. ![]() Код:
Еще добавлено С общим итогом оказалось легче ![]() Код:
![]()
__________________
Блог Последний раз редактировалось Red Nova, 23.02.2009 в 21:20. Причина: посещение музы |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Молодец. Можешь же когда захочешь. Вот мой вариант. Отличия только в названиях переменных. Код:
> Red Nova У меня к тебе еще одна просьба, как к зачинщику темы. Ориентироваться в 20 страницах уже тяжковато. Дай в 1-м посте ссылки на последние актуальные версии или размести их там. Исправлена ошибка в SumTN с фиксированной высотой текстового стиля В соответствии с #583 немного изменен алгоритм поиска новых типов. По умолчанию он ищется как для штучных материалов (болты, гайки, шайбы) Т.е. масса из базы умножается на количество. Соответсвенно добавлены перемычки по ГОСТ 948-84. Файл sumTSW.rar - c добавлением 1% на сварку
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 18.07.2011 в 14:58. Причина: Добавлено меню см. #599 |
|||
![]() |
|
||||
VVA,Сделал
![]() А как на счет пункта 1 в #556? Этого я точно сам не сумею.
__________________
Блог Последний раз редактировалось Red Nova, 24.02.2009 в 20:53. |
||||
![]() |
|
||||
Архитектор Регистрация: 11.03.2009
Новороссийск
Сообщений: 99
|
Я не знаю что делать, sumT.LSP во всех файлах работает кроме одного, самого нужного (по закону подлости
![]() Цитата:
работаю в ACAD2007rus |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Largo GT,
1. Файлик покажи 2. _AUDIT в этом файле делал? 3. Вставь глючный файл в другой как блок с последующим расчленением. 4. ...
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Архитектор Регистрация: 11.03.2009
Новороссийск
Сообщений: 99
|
Цитата:
2. _AUDIT делал, 0 ошибок 3. Когда вставляю sumT.LSP работает, но все шрифты летят!! История файла тяжела и печальна, из-за специфики работы, кочевал от одного проектировщика к другому, в версиях ACADa начиная с 12 по 2007 ! Так что строго не судите ![]() Последний раз редактировалось Largo GT, 13.03.2009 в 08:51. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Largo GT, Короче при обработке текстового стиля с фиксированной высотой текста была допущена описка. В свое время не отестировал как следует, т.к. никогда так не делаю.
Исправленную версию выложил в #567 Установи текущий текстовый стиль с 0 высотой текста и работай со старой версией или скачай новую.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Архитектор Регистрация: 11.03.2009
Новороссийск
Сообщений: 99
|
to Sleekka
делал to VVA Цитата:
![]() |
|||
![]() |
|
||||
Архитектор Регистрация: 11.03.2009
Новороссийск
Сообщений: 99
|
Цитата:
Код:
![]() |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,445
|
danilochek13, ты еще больше вопросительных знаков поставь. Ответ: при определенном желании и возможностях - наверное, можно. Даже не наверное. Можно. Точка.
Но у меня нет ни времени, ни возможности. Особенно учитывая возможности полей вкупе с _.ddedit
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 26.05.2009
Сообщений: 3
|
Кулик Алексей, спасибо за ответ..просто я ведомость отделки помещений считаю в Excel и что бы не вбивать размеры простенков вручную хотелось что бы при выделении нескольких размеров автокад выдавал формулу в текстовом виде: 1490+1120+1865+1905+1610+8200, а я бы копировал ее в Exel.
|
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
danilochek13,
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 26.05.2009
Сообщений: 3
|
VVA выочень мне помогли спасибо!
Протестировал код из поста #579 в 2008 руссифицированном Автокаде и в 2007 английском работает нормально, а в 2007 англицком с СПДС выдает ошибку: ; error: no function definition: nil........видимо это из за СПДС |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,149
|
Command:
Command: (LOAD "C:/Documents and Settings/Admin/Рабочий стол/TEST22.lsp") Type TEST in command line"\nType TEST in command line"
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,445
|
dextron3, вот ты это к чему?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Piton, База правильная. Ты добавляешь новый тип конструкции "ПЕРЕМЫЧКИ", поэтому нужно было править немного лисп. Изменил немного алгоритм поиска. Теперь по умолчанию для неопознанных он ищется как для штучных материалов (болты, гайки, шайбы) Т.е. масса из базы умножается на количество.
Обновил архив в #564. Эта же ссылка приведена в первом посте. Использовал команду Spec5 и выбирал 2 строки по 4 столбца.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 06.08.2008
Сообщений: 30
|
После исспользования команд (SPEC3 SPEC3D SPEC4 SPEC4D SPEC5 SPEC5D)
масса (используемого в спецификации проката) сохраняется где-то в файле и при повторном использовании этих команд автокаду не требуется файл prokat.ves.... Подскажите пожалуйста, возможно ли удаление данных массы проката?(т.е. чтоб при каждом расчете спецификаций автокад брал массу из prokat.ves? |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
kshatriy, Можно, но непонятно зачем. Ты каждый раз массу в базе корректируешь? Есть 2 варианта:
1. Обнулить переменную, в которой хранится считанная база. Код:
Код:
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 06.08.2008
Сообщений: 30
|
пару раз пришлось корректировать...
зачем:пробую сделать (по аналогии) команду для подсчета длин проката. переименовал sumТ (и несколько команд в нутри него),дублировал и переименовал prokat.vec, (массу всех видов проката=1). 1. Обнулить переменную, в которой хранится считанная база. - то что нужно!!! куда в лиспе етот код нужно вставить? Последний раз редактировалось kshatriy, 28.07.2009 в 08:34. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Сразу после
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Могу предположить, что где-то есть двойник prokat.ves. Набери
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 06.08.2008
Сообщений: 30
|
Цитата:
можно ли это оптимизировать ?(переделал с пластин) Код:
Код:
Последний раз редактировалось kshatriy, 29.07.2009 в 14:53. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Нажми F2 и почитай команды
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Не получается. У меня много МТекстов с цифрами, тексты расположены под разными углами и с подчеркиванием. Загрузил сию прогу в кад, выделил тексты, в консоль вбил команду SumTN, в итоге:
Цитата:
|
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
После загрузки и нажатия F2 должен увидеть то, что я дал в цитате #594
Подробнее про загрузку читай по ссылке в моей подписи
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер Регистрация: 10.11.2008
Владимирская обл., пос. Вольгинский
Сообщений: 147
|
Скачала лисп sumT.LSP. Большое спасибо разработчикам.
Хотелось бы сделать кнопку, чтобы удобнее вызывать команду. Нужно писать макрос для каждой команды отдельно? Как может выглядеть макрос кнопки для sumT.LSP? Меня интересуют кнопки для команд SumTN, SumTE.
__________________
AutoCAD 2014 |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
![]() Цитата:
Практика Код:
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
Добавлю свои 5 копеек...
Выкладываю SumT c меню и панелью инструментов... Способ установки стандартный: 1. распаковать с помощью 7z 9.20; 2. прописать путь к папке, куда распаковали архив; 3. загрузить меню (прилагается файл SumT.mnu) зы автору респект за так сказать код... ![]() зы зы и меня тоже не ![]() ______________________________________________________________ 18.06.2011 - Обновлены шрифты mipgost.shx и mipgost.ttf, теперь они поддерживают украинские буквы (благодаря VVA) - немного покопался в коде... надеюсь все работает, как прежде (добавил функцию ss->vla-list, преобразующую в список vla-объектов... - убрал файл CS_Gost2304.shp Последний раз редактировалось gomer, 18.07.2011 в 20:02. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
gomer, Offtop: Я по просьбе Alan'a добавил в mipgost украинские буквы. Осталось добавить "гапка". Это я к mipgost в архиве. Следи за обновлением mipgost
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Offtop: Shx выложил. TTF пока не изменял.
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
gomer, Offtop: Шрифт ttf посмотрел. Украинские буквы там были кроме Э (наоборот) заглавной. Добавил и выложил в шрифты
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер Регистрация: 10.11.2008
Владимирская обл., пос. Вольгинский
Сообщений: 147
|
Установила себе sumT, появилась панель с кнопками, а у двух кнопок вместо иконок знаки вопросов: "Перемножение текстов столбцами" и "Перемножение текстов столбцами (вариант 2)". Посмотрела в CUI, там обозначено, что файлы иконок для этих команд MulTC.bmp и MulTCv2.bmp. В архиве программы этих бмп-шек не нашла. Поделитесь, пожалуйста, иконками для этих команд.
__________________
AutoCAD 2014 |
|||
![]() |
|
||||
Инженер Регистрация: 10.11.2008
Владимирская обл., пос. Вольгинский
Сообщений: 147
|
Где? В Support? Посмотрела в C:\Documents and Settings\Имя пользователя\Application Data\Autodesk\AutoCAD 2009\R17.2\rus\Support\Icons, там вообще иконок нет никаких, пусто. Может, у меня SumT не совсем до конца установился?
Red Nova, открой секрет, где иконки находятся?
__________________
AutoCAD 2014 Последний раз редактировалось Nata1, 10.04.2012 в 09:41. |
|||
![]() |
|
||||
Регистрация: 24.04.2012
Сообщений: 1
|
VVA,
Возможноли как-то изменить код программы, чтобы в функции "перемножение столбцами" (вариант выбора 1) перемножение происходило не столбцами, а строками (простите за корявость). Т.е. я хочу выделять не вертикальные столбцы цифр, а горизонтальные строки цифр. Я так понимаю сейчас перемножаются цифры со схожими координатами по вертикали? А можно чтоб было по горизонтали? Я не пользуюсь командами рассчета спецификаций (вообще и не буду), мне просто нужно перемножать строки, причем только по 1 варианту. Т.е. код программы где идет рассчет спецификаций мне не интересен и не нужен. Пользуюсь также вашей функцией "округление" и если надо "параметры сумирования" - очень удобно. А вот в функции "сложения в новый/существующий текст" было бы очень удобно видеть какие цифры складываются (хотябы перечисление, а еще лучше в порядке выделения), подобно тому как выводится в командной строке действия перемножения при перемножении по столбцам. Думаю это было бы полезно не только мне... Помогите мне с этим, если возможно. Спасибо. |
|||
![]() |
|
||||
Архитектор, Журналист Регистрация: 25.12.2011
МО
Сообщений: 13
|
Ребята спасибо большое за SumTE очень полезная функция!
Научите пожалуйста как сделать чтобы SumTE автоматически считал сумму и результат выводил в окне Свойств выделенного объекта. Вобщем хочется чтобы работало как GeomProps Александра Ривилиса |
|||
![]() |
|
||||
проектирование Регистрация: 01.11.2006
Кемерово
Сообщений: 2,891
|
Здравствуйте, взял комплект из поста #72
есть 2 вопроса: 1.как сделать, чтобы в ответе прописывалась не точка, а запятая? 2.как отрегулировать точность после запятой по умолчанию? |
|||
![]() |
|
||||
проектирование Регистрация: 01.11.2006
Кемерово
Сообщений: 2,891
|
Red Nova, спасибо, буду разбираться.
\\посмотрел, команда предлагает только округление и высоту текста Разделителя целой и дробной части нет. Возможно, команда дописывалась и что-то нужно заменить? Понятно, нужно использовать последнюю версию Только запятая не работает, все равно точку ставит (при заданной в винде точке, если поставить запятую, использует запятую). Что можно сделать? \\похоже, это проблема 8-ки (8.1), на 7-ке проблем с разделителем нет. Последний раз редактировалось ander, 24.10.2013 в 15:49. |
|||
![]() |
|
||||
Копировал из шапки http://forum.dwg.ru/showpost.php?p=359575&postcount=564, sumT.rar. Если есть другие варианты или кто то поддерживает актуальную версию, дайте ссылку.
Не принципиально как подсвечивать, главное видно. Подсветку или временная рамка до регенерации/кнопка esc/повтор команды, осуществить после расчета, дабы видеть выбранный результат, в качестве проверки знать что не упустил. |
||||
![]() |
|
||||
Регистрация: 25.05.2011
Сообщений: 11
|
Привет всем. У меня проблема решил в файл prokat.ves добавить ГОСТ 8645-68 проката трубы прямоугольной, а макрос продолжать считать по формуле.
Я не против его расчетов, если бы они соответствовали ГОСТу, как заставить макрос взять из базы веса стандарта? |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,445
|
Gvion-pin, чего-чего?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 25.05.2011
Сообщений: 11
|
Речь идет про макрос sumT
Изменил в файле prokat.ves строчку "("П" 18 "ГОСТ 8645-68;ГОСТ 8645-68" "Вст3кп2" "Трубы стальные прямоугольные по ГОСТ 8645-68" (("15х10х1" 0.348)........))" Но макрос все равно считает сам по формуле, и получается результат не корректный((((( |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,445
|
Gvion-pin,
А где ссылка на "макрос"? Или ты предлагаешь рыскать по всему форуму (допускаю, что не только по этому форуму), чтобы его найти?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 25.05.2011
Сообщений: 11
|
Этот макрос в шапке темы вот по этому не подумал выложить отдельно(((( вот ссылка на макрос http://forum.dwg.ru/showpost.php?p=359575&postcount=564 |
|||
![]() |
|
||||
Регистрация: 11.08.2007
Москва
Сообщений: 48
|
Подскажите по макросу SumT.
Вопрос по подсчету массы арматуры. В файле prokat.ves есть базы арматуры с весами. В строках спецификации, которые не попадают в значения базы или с другим обозначением, масса арматуры считается по формуле. В формуле используется значение пи, которое принимается равным 3,14. Можно ли както изменить значение пи, т.к. корректный вес получается при пи=3,14159. Пробовал менять в лиспе sumt.lsp "pi" на "3,14159" - результата нет. Сейчас посмотрел - лисп автоматически округляет значения пи до 2-х знаков. Как снять это округление - не знаю. Последний раз редактировалось Franco13, 16.05.2016 в 13:49. Причина: Потестировал варианты |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,445
|
Вообще-то в lisp'e pi - константа.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,445
|
См.справку по rtos
И на форуме (кажется, в "Готовых программах" был код по правильному округлению значений.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 11.08.2007
Москва
Сообщений: 48
|
Нет, это я конечно знаю, что с помощью этой команды я могу округлять массу единицы и общую массу.
Мне нужно, чтобы в этой формуле (* pi 0.25 Diam Diam DLN *STAL*) произведение ( pi 0.25 Diam Diam *STAL*) всегда округлялось до трех знаков (независимо от команды sumTSet) - это будет линейная масса которая будет совпадать со значениями ГОСТа. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Цитата:
Код:
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Нужен код или ссылка на пост, где он опубликован и dwg файл с примером
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,445
|
Ну так можно и (setq nil t) запустить
![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
А, дудки! Защищенный символ...
четыре ![]() Вообще в лиспе принято константы обрамлять плюсами, а глобальные переменные звездочками, инициализировать и в начале файла и оснащать уникальными приставками |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,445
|
Типа pi не защищенный. У тебя такие настройки, так что не надо
![]() Цитата:
![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 16.10.2013
Сообщений: 398
|
подниму старую тему.
в лиспе из сообщений подсчет ведется, если в спецификации число указано текстом и только в рамках одной таблицы. а можно как-нибудь дополнить лисп, чтобы он считывал данные из таблиц промежуточных спецификаций в модели и заполнял сводную. данные в промежуточных таблицах могут быть или тегами блока, или мультитекстом в начерченной таблице, или текстом в начерченной таблице, или значением в таблице автокада, как удобнее организовать лисп, под него и подстрою уже заполнение таблиц. пример файла с вариантами и чего требуется прилагаю. |
|||
![]() |
|
||||
ПенсионЭр Регистрация: 26.06.2009
Сообщений: 361
|
Здравствуйте!
Давно пользуюсь коротеньким удобным лиспом для суммирования чисел. Недавно понадобилось подсчитать числа в Мтекстах, окружённые буквами и другими знаками. Увидел здесь такую строчку: (WCMATCH "*L=*"); определяем длину Догадался, что это где-то рядом с моей "хотелкой", но куда и как вставить её, не знаю. Прошу помощи, помогите усовершенствовать код. В приложенном чертеже необходимо сложить все длины, т.е. все числа между "L=" и "мп". Пару-тройку чисел я закрасил красным (все раскрашивать поленился). Одновременно макрос не должен, при выделении чертежа рамкой, суммировать лишние числа (закрашены синим). Возможно, что в некоторых Мтекстах нужные для суммирования числа имеют лишние пробелы слева или справа. Это тоже надо учесть в макросе Спасибо. p.s. в идеале хорошо бы общую сумму вставить первым числом в таблице (на листе в ведомости красное число). Но, если этот идеал потребует значительного усложнения макроса, то не нужно. p.p.s уже в конце своего поста подумал: а, может быть, в самой ячейке таблицы можно вставить соответствующую формулу и обходиться без лиспа? Подскажите, пожалуйста. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Пробуй две команды SUM1 и SUMT1
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 23.09.2021
Сообщений: 3
|
Здравствуйте! Я наткнулся на данную тему благодаря поиску lisp для суммирования чисел в тексте автокад. Обрадовавшись найденному в данной теме, теперь есть необходимость установить полную подытоженную версию вашего lisp в данной теме. Но из-за отсутствия опыта в загрузке похожих файлов (комплект файлов) как в закрепленном архиве, я нуждаюсь в помощи. Подскажите пожалуйста, как установить все данные из архива (комплект) в закрепленном сообщений? Надеюсь моему вопросу ответят несмотря на прошедшее столько времени данной темы и она будет в помощь таким же не опытным пользователям.
|
|||
![]() |
|
||||
Регистрация: 23.09.2021
Сообщений: 3
|
skkkk, Здравствуйте! По вашему совету, еще в первом разе открывал данный файл readme из архива, но из-за своей не опытности я не понял ее как инструкцию для установки, для меня она как инструкция пользования.
Вопрос мой все еще остается для меня открытым, я скачал архив... затем распаковал архив и не понял как установить все файлы из архива в программу автокад. Все файлы: sumT.cui sumT.cuix sumT.LSP sumT.mnl sumT.mns sumT.mnu SumTE.bmp SumTN.bmp SumTSet.bmp Спецификация.dwg CS_Gost2304.shp CS_Gost2304.shx CSSTD.ttf GOST 2.303-68.shx GOST2304A.ttf mipgost.shp mipGost.shx mipgost.ttf prokat.ves readme.txt SPDS.shx SumSpec.bmp SumT.bmp |
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
Villy Vaskof, для начала вот: Как использовать лисп, опубликованный на форуме.
Все файлы надо расположить в папку с программой. Например, в папке C:\Program Files\Autodesk\AutoCAD 20ХХ создать папку PROGA, вставить файлы туда и добавить эту папку в пути доступа к вспомогательным файлам в настройках Автокада на вкладке Файлы. По ссылке рассказано подробнее об этом. Сам файл Спецификация.dwg будет шаблоном (насколько я понял - сам программой этой не пользовался). Затем в автокаде ввести команду _menuload и выбрать из этой папки файл mnl (если не ошибаюсь - там вариантов не будет, вроде - будет только нужный файл маячить при выборе). Эта команда загрузит меню. Возможно, придется поколдовать, чтобы иконки появились, в меню адаптации (команда _cui) в панелях найти свою и задать одной из иконок путь к файлам bmp. Остальные должны сами подтянуться, если сразу не прогрузились. ----- добавлено через ~2 мин. ----- Вот здесь список команд, если меню не нужно. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,445
|
С чего вдруг? Достаточно
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
|
|||
![]() |
|
||||
Регистрация: 23.09.2021
Сообщений: 3
|
skkkk, Добрый день! Благодарю за отклик, за подсказку! Он помог мне загрузить программу (не в полной мере иконки появились как предупредили, но по этому поводу не заморачивался).
Внесу поправку для cad 21 cuix надо загрузить, вместо mnl. Кулик Алексей aka kpblc, Я воспользовался специально созданной папкой для программ в отдельном диске d. Автору программы большой респект! Проделали большой Lean толчок для пользователей autocad! |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,445
|
А, еще момент (только сообразил) - про доверенные каталоги не стоит забывать, если secureload не 0.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
ПенсионЭр Регистрация: 26.06.2009
Сообщений: 361
|
Здравствуйте!
См. пост #650 от VVA. Там есть макрос, фильтрующий числа в Мтексте и суммирующий их. Я понял, что он суммирует числа, стоящие после "L=". Большая просьба к специалистам: подкорректируйте, пожалуйста, макрос, чтобы он суммировал только длины труб в Мтекстах, содержащих, кроме длины, диаметр и перенос на вторую строку (см. картинку). Я пытался вместо "L=" вставить знак переноса в разных вариантах, не работает. Спасибо. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,445
|
Если по-быстрому, то в коде попробуй поменять "L=" на "\\P" (на англ.раскладке).
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
ПенсионЭр Регистрация: 26.06.2009
Сообщений: 361
|
Кулик Алексей aka kpblc, Пробовал.
Может быть, капсом надо было букву "Р" вставить. Пробую ещё. _________________________ Заработало! И, похоже, дело не в капсе, а в моей невнимательности при корректировке кода. Спасибо! Последний раз редактировалось MrBrown, 22.03.2023 в 01:12. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
ПенсионЭр Регистрация: 26.06.2009
Сообщений: 361
|
Здравствуйте!
Используя код из поста #663 от VVA (моя благодарность), Сделал несколько макросов для определения длины трубопроводов определённого диаметра, вместо "\\P" вставив "%%C25\\P" или, например, "%%C32\\P". Получилось изрядно - целых восемь макросов. Озаглавил "S20", "S25", "S32" и т.д. Вызываю нужный макрос и получаю соответствующую общую длину конкретного диаметра. Прошу: скорректируйте, пожалуйста, макрос, чтобы он был только один, но запрашивал диаметр перед выбором Мтекстов. Чтобы после приглашения "Выберите диаметр трубопровода" можно было просто набрать "25" или "32". И дальше - по накатанной - выбор рамкой нужной области чертежа. Спасибо. Последний раз редактировалось MrBrown, 29.03.2023 в 23:50. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Не тестировал, но думаю ничего не испортил, должно работать. Если на запрос диаметра ввести пустой ввод, должно считать все диметры Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
ПенсионЭр Регистрация: 26.06.2009
Сообщений: 361
|
VVA, а можно ли сделать так, чтобы, если не вводить конкретный диаметр, макрос не просто считал бы все трубы, а сортировал по диаметрам и сводил бы это в простенькую таблицу?
Если не сложно, большая просьба усовершенствовать макрос. Спасибо. |
|||
![]() |
|
||||
Регистрация: 12.10.2006
Сообщений: 45
|
Пользуюсь последней версией лиспа SumT для подсчета суммы чисел в текстовых объектах. Подскажите, что нужно добавить в этот лисп, чтобы он воспринимал не только число с последующими любыми символами (как сейчас и есть), но и число с символами перед этим числом? В частности, нужно суммировать числа в скобках, но не получается. В идеале, чтобы можно было настраивать, что отсекать. Допустим, в тексте есть два числа с символами между ними (12ххх23хх), а нужно просуммировать второе число (23). Т.е. указать, что первые пять символов игнорировать. Если все это сложно, то хотя бы чтобы лисп игнорировал начальную скобку.
Последний раз редактировалось yaego, 18.07.2025 в 17:50. |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Сейсмозащита и сейсмоизоляция существующих, построенных зд. | IANationalInformAgentstvo | Прочее. Архитектура и строительство | 216 | 20.01.2015 16:51 |
Предложения по расчетным моделям сооружений | aldt | Расчетные программы | 8 | 06.07.2009 17:53 |
Мониторы LCD CRT | Разное | 94 | 17.06.2008 10:51 | |
ЮМОР 2006 =) | Perezz!! | Разное | 1122 | 04.01.2007 00:46 |