Пожалуйста, не блокируйте рекламу!

0 Пользователей и 1 Гость просматривают эту тему.

*

Оффлайн SIMFF

  • *****
  • 2299
  • Репутация: +194/-4
  • Пол: Мужской
Первые шаги в GDL
« Ответ #210 : Июня 27, 2016, 22:12:34 »

Test

Как в параметрах самонаписанного GDL элемента прописать выключение по умолчанию параметров в закладке СИМВОЛ:
Замена Типа Линии Объекта и Заменить Перья Объекта. см. картинку ...

 

*

Оффлайн Стоянов

  • **
  • 48
  • Репутация: +11/-0
Первые шаги в GDL
« Ответ #211 : Июня 28, 2016, 19:03:03 »
Это внутренняя программная функция, которая как раз служит для быстрой отмены назначений перьев. По умолчанию она и так выключена.

*

Оффлайн SIMFF

  • *****
  • 2299
  • Репутация: +194/-4
  • Пол: Мужской
Первые шаги в GDL
« Ответ #212 : Июня 28, 2016, 19:07:51 »
..... По умолчанию она и так выключена.
Увы, это не так. Если бы по умолчанию это было бы выключено, то и не было бы самого вопроса

*

Оффлайн ValeriyP

  • архитектор
  • ****
  • 498
  • Репутация: +64/-1
  • Пол: Мужской
  • ArchiCad Coral Draw Artlantis
Первые шаги в GDL
« Ответ #213 : Июня 28, 2016, 19:35:23 »
Как в параметрах самонаписанного GDL элемента прописать выключение по умолчанию параметров в закладке СИМВОЛ:
Замена Типа Линии Объекта и Заменить Перья Объекта. см. картинку ...

Ни как. Эта закладка полностью нередактируема.  Данные функции работают только в том случае, если 2D символ выполнен графически. Или 2D скрипт имеет команды редактирования типа линий и пера. Под голую команду PROJECT, работать не будет.

Для того чтоб отключить данную функцию- нужно просто открыть библ- отключить, поставить на план. Все последующие библы будут открываться с отключенной функцией. У меня по крайней мере так.

*

Оффлайн Стоянов

  • **
  • 48
  • Репутация: +11/-0
Первые шаги в GDL
« Ответ #214 : Июня 28, 2016, 19:44:00 »
Действительно, включена. Прошу прощения за неточность.

*

Оффлайн SIMFF

  • *****
  • 2299
  • Репутация: +194/-4
  • Пол: Мужской
Первые шаги в GDL
« Ответ #215 : Августа 19, 2016, 15:06:22 »
Есть такая ситуация, такое условия (как пример):
IF TYPE = 1 THEN L_MIN = 0.50 : L_MAX = 1.50
IF TYPE = 2 THEN L_MIN = 0.75 : L_MAX = 2.80

далее....
VALUES 'L_LINE' RANGE [L_MIN,L_MAX]
Вопрос:
Существует ли какая то команда, или как записать какую то комбинацию команд, что бы при изменении параметра TYPE с 1 на 2 и обратно параметра L_LINE возвращала бы L_MIN и L_MAX к их минимальному или (при других условиях записи или команды) к максимальному значению для TYPE 1 и 2 ?
Сейчас происходит следующее:
Если изначально был TYPE = 1, то значение для L_LINE,  L_MIN = 0.50, для L_MAX = 1.50, если изменяю TYPE = 2, то L_MIN изменяется на 0.75.
Изменяя TYPE на 1, (после TYPE = 2), значение L_LINE отражается в параметрах (ну и фактически тоже) как 0.75, а хотелось бы иметь значение присвоенное L_MIN для TYPE = 1 - 0.50  

*

Оффлайн Valery_R

  • *****
  • 1007
  • Репутация: +285/-0
  • Пол: Мужской
Первые шаги в GDL
« Ответ #216 : Августа 19, 2016, 17:40:32 »
... что бы при изменении параметра TYPE с 1 на 2 и обратно параметра L_LINE возвращала бы L_MIN и L_MAX к их минимальному или (при других условиях записи или команды) к максимальному значению для TYPE 1 и 2 ?
 

Попробуй :
IF TYPE = 1 THEN PARAMETERS L_MIN = 0.50 : PARAMETERS L_MAX = 1.50
IF TYPE = 2 THEN PARAMETERS L_MIN = 0.75 : PARAMETERS L_MAX = 2.80

*

Оффлайн SIMFF

  • *****
  • 2299
  • Репутация: +194/-4
  • Пол: Мужской
Первые шаги в GDL
« Ответ #217 : Августа 19, 2016, 18:07:15 »
Попробуй :
IF TYPE = 1 THEN PARAMETERS L_MIN = 0.50 : PARAMETERS L_MAX = 1.50
IF TYPE = 2 THEN PARAMETERS L_MIN = 0.75 : PARAMETERS L_MAX = 2.80
Не удовлетворяет моему желанию. Результат тот же.
Когда переключаюсь между TYPE 1 и 2, значение Параметра, которое формируется командой VALUES 'L_LINE' RANGE [L_MIN,L_MAX], условии параметр L_MIN "зависает" на показателе 0.75, которое удовлетворяет условию для TYPE 1 2, а хотелось бы найти команду или запись, что бы результат в строке Параметров выходил бы либо MIN либо MAX, по какой то специальной команде,  для конкретного типа/
Проиллюстрирую картинкой:


*

Оффлайн Kuvbur

  • ^_^
  • ****
  • 370
  • Репутация: +69/-0
  • Пол: Мужской
Первые шаги в GDL
« Ответ #218 : Августа 19, 2016, 20:03:43 »
Дикий костыль, но вроде-бы работает

IF TYPE = 1 THEN
   PARAMETERS L_MIN = 0.50
   PARAMETERS L_MAX = 1.50
endif
IF TYPE = 2 THEN
   PARAMETERS L_MIN = 0.75
   PARAMETERS L_MAX = 2.80
endif
defult = L_MIN
if GLOB_MODPAR_NAME = "TYPE" then
   PARAMETERS L_LINE = defult
endif
if L_LINE = defult then
   VALUES 'L_LINE' RANGE [L_MIN,L_MAX]
endif
В конструкциях values значения, как я понимаю, всегда устанавливается на первое, нижнее значение.

*

Оффлайн ValeriyP

  • архитектор
  • ****
  • 498
  • Репутация: +64/-1
  • Пол: Мужской
  • ArchiCad Coral Draw Artlantis
Первые шаги в GDL
« Ответ #219 : Августа 19, 2016, 20:45:52 »
Brandashmыg
Костыля в этом ни какого нет
IF TYPE = 1 THEN
   PARAMETERS L_MIN = 0.50
   PARAMETERS L_MAX = 1.50
endif
IF TYPE = 2 THEN
   PARAMETERS L_MIN = 0.75
   PARAMETERS L_MAX = 2.80
endif
но есть нюанс.
В этом случае значения параметров будут фиксированы. Все промежуточные значения работать просто не будут.

Правильно так. Всегда пользуюсь этим кодом. Можно расписать хоть сколько угодно интервалов значений

VALUES "sty" "TYPE1", "TYPE2"

IF sty="TYPE1" THEN
   PARAMETERS L_MIN>=0.50
   PARAMETERS L_MAX<= 1.50
endif
IF sty="TYPE2" THEN
   PARAMETERS L_MIN >= 0.75
   PARAMETERS L_MAX<= 2.80
endif

*

Оффлайн Kuvbur

  • ^_^
  • ****
  • 370
  • Репутация: +69/-0
  • Пол: Мужской
Первые шаги в GDL
« Ответ #220 : Августа 19, 2016, 20:54:38 »
PARAMETERS L_MIN>=0.50

В 16-м такая конструкция не работает. Это с какой версии такое возможно?

Переписал, теперь range работает

IF TYPE = 1 THEN
   PARAMETERS L_MIN = 0.50
   PARAMETERS L_MAX = 1.50
endif
IF TYPE = 2 THEN
   PARAMETERS L_MIN = 0.75
   PARAMETERS L_MAX = 2.80
endif
defult = L_MIN
if GLOB_MODPAR_NAME = "TYPE" then
   PARAMETERS L_LINE = defult
endif
if L_LINE = defult then
   VALUES 'L_LINE' RANGE [L_MIN,L_MAX]
else
   VALUES 'L_LINE' RANGE [L_MIN,L_MAX]
endif

Погонял - если менять defult на L_MAX - тоже работает.

*

Оффлайн ValeriyP

  • архитектор
  • ****
  • 498
  • Репутация: +64/-1
  • Пол: Мужской
  • ArchiCad Coral Draw Artlantis
Первые шаги в GDL
« Ответ #221 : Августа 19, 2016, 21:48:41 »
Работает во всех версиях (АБСОЛЮТНО начиная с 6.5 )
Использую этот код практически постоянно- когда нужно прописать несколько интервалов значений для любых параметров.
Возможно вы просто забыли добавить в закладке параметров параметр  text =sty. Хотя это по коду VALUES "sty" "TYPE1", "TYPE2" видно. Но бывает. 

*

Оффлайн Kuvbur

  • ^_^
  • ****
  • 370
  • Репутация: +69/-0
  • Пол: Мужской
Первые шаги в GDL
« Ответ #222 : Августа 19, 2016, 21:54:48 »
Не получается рисунок вставить. Ругается именно на оператор >= . И в мануале по GDL про это не записано. Чудеса какие-то)
https://drive.google.com/file/d/0Bz2O7fDkbvFKTU9oTkgwRW5EaDQ/view?usp=sharing

Если не сложно - не могли бы вы скинуть объект, в котором такое используется? Очень интересно разобраться.

*

Оффлайн SIMFF

  • *****
  • 2299
  • Репутация: +194/-4
  • Пол: Мужской
Первые шаги в GDL
« Ответ #223 : Августа 19, 2016, 21:58:33 »
Не получается рисунок вставить. Ругается именно на оператор >= . И в мануале по GDL про это не записано. Чудеса какие-то)
https://drive.google.com/file/d/0Bz2O7fDkbvFKTU9oTkgwRW5EaDQ/view?usp=sharing

Если не сложно - не могли бы вы скинуть объект, в котором такое используется? Очень интересно разобраться.
Тоже бьюсь над предложенным вариантом ValeriyP, и тоже ошибка. Не могу победить, не могу понять причину ошибки.
Редактирую в АС19, тоже эта конструкция не работает - PARAMETERS L_MIN>=0.50

Brandashmыg, ваш вариант работает, то что искал. Спасибо.

*

Оффлайн SIMFF

  • *****
  • 2299
  • Репутация: +194/-4
  • Пол: Мужской
Первые шаги в GDL
« Ответ #224 : Августа 19, 2016, 22:12:15 »
Попутно спрошу еще об одной проблеме.
Периодически выскакивает такое предупреждение: Использование типов real может привести к проблемам, связных с точностью предоставления чисел.
Картинка под кнопкой:
Извините, вам запрещён просмотр содержимого спойлеров.
Такие сообщения появились в GDL редакторе, начиная с версии АС18 

 

Похожие темы

  Тема / Автор