modify highest face

modify highest face

Postby vico44 » Mon Apr 08, 2019 5:30 pm

I try to put the highest faces of a selection of groups in a specific layer. It works well if the group is on the origin, but can't find the way to make it work if the group is not on the origin.

model = Sketchup.active_model
sel = model.selection
bbox = Geom::BoundingBox.new
sel.each {|grp|
bbox.add(grp.bounds)
zgrp_max = bbox.max
get_entities(grp).find_all{|e| is_kind(e,"Face") }.each{|fc2|
pl2 = fc2.plane
if fc2.normal.parallel?( vec3d(0,0,1) ) and ( zgrp_max.on_plane?(pl2))
fc2.layer = "K-Masque"
edges = fc2.edges
edges.each {|edg| edg.layer = "K-Masque"}
end
} }
0

vico44 
 

Re: modify highest face

Postby vico44 » Mon Apr 08, 2019 5:56 pm

Ok I find the way, it works with local_bounds


model = Sketchup.active_model
sel = model.selection
bbox = Geom::BoundingBox.new
sel.each {|grp|
bbox=grp.local_bounds
get_entities(grp).find_all{|e| is_kind(e,"Face") }.each{|fc2|
pl2 = fc2.plane
if fc2.normal.parallel?( vec3d(0,0,1) ) and ( bbox.max.on_plane?(pl2))
fc2.layer = "K-Masque"
edges = fc2.edges
edges.each {|edg| edg.layer = "K-Masque"}
end
} }
0

vico44 
 

SketchUcation One-Liner Adverts

by Ad Machine » 5 minutes ago



Ad Machine 
Robot
 



 

Return to Developers' Forum

Who is online

Users browsing this forum: No registered users and 9 guests

Visit our sponsors: