Последние новости
Unreal Engine Path Tracer: интерьерный рендер за 5 шаговРедактирование архитектурных масс и мешей в Unreal Engine Modeling ModeРуководство по Grasshopper Python 3: доступ к данным, типы и выходыКак создавать сцены SketchUp и экспортировать анимациюРазвёртка UV в Unreal Engine UV Editor: пошаговое руководствоКак использовать Gemini API с OpenAI-совместимым клиентом: руководство по Python и JavaScriptRhino 8: как найти и исправить проблемную геометрию — практическое руководствоНастройка Unreal Engine Pixel Streaming: передача проекта в браузерРазмещение повторяющихся архитектурных элементов в Blender Geometry NodesРуководство по редактированию архитектурной модели в Rhino 8: выбор, History и блоки
УрокиSketchUp

Начало разработки плагинов с SketchUp Ruby API: пошаговое руководство

SketchUp Ruby API позволяет взаимодействовать с моделью и приложением с помощью плагинов, работающих внутри SketchUp. В этом руководстве рассматриваются требования для начала работы, ресурсы для разработки и варианты тестирования.

Минималистичный стол в дизайн-студии, за которым работают над моделью архитектурного интерьераИИ-изображение
Иллюстрация создана с помощью ИИ.Изображение: 3dsınıfı / FCA AI

Коротко

  1. SketchUp Ruby API не работает отдельно: его можно использовать только внутри приложения SketchUp.
  2. Чтобы избежать непредвиденного поведения и нестабильной работы, все обращения к API необходимо выполнять в главном потоке.
  3. TestUp предлагает тесты на базе Minitest, запускаемые внутри SketchUp, и графический интерфейс для управления ими.
  4. LayOut Ruby API позволяет создавать и редактировать документы LayOut начиная с SketchUp 2018.

Чему вы научитесь в этом руководстве?

SketchUp Ruby API — это интерфейс для взаимодействия с моделями и приложением SketchUp. Согласно официальной документации SketchUp, API можно использовать внутри приложения; это не самостоятельный инструмент. Поэтому первый шаг в разработке — определить, как превратить задачу, которую нужно автоматизировать, в плагин для SketchUp.

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

Требования и подготовка

  • SketchUp: Ruby API работает внутри SketchUp и не может использоваться самостоятельно. Поэтому для разработки и тестирования понадобится приложение SketchUp.

  • Знание Ruby: В источниках API описывается как интерфейс для Ruby. Требование к углублённому знанию Ruby не указано, однако код плагина пишется на Ruby.

  • Ресурсы для разработчиков: Среди материалов, с которых можно начать, — официальная документация SketchUp Ruby API, Ruby API Overview и SketchUp Developer Center.

  • IDE и отладка: SketchUp предоставляет интерфейс отладки, который можно использовать с IDE и редакторами, поддерживающими протокол Ruby Debug. Для RubyMine есть пример настройки, а для VSCode — пример проекта.

  • Тестирование: Код, работающий внутри SketchUp, может быть сложно проверять стандартными сценариями тестирования, рассчитанными на Ruby-консоль вне SketchUp. Для такого случая TestUp предлагает обёртку на базе Minitest и графический интерфейс для управления тестами.

В источниках не указаны стоимость, требования к учётной записи или таблица совместимости со всеми версиями SketchUp. Поэтому перед началом проекта стоит отдельно изучить официальную документацию API и примеры для целевой версии SketchUp.

Этапы разработки с SketchUp Ruby API

1. Определите задачу для автоматизации

Сначала уточните, какую повторяющуюся задачу должен упростить плагин. SketchUp Developer Center отмечает, что плагины могут автоматизировать рабочие процессы и интегрироваться с внешними данными. Это полезная отправная точка для определения объёма проекта, однако способы реализации конкретной задачи с помощью API необходимо проверять в соответствующей документации.

На первом этапе небольшой объём работ поможет понять, какие данные будет получать плагин и какой результат он должен предоставлять пользователю. Это рекомендация по планированию проекта, а не описание конкретной возможности API или пункта меню SketchUp.

2. Начните с официального обзора и примеров

Ruby API Overview в документации SketchUp Ruby API — основная отправная точка. Официальная документация также содержит ссылки на примеры и обучающие материалы, описывающие распространённые сценарии и концепции. При создании первой реализации изучите примеры и выберите те, что относятся к цели плагина. Не полагайтесь на неподтверждённые предположения о классах, методах или поведении, которые не описаны в документации, — сначала проверьте их.

В SketchUp Developer Center собраны вводные материалы, примеры расширений и ресурсы по API. Они помогут разобраться в том, как расширения добавляют в SketchUp новые инструменты и функции. Если вы планируете делиться расширением с другими пользователями, Developer Center также предлагает вариант публикации через Extension Warehouse.

3. Подготовьте IDE для работы с API

Ruby stubs API предназначены для того, чтобы среда разработки распознавала SketchUp API. В официальных материалах есть инструкция по настройке проекта в RubyMine и пример проекта для VSCode. Выберите пример для используемой IDE и следуйте описанным шагам настройки.

Для отладки можно использовать интерфейс SketchUp Ruby Debugger. Он предназначен для работы с функциями отладки редакторов и IDE, поддерживающих протокол Ruby Debug. Источники не указывают, что обязательно нужно использовать какую-либо конкретную IDE, поэтому выбор можно сделать исходя из инструментов, уже используемых командой разработки.

4. Выполняйте вызовы API в главном потоке

В официальной документации API предупреждают, что все обращения к Ruby API необходимо выполнять в главном потоке. В противном случае возможны непредвиденное поведение и нестабильная работа приложения. Учитывайте это при проектировании плагина. Если вы планируете разделить рабочий процесс на отдельные части, уточните в официальной документации, как выполнять соответствующие операции.

Это требование важно не только проверить перед публикацией — его нужно учитывать при планировании разработки и тестирования. Даже если плагин выдаёт ожидаемый результат, нельзя игнорировать необходимость работы в главном потоке.

5. Запускайте тесты внутри SketchUp

В официальных материалах отмечается, что Ruby-тестов, запускаемых вне SketchUp, может быть недостаточно для проверки кода, который должен выполняться внутри приложения. TestUp решает эту задачу с помощью решения на базе Minitest и предоставляет графический интерфейс для управления тестами. Составьте сценарии, проверяющие ожидаемое поведение плагина, и оцените их в условиях работы внутри SketchUp.

Источники не содержат подробных примеров написания всех типов тестов для TestUp. Поэтому при настройке тестирования следует обращаться к описанию в официальном репозитории инструмента и обучающим материалам по API. Это поможет избежать предположений о синтаксисе тестов или автоматической установке, которые не подтверждены документацией.

6. Если нужна поддержка LayOut, проверьте объём работ

Начиная с SketchUp 2018 Ruby API также позволяет создавать и редактировать документы LayOut. Указано, что LayOut Ruby API тоже можно использовать только внутри SketchUp. Если плагину нужно работать с документами LayOut, рассматривайте эту функцию как отдельное требование и изучите документацию LayOut API Overview. Поскольку источники не приводят более подробных сведений о совместимости версий и порядке использования, за ними следует обращаться к соответствующей официальной документации.

Распространённые ошибки

  • Попытка использовать API отдельно от приложения: Ruby API не является самостоятельным инструментом, который можно использовать без SketchUp.

  • Игнорирование требования к главному потоку: Взаимодействие с API должно выполняться в главном потоке; иначе приложение может работать нестабильно.

  • Уверенность, что тестов вне SketchUp достаточно: Для кода, работающего внутри SketchUp, рассмотрите встроенные варианты тестирования, например TestUp.

  • Предположения о неописанных деталях: Проверяйте сведения о версиях, методах и совместимости в официальной документации API.

  • Пропуск настройки IDE: Ruby stubs API, примеры проектов для IDE и руководства по отладке помогут подготовить среду разработки.

Что делать дальше

После создания первого плагина оцените возможность его публикации, если этого требует сценарий использования. В SketchUp Developer Center указано, что расширения можно размещать в Extension Warehouse. Если вы планируете распространять расширение за пределами Extension Warehouse, Developer Center также направляет к процессу цифровой подписи и получению сертификата безопасности.

В официальных источниках есть примеры Ruby C extensions для более сложных функций. Они представлены как вариант для реализации более сложных функций и возможного повышения производительности, но не как обязательное решение для каждого проекта. Более контролируемый процесс разработки — сначала определить пределы возможностей Ruby API, а затем изучить соответствующие примеры.

Источники и лицензия

Это руководство адаптировано на турецкий язык на основе официальной документации SketchUp Ruby API и материалов для разработчиков в SketchUp Developer Center. В источниках обе страницы отмечены как «свободные»; конкретная лицензия Creative Commons не указана.

Источники

Источников: 2
R
ruby.sketchup.comruby.sketchup.com
Пересказ
D
developer.sketchup.comdeveloper.sketchup.com
Пересказ

Тексты источников не перепечатываются; короткие цитаты отмечены, остальное — наш пересказ и комментарий.

Мнение 3dsınıfı
3dОценка редактора

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

Оценивая целесообразность вложений, учитывайте не только время разработки, но и совместимость плагина с целевой версией SketchUp, а также потребность в тестировании и поддержке. В источниках не указаны стоимость или требования к оборудованию, поэтому не следует предполагать наличие преимуществ по затратам или производительности. Перед использованием в производственной работе особенно важно проверить соблюдение правила главного потока и необходимость тестирования внутри приложения.

Частые вопросы

Работает ли SketchUp Ruby API отдельно от SketchUp?

Нет. Согласно официальной документации, SketchUp Ruby API можно использовать только внутри приложения SketchUp; самостоятельно он не работает.

Можно ли редактировать документы LayOut с помощью SketchUp Ruby API?

Да. Согласно источнику, начиная с SketchUp 2018 можно создавать и редактировать документы LayOut. LayOut Ruby API также доступен только внутри SketchUp.

Как тестировать плагины SketchUp на Ruby?

TestUp — один из вариантов: он основан на Minitest и предоставляет графический интерфейс для управления тестами, запускаемыми внутри SketchUp.

Комментарии и форум — на турецком языке.Присоединиться к обсуждению
+

Похожие новости