Что такое DesignScript?

Главная Форумы Dynamo ДизайнСкрипт Что такое DesignScript?

Помечено: 

В этой теме 17 ответов, 4 участника, последнее обновление  Khasan Mamaev 1 месяц, 2 нед. назад.

Просмотр 15 сообщений - с 1 по 15 (из 18 всего)
  • Автор
    Сообщения
  • #262 Score: 0

    Khasan Mamaev
    Хранитель
    171 pts

    DesignScript это собственный язык программирования системы Dynamo, ориентированный на создание геометрии. Большинство штатных нодов являются операторами DesignScript, оформленными в виде нодов(прямоугольников с входными и выходными слотами), в то же время эти операторы можно записывать текстом в кодовом ноде, вызываемом двойным щелчком левой кнопки мыши по свободному полю Dynamo. Кодовый нод распознает записанную в него информацию и автоматически формирует входные и выходные слоты. На следующем рисунке можно видеть варианты задания точки

    На начальном окне Dynamo есть ссылки на скрипты примеров, желательно начать освоение программы с изучения указанного файла

    На сайте Dynamo есть раздел обучение http://dynamobim.com/learn/#124 оттуда можно скачать небольшой учебник по DesignScript в формате pdf

    Интересно что DesignScript был изначально предназначен для Autocad 2013, но потом видимо решили что перспективней использовать его для Revit и сделали Dynamo, однако был подготовлен хороший видеокурс на Youtube https://www.youtube.com/playlist?list=PLgUHXWXukRCsm_e9z1QNEZ26m2pG8xDcD который будет полезен для изучения Dynamo.

    #270 Score: 0

    Khasan Mamaev
    Хранитель
    171 pts

    Еще в 2012 году на сайте DWGru завели тему про DesignScript http://forum.dwg.ru/showthread.php?t=89726

    #272 Score: 0

    Dmitry_dronov
    Модератор
    49 pts

    Да. любопытно.
    Вот и нашлось этому языку применение. внутри динамо.
    Кстати вот форум англоязычный по дизайнскрипту.

    #273 Score: 0

    Khasan Mamaev
    Хранитель
    171 pts

    Этот сайт тоже будет полезен. Непонятно почему они совсем оторвались от Автокада, вещь крайне полезная, а Автокадом проектировщики наверное будут пользоваться еще долго. Хорошо что мне удалось раздобыть DesignScript for AutoCAD, только он работает на 2013 и 2014 версиях. Если кому то интересно, то можете скачать у меня AutodeskDesignScriptStudio.zip

    #464 Score: 0

    Dmitry_dronov
    Модератор
    49 pts

    Я положу эту ссылку в папку “программы“, ок?
    Кстати некий Патрик Емин об этом чуде автодеска говорил три года назад. Интересно где он сейчас.

    #468 Score: 0

    Khasan Mamaev
    Хранитель
    171 pts

    Правильно, туда его, а Патрик возможно так и чертит в Автокаде:)

    #4228 Score: 0

    Кирилл
    Участник

    Пытаюсь расставить все точки над i для себя, поэтому прошу вас подтвердить или опровергнуть мои мысли. DisignScript (далее DS) – это язык визуального программирования. Dynamo – это, грубо говоря, IDE которая позволяет писать/составлять программы на языке DesignScript. Но по сути без Dynamo мы не можем использовать DS, то есть  сейчас между DS и Dynamo можно условно ставить равно?

    Изначально, как я понял DS разрабатывался для AutoCAD. Как в том случае DS интегрировалась в AutoCAD без Dynamo? Можно ли сейчас использовать DS для AutoCAD без Dynamo (про связь Dynamo и AutoCAD через Python слышал)

    Или всё же DS и Dynamo это разные вещи?

    #4230 Score: 2

    Khasan Mamaev
    Хранитель
    171 pts

    Фактически DisignScript представлен одной библиотекой ProtoGeometry.dll, это не какой то язык программирования, а набор инструментов для решения геометрических задач, инструменты написаны на языке С#, такие наборы инструментов называются фреймворками. Все функции DS реализованы нодами Динамо, но наряду с этим можно писать команды DS как в код-блоках Динамо, так и в скриптах Питона, предварительно импортировав библиотеку, она кстати в новом питон-скрипте уже импортрована по умолчанию. Первоначально DS был под AutoCAD 2013, но проект быстро свернули и переключились на Ревит, до сих пор висит сайт, но ссылка на скачивание дистрибутива ДизайнСкриптСтудии неактивна, но мне удалось через иностранных знакомых получить его, выше по теме я давал ссылку на скачивание. Правда работает только с 2013 и 2014 Автокадами. Мной предпринимались попытки использовать DS вне Динамо, но пока безуспешно, пока не хватает знаний победить эту беду. Но Динамо использует множество других библиотек кроме ProtoGeometry.dll, следует особо отметить библиотеку RevitNodes.dll, она служит для работы с Ревит. Еще есть несколько стандартных библиотек, плюс энтузиасты Динамо со всего мира постоянно пополняют ряд библиотек.

    #4235 Score: 0

    Кирилл
    Участник

    То есть, по сути если была бы библиотека, например, AutoCADNodes.dll то Dynamo мог бы работать с AutoCAD “из коробки?”

    #4237 Score: 0

    Khasan Mamaev
    Хранитель
    171 pts

    ну кроме названия AutoCAD, эта библиотека должна иметь соотвествующее содержание) но в принципе верно. Кстати в платной ДинамоСтудии есть инструменты работы с dxf, Можно скачать демоверсию и посмотреть. Я подозреваю, что Аутодеск не хочет долгой жизни Автокада, потому что делает ставку на Ревит, именно поэтому была закрыта ДизайнСкриптСтудия, и именно поэтому сейчас не очень то заинтересованы развитием связи между Автокад и Динамо. Хотя на днях появились Динамо инструменты для Адванс Стил. Я думаю все же скоро будет налажена полноценная связ Динамо и Автокад, как бы Автодеск не сопротивлялся. Я в принципе давно уже решаю свои задачи. Правда есть одна неприятность – нельзя работать из Динамо с Автокадом, не имея административных прав, на работе у меня как раз такая беда

    #6997 Score: 0

    Михаил
    Участник

    Привет всем!Побывав на AU2017 в Сколково, послушав доклады, начал самостоятельно разбираться с Dynamo, Design Script и встроенным Dynamo 1.3 Iron Python. Всё идёт хорошо и понятно, но есть вопросы по выполнению команд Trim, Difference и Intersect. А именно- они просто не работают. У меня стоит Revit 2016 и Dynamo 1.3. Вот пример скрипта из учебника который я прогонял :

    s=Sphere.ByCenterPointRadius(CoordinateSystem.Identity().Origin,6);
    tool=Sphere.ByCenterPointRadius(CoordinateSystem.Identity().Origin.Translate(10,0,0),6);

    result=s.Difference(tool);

    Сферы отрисовываются нормально, а третий оператор не отрабатывает, т.е. картинка не меняется, так

    и остаются две сферы без изменения, не происходит вычитания одного объёма из другого. Точно так же не отрабатывают команды Trim и Intersect. Отчего это и почему?

    #6998 Score: 0

    Khasan Mamaev
    Хранитель
    171 pts

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

    #7002 Score: 0

    Михаил
    Участник

    Хасан, спасибо за быстрый ответ. У меня если убрать эту галочку пропадает вся картинка, остаётся пустое место. Dynamo наверное можно запускать автономно, но у меня оно стоит как надстройка в Ревите, поэтому и указал версию Ревита. И ещё такое дело, на Вашей презентации, Хасан, было сказано, что наиболее удобно работать с Python используя RevitPythonShell for Autodesk Revit. Я скачал его и успешно установил. Он появился в списке установленных приложений в Программы и компоненты, но как с ним работать не понятно. Его нет ни в надстройках, ни как отдельного приложения в списке приложений вызываемых кнопкой Пуск.

    #7003 Score: 0

    Khasan Mamaev
    Хранитель
    171 pts

    Обычное Динамо устанавливается только под Ревит, но запускать его можно через экзешник, который лежит тут “c:\Program Files\Dynamo\Dynamo Revit\1.2\DynamoSandbox.exe”. Как пользоваться ПитонШеллом можно посмотреть, в частности, у меня на канале ролик Py4Eng_05_PythonShell01. Почему не работает твое Динамо сказать не могу, программа иногда глючит, приходится перезагружать, переустанавливать.

    #7004 Score: 0

    Михаил
    Участник

    Повторил схемку вверху, с нодами работает, а вот как скрыть предыдущую геометрию в скрипте пока непонятно

Просмотр 15 сообщений - с 1 по 15 (из 18 всего)

Для ответа в этой теме необходимо авторизоваться.