layer调用父页面方法_Ruby for SketchUp之图层【Layer】

我们学习了群组、组件及组件定义,今天来看看图层【Layer】,在Sketchup2020版本中已经更名为“标记”,如图

5bc498a6fe87fa17180fc1a492370f73.png

那么图层在我们建模过程中能带来哪些便利呢?

  • 可以快速的隐藏同一图层内所有东西,而不需要逐一选择并右键点击隐藏
  • 在电脑卡顿的时候,选择隐藏部分模型,比如,大量的家具模型导入会导致sketchup运行卡顿,这时你只需要关掉家具图层,就可以顺畅的修改其他位置了。
  • 导出图稿的时候,可以分层按需求方便快捷的逐一导出。

下面我们手动演示一下如何将模型放入图层中,这里采用最新版SketchUp2020版本演示

00399bb624770293f3de4cdf96a1b849.gif

图层集合及图层【Layers&Layer】

图层跟组件定义一样,他们都有一个集合用来管理模型对象中的所有图层对像。我们先来了解一下图层集合Layers。

Layers图层集合使你可以查看和管理模型中的所有图层。您可以从模型中获得指向Layers对象的指针。

如:

model = Sketchup.active_model
layers = model.layers

Layers中也有很多的查询和管理图层的方法如:

  • 根据索引或名称检索图层
#[](index_or_name) ⇒ Sketchup::Layer?

调用方法:

model = Sketchup.active_model
layers = model.layers
new_layer = layers.add "test layer"
layer_by_number = layers[1]
layer_by_name = layers["test layer"]
  • 添加新图层
#add(layer_name) ⇒ Object

调用方法:

layers = Sketchup.active_model.layers
layer = layers.add("Test Layer")
  • 移除图层,也可以移除图层中的模型
#remove(layer, remove_geometry = false) ⇒ Object

调用方法:

# 通过图层对象删除图层.
layer = Sketchup.active_model.layers.add("MyLayer")
Sketchup.active_model.layers.remove(layer)# 通过图层名称删除图层.
Sketchup.active_model.layers.add("MyLayer")
Sketchup.active_model.layers.remove("MyLayer")# 通过图层索引删除图层.
Sketchup.active_model.layers.remove(1)# 删除图层及其图层中的模型.
edge = Sketchup.active_model.entities.add_line([0, 0, 0], [9, 9, 9])
edge.layer = Sketchup.active_model.layers.add("MyLayer")
Sketchup.active_model.layers.remove("MyLayer", true)

参数:

layer => 索引、名称或图层对象

remove_geometry => 布尔值 如果为true,删除图层时,相应的模型也会被删除

以上就是图层集合中常常用到的方法 ,还有就是观察员方法 这个在后面会讲到


Layer

Layer类包含修改和提取层信息的方法。

默认情况下,SketchUp模型具有一层,即第0层(零),这是基础层。您无法删除或重命名第0层。与某些其他CAD软件包不同,SketchUp中与不同层关联的实体仍然彼此相交。(如果您希望实体的集合不相交,请将它们放在“组”中。)

图层通常用于组织模型并控制相关组和组件的可见性。例如,您可以将所有墙壁和屋顶实体设为不同的组,将图层与这些组关联,然后隐藏这些图层,以便仅在模型中显示平面图。

图层创建方法:

可以通过调用Layers.add方法创建新图层。

model = Sketchup.active_model
layers = model.layers
new_layer = layers.add "test layer"
  • 图层排序
#<=>(layer2) ⇒ Object

<=>方法用于根据两个图层的名称进行比较。如果要构建图层名称列表,则可以使用它进行排序。

调用方法:

model = Sketchup.active_model
layers = model.layers
new_layer = layers.add "test layer"
layer1 = layers[0]
layer2 = layers[1]
status = layer1 <=> layer2

返回值:

如果layer1小于layer2,则为-1。如果layer2小于layer1,则为1。如果layer1和layer2相等,则为0。

  • 判断图层是否为同一个
#==(layer2) ⇒ Object

调用方法:

model = Sketchup.active_model
layers = model.layers
layer1 = layers.add "test layer 1"
layer2 = layers.add "test layer 2"
status = layer1 == layer2

返回值:

如果layer1和layer2相等,则为true。如果layer1和layer2不相等,则返回false。

  • 设置图层是否可见
#visible=(is_visible) ⇒ Object
#visible? ⇒ Boolean

调用方法:

model = Sketchup.active_model
layers = model.layers
new_layer = layers.add "test layer"# 隐藏图层.
new_layer.visible = false
# 确定该方法是否隐藏
UI.messagebox(new_layer.visible?)

效果:

c76d4ca2d5f3d9ab912e8a5fee05457e.gif

图层控制示例

这里我们新建一个图层来控制图层中的实体模型

model = Sketchup.active_model
ent = model.selection.first # 选中一个组或组件
layers = model.layers
new_layer = layers.add "test layer" # 新建一个图层ent.layer = new_layer

效果:

89f1e0463d61642cc8b3760ada8c7de3.gif

就这样把群组或组件加到了图层中,可以通过su图层来控制群组或组件的显示或隐藏了。

当然也是可以通过ruby代码控制的,感兴趣的小伙伴下去试试

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/530074.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

html盒子有哪些属性,盒子模型有哪些属性 在html5中哪些元素具有盒子模型

HTML盒模型基本属性有哪些CSS盒子模型就是在CSS技术所使用的一种思维模型。CSS假定所有的HTML文档元素都生成一个描述该元素在HTML文档布局中所占空间的矩形元素框&#xff0c;可以形象地将其看作是一个盒子。通过定义一系列与盒子相关的属性&#xff0c;可极大地丰富和促进各个…

huffman编码的程序流程图_F28379D之CLB解码多摩川编码器2——LIB版例程讲解(原创)...

我在第一篇文章中已经跟大家介绍过379解码多摩川编码器的一些入手小知识&#xff0c;链接如下TMS320F28379D之CLB解码多摩川编码器1——入手小知识&#xff08;原创&#xff09;请大家一定要看入手小知识&#xff0c;再来看例程分析。今天跟大家分析一下TI的官方例程。首先&…

html统计表合并单元格的快捷键,word怎样设置合并单元格快捷键

word2010中合并单元格的快捷键是什么?求解答。合并单元格没有快捷键&#xff0c;不过有个f4是重复上一步操作&#xff0c;所以你要合并多个单元格&#xff0c;那么你可以先点一合并单元格&#xff0c;然后选定你要合并的区域。WORD合并单元格的快捷键怎么设置word合并单元格快…

fcm 服务器接入 golang_Golang 写的即时通讯服务器 im(服务组件形式)

简要介绍im是一个即时通讯服务器&#xff0c;代码全部使用golang完成。主要功能1.支持tcp&#xff0c;websocket接入2.离线消息同步3.单用户多设备同时在线4.单聊&#xff0c;群聊&#xff0c;以及超大群聊天场景5.支持服务水平扩展gim和im有什么区别&#xff1f;gim可以作为一…

html 手机分辨率,移动端各种分辨率手机屏幕----适配方法集锦

1.使用viewport&#xff0c;html文件中在内添加meta&#xff0c;简单粗暴&#xff1a;2.加判断复杂点的viewport&#xff0c;可以封装成一个js&#xff0c;每次新建html时调用.js即可&#xff1a;var phoneWidth parseInt(window.screen.width);var phoneScale phoneWidth/75…

橡胶支座抗压弹性模量计算公式_隔震支座的这些力学特性您都掌握了吗?

隔震支座叠层橡胶隔震支座&#xff0c;是隔震设计中应用最为广泛的隔震装置。了解隔震支座的力学特性&#xff0c;在软件中设置正确的参数&#xff0c;是做好隔震设计最基本的前提。那么&#xff0c;隔震支座的这些特性您都掌握了吗&#xff1f;叠层橡胶隔震支座叠层橡胶隔震支…

综合基础知识计算机,计算机综合基础知识总结.doc

计算机综合基础知识总结计算机专业知识试题计算机专业知识试题1.???? 一个字节包含的二进制位数是(?? )。A. 8位???? B. 16位???????????????? C. 32位???????????????? D. 256位2.???? 既可作为输入又可作为输出设备的是(???…

asp.net button创建控件时出错_Tkinter Radiobutton控件

单选按钮是一种可在多个预先定义的选项中选择出一项的 Tkinter 控件 。单选按钮可显示文字或图片&#xff0c;显示文字时只能使用预设字体&#xff0c;该控件可以绑定一个 Python 函数或方法&#xff0c;当单选按钮被选择时&#xff0c;该函数或方法将被调用。单选按钮&#xf…

从网络访问计算机不能添加用户名,windows7 和 XP 能互相用\\ip访问,但是不能通过计算机名访问...

只要你的二台机器(winxp、win7)都能PING通对方的IP地址&#xff0c;并且能够通过IP正常访问&#xff0c;只是不能通过同一工作组的计算机名访问(其实&#xff0c;你先PING过一次要使用的对方的计算机名&#xff0c;就能直接在地址栏中输入\\计算机名 来访问了 只是在 网络 中仍…

jitter 如何优化网络_抖音优化该怎么做?

抖音在国内是比较知名的短视频运营商&#xff0c;也有很大的流量市场。这块优化好了&#xff0c;不管是对于用户还是企业来说&#xff0c;在品牌宣传上来说&#xff0c;作用还是蛮大的。抖音优化和电脑端优化&#xff0c;还是有所区别的&#xff0c;这里参考的是点赞数、评论以…

性价比高台式计算机,2021年台式电脑什么牌子好,性价比高?

大家都知道买台式电脑最主要是性价比高&#xff0c;用最少的价钱买到最好的性能配置&#xff0c;但那些大老牌子为了赚平民百姓的钱售价实在贵得太离谱了&#xff0c;性价比非常低今年什么台式电脑性价比最高&#xff1f;台式电脑配置推荐 组装电脑配置单 电脑配置方案-装机...…

golang 数组组合成最小的整数_golang数组-----寻找数组中缺失的整数方法

问题&#xff1a;由n-1个整数组成的未排序数组&#xff0c;元素都是1~n的不同整数&#xff0c;找出其中缺失的整数方法一&#xff1a;思路&#xff1a;是原数组的和 减去 丢失元素后的数组的和&#xff0c;就得到丢失的元素了代码如下&#xff1a;package mainimport ("er…

计算机专业线性代数教学大纲,《线性代数》课程教学大纲

一、课程简介线性代数是讨论代数学中线性关系经典理论的课程&#xff0c;它具有较强的抽象性与逻辑性&#xff0c;是高等学校工科本科各专业的一门重要的基础理论课&#xff0c;也是硕士研究生入学全国统一考试中必考的数学课程之一。由于线性问题广泛存在于科学技术的各个领域…

yuv420p 详解_图文详解YUV420数据格式

一.YUV格式与RGB格式的换算RGB 转换成 YUVY (0.257 * R) (0.504 * G) (0.098 * B) 16Cr V (0.439 * R) - (0.368 * G) - (0.071 * B) 128Cb U -( 0.148 * R) - (0.291 * G) (0.439 * B) 128YUV 转换成 RGBB 1.164(Y - 16) 2.018(U - 128)G 1.164(Y - 16) - 0.813…

计算机存储器发展历史,存储器及其发展历史与前景(4页)-原创力文档

存储器及其发展历史与前景高兴(电子信息科学与技术专业12-1班)摘 要&#xff1a;存储器件是计算机系统的重要组成部分&#xff0c;现代计算机的内存储器多采用半导体存储器。由于RAM的存取速度比ROM快的多&#xff0c;其成为内存的主要组成元件。内存发展主要经历了FP DRAM(快…

jq父级绑定事件的意义_用jQuery.delegate()将事件绑定在父元素上面

1.先看看官方的示例&#xff1a;$(document).ready(function(){$("div").delegate("button","click",function(){$("p").slideToggle();});});这是一个段落。请点击这里2.该方法的定义如下&#xff1a;$(selector).delegate(childSele…

计算机师范类算师范教育类吗,师范教育类专业和计算机类专业,两者相比,哪个更适合自考生报读...

原标题&#xff1a;师范教育类专业和计算机类专业&#xff0c;两者相比&#xff0c;哪个更适合自考生报读一、师范教育类专业大部分毕业生的就业方向都是在教育行业&#xff0c;互联网的发展&#xff0c;教学教育有了网络课&#xff0c;让人们随时随地都可以学习&#xff0c;也…

android 绘画笔迹回放_随时记录分享书写笔迹,EverPEN高级版套装体验

看到笔记本就想起小时候&#xff0c;老师为了提高学生们的写作能力&#xff0c;而要求大家每周写3篇日记&#xff0c;几年下来慢慢的让自己养成了每周会抽出点时间&#xff0c;手写些生活中的点滴趣事。但随着笔记本保持时间有限&#xff0c;而且有时查找起来也不方便&#xff…

flash 文件计算机课件,计算机软件及应用Flash.ppt

计算机软件及应用Flash.pptFlash CS3 提供了一种用幻灯片屏幕创建演示文稿的新方法。它可以将媒体放在幻灯片屏幕上&#xff0c;添加从其它幻灯片继承媒体的嵌套幻灯片&#xff0c;并且在运行时使用内置控件在幻灯片之间导航。其实&#xff0c;这和PPT基本模式一样。 6.8 Flash…

12c集群日志位置_Kubernetes(k8s)那些套路之日志收集

准备关于容器日志Docker的日志分为两类&#xff0c;一类是 Docker引擎日志&#xff1b;另一类是容器日志。引擎日志一般都交给了系统日志&#xff0c;不同的操作系统会放在不同的位置。本文主要介绍容器日志&#xff0c;容器日志可以理解是运行在容器内部的应用输出的日志&…