import FreeCAD as App import Part cream = (0.89, 0.85, 0.74) sand = (0.78, 0.73, 0.62) screen = (0.08, 0.11, 0.15) slate = (0.24, 0.29, 0.32) mint = (0.37, 0.63, 0.54) coral = (0.93, 0.47, 0.34) # Monitor shell. monitor = Part.makeBox(26, 4, 17, App.Vector(-13, -2, 8)) monitor_obj = Part.show(monitor, "Monitor") monitor_obj.ViewObject.ShapeColor = cream # Screen panel and a tiny status line. glass = Part.makeBox(23, 0.6, 14, App.Vector(-11.5, -2.4, 9.5)) glass_obj = Part.show(glass, "Screen") glass_obj.ViewObject.ShapeColor = screen status = Part.makeBox(20, 0.12, 0.42, App.Vector(-10, -2.52, 9.0)) status_obj = Part.show(status, "StatusLine") status_obj.ViewObject.ShapeColor = mint power = Part.makeCylinder(0.28, 0.35, App.Vector(9.9, -2.5, 8.6), App.Vector(0, 1, 0)) power_obj = Part.show(power, "PowerDot") power_obj.ViewObject.ShapeColor = coral # Tapered stand and round foot. neck = Part.makeCone(2.6, 1.3, 6.5, App.Vector(0, 0, 1.5)) neck_obj = Part.show(neck, "Stand") neck_obj.ViewObject.ShapeColor = sand foot = Part.makeCylinder(6.2, 1.5, App.Vector(0, 0, 0)) foot_obj = Part.show(foot, "Foot") foot_obj.ViewObject.ShapeColor = sand # Keyboard slab. keyboard = Part.makeBox(24, 8, 1, App.Vector(-12, -11.5, 0)) keyboard_obj = Part.show(keyboard, "Keyboard") keyboard_obj.ViewObject.ShapeColor = cream keywell = Part.makeBox(21.5, 6.6, 0.32, App.Vector(-10.75, -10.8, 1.0)) keywell_obj = Part.show(keywell, "KeyWell") keywell_obj.ViewObject.ShapeColor = slate for row in range(5): keys = Part.makeBox( 19, 0.9, 0.36, App.Vector(-9.5, -10.1 + row * 1.35, 1.32), ) keys_obj = Part.show(keys, "KeyRow") keys_obj.ViewObject.ShapeColor = (0.42, 0.48, 0.48) # A small tower on the right. tower = Part.makeBox(6, 9, 16, App.Vector(14, -2, 0)) tower_obj = Part.show(tower, "Tower") tower_obj.ViewObject.ShapeColor = cream vent = Part.makeBox(1.2, 0.22, 8.5, App.Vector(15.4, -2.12, 3.2)) vent_obj = Part.show(vent, "Vent") vent_obj.ViewObject.ShapeColor = slate button = Part.makeCylinder(0.55, 0.3, App.Vector(18.1, -2.3, 12.6), App.Vector(0, 1, 0)) button_obj = Part.show(button, "TowerButton") button_obj.ViewObject.ShapeColor = mint