models/parts/chris_desk.rb
#This isn't parametric yet
This isn't parametric yet
This isn ' t parametric yet
def make_points
      t = thickness
      leg_points = []
      leg_points << [bounding_c1.x, bounding_c1.y, bounding_c1.z]
      leg_points << [bounding_c1.x + back_foot_width, bounding_c1.y - length + thickness, bounding_c1.z]
      leg_points << [bounding_c1.x + back_foot_width + top_tab_offset, bounding_c1.y - length + thickness, bounding_c1.z]
      leg_points << [bounding_c1.x + back_foot_width + top_tab_offset, bounding_c1.y - length + thickness * (1 - parent_part.tab_depth_percent), bounding_c1.z]
      leg_points << [bounding_c1.x + back_foot_width + top_tab_offset + top_tab_width_in_t * t, bounding_c1.y - length + thickness * (1 - parent_part.tab_depth_percent), bounding_c1.z]
      leg_points << [bounding_c1.x + back_foot_width + top_tab_offset+ top_tab_width_in_t * t, bounding_c1.y - length + thickness, bounding_c1.z]
      leg_points << [bounding_c1.x + back_foot_width + top_width - front_cross_bar_front_offset - t,
                     bounding_c1.y - length + thickness,
                     bounding_c1.z]
      leg_points << [bounding_c1.x + back_foot_width + top_width - front_cross_bar_front_offset - t,
                     bounding_c1.y - length + thickness + parent_part.front_cross_bar_nominal_width,
                     bounding_c1.z]
      leg_points << [bounding_c1.x + back_foot_width + top_width - front_cross_bar_front_offset,
                     bounding_c1.y - length + thickness + parent_part.front_cross_bar_nominal_width,
                     bounding_c1.z]
      leg_points << [bounding_c1.x + back_foot_width + top_width - front_cross_bar_front_offset,
                     bounding_c1.y - length + thickness,
                     bounding_c1.z]
      leg_points << [bounding_c1.x + back_foot_width + top_width, bounding_c1.y - length + thickness, bounding_c1.z]
      leg_points << [bounding_c1.x + width, bounding_c1.y, bounding_c1.z]
      leg_points << [bounding_c1.x + width - front_foot_width, bounding_c1.y, bounding_c1.z]
      leg_points << [bounding_c1.x + front_leg_from_back_origin, bounding_c1.y - inner_leg_length, bounding_c1.z]
      leg_points << [bounding_c1.x + front_leg_from_back_origin - inner_gap_width, bounding_c1.y - inner_leg_length, bounding_c1.z]
      leg_points << [bounding_c1.x + back_foot_width, bounding_c1.y, bounding_c1.z]
      WikiHouse::DogBoneFillet.by_points(leg_points, 3, 2, 1, reverse_it: true)
      WikiHouse::DogBoneFillet.by_points(leg_points, 6, 7, 8)
      WikiHouse::DogBoneFillet.by_points(leg_points, 12, 11, 10, reverse_it: true)
      WikiHouse::DogBoneFillet.by_points(leg_points, 13, 14, 15)
      leg_points
    end
def make_points t = thickness leg_points = [ ] leg_points << [ bounding_c1 . x , bounding_c1 . y , bounding_c1 . z ] leg_points << [ bounding_c1 . x + back_foot_width , bounding_c1 . y - length + thickness , bounding_c1 . z ] leg_points << [ bounding_c1 . x + back_foot_width + top_tab_offset , bounding_c1 . y - length + thickness , bounding_c1 . z ] leg_points << [ bounding_c1 . x + back_foot_width + top_tab_offset , bounding_c1 . y - length + thickness * ( 1 - parent_part . tab_depth_percent ) , bounding_c1 . z ] leg_points << [ bounding_c1 . x + back_foot_width + top_tab_offset + top_tab_width_in_t * t , bounding_c1 . y - length + thickness * ( 1 - parent_part . tab_depth_percent ) , bounding_c1 . z ] leg_points << [ bounding_c1 . x + back_foot_width + top_tab_offset + top_tab_width_in_t * t , bounding_c1 . y - length + thickness , bounding_c1 . z ] leg_points << [ bounding_c1 . x + back_foot_width + top_width - front_cross_bar_front_offset - t , bounding_c1 . y - length + thickness , bounding_c1 . z ] leg_points << [ bounding_c1 . x + back_foot_width + top_width - front_cross_bar_front_offset - t , bounding_c1 . y - length + thickness + parent_part . front_cross_bar_nominal_width , bounding_c1 . z ] leg_points << [ bounding_c1 . x + back_foot_width + top_width - front_cross_bar_front_offset , bounding_c1 . y - length + thickness + parent_part . front_cross_bar_nominal_width , bounding_c1 . z ] leg_points << [ bounding_c1 . x + back_foot_width + top_width - front_cross_bar_front_offset , bounding_c1 . y - length + thickness , bounding_c1 . z ] leg_points << [ bounding_c1 . x + back_foot_width + top_width , bounding_c1 . y - length + thickness , bounding_c1 . z ] leg_points << [ bounding_c1 . x + width , bounding_c1 . y , bounding_c1 . z ] leg_points << [ bounding_c1 . x + width - front_foot_width , bounding_c1 . y , bounding_c1 . z ] leg_points << [ bounding_c1 . x + front_leg_from_back_origin , bounding_c1 . y - inner_leg_length , bounding_c1 . z ] leg_points << [ bounding_c1 . x + front_leg_from_back_origin - inner_gap_width , bounding_c1 . y - inner_leg_length , bounding_c1 . z ] leg_points << [ bounding_c1 . x + back_foot_width , bounding_c1 . y , bounding_c1 . z ] WikiHouse :: DogBoneFillet . by_points ( leg_points , 3 , 2 , 1 , reverse_it : true ) WikiHouse :: DogBoneFillet . by_points ( leg_points , 6 , 7 , 8 ) WikiHouse :: DogBoneFillet . by_points ( leg_points , 12 , 11 , 10 , reverse_it : true ) WikiHouse :: DogBoneFillet . by_points ( leg_points , 13 , 14 , 15 ) leg_points end
This isn't parametric yet
This isn ' t parametric yet
#Top Tab # Front Cross Bar Slot #Rest of leg #Fillet top tab #Fillet Front Cross Slot #  WikiHouse::DogBoneFillet.by_points(leg_points,11,12,13) #Need to fillet the top tab and the cross bar slot