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

DenneD и 1 Гость просматривают эту тему.

*

Оффлайн Ilia

  • *****
  • 1052
  • Репутация: +73/-0
  • Пол: Мужской
  • ...и! Не надо "и"...
Первые шаги в GDL
« Ответ #300 : Июля 17, 2017, 10:26:37 »

Test

как округлить значение до 0,5? 

"CEIL" округляет до целого  а мне нужно до "x,5".  
примеры:
     250 => 500
   1275 => 1500
   1750 => 2000
   2230 => 2500
   2990 => 3000
и так далее...

Делаю переборами IF ELSE но данное решение громоздкое.  Уверен должно быть изящное решение ) 

*

Оффлайн Kuvbur

  • ^_^
  • ****
  • 370
  • Репутация: +69/-0
  • Пол: Мужской
Первые шаги в GDL
« Ответ #301 : Июля 24, 2017, 10:31:13 »
out = ROUND_INT(in/krat)*krat
if out < in then out = out + krat
Вроде работает, см. скрин во вложении. Надо только параметром krat поиграть.

*

Оффлайн Ilia

  • *****
  • 1052
  • Репутация: +73/-0
  • Пол: Мужской
  • ...и! Не надо "и"...
Первые шаги в GDL
« Ответ #302 : Июля 24, 2017, 10:56:21 »
out = ROUND_INT(in/krat)*krat
if out < in then out = out + krat
Вроде работает, см. скрин во вложении. Надо только параметром krat поиграть.

при первом рассмотрении подходит вариант!
Спасибо за решение и идею! 

*

Оффлайн SergDryg

  • ****
  • 386
  • Репутация: +24/-0
  • Пол: Мужской

*

Оффлайн SIMFF

  • *****
  • 2299
  • Репутация: +194/-4
  • Пол: Мужской
Первые шаги в GDL
« Ответ #304 : Сентября 06, 2017, 16:17:22 »
Можно ли, если можно то как, вытащить информацию о номере версии библиотечного эл-та в строку параметра ?

*

Оффлайн SIMFF

  • *****
  • 2299
  • Репутация: +194/-4
  • Пол: Мужской
Первые шаги в GDL
« Ответ #305 : Сентября 07, 2017, 20:26:35 »
Подскажите, где найти информацию какой версии ArchiCAD соответствует какая версия библиотечного элемента ?

*

Оффлайн Arsh

  • Век живи, ...
  • *****
  • 2838
  • Репутация: +242/-24
  • Пол: Мужской
  • Столько не живут...
Первые шаги в GDL
« Ответ #306 : Сентября 07, 2017, 20:48:45 »
SIMFF, http://forum.cadstudio.ru/index.php?topic=13862.msg4528#msg4528
ArchiCAD обеспечивает совместимость вниз с ограничениями. Вы не можете использовать библиотечные элементы
более новых версий в ArchiCAD предыдущих версий.

Чтобы знать к какой версии АС принадлежит б.элемент надо кликнуть на нем правой кнопкой в Windows Explorer и выбрать Свойства.
Появится такое окно (см. скриншот). Называется "Расширенная оболочка". Интерфейс окна зависит от версии АС.
В закладке "Инфо и просмотр" (Info & Preview) показана версия б.элемента.

Версия 14 - АС6
Версия 15 - АС6,5
Версия 17 - АС7
Версия 20 - АС8
Версия 21 - АС9
Версия 22 - АС10
Версия 23 - АС11
Версия 24 - АС12
Версия 25 - АС13
Версия 27 - АС14
Версия 28 - АС15
Версия 31 - АС16
Версия 34 - АС18
Версия 35 - АС19

Если показывается не Расширенная оболочка, а стандартная от Windows, то делайте так:
В папке ArchiCADа есть папка Расширение Graphisoft Shell (Graphisoft Shell Extension в INT версии). Там есть файл Register.bat. Кликните на нем, и он сделает Расширенную оболочку.


*

Оффлайн Vachik

  • *****
  • 4759
  • Репутация: +734/-4
  • Пол: Мужской
Первые шаги в GDL
« Ответ #307 : Сентября 07, 2017, 21:43:38 »
Вот такую табличку я сделал. Если можете дополнить пожалуйста сообщите.

*

Оффлайн SIMFF

  • *****
  • 2299
  • Репутация: +194/-4
  • Пол: Мужской
Первые шаги в GDL
« Ответ #308 : Сентября 11, 2017, 21:32:18 »
Каким запросом REQUEST вытащить информацию о разрядности (кол-ве десятичных знаков) для Площади  в Рабочей среде проекта, как его правильно сконвертировать, что бы значение закинуть в строку Параметров.
P.S. Скрин под spoiler
Извините, вам запрещён просмотр содержимого спойлеров.


*

Оффлайн Kuvbur

  • ^_^
  • ****
  • 370
  • Репутация: +69/-0
  • Пол: Мужской
Первые шаги в GDL
« Ответ #309 : Сентября 26, 2017, 13:53:33 »
SIMFF, n = REQUEST ("Area_dimension", "", format_string) либо n = REQUEST ("Calc_area_unit", "", format_string)
Пример обработки для длин такой
ld=''
rr = REQUEST ("Linear_dimension", "",ld) 
nl = STRSTR (ld, "m")
if STRSTR (ld, "m")<>0 then Unit="м"
if STRSTR (ld, "cm")<>0 then Unit="см"
if STRSTR (ld, "mm")<>0 then Unit="мм"
if STRSTR (ld, "m")=0 then Unit=""

*

Оффлайн SIMFF

  • *****
  • 2299
  • Репутация: +194/-4
  • Пол: Мужской
Первые шаги в GDL
« Ответ #310 : Октября 09, 2017, 13:53:52 »
Подскажите арифметическую функцию GDL, которая  соответствует - число в степени -  X2, что бы не писать Х*Х
Пробовал функцию EXP.  Записал так А = EXP (X)
Но результат не верен. Возможно ошибка в записи, поправьте меня. 

*

Оффлайн Vachik

  • *****
  • 4759
  • Репутация: +734/-4
  • Пол: Мужской
Первые шаги в GDL
« Ответ #311 : Октября 09, 2017, 14:05:10 »
Цитировать
Подскажите арифметическую функцию GDL, которая  соответствует - число в степени -  X2, что бы не писать Х*Х
Пробовал функцию EXP.  Записал так А = EXP (X)
Но результат не верен. Возможно ошибка в записи, поправьте меня.
EXP это про число Е, а тебе наверное подойдет А= Х^2

*

Оффлайн Ilia

  • *****
  • 1052
  • Репутация: +73/-0
  • Пол: Мужской
  • ...и! Не надо "и"...
Первые шаги в GDL
« Ответ #312 : Октября 09, 2017, 14:09:04 »
X^2

"^" - это возведение в степень

PS: Vachik опередил ))

*

Оффлайн SIMFF

  • *****
  • 2299
  • Репутация: +194/-4
  • Пол: Мужской
Первые шаги в GDL
« Ответ #313 : Октября 09, 2017, 14:25:18 »
X^2
"^" - это возведение в степень
За предложение, спасибо. Но результат не верен. Если применить этот вариант, то нужна вот такая запись - X^2*1000,
Строковые параметры А и X - Линейная величина
Данная формула работает только для 2-ой степенен, для 3-ей степени (X^3), уже не подходит.
И как символ "^" вставить с клавиатуры, вставить можно только копированием-вставкой в окно редактирования GDL объекта

*

Оффлайн Vachik

  • *****
  • 4759
  • Репутация: +734/-4
  • Пол: Мужской
Первые шаги в GDL
« Ответ #314 : Октября 09, 2017, 14:39:01 »
Цитировать
За предложение, спасибо. Но результат не верен. Если применить этот вариант, то нужна вот такая запись - X^2*1000,
Строковые параметры А и X - Линейная величина
Данная формула работает только для 2-ой степенен, для 3-ей степени (X^3), уже не подходит.
Что то не так делаешь, все работает и в 3 степени и в 7.
PS. И без 1000

Цитировать
И как символ "^" вставить с клавиатуры, вставить можно только копированием-вставкой в окно редактирования GDL объекта
Символ "^" находится на клавише "6" верхний регистр английский.

 

Похожие темы

  Тема / Автор