|
|
|
|
|
13.01.2014, 13:22
|
|
БАЗИС 9 - Скрипты
Igor_482
VIP
Регистрация: 03.09.2008
Сообщений: 174
Сказал(а) спасибо: 34
Поблагодарили 794 раз(а) в 113 сообщениях
13.01.2014, 13:22
Рейтинг:
()
ВНИМАНИЕ! Правила выкладывания скриптов.
1. Если в скрипте нет ссылок на фурнитуру, фрагменты и.т.д то достаточно его упаковать в архив и выложить.
2. Если в скрипте есть ссылки на фурнитуру, фрагменты и т.д. то архив должен содержать папку с самим скриптом и всеми файлами на которые есть ссылки в тексте скрипта.
Т.к. при запуске скрипта на другом компе возникает ошибка о не возможности открыть то или иной файл и скрипт до конца не отрабатывает свой текст. Не соблюдается "чистота проверки" работы скрипта.
__________________________________________________ _______________
Интересует информация по редактору скриптов в БМ8. Существует ли справочная документация и примеры использования скриптов в БМ8. Какие возможности дает данная функция? Владеющим информацией по данному вопросу просьба поделиться ею.
Для работы скриптов от Igor_482 необходим установленный ODBC драйвер FireBird, установленные и зарегистрированные в ОС модули FBDBDialog.dll, MSDATGRD.OCX, MSCOMCTL.OCX и MSSTDFMT.DLL ( сообщение с описанием установки этих модулей в ОС, ссылка на модули и исходник "FBDBDialog.dll") а так же файл "ADODB.ini" с настройками соединения к БД в папке со скриптом.
ADODB.ini
[General]
FDBServ = t001
FBSPort = 14357
FDBFile = D:\DBBM\Библиотека\БД\BMDB09.FDB
FBCFile = C:\Windows\System32\fbclient.dll
----------------------------------------------
Переменные .ini:
FDBServ - имя ПК на котором находится сервер FireBird с используемой БД (если локально, то параметр: localhost или 127.0.0.1);
FBSPort - в настройке не нуждается (по умолчанию: 14357);
FDBFile - локальный путь к БД на сервере FireBird;
FBCFile - путь к файлу "fbclient.dll" (находится в корневой папке программы Базис).
[свернуть]
Последний раз редактировалось systland; 23.09.2016 в 11:52..
|
Просмотров: 985364
|
Пользователь сказал cпасибо:
|
|
29.01.2016, 14:48
|
#1001
|
VIP
Регистрация: 11.07.2008
Сообщений: 1,019
Сказал(а) спасибо: 261
Поблагодарили 314 раз(а) в 143 сообщениях
Вес репутации: 356
|
Господа - вопрос.
Врезной амортизатор. отверстие 8*11,5мм, противоположная петле сторона , чаще всего углы, от них 10*10мм.
Нутром чую, скрипт в помощь, но завис.....
можно вроде сделать амортизатор петлей, можно ручкой, а можно и установкой по торцам панелей - если руками - то самый вроде удобный способ.
Кто как решил сию рутину?
|
|
|
29.01.2016, 17:15
|
#1002
|
Местный
Регистрация: 03.01.2016
Адрес: Украина. Харьков
Сообщений: 481
Сказал(а) спасибо: 316
Поблагодарили 507 раз(а) в 200 сообщениях
Вес репутации: 250
|
Цитата:
Сообщение от Ozimko
Кто как решил сию рутину?
|
Такой рутины нет, но вариант предложил Вам в этой теме.
|
|
|
Пользователь сказал cпасибо:
|
|
12.02.2016, 10:04
|
#1003
|
Новичок
Регистрация: 25.03.2015
Сообщений: 23
Сказал(а) спасибо: 14
Поблагодарили 23 раз(а) в 8 сообщениях
Вес репутации: 0
|
Всем добрый день!
Подскажите пожалуйста, существует ли скрипт для создания сечения/разреза модели?
Сейчас пользуюсь функцией "Операция с телами", но там приходится резать каждую деталь и когда их несколько десятков в модели, это занимает много времени.
|
|
|
17.02.2016, 04:33
|
#1004
|
Местный
Регистрация: 17.04.2014
Адрес: д.Сибирцево, ателье-уют.рф
Сообщений: 454
Сказал(а) спасибо: 241
Поблагодарили 1,094 раз(а) в 210 сообщениях
Вес репутации: 386
|
Цитата:
Сообщение от Smoker_79
ствует ли скрипт для создания сечения/разреза модели?
|
никак лошадей и слонов режешь?
я пока тож решений не нашёл.
Задача: Повернуть контур панели так чтоб площадь панели была минимальной.
(извиняюсь если кто-то уже сделал лучше и я не нашёл)
Простенькое решение:
Скрытый текст
for(is = 0; is<Model.SelectionCount;is++)
{
p = Model.Selections[is]
c = p.Contour
cc = c.MakeCopy()
Sproshliy = cc.Height * cc.Width;
u = 0.1;
uu = 0;
u3=0
for (i=0;i<1800;i++)
{
uu = uu+ u;
cc.Rotate(0, 0, u);
S = cc.Height * cc.Width
if (S<Sproshliy)
{
u3 = uu
Sproshliy = S
//alert(S+ " = "+ u3 )
}
}
//s alert("итог "+ Sproshliy+ " = "+ u3 )
c.Rotate(0, 0, u3);
p.Build()
p.RotateZ(-u3);
}
[свернуть]
Пожалуйста, объясните почему
в некоторых итерациях число не круглое в этом коде:
u = 0.1;
uu1 = 0;
for (i=0;i<18;i++)
{
uu1 = uu1+ u;
alert(uu1 )
}
И как так жить? Во что верить?
Последний раз редактировалось AlexBolton; 17.02.2016 в 09:54.
Причина: правила п III.18
|
|
|
17.02.2016, 08:35
|
#1005
|
Местный
Регистрация: 30.11.2011
Сообщений: 283
Сказал(а) спасибо: 275
Поблагодарили 803 раз(а) в 179 сообщениях
Вес репутации: 358
|
http://habrahabr.ru/post/112953/
Если вкратце, то дробные числа в компьютере хранятся в двоичной системе, а мы записываем в десятичной, но не всякое десятичное число можно точно поделить 2 для перевода в двоичное. Аналогично мы не можем записать дробь 1/3 в десятичной - мы напишем 0,33333, но чтобы было точно 1/3 нужно бесконечное количество троек, а где их хранить? Вы же не хотите, чтобы число "длина панели" занимало половину вашего жесткого диска)) Вот и приходится округлять!
|
|
|
5 пользователя(ей) сказали cпасибо:
|
|
17.02.2016, 08:48
|
#1006
|
Местный
Регистрация: 17.04.2014
Адрес: д.Сибирцево, ателье-уют.рф
Сообщений: 454
Сказал(а) спасибо: 241
Поблагодарили 1,094 раз(а) в 210 сообщениях
Вес репутации: 386
|
Цитата:
Сообщение от Briz
Вот и приходится округлять!
|
То есть округлять почти всегда.
|
|
|
17.02.2016, 14:03
|
#1007
|
Местный
Регистрация: 03.01.2016
Адрес: Украина. Харьков
Сообщений: 481
Сказал(а) спасибо: 316
Поблагодарили 507 раз(а) в 200 сообщениях
Вес репутации: 250
|
Цитата:
Сообщение от v22884
число не круглое
|
я это присек таким образом
|
|
|
2 пользователя(ей) сказали cпасибо:
|
|
25.02.2016, 03:45
|
#1008
|
Местный
Регистрация: 17.04.2014
Адрес: д.Сибирцево, ателье-уют.рф
Сообщений: 454
Сказал(а) спасибо: 241
Поблагодарили 1,094 раз(а) в 210 сообщениях
Вес репутации: 386
|
Есть бесконечность задач по выводу в DXF.
Например вывод Фасадов.
Стандартный вывод чертежей фасадов выводит ещё и контуры сечений, А нам нужно каждый тип фрезы на свой именованный слой, и без контуров сечений, то есть только одна линия прохода фрезы.
Частично решено. Выводом путей фрезы в контур многоугольника в одном из прошлых моих сообщений.
Вопрос: Как вывести произвольный контур в DXF на определённый слой?
видимо надо какой-то компилятор? или есть средства Базис-Скрипта?
|
|
|
25.02.2016, 09:59
|
#1009
|
Местный
Регистрация: 03.01.2016
Адрес: Украина. Харьков
Сообщений: 481
Сказал(а) спасибо: 316
Поблагодарили 507 раз(а) в 200 сообщениях
Вес репутации: 250
|
v22884, почему бы не реализовать фрезеровку фасадов немного иначе...
Сделать готовые файлы всех типов фасадов для ЧПУ, т.к. как не крути, но Мебельщик не в состоянии учесть всех тонкостей фрезеровки (входы/выходы фрез, очередность операций и т.д.)...
На штрих-коде указывать тип фасада (т.е. при построении моделей дать правильные имена-артикулы фасадам)...
При сканировании на ЧПУ выскакивает сразу готовый файл фрезеровки и работнику достаточно просто изменить габариты...
плюсы: фрезеровка идеально проработана за ранее и нет заморочек в самом Мебельщике вообще
минусы: ручное изменение габарита
PS: для себя реализовали именно так.
|
|
|
Пользователь сказал cпасибо:
|
|
25.02.2016, 12:49
|
#1010
|
Пользователь
Регистрация: 21.08.2009
Адрес: Санкт-Петербург
Сообщений: 59
Сказал(а) спасибо: 73
Поблагодарили 15 раз(а) в 9 сообщениях
Вес репутации: 186
|
Возможно ли, чтобы действия скрипта остались в истории модели?
|
|
|
|
|
|
Нижняя навигация
|
|
Опции темы |
|
Опции просмотра |
Линейный вид
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Текущее время: 01:38. Часовой пояс GMT +3.
|