Requesting a script & instructions for project (Incentive if successful!)

The image looks perfect (with the color ofc :D)

I get this error however,

SLB:Massing.massing
Error: #<NoMethodError: undefined method `massing’ for :Massing:Symbol>

:35:in `' SketchUp:1:in `eval'

OH SO CLOSE

Ack, silly typo! The last line should say

SLB::Massing.massing

I omitted one of the colons! Fixing it in the previous post.

Off to a concert now. I hope the last version works ok. Otherwise I will be off line for some while.

You are amazing! Check your pm <3 <3

Just as an exercise I wrote up a filter method that finds all the bottoms of buildings …

def select_groundplane_faces_with_vertical_walls()
  Sketchup.active_model.entities.grep(Sketchup::Face).select do |f|
    f.normal.parallel?(Z_AXIS) && # horizontal AND
    f.vertices.all? { |v| # whose vertices are ALL
      v.position.z == ORIGIN.z && # on the ground plane AND
      v.faces.size > 2 && # have at least 3 connected faces AND
      v.faces.reject { |f| # ( those faces NOT
        f.normal.parallel?(Z_AXIS) # horizontal
      }.all? {|wall| # are ALL
        wall.normal.perpendicular?(Z_AXIS) # perpendicular to the Z axis.)
      }
    }
  end
end

… this would allow the roofs to be any shape. BUT, the buildings must have a bottom face.

2 Likes

This topic was automatically closed 91 days after the last reply. New replies are no longer allowed.