# encoding: UTF-8
m = Sketchup.active_model
def r1(v); (v*25.4).round(1); end
puts "SEL COUNT=#{m.selection.length}"
m.selection.each{|e| n=e.respond_to?(:name) ? e.name.to_s : ''; n=e.definition.name.to_s if n.empty?
  b=e.bounds; puts "  SEL #{n.inspect} (#{r1(b.min.x)},#{r1(b.min.y)},#{r1(b.min.z)})..(#{r1(b.max.x)},#{r1(b.max.y)},#{r1(b.max.z)})"}
puts "== SWD_06 계열 전수 (최상위 + 그룹#2 내부) =="
m.entities.grep(Sketchup::Group).each do |g|
  if g.name =~ /SWD_06/
    b=g.bounds; t=g.transformation
    puts "  [최상위] #{g.name.inspect} world (#{r1(b.min.x)},#{r1(b.min.y)},#{r1(b.min.z)})..(#{r1(b.max.x)},#{r1(b.max.y)},#{r1(b.max.z)}) scale #{t.xscale.round(4)}/#{t.yscale.round(4)}/#{t.zscale.round(4)} sel=#{m.selection.include?(g)}"
  end
  if g.definition.name == "그룹#2"
    puts "  [그룹#2 내부] parent world bbox (#{r1(g.bounds.min.x)},#{r1(g.bounds.min.y)},#{r1(g.bounds.min.z)})"
    g.entities.grep(Sketchup::Group).each do |s|
      sb=s.bounds
      puts "    - #{s.name.inspect} 로컬 (#{r1(sb.min.x)},#{r1(sb.min.y)},#{r1(sb.min.z)})..(#{r1(sb.max.x)},#{r1(sb.max.y)},#{r1(sb.max.z)})  크기 #{((sb.max.x-sb.min.x)*25.4).round(1)}x#{((sb.max.y-sb.min.y)*25.4).round(1)}x#{((sb.max.z-sb.min.z)*25.4).round(1)} solid=#{(s.manifold? rescue '?')}"
    end
  end
end
"RD7"
