微信公众号:老顽童与小东邪
关注可了解更多的教程及编程技巧。问题或建议,请加好友留言;
如果你觉得对你有帮助,欢迎赞赏
我们想要在SketchUp平台上进行二次开发,就要了解它的基本规则。这里我们先来了解下我们插件安装后存放代码的地方,即Plugins文件夹。如图:
它被放置在用户目录中,所以只有只有用户安装了插件,在SketchUp菜单栏中才会出现【Extensions】或【扩展程序】菜单。如图:
否则看到的是这样的。如图:
总之Plugins插件目录对于开发者来说非常重要!!!
UI模块包含许多用于从SketchUp Ruby脚本创建简单UI元素的方法及常用的类。如:
menu - 该方法通过给定的名称检索SketchUp的菜单对象
toolbar - 该方法用于按名称获取SketchUp工具栏
messagebox - 该方法返回消息窗口
常用的类还有Command、HtmlDialog、Toolbar等。
菜单栏就是SketchUp标题栏下面的水平栏,包含了文件、编辑、视图、相机等下拉菜单。
如图1、图2所示。
在这里我们重点来看插件怎么放在这些菜单栏中。
先来看一下实例:
tool_menu = UI.menu("Tools")
tool_menu.add_item("Cheese Tool") {
UI.messagebox("Cheese activated.")
}
这段代码的功能是在菜单栏中的工具栏中添加了一个名为【Cheese Tool】的子菜单。我们运行一下代码查看效果:
有效的的菜单名有“File”, “Edit”, “View”, “Camera”, “Draw”, “Tools”, “Window”, “Extensions” and “Help”.在上面的示例代码中我们用的Tools。一般我们自己开发的扩展程序放在Extensions中比较合适。
注意:在SketchUp2015以前是Plugins而并非Extensions,为了保持兼容Plugins依旧有效。
Toolbar类包含在Ruby中创建和操作SketchUp工具条的方法。工具条是按钮的集合,可用于激活自定义工具或ruby脚本。
从工具条调用这些命令时,我们需要去学习一下Command对象。
Command类是把工具添加到菜单栏或工具条的首选类,就是我们最好先创建命令对象。然后将这个命令添加到菜单栏或工具条中。我们结合下面的代码来理解一下:
toolbar = UI::Toolbar.new "Test" # 创建一个名为Test工具条
cmd = UI::Command.new("Test") { # 创建一个工具名为Test的命令
UI.messagebox "Hello World"
}
cmd.small_icon = "ToolPencilSmall.png" # 工具在工具条上显示的图标
cmd.large_icon = "ToolPencilLarge.png"
cmd.tooltip = "Test Toolbars" # 对该工具的一些说明
cmd.status_bar_text = "Testing the toolbars class" # 在状态栏中显示的内容
toolbar = toolbar.add_item cmd # 将这个命名添加到工具条上
toolbar.show # 在SktchUp中显示该工具条
我们再来看一下这个效果,这样我们就讲这个工具放到了SketchUp工具条上。
学习了这一章,我们来将前面写的创建球体的代码放到工具条和扩展菜单中。
def self.create_sphere
mod = Sketchup.active_model # Open model
ent = mod.entities # All entities in model
group = ent.add_group
circle = group.entities.add_circle(ORIGIN, X_AXIS, 1.m, 48)
face = group.entities.add_face(circle)
face.reverse!
path = group.entities.add_circle(ORIGIN, Z_AXIS, 2.m, 48)
face.followme(path)
group.entities.erase_entities(path)
end
unless file_loaded?(__FILE__)
menu = UI.menu('Extensions')
toolbar = UI::Toolbar.new "老顽童工具条"
cmd = UI::Command.new("create_sphere"){
self.create_sphere
}
cmd.large_icon = cmd.small_icon = "ToolPencilSmall.png"
cmd.tooltip = "创建球体"
cmd.status_bar_text = "这是创建球体的插件"
toolbar1 = toolbar.add_item cmd
toolbar.show
menu.add_item cmd
file_loaded(__FILE__)
end
在执行代码后SketchUp菜单栏新增了扩展程序菜单,SketchUp工作区中新增了工具条。
在SketchUp中安装的扩展程序是以.rbz后缀的文件,我们将写好的插件压缩为.rbz即可。
然后在SketchUp中点击【扩展程序管理器】安装就可以了。
另一种把你保存的代码文件放在Plugins文件夹下,重启SketchUp就可以了。
讲解工具条插件图标及插件目录格式
引用
声明|原创
公众号:老顽童与小东邪
欢迎关注我,一起学习,一起进步!