Форум профессиональных мебельщиков PROMEBELclub
 
PROMEBELclub - Форум для мебельщиков: конструкторов, дизайнеров, мастеров, технологов и всех, кто имеет отношение к производству и изготовлению мебели. Программы для конструирования и дизайна мебели. Мебельная литература и обучающие пособия.
 
 

Вернуться   Форум профессиональных мебельщиков PROMEBELclub > Программы для мебельщиков > Программы для конструирования и дизайна мебели > Система БАЗИС > Базис-мебельщик. Скрипты

Меню

Маркет


Ответ
 
Опции темы Опции просмотра
Старый 13.01.2014, 13:22  
БАЗИС 8 - Скрипты
 
Аватар для Igor_482
Igor_482
VIP
Регистрация: 03.09.2008
Сообщений: 174

Сказал(а) спасибо: 34
Поблагодарили 794 раз(а) в 113 сообщениях
Версия для печати Отправить по электронной почте
Igor_482 Igor_482 вне форума 13.01.2014, 13:22
Рейтинг: ()

ВНИМАНИЕ! Правила выкладывания скриптов.

1. Если в скрипте нет ссылок на фурнитуру, фрагменты и.т.д то достаточно его упаковать в архив и выложить.

2. Если в скрипте есть ссылки на фурнитуру, фрагменты и т.д. то архив должен содержать папку с самим скриптом и всеми файлами на которые есть ссылки в тексте скрипта.


Т.к. при запуске скрипта на другом компе возникает ошибка о не возможности открыть то или иной файл и скрипт до конца не отрабатывает свой текст. Не соблюдается "чистота проверки" работы скрипта.

__________________________________________________ _______________

Интересует информация по редактору скриптов в БМ8. Существует ли справочная документация и примеры использования скриптов в БМ8. Какие возможности дает данная функция? Владеющим информацией по данному вопросу просьба поделиться ею.

Новое в скриптописании для БМ:

Скрытый текст

while (true)
Вот полный список новшеств, добавленных в скрипты с момента их выхода:

14 декабря 2014

Добавлена поддержка эластичных блоков

List3D : {
IsElastic: new HDefinition("?Boolean:", 'Являетсяли объект эластичным'),
ElasticResize: new HDefinition("?Vector:newSize", 'Растянуть объект до требуемых размеров'),
}

27 ноября 2014

Вспомогательные геометрические алгоритмы, реализованы в глобальном объекте geometry

geometry : new HDefinition("Geometry2D", 'Вспомогательные геометрические функции'),

Geometry2D : {
Intersect: new HDefinition("?Array.<Point>:elem1,elem2", 'Вычислить точки пересечения двухмерных элементов'),
Compare: new HDefinition("?Boolean:elem1,elem2", 'Сравнить элементы'),
Distance: new HDefinition("?Number:elem1,elem2", 'Найти кратчайшее расстояние между элементами'),
Area: new HDefinition("?Number:contour", 'Найти площадь контура')
}

17 ноября 2014

Работа с пользовательскими свойствами

Object3 : {
UserPropCount: new HDefinition("Number", 'Количество пользовательских свойств'),
UserProperty: new HDefinition('Array.<Object>', 'Значение свойства по его имени или индексу'),
UserPropertyName: new HDefinition('Array.<String>', 'Названия свойств')
}

Новые элементы управления на панели свойств

ScriptProperty: {
NewColor: new HDefinition("?ScriptColorProperty:'Название'", 'Создать свойство типа цвет'),
NewSeparator: new HDefinition("?ScriptProperty", 'Создать разделитель')
}

ScriptColorProperty: {
Value: new HDefinition("Number")
},

----------------------------------------------------------------------------------------------------
29 сентября 2014

system.apiVersion = 90 -> Bazis9
system.apiVersion = 85 -> Bazis8

----------------------------------------------------------------------------------------------------
15 сентября 2014

Contour2D : {
Min: new HDefinition("Point", 'Левый нижний угол охватывающего прямоугольника'),
Max: new HDefinition("Point", 'Правый верхний угол охватывающего прямоугольника'),
AddEquidistant : new HDefinition("?undefined:contour,offset,false,false", 'Добавить эквидистанту контура. Последние 2 параметры отвечают за направление и скругление')
}

ScriptProperty: {
OnDeactivate : new HDefinition("Function", 'Обработчик деактивации свойства или меню'),
OnValueValidate : new HDefinition("Function", 'Проверка корректности значения'),
ValueValid: new HDefinition("Boolean", 'Флаг корректности введенного значения, выставляется обработчиком OnValueValidate'),
Validate: new HDefinition("?Boolean:", 'Проверить значение свойства и вложенных свойств')
}

----------------------------------------------------------------------------------------------------
2 сентября 2014

ScriptProperty: {
NameEditable: new HDefinition("Boolean", 'Разрешить редактирование имени (для создания таблиц)'),
NewSeparator: new HDefinition("?ScriptProperty", 'Создать разделитель')
}

----------------------------------------------------------------------------------------------------
9 августа 2014

Добавлены подменю в кнопки

InButton : {
NewSubMenu : new HDefinition('?InButton:"Меню"', 'Создать подменю'),
Combo: new Definition("Boolean", 'Отдельная стрелка для подменю')
},

Добавлены всплывающие меню и цвет фона для всех свойств. Созданы обработчики активации и изменения свойства.
Прежнее событие OnChange срабатывало не только при изменении самого параметра, но и при изменении дочерних свойств.
OnValueChange срабатывает только при изменении значения свойства.

ScriptProperty: {
BackColor: new HDefinition("Number", 'Цвет фона'),
PopupMenu: new HDefinition("ScriptMenu", 'Всплывающее меню'),
OnActivate : new HDefinition("Function", 'Обработчик активации свойства пользователем'),
OnValueChange : new HDefinition("Function", 'Обработчик изменения свойства')
Tag: new HDefinition("Number", 'Пользовательское число'),
}

Добавлено выпадающее меню:

ScriptProperty: {
DropDownMenu: new HDefinition("ScriptMenu", 'Выпадающее меню')
}

----------------------------------------------------------------------------------------------------
21 апреля 2014:

Добавлены свойства и методы:

ScriptMaterialProperty: {
Width: new HDefinition("Number", "Ширина листа"),
}

ScriptButtProperty: {
Thickness: new HDefinition("Number", "Толщина кромки"),
Width: new HDefinition("Number", "Ширина ленты"),
}

Contour2D : {
IsPointInside: new HDefinition("?Boolean:x,y", "Находится ли точка внутри контура?"),
IsInContour: new HDefinition("?Boolean:contour", "Находится ли контур внутри другого?"),
IsClosedContour: new HDefinition("?Boolean:", "Является ли контур замкнутым?"),
IsContourRectangle: new HDefinition("?Boolean:", "Является ли контур прямоугольным?"),
OrderContours: new HDefinition("?Boolean:true", "Упорядочить элементы контура в одном направлении")
}


----------------------------------------------------------------------------------------------------
6 февраля 2014

Реализовано подключение и вызов функций COM и OLE объектов

ScriptProperty : {
Expanded: new HDefinition("Boolean", 'Развернуты ли вложенные свойства')
}

Добавлен метод:
NewCOMObject: new HDefinition("?IDispatch:'CLSID'", 'Создать новый COM объект по его типу')
[свернуть]

Нажмите на изображение для увеличения
Название: Базис.jpg
Просмотров: 1497
Размер:	36.4 Кб
ID:	86248

Обратите внимание на полезные ответы в этой теме!


Последний раз редактировалось systland; 26.12.2017 в 11:52.. Причина: Добавил объявление.
Просмотров: 1389738
Ответить с цитированием Вверх
6 пользователя(ей) сказали cпасибо:
Старый 04.05.2018, 21:49   #971
Vaseok23
Новичок
 
Регистрация: 22.10.2017
Сообщений: 28
Сказал(а) спасибо: 38
Поблагодарили 4 раз(а) в 2 сообщениях
Вес репутации: 0
Vaseok23 пока не определено
По умолчанию

СПАСИБО ЗА ЧЕСТНЫЙ ОТВЕТ и за ваши предложения, будем трудится
Vaseok23 вне форума   Ответить с цитированием Вверх
Старый 15.05.2018, 15:03   #972
MebelitBY
Пользователь
 
Регистрация: 09.11.2014
Сообщений: 43
Сказал(а) спасибо: 12
Поблагодарили 11 раз(а) в 7 сообщениях
Вес репутации: 121
MebelitBY на пути к лучшему
По умолчанию

Доброе время суток уважаемые форумчане. Как то раз Igor_482 сделал всем подарок в виде скрипта по расстановке полок с возможностью редактирования расстояний между ними:

Скрытый текст

Properties = Action.Properties;
Material = Properties.NewMaterial('Используемый материал:');
Material.Store = false;
SelfCount = Properties.NewNumber('Кол-во полок:');
Orientation = Properties.NewCombo('Направление текстуры:', 'По горизонтали\n' +
'По вертикали');
Orientation.Store = false;
Options = Properties.NewGroup('Отступы от габарита');
FrontOffset = Options.NewNumber('Спереди:');
BackOffset = Options.NewNumber('Сзади:');
LeftOffset = Options.NewNumber('Слева:');
RightOffset = Options.NewNumber('Справа:');

Options.NewButton('Сброс').OnClick = function() {
FrontOffset.Value = 0;
BackOffset.Value = 0;
LeftOffset.Value = 0;
RightOffset.Value = 0;
};

Action.Properties.Load('РасстановкаПолок.xml');

Action.Properties.NewButton('Завершить').OnClick = function() {
Action.Finish();
};

Action.OnFinish = function() {
Action.Properties.Save('РасстановкаПолок.xml');
};

function Build() {
var Y = Bottom;
DeleteNewObjects();
for(var i = (SelfCount.Count - 1); i > 0; i--) {
Y += parseFloat(SelfCount[i].Name);
if(SelfCount[(i - 1)][0].Value) {
var Panel = AddHorizPanel(Left + LeftOffset.Value,
Back + BackOffset.Value,
Right - RightOffset.Value,
Front - FrontOffset.Value,
Y);
} else {
var Panel = AddHorizPanel(Left, Back, Right, Front, Y);
};
Y += Panel.Thickness;
Panel.Name = '-';
switch (Orientation.Value) {
case 'По горизонтали':
Panel.TextureOrientation = TextureOrientation.Horizontal;
break;
case 'По вертикали':
Panel.TextureOrientation = TextureOrientation.Vertical;
break;
};
};
};

function ReCalc() {
var List = new Array();
var Result = new Number();
for(var i = (SelfCount.Count - 1); i > -1; i--) {
if(SelfCount[i].Value) {
Result += parseFloat(SelfCount[i].Name);
SelfCount[i].Name = SelfCount[i].Value;
Result -= SelfCount[i].Value;
} else {
Result += parseFloat(SelfCount[i].Name);
List.push(SelfCount[i]);
};
};
var Inc = parseFloat(Result / List.length).toFixed(0);
for(var i = List.length; i > 0; i--) {
if(Result % i == 0) {
Inc = Result / i;
};
List[(i - 1)].Name = Inc;
Result -= Inc;
};
Build();
};

function Calc() {
SelfCount.Clear();
SelfCount.Value = parseInt(SelfCount.Value.toFixed(0));
Action.Hint = 'Высота проема: ' +
parseFloat((Top - Bottom).toFixed(3)) +
' мм.';
var Count = SelfCount.Value;
var Height = (Top - Bottom - Count * ActiveMaterial.Thickness).toFixed(12);
var Inc = parseFloat((Height / (Count + 1)).toFixed(0));
for(var i = (Count + 1); i > 0; i--){
if(Height % i == 0) {
Inc = Height / i;
};
var NewNumber =
'Number' + i + ' = SelfCount.NewNumber(Inc); \n' +
'Number' + i + '.Store = false; \n' +
'Number' + i + '.OnValueChange = function() {\n' +
' ReCalc(); \n' +
'}; ';
eval(NewNumber);
if(i > 1) {
var NewBool =
'Number' + i + '.Expanded = false; \n' +
'Bool' + i + ' = Number' + i + '.NewBool("Использовать отступ:");\n' +
'Bool' + i + '.Value = true; \n' +
'Bool' + i + '.OnValueChange = function() { \n' +
' Build(); \n' +
'}; ';
eval(NewBool);
};
Height -= Inc;
};
Build();
};

SelfCount.OnValueChange = function() {
Calc();
};

Material.OnValueChange = function() {
Material.SetActive();
Calc();
};

Orientation.OnValueChange = function() {
Build();
};

Options.OnChange = function() {
Build();
};

Action.ShowEdges = true;
var EdgeBack = GetEdge('Укажите левую заднюю границу', AxisY);
var EdgeFront = GetEdge('Укажите правую переднюю границу', AxisY);
var EdgeTop = GetEdge('Укажите верхнюю границу', NewVector(1, 0, 1));
var EdgeBottom = GetEdge('Укажите нижнюю границу', NewVector(1, 0, 1));
Action.ShowEdges = false;
var Left = EdgeBack.First.x;
var Right = EdgeFront.First.x;
var Top = EdgeTop.First.y;
var Bottom = EdgeBottom.First.y;
var Back = EdgeBack.First.z;
var Front = EdgeFront.First.z;
Calc();

Action.Continue();
[свернуть]


Замечательный скрипт, давно им пользуюсь, но у меня не работает функция регулировки расстояний между полками. Сами полки выстраиваются, расстояния между ними прописываются правильно, но когда ввожу свое значение - ничего не происходит. Для меня этот скрипт очень сложный и я сам исправить этого не смог, может кто-нибудь мне поможет разобраться, в чем может быть дело. Заранее огромное спасибо.
MebelitBY вне форума   Ответить с цитированием Вверх
2 пользователя(ей) сказали cпасибо:
shitaxxx (06.10.2021), zachepa (08.12.2019)
Старый 15.05.2018, 15:21   #973
Letos
Консультант
 
Регистрация: 28.06.2017
Сообщений: 555
Сказал(а) спасибо: 127
Поблагодарили 1,030 раз(а) в 366 сообщениях
Вес репутации: 344
Letos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордится
По умолчанию

Цитата:
Сообщение от MebelitBY Посмотреть сообщение
Доброе время суток уважаемые форумчане. Как то раз Igor_482 сделал всем подарок в виде скрипта по расстановке полок с возможностью редактирования расстояний между ними:

Скрытый текст

Properties = Action.Properties;
Material = Properties.NewMaterial('Используемый материал:');
Material.Store = false;
SelfCount = Properties.NewNumber('Кол-во полок:');
Orientation = Properties.NewCombo('Направление текстуры:', 'По горизонтали\n' +
'По вертикали');
Orientation.Store = false;
Options = Properties.NewGroup('Отступы от габарита');
FrontOffset = Options.NewNumber('Спереди:');
BackOffset = Options.NewNumber('Сзади:');
LeftOffset = Options.NewNumber('Слева:');
RightOffset = Options.NewNumber('Справа:');

Options.NewButton('Сброс').OnClick = function() {
FrontOffset.Value = 0;
BackOffset.Value = 0;
LeftOffset.Value = 0;
RightOffset.Value = 0;
};

Action.Properties.Load('РасстановкаПолок.xml');

Action.Properties.NewButton('Завершить').OnClick = function() {
Action.Finish();
};

Action.OnFinish = function() {
Action.Properties.Save('РасстановкаПолок.xml');
};

function Build() {
var Y = Bottom;
DeleteNewObjects();
for(var i = (SelfCount.Count - 1); i > 0; i--) {
Y += parseFloat(SelfCount[i].Name);
if(SelfCount[(i - 1)][0].Value) {
var Panel = AddHorizPanel(Left + LeftOffset.Value,
Back + BackOffset.Value,
Right - RightOffset.Value,
Front - FrontOffset.Value,
Y);
} else {
var Panel = AddHorizPanel(Left, Back, Right, Front, Y);
};
Y += Panel.Thickness;
Panel.Name = '-';
switch (Orientation.Value) {
case 'По горизонтали':
Panel.TextureOrientation = TextureOrientation.Horizontal;
break;
case 'По вертикали':
Panel.TextureOrientation = TextureOrientation.Vertical;
break;
};
};
};

function ReCalc() {
var List = new Array();
var Result = new Number();
for(var i = (SelfCount.Count - 1); i > -1; i--) {
if(SelfCount[i].Value) {
Result += parseFloat(SelfCount[i].Name);
SelfCount[i].Name = SelfCount[i].Value;
Result -= SelfCount[i].Value;
} else {
Result += parseFloat(SelfCount[i].Name);
List.push(SelfCount[i]);
};
};
var Inc = parseFloat(Result / List.length).toFixed(0);
for(var i = List.length; i > 0; i--) {
if(Result % i == 0) {
Inc = Result / i;
};
List[(i - 1)].Name = Inc;
Result -= Inc;
};
Build();
};

function Calc() {
SelfCount.Clear();
SelfCount.Value = parseInt(SelfCount.Value.toFixed(0));
Action.Hint = 'Высота проема: ' +
parseFloat((Top - Bottom).toFixed(3)) +
' мм.';
var Count = SelfCount.Value;
var Height = (Top - Bottom - Count * ActiveMaterial.Thickness).toFixed(12);
var Inc = parseFloat((Height / (Count + 1)).toFixed(0));
for(var i = (Count + 1); i > 0; i--){
if(Height % i == 0) {
Inc = Height / i;
};
var NewNumber =
'Number' + i + ' = SelfCount.NewNumber(Inc); \n' +
'Number' + i + '.Store = false; \n' +
'Number' + i + '.OnValueChange = function() {\n' +
' ReCalc(); \n' +
'}; ';
eval(NewNumber);
if(i > 1) {
var NewBool =
'Number' + i + '.Expanded = false; \n' +
'Bool' + i + ' = Number' + i + '.NewBool("Использовать отступ:");\n' +
'Bool' + i + '.Value = true; \n' +
'Bool' + i + '.OnValueChange = function() { \n' +
' Build(); \n' +
'}; ';
eval(NewBool);
};
Height -= Inc;
};
Build();
};

SelfCount.OnValueChange = function() {
Calc();
};

Material.OnValueChange = function() {
Material.SetActive();
Calc();
};

Orientation.OnValueChange = function() {
Build();
};

Options.OnChange = function() {
Build();
};

Action.ShowEdges = true;
var EdgeBack = GetEdge('Укажите левую заднюю границу', AxisY);
var EdgeFront = GetEdge('Укажите правую переднюю границу', AxisY);
var EdgeTop = GetEdge('Укажите верхнюю границу', NewVector(1, 0, 1));
var EdgeBottom = GetEdge('Укажите нижнюю границу', NewVector(1, 0, 1));
Action.ShowEdges = false;
var Left = EdgeBack.First.x;
var Right = EdgeFront.First.x;
var Top = EdgeTop.First.y;
var Bottom = EdgeBottom.First.y;
var Back = EdgeBack.First.z;
var Front = EdgeFront.First.z;
Calc();

Action.Continue();
[свернуть]


Замечательный скрипт, давно им пользуюсь, но у меня не работает функция регулировки расстояний между полками. Сами полки выстраиваются, расстояния между ними прописываются правильно, но когда ввожу свое значение - ничего не происходит. Для меня этот скрипт очень сложный и я сам исправить этого не смог, может кто-нибудь мне поможет разобраться, в чем может быть дело. Заранее огромное спасибо.
Запустил у себя (правда, в 10-ке) - все нормально работает. Самое логичное предположение - ошибка при обработке нового введенного значения. Попробуйте запустить скрипт во встроенном редакторе скриптов и посмотреть, выдает ли в лог какую-нибудь ошибку.
Letos вне форума   Ответить с цитированием Вверх
Пользователь сказал cпасибо:
zachepa (08.12.2019)
Старый 16.05.2018, 11:08   #974
MebelitBY
Пользователь
 
Регистрация: 09.11.2014
Сообщений: 43
Сказал(а) спасибо: 12
Поблагодарили 11 раз(а) в 7 сообщениях
Вес репутации: 121
MebelitBY на пути к лучшему
По умолчанию

Спасибо, что отозвались на мое сообщение. Ошибку не выдает, также заметил, что количество полок можно задать только один раз, а если они уже нарисованы, то количество уже не меняется. На картинке видно, что расстояния есть только в параметрах, а в значении нули. У вас так, или нет?



https://www.dropbox.com/s/gi5bme39ca...56.59.png?dl=0
MebelitBY вне форума   Ответить с цитированием Вверх
Старый 16.05.2018, 12:02   #975
Letos
Консультант
 
Регистрация: 28.06.2017
Сообщений: 555
Сказал(а) спасибо: 127
Поблагодарили 1,030 раз(а) в 366 сообщениях
Вес репутации: 344
Letos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордится
По умолчанию

Цитата:
Сообщение от MebelitBY Посмотреть сообщение
Ошибку не выдает, также заметил, что количество полок можно задать только один раз, а если они уже нарисованы, то количество уже не меняется. На картинке видно, что расстояния есть только в параметрах, а в значении нули. У вас так, или нет?
В значении нули - это нормально. Если установлены нули - то расстояния считаются автоматически. Если изменить, то у меня все перестраивается. Также перестраивается и при изменении кол-ва полок. Если будет интернет, спробую дома проверить на 8 версии. Подозреваю, что функция перестроения плохо отрабатывает. Кстати, такой еще вопрос - при изменении кол-ва полок изменяется кол-во полей для ввода расстояния?
Letos вне форума   Ответить с цитированием Вверх
Старый 16.05.2018, 15:25   #976
MebelitBY
Пользователь
 
Регистрация: 09.11.2014
Сообщений: 43
Сказал(а) спасибо: 12
Поблагодарили 11 раз(а) в 7 сообщениях
Вес репутации: 121
MebelitBY на пути к лучшему
По умолчанию

Нет, при изменении кол-ва полок, кол-во полей для ввода расстояния не изменяется. Не изменяется количество полок и на модели. Если у вас получится проверить работу скрипта на 8-й версии, будет замечательно, т.к. я работаю в ней.
MebelitBY вне форума   Ответить с цитированием Вверх
Старый 16.05.2018, 17:39   #977
andronf
Местный
 
Регистрация: 30.03.2010
Адрес: Минск
Сообщений: 291
Сказал(а) спасибо: 1,884
Поблагодарили 226 раз(а) в 96 сообщениях
Вес репутации: 246
andronf - весьма и весьма положительная личностьandronf - весьма и весьма положительная личностьandronf - весьма и весьма положительная личность
По умолчанию

Проверил в 8ке. Первый раз все считает, а после ввода нижнего расстояния ничего не происходит. В 9ке все ок.
andronf вне форума   Ответить с цитированием Вверх
Старый 17.05.2018, 10:11   #978
Letos
Консультант
 
Регистрация: 28.06.2017
Сообщений: 555
Сказал(а) спасибо: 127
Поблагодарили 1,030 раз(а) в 366 сообщениях
Вес репутации: 344
Letos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордится
По умолчанию

Цитата:
Сообщение от MebelitBY Посмотреть сообщение
Доброе время суток уважаемые форумчане. Как то раз Igor_482 сделал всем подарок в виде скрипта по расстановке полок с возможностью редактирования расстояний между ними.

Замечательный скрипт, давно им пользуюсь, но у меня не работает функция регулировки расстояний между полками. Сами полки выстраиваются, расстояния между ними прописываются правильно, но когда ввожу свое значение - ничего не происходит. Для меня этот скрипт очень сложный и я сам исправить этого не смог, может кто-нибудь мне поможет разобраться, в чем может быть дело.
Во вложении новый скрипт, который должен работать - проверял на демке 8.

В чем была проблема - для обработки изменения значений в полях использовался обработчик OnValueChange, но, судя по автодополнению и свойствам полей, в 8 версии этот обработчик еще не существовал - скорее всего сам скрипт писался для 9 версии. Исправил обработчик на OnChange и пришлось еще немного "костылить", потому что этот обработчик вызывается на любой чих поля и вложенных в него (то есть, если редактировать расстояние полки, то обработчик OnChange вызывается не только у этого поля, но и у поля "кол-во полок" и у корневого Action.Properties).
Вложения
Тип файла: rar shelfs.rar (1.5 Кб, 60 просмотров)
Letos вне форума   Ответить с цитированием Вверх
8 пользователя(ей) сказали cпасибо:
Старый 17.05.2018, 18:09   #979
MebelitBY
Пользователь
 
Регистрация: 09.11.2014
Сообщений: 43
Сказал(а) спасибо: 12
Поблагодарили 11 раз(а) в 7 сообщениях
Вес репутации: 121
MebelitBY на пути к лучшему
По умолчанию

Огромное Вам спасибо за вашу помощь.

Добавлено через 27 минут
Регулировка полок по высоте заработала, но теперь нельзя менять количество полок, сам базис выдает ошибку. Проблему самостоятельно можно решить (не исправляя скрипт) если создать несколько скриптов с разным количеством полок. В любом случае так удобней, чем когда не работала регулировка. Еще раз спасибо.

https://www.dropbox.com/s/f85yo1gujk...11.22.png?dl=0
MebelitBY вне форума   Ответить с цитированием Вверх
Пользователь сказал cпасибо:
zachepa (08.12.2019)
Старый 18.05.2018, 09:44   #980
Letos
Консультант
 
Регистрация: 28.06.2017
Сообщений: 555
Сказал(а) спасибо: 127
Поблагодарили 1,030 раз(а) в 366 сообщениях
Вес репутации: 344
Letos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордится
По умолчанию

Цитата:
Сообщение от MebelitBY Посмотреть сообщение
Регулировка полок по высоте заработала, но теперь нельзя менять количество полок, сам базис выдает ошибку.
Запустил у себя в демке - у меня кол-во меняется без ошибок.
Не знаю, насколько хороший из меня телепат, но я пытался поправить то, что, на мой взгляд, вызвало ошибку в Базисе. Плюс еще исправил обработчик изменения материала (теперь при изменении материала перестраиваются полки, а в старом скрипте не делалось ничего). Новый скрипт во вложении.
Вложения
Тип файла: rar shelfs.rar (1.5 Кб, 88 просмотров)
Letos вне форума   Ответить с цитированием Вверх
7 пользователя(ей) сказали cпасибо:
Ответ

Нижняя навигация
Вернуться   Форум профессиональных мебельщиков PROMEBELclub > Программы для мебельщиков > Программы для конструирования и дизайна мебели > Система БАЗИС > Базис-мебельщик. Скрипты

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
БАЗИС 9 - Скрипты Igor_482 Базис-мебельщик. Скрипты 1442 04.04.2024 11:28
БАЗИС 9 nayrogi Базис-мебельщик 9 785 01.10.2022 23:13
БАЗИС-ЧПУ 8 chingisnah Базис-мебельщик 8 119 21.12.2017 22:04
Заявки на скрипты dr_john Система БАЗИС 37 01.03.2016 10:36
Базис-7,"Народный Базис"и Windows-8 sergeyzak18 "НАРОДНЫЙ" базис 23 16.01.2014 00:37


Текущее время: 10:51. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
© 2007-2023 PROMEBEL

џндекс.Њетрика