AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |
Back to Blog
Makeshift dicebox8/12/2023 ![]() ![]() This is why we have collected 25 of the easiest DIY puzzle box plans from the most reliable sources and combined them into this book so that you can make beautiful and advanced work that will be appreciated by anyone who receives it! There are many plans and tutorials on how to make a puzzle box, but most of them are not really easy to understand even for experienced woodworkers. Now you can make your own individualized puzzle box with the following simple plans and instructions. ![]() They are popular for storing treasures, or simply a way to keep things safe. Puzzle boxes are small wooden boxes that have various locking mechanisms on them. DIY Puzzle Box Plans will be the perfect woodworking activity to boost your skills and test your problem-solving abilities. rectangularWall ( y, h - hy + t, "Ffof", ignore_widths =, move = "up" ) self. rectangularWall ( y, h - hy + t, "OfFf", ignore_widths =, move = "up" ) self. rectangularWall ( y, hl - hy2 + t, "Ffpf", ignore_widths =, move = "up" ) self. rectangularWall ( y, x, "ffff", move = "up" ) self. rectangularWall ( x, y, "ffff", move = "right only" ) self. rectangularWall ( x, hl - hy2 + t, "FFqF", move = "up" ) self. rectangularWall ( x, hl, "FFFF", ignore_widths =, move = "up" ) self. rectangularWall ( x, h, e_back, move = "up" ) self. rectangularWall ( x, h, "FFFF", ignore_widths =, move = "up" ) self. rectangularWall ( x, y, e_inner_topbot, move = "up", callback = ) self. CompoundEdge ( self, "ef", ( p, y - p )) e_inner_topbot = ( "f", e_inner_1, "f", e_inner_2 ) self. CompoundEdge ( self, "fe", ( y - p, p )) e_inner_2 = edges. CompoundEdge ( self, "Fe", ( h - hy + t, hy - t )) e_back = ( "F", e1, "F", e2 ) p = self. CompoundEdge ( self, "eF", ( hy - t, h - hy + t )) e2 = edges. hole ( xi - mo, mo, d = d ) def render ( self ): x, y, h, hl = self. regularPolygonHole ( x = center, y = center, n = 6, r = r, corner_radius = cr, a = 30 ) # magnets d = self. sqrt ( 3 ) # dice centers = ] # start with one in the center polar_r = 2 * apothem + t # the full width of a hexagon, plus a gap of t width for i in range ( 6 ): theta = i * math. hex_hole_corner_radius # -4*t because there are four gaps across: # 2 between the outer holes and the finger joints # 2 between the outer holes and the center hole # /6 because there are 6 apothems across, 2 for each hexagon apothem = ( min ( xi, yi ) - 4 * t ) / 6 r = apothem * 2 / math. ![]() y - 2 * t xc = xi / 2 yc = yi / 2 cr = self. add_argument ( "-magnet_diameter", action = "store", type = float, default = 6, help = "The diameter of magnets for holding the box closed, in mm" ) def diceCB ( self ): t = self. add_argument ( "-hex_hole_corner_radius", action = "store", type = float, default = 5, help = "The corner radius of the hexagonal dice holes, in mm" ) self. add_argument ( "-lidheight", action = "store", type = float, default = 18, help = "height of lid in mm" ) self. buildArgParser ( x = 100, y = 100, h = 18, outside = True ) self. ![]() ChestHingeSettings, finger_joints_on_box = True, finger_joints_on_lid = True ) self. FingerJointSettings, surroundingspaces = 2.0 ) self. Class DiceBox ( Boxes ): """Box with lid and integraded hinge for storing dice""" ui_group = "Box" def _init_ ( self ) -> None : Boxes. ![]()
0 Comments
Read More
Leave a Reply. |