Sketchup Ruby,为面部添加纹理
Sketchup Ruby, add texture to Face
我正在使用这个,添加绘制一个框,然后给框着色。
l=96
w=60
h=60
clr='Gray'
ent = Sketchup.active_model.entities
#---------Clear All
Sketchup.active_model.entities.clear!
#----------------
model = Sketchup.active_model
model.start_operation "Create Box"
#-----------------------------------------------------------------------------
entities = model.active_entities
group = entities.add_group
entities = group.entities
group.name = "Box"
@pt0 = [0, 0, 0]
@pt1 = [0, l*12, 0]
@pt2 = [w*12.0, l*12, 0]
@pt3 = [w*12, 0, 0]
newface = entities.add_face(@pt0, @pt1, @pt2, @pt3)
newface.material = Sketchup::Color.new clr
newface.reverse!
newface.pushpull h*12
我也想添加纹理,但找不到如何做。
喜欢 "Metal Corrugated Shiny" 但无法找到如何做到这一点。
有人知道如何用ruby添加纹理吗?
您想要的元素是 Texture
。这是 class 对象,它公开有关图像纹理的信息(例如宽度和高度、平均颜色等)。
设置纹理最简单的方法是直接在 material。
newface.material = Sketchup::Color.new clr
newface.material.texture = "C:\MyMaterialDirectory\MyMaterial.jpg"
显然,该文件需要是有效的图像并位于适当的目录中。
我正在使用这个,添加绘制一个框,然后给框着色。
l=96
w=60
h=60
clr='Gray'
ent = Sketchup.active_model.entities
#---------Clear All
Sketchup.active_model.entities.clear!
#----------------
model = Sketchup.active_model
model.start_operation "Create Box"
#-----------------------------------------------------------------------------
entities = model.active_entities
group = entities.add_group
entities = group.entities
group.name = "Box"
@pt0 = [0, 0, 0]
@pt1 = [0, l*12, 0]
@pt2 = [w*12.0, l*12, 0]
@pt3 = [w*12, 0, 0]
newface = entities.add_face(@pt0, @pt1, @pt2, @pt3)
newface.material = Sketchup::Color.new clr
newface.reverse!
newface.pushpull h*12
我也想添加纹理,但找不到如何做。
喜欢 "Metal Corrugated Shiny" 但无法找到如何做到这一点。
有人知道如何用ruby添加纹理吗?
您想要的元素是 Texture
。这是 class 对象,它公开有关图像纹理的信息(例如宽度和高度、平均颜色等)。
设置纹理最简单的方法是直接在 material。
newface.material = Sketchup::Color.new clr
newface.material.texture = "C:\MyMaterialDirectory\MyMaterial.jpg"
显然,该文件需要是有效的图像并位于适当的目录中。