Показать сообщение отдельно
Старый 11.11.2019, 10:55   #189
Ovsyanicov
Местный
 
Регистрация: 30.11.2013
Адрес: Кишинев
Сообщений: 734
Сказал(а) спасибо: 1,529
Поблагодарили 884 раз(а) в 376 сообщениях
Вес репутации: 403
Ovsyanicov за этого человека можно гордитсяOvsyanicov за этого человека можно гордитсяOvsyanicov за этого человека можно гордитсяOvsyanicov за этого человека можно гордитсяOvsyanicov за этого человека можно гордитсяOvsyanicov за этого человека можно гордитсяOvsyanicov за этого человека можно гордитсяOvsyanicov за этого человека можно гордится
По умолчанию

Цитата:
Сообщение от maloji Посмотреть сообщение
(по примеру выше выложенных кодов пытался посчитать площадь деталей с прямолинейным кромлением:
f (GetParam('(10)Длина прямолинейной облицовки') > 0){
Result = GetParam('(1)Габаритная площадь заготовки');
} else {
Result = 0;
} )
Все что касается других параметров : отверстия; пазы и т.д. всё вроде нормально...
К сожалению, таким способом не получится. Уже были попытки сделать подобные пользовательские параметры, но пока безуспешно.
Дело в том, что следующие встроенные параметры:
- Общая длина облицовки;
- Длина прямолинейной облицовки;
- Длина криволинейной облицовки;
- Количество отрезов облицовки;
- Количество отрезов прямолинейной облицовки;
- Количество отрезов криволинейной облицовки;
- Общая площадь облицовки;
- Площадь прямолинейной облицовки;
- Площадь криволинейной облицовки;
возвращают результат только если скрипт "проходит" по облицовкам кромок панели, но в таком случае любой другой параметр, не относящийся к облицовкам кромок, возвращает undefined. И наоборот, если скрипт "проходит" по параметрам самой панели, т.е. размеры, площади, отверстия, пазы и т.п., то параметры кромок возвращают undefined - это как раз Ваш случай.

UPD: перечитав несколько постов уважаемых Letos и bbb i ko, всё-таки, пришла мысль как решить задачу, не включая в код встроенные параметры облицовок кромок, а обращаясь к свойствам объекта Panel.
PHP код:
if(Panel.IsContourRectangle && Panel.Butts.Count 0){
    
Result GetParam('(48)Габаритная площадь готовой детали')
} else {
    
Result 0;


Последний раз редактировалось Ovsyanicov; 11.11.2019 в 11:25. Причина: Добавил решение
Ovsyanicov вне форума   Ответить с цитированием Вверх
2 пользователя(ей) сказали cпасибо:
Letos (11.11.2019), maloji (11.11.2019)