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

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

*

Оффлайн Думка

  • *****
  • 3158
  • Репутация: +108/-4
  • Пол: Мужской
  • Интерьер - это скульптура вывернутая наизнанку...
Первые шаги в GDL
« Ответ #495 : Декабря 01, 2020, 13:47:12 »

Test

Господа, а скажите мне, поговаривают о переводе Archicad на Piton. И в этом случае весь опыт gdl языка программирования  коту под хвост?

*

Оффлайн Kuvbur

  • ^_^
  • ****
  • 368
  • Репутация: +69/-0
  • Пол: Мужской
Первые шаги в GDL
« Ответ #496 : Декабря 01, 2020, 14:28:53 »
Там не переход - добавили доступ к API на Python (т.е. в добавок к C++). GDL никуда не делся. Но питон там пока очень недоработанный, возможностей мало.

*

Оффлайн Nadek35

  • 2
  • Репутация: +0/-0
Первые шаги в GDL
« Ответ #497 : Декабря 02, 2020, 13:02:36 »
Правильно назначить переменные и вывести через PARAMETERS - будет читаться через ИК (интерактивный каталог).
Примерно так:


Спасибо, получилось! 

*

Оффлайн Vachik

  • *****
  • 4758
  • Репутация: +734/-4
  • Пол: Мужской
Первые шаги в GDL
« Ответ #498 : Декабря 09, 2020, 21:02:15 »
Как пользоваться Скриптами Спецификаций?
Кто то пользуется?
DATABASE_SET
DESCRIPTOR
REF DESCRIPTOR
COMPONENT
REF COMPONENT
BINARYPROP
SURFACE3D
VOLUME3D
POSITION
WALLS
COLUMNS
BEAMS
DOORS
WINDOWS
OBJECTS
CEILS
PITCHED_ROOFS
LIGHTS
HATCHES
ROOMS
MESHES
DRAWING

*

Оффлайн ViktorSPB

  • **
  • 38
  • Репутация: +0/-0
Первые шаги в GDL
« Ответ #499 : Апреля 12, 2021, 17:33:36 »
Скажите, пожалуйста, можно ли и как через проекцию сделать так, чтобы кроме контуров 3D элемента на плане отобразилась и заливка каждой части из разных покрытий? У меня в объекте присутствуют 3 покрытия, штриховки я им задал. но проекция всегда одноцветная( я пробовал как в документации PROJECT2 3,270,3 и разные другие варианты с доп параметрами для PROJECT2{2]. Пробовал метод менять на 2, опять комбинации допов - нулевой результат( У меня объект импорт из райно, я в нем просто грохнул его родной 2D скрипт и вот попытался таким образом получить раскрашенную проекцию 2D согласно цвету покрытий каждого элемента объекта

PS. Попробовал объект превратить в морф, а потом обратно в объект и рпописал PROJECT2 3,270,3 и все сработало.. Делаю вывод, что проблема в экспорте.

*

Оффлайн Ivanov_Valeriy

  • ***
  • 129
  • Репутация: +3/-6
Первые шаги в GDL
« Ответ #500 : Апреля 12, 2021, 22:34:13 »
можно. Но не нужно.

*

Оффлайн ViktorSPB

  • **
  • 38
  • Репутация: +0/-0
Первые шаги в GDL
« Ответ #501 : Апреля 12, 2021, 22:43:58 »
спасибо, конечно. но мне нужно.
можно. Но не нужно.

PS. Я разобрался. В коде от Rhino, причем в 3D скрипте, стоят условия присваивания поверхностей. Т.е. если вид 3D или еще какой-то, то поверхность такая-то. А если я в плане, то в 3D скрипте эти материалы не присваиваются. При этом функция PROJECT2 не подхватывает эти поверхности. Закомментил условия (мне ограничения не нужны) и все заработало. Вот такая не явная на мой взгляд логика работы GDL. 3D скрипт повлиял на 2D.
« Последнее редактирование: Апреля 17, 2021, 15:06:50 от ViktorSPB »

*

Оффлайн MaksiOk

  • *
  • 17
  • Репутация: +0/-0
  • Пол: Мужской
Первые шаги в GDL
« Ответ #502 : Августа 04, 2021, 12:36:46 »
Добрый день.
Вопрос по GDL и каталогам
Мне нужно вывести в каталог параметр который считается в основном скрипте
Я сделал это с помощью:     PARAMETERS _numB = numB2

Проблема в следующем:
В настройке библиотечного элемента у меня выводится верное расчетное число 31
 

Но вот в каталоге выводится другое число


При том выводится то число которое можно посмотреть когда открываешь объект через отладчик


Может быть это как-то связано с порядком расчетов... не понимаю
Подскажите может кто-то сталкивался


*

Оффлайн Pawel37

  • ***
  • 213
  • Репутация: +3/-0
  • Пол: Мужской
Первые шаги в GDL
« Ответ #503 : Ноября 27, 2021, 12:19:52 »
Подскажите Почему при автоматической подстановки данных, они постанавливаются в параметры но дальше пересчёт не происходит.
Если я их пытаюсь изменить в ручную то замена конечно не происходят но происходит перерасчет как и положено.
Хочу сделать автоматическую выборку с подстановкой размеров рамы окон (ГОСТ 23166-99)
Я предполагаю что перерасчёт происходит только при обращение в окошко этого параметра, после чего они пересчитываются (в макросе).
Каким образом добиться чтобы после изменения параметра элемента командой,
"Если ...=... то PARAMETERS  ac_unit_width = ......." и происходил перерасчет параметра, как будто я изменил его в ручную?

*

Оффлайн ufo

  • ****
  • 392
  • Репутация: +84/-0
  • Пол: Мужской
Первые шаги в GDL
« Ответ #504 : Декабря 16, 2021, 09:59:07 »
Подскажите Почему при автоматической подстановки данных, они постанавливаются в параметры но дальше пересчёт не происходит.
Если я их пытаюсь изменить в ручную то замена конечно не происходят но происходит перерасчет как и положено.
Хочу сделать автоматическую выборку с подстановкой размеров рамы окон (ГОСТ 23166-99)
Я предполагаю что перерасчёт происходит только при обращение в окошко этого параметра, после чего они пересчитываются (в макросе).
Каким образом добиться чтобы после изменения параметра элемента командой,
"Если ...=... то PARAMETERS  ac_unit_width = ......." и происходил перерасчет параметра, как будто я изменил его в ручную?

Не совсем понял про что вы, причины могут быть разные есть много особенностей порядок выполнения скриптов количество проходов скрипта параметров.   
Попробуйте самое простое в Основном скрипте
"IF ...=...  THEN
   ac_unit_width = ( тут значение или формула или какая там у вас идея )
   PARAMETERS ac_unit_width = ac_unit_width
ENDIF
команда  PARAMETERS меняет значение параметра,  но само значение в скрипте при первом проходе остается темже

*

Оффлайн Pawel37

  • ***
  • 213
  • Репутация: +3/-0
  • Пол: Мужской
Первые шаги в GDL
« Ответ #505 : Декабря 17, 2021, 14:10:27 »
Не совсем понял про что вы, причины могут быть разные есть много особенностей порядок выполнения скриптов количество проходов скрипта параметров.   
Попробуйте самое простое в Основном скрипте
"IF ...=...  THEN
   ac_unit_width = ( тут значение или формула или какая там у вас идея )
   PARAMETERS ac_unit_width = ac_unit_width
ENDIF
команда  PARAMETERS меняет значение параметра,  но само значение в скрипте при первом проходе остается темже

В Элементе скажем окно есть параметр скажем ширина проема и стоит галочка что он назначен как наминал размера (значит параметр А=ему).
Дальше я меняю размер рамы, вбивая его в окошке с клавиатуры, происходит перерасчет размеров.
Если я в нутри скрипта меняю этот размер то он там (в окошке) появляется но не происходит перерасчет, как будто ждет пока я не дам подтверждение  ENTER.

*

Оффлайн ufo

  • ****
  • 392
  • Репутация: +84/-0
  • Пол: Мужской
Первые шаги в GDL
« Ответ #506 : Декабря 17, 2021, 16:26:00 »
Повторюсь в Основном скрипте нужно не только написать
 PARAMETERS  A = 100;
но и просто написать
A=100
Когда пишешь PARAMETERS - меняется только значение параметра,  скрипт об этом узнает только после повторного прохождения.

*

Оффлайн Pawel37

  • ***
  • 213
  • Репутация: +3/-0
  • Пол: Мужской
Первые шаги в GDL
« Ответ #507 : Декабря 17, 2021, 20:19:42 »
Повторюсь в Основном скрипте нужно не только написать
 PARAMETERS  A = 100;
но и просто написать
A=100
Когда пишешь PARAMETERS - меняется только значение параметра,  скрипт об этом узнает только после повторного прохождения.
Прошу прощение, НАТО два раза подряд присвоить значение.

PARAMETERS A = 100
A=100

Я правильно понял?
И что заставляет сделать ему повторное прохождение?

*

Оффлайн lsr

  • *****
  • 1267
  • Репутация: +246/-6
  • Пол: Мужской
  • http://sl-gdl.com
Первые шаги в GDL
« Ответ #508 : Декабря 18, 2021, 00:32:31 »
IF GLOB_MODPAR_NAME = "A" | GLOB_MODPAR_NAME = "B" THEN
        TXT   = "БЛА_БЛА_БЛА"
        AA = A
        BB = B
        CHK=1
    ELSE
        CHK=0   !!! ОБНУЛЕНИЕ= СБРОС ГАЛКИ ЕСЛИ МЕНЯЕТСЯ ЛЮБОЙ ПАРАМЕТР КРОМЕ A ИЛИ B
    ENDIF
    
PARAMETERS TXT=TXT, CHK=CHK,
A= A ,  B= B,
AA = AA, BB = BB

*

Оффлайн ufo

  • ****
  • 392
  • Репутация: +84/-0
  • Пол: Мужской
Первые шаги в GDL
« Ответ #509 : Декабря 20, 2021, 11:24:25 »
Прошу прощение, НАТО два раза подряд присвоить значение.

PARAMETERS A = 100
A=100

Я правильно понял?
И что заставляет сделать ему повторное прохождение?
Да первый раз по-идее вы не присваиваете значение а устанавливаете параметр,  конечно при следующем проходе он будет использовать указанное значение.
Второй раз прохождение делает сам ArchiCAD,  и бывает он делает несколько прохождение (5-6) узнать что это 1 прохождение можно  n = APPLICATION_QUERY ("parameter_script", "firstoccasion_in_progress", isFirstRun)
В параметрах совместимости объекта есть галочка "Выполнять только один раз" - без надобности ее лучше не трогать.
Количество прохождений зависит от множества причин, откуда запущен скрипт какие сколько параметров в скрипте изменялось,  бывают сложные цепочки когда один параметр зависит от другого частенько арихкаду надо помочь объяснить логику что главнее тут пригодится GLOB_MODPAR_NAME.  


вот пример того что PARAMETERS не меняет значение переменой в скрипте но меняет параметр
! Написать в основном скрипте создать один параметр test строкового типа
test = "Прямое указание в MASTER скрипте"
parameters test="установлено директивой PARAMETERS"
text2 0,0, test
! результат на плане этажа это будут "Прямое указание в MASTER скрипте"
! результат в окне элемента "установлено директивой PARAMETERS"

 

Похожие темы

  Тема / Автор