SketchUp Plugin 개발하기 with VSCode

By | 2023년 3월 24일
Table of Contents

SketchUp Plugin 개발하기 with VSCode

참조

SketchUp 설치

아래 내용은 SketchUp Pro 2020 을 기준으로 설명합니다.

VSCode 설치

최신버전을 설치합니다.

Ruby 설치

SketchUp 설치 후 Ruby Console 을 실행한 후,
"#{RUBY_VERSION}-p#{RUBY_PATCHLEVEL}" 를 실행해 주면 현재 스케치업이 실행중인 루비 버전을 알 수 있습니다.

최선 버전을 설치해 줍니다.(여기)

VSCode 플러그인 설치

Ruby for Visual Studio Code 를 설치합니다.

Hello, World

VSCode 에서 아래 폴더를 열어줍니다.

C:\Users\사용자계정\AppData\Roaming\SketchUp\SketchUp 버전\SketchUp\Plugins

아래 파일을 생성합니다.

my_devtool.rb

require "sketchup.rb"
require "extensions.rb"

my_devtool_loader = SketchupExtension.new "My Devtool Loader", "my_devtool/main.rb"
my_devtool_loader.copyright= "Copyright 2023 skyer9"
my_devtool_loader.creator= "skyer9"
my_devtool_loader.version = "1.0"
my_devtool_loader.description = "My Devtool"
Sketchup.register_extension my_devtool_loader, true

my_devtool/main.rb

require "sketchup.rb"

module My_devtool

    PLUGIN_ROOT ||= "C:/Users/oem/AppData/Roaming/SketchUp/SketchUp 2020/SketchUp/Plugins/"

    def self.reload
        load (File.join(PLUGIN_ROOT, "my_devtool.rb"))
        load (File.join(PLUGIN_ROOT, "my_devtool/main.rb"))
    end

    def self.hello
        puts "Hello, world!"
    end
end

unless file_loaded?(__FILE__)
    mymenu = UI.menu("Plugins").add_submenu("My Devtool")
    mymenu.add_item("Reload plugins") {My_devtool::reload}
    mymenu.add_item("Hello, World!") {My_devtool::hello}
    file_loaded(__FILE__)
end

SketchUp 을 재실행합니다.

메뉴가 추가된 것을 확인할 수 있고, Ruby Console 을 실행후 메뉴를 실행하면 결과를 확인할 수 있습니다.

Hello, world! 문자열을 변경해 가면서 Reload plugins 를 해보면 문자열이 변경되는 것을 확인할 수 있습니다.

답글 남기기