trilec

Gable/Hip Overhang and Testing against overlaps

Discussion created by trilec on Mar 17, 2014
Latest reply on Mar 26, 2014 by MBuehler-esristaff
Hi All,

The problem I face is I would like to create a roof with volume (not just a flat poly but with height extrusion) and overhang.
Then test this overhang (on a gable or hip roof) and remove if it touches another building or roof section.

#1 The complications with this is the roof section overhang (side next to removed one) should adjust accordingly.
#2 The volumes are not just rectangles ..includes T and U based volumes
#3 extrusions should be on whole roof as single poly to avoid internal and unwanted polys.


things stopping me further:

#direction great for rectangles but not for other shapes
doCreateGableRoof(isCorner ) -->
    case scope.sx > scope.sy :
        roofGable(InternalRoofAngle,InternalRoofOverhang, InternalRoofOverhang, false, 1)
        doCreateGableRoofSideRemove(isCorner )
    else:
     roofGable(InternalRoofAngle, InternalRoofOverhang, InternalRoofOverhang, false, 0)
     doCreateGableRoofSideRemove(isCorner )

#test seem to fail when U and T shapes and other unknown volumes > 8 vertex
#tests have to be volumes so I have to cut roof at overlap section
#orientation unknown
#sides don't know if a touch has happened to side next to itself
#false test , one needs to know which is the long section (gable) so a split can be created at length ends to test
and a few others I can remember...

some ideas:
#just move roof up and find way to create overhang after the roof is created (dont know options for this) extrude down to create illusion of roof volume
#slice and dice everything on extruded volume (poly count = :(  )
#give up...
#find hidden function that does this

any ideas welcome
c

Outcomes