The function then returns the bottom surface since that will be exposed for the drop ceiling. The surface is then subdivided by its UV's into a 3x3 grid. Each quad is then put into a random generator that determines if the quad gets subdivided again and combined in that process a randomly generated number for depth. Each surface with its corresponding depth create from this process is then extruded to create a block. The blocks are then run through a loop individually to subtract from the main solid.
This portion of the code looks like this:
for block in grid_of_panels:
Thicken_panel = panel.thicken(thickness_value)
if Thicken_panel:
test_solid = final_solid.subtract_from( Thicken_panel, True, True, True )
try:
final_solid = test_solid[0]
except:
continue
So basically for every panel, each panel is thicken and then subtracted form the final solid. the results are placed in test_solid, which sometimes can be 1 or more. The next step is then to take the main solid which is usually index 0 and place it back as the final_solid to continue the subtraction process.
the reasoning for the try: portion is due to an odd error i was getting. Basically when using .Subtract_from() normally you get back a SolidList with 1 or more objects, but sometimes even if there is nothing as a result I would get an empty SolidList which would return in an error the next time around. Placing the try would screen the possiblity of an empty SolidList.
All of that to give the panel an interested surface texture. We originally had plans of seeing if this texturing could double up as a way to affect the acoustical properties in a room but lack time and resources to do so.
here are the results so far.
test one.
design mock up.
We milled a test piece out of maple to see what effects would come out of the design.
No comments:
Post a Comment