Jdi na navigaci předmětu

Tasks for advanced OpenSCAD tutorial

Clasification

  • Complete solution (1 point)
  • Submission doesn’t comply with task (0 points)

Possible point loss

  • Task has to be written inside its own module (jinak 0 bodů)
  • Task doesn’t work when changing parameter (-0,5/(number of parameters) point)

Tasks

STL files

Arm

arm
/**
 * Mechanical arm
 * @param h Arm height (counted from holes centers)
 * @param off_set Top and bottom part offset
 * @param thick Arm thickness
 * @param number_holes Number of holes on each side
 * @param hole_radius Holes radius and distance (from each other and from border)
 * @author Jakub Průša
 */

module arm(
	height=60,
	offset=-25,
	thick=3,
	number_holes=2,
	hole_radius=3
) {
  //insert your code here...
}

Batman

batman
/**
 * Batman cookie cutter
 * @param x/y/z Outer size along X/Y/Z axis
 * @param thick Wall thick
 * @author Jakub Průša, Miro Hroncok
 */
module batman(
	x=100,
	y=60,
	z=15,
	thick=2
) {
  //insert your code here...
}

Disc

disc
/**
 * Parametric robot wheel
 * @param radius Disc radius
 * @param height Disc height
 * @param r_hole Central hole radius
 * @param reduce_offset Reduce holes offset from border
 * @param reduce_num Number of reduce holes
 * Reduce hole size? Make them fit.
 * @author Marek Žehra
 */

module wheel (
  radius=50,
  height=10,
  r_hole=2,
  reduce_offset=5,
  reduce_num=4
) {
  //insert your code here...
}

Helix

helix
/**
 * Helix
 * @param d Helix distance from each other (center to center, measured on XY plane)
 * @param o Helix radius (measured on XY plane)
 * @param h Helix height without base
 * @param s Rotation in degrees on one mm of height (positive or negative direction)
 * @param db Base diameter
 * @param hb Base height
 * One slice should have 50 µm
 * @author Miro Hrončok
 */
module helix(d=10,o=1,h=50,s=18,db=13,hb=1) {
  //insert your code here...
}

Snowman

snowman
/**
 * Snowman
 * @param r Biggest snowball radius
 * @param factor Size of a smaller snowball as a fraction of the bigger one (0.7 = 70 %)
 * @param overlap Snowballs height overlap as a fraction of height of the bigger snowball (0.2 = 20 %)
 * @param balls Number of snowballs (use recursion)
 * Only make snowballs on top of each other, no decorations necessary
 * @author Miro Hrončok
 */
module snowman(r=50,factor=0.7,overlap=0.2,balls=3) {
  //insert your code here...
}

Whistle

whistle
/**
 * Whistle
 * @param radius Radius of the body
 * @param height Height of whistle
 * @param r_handle Radius of holder
 * @param thickness Thickness of wall
 * @param beak_length Length of mouth piece (beak)
 * @param beak_thick Width of mouth piece (beak)
 * @param hole_width Width of hole
 * @author Marek Žehra
 */

module whistle(radius=10,height=20,r_handle=2,thickness=2,beak_length=20,beak_thick=5,hole_width=5) {
  //insert your code here...
}

Mask

screenshot 2015 10 20 08.31.33
/**
 * Mask
 * @param eye_offset
 * @param wall thickness of wall
 * @param eye_radius
 * @param outer_radius outter radius measured from center of eye
 * @param nose1 top radius of nose
 * @param nose2 bottom radius of nose
 * @param nose_length
 * Center of nose is in same position as center of eyes
 * @author Jakub Průša
 */
 */

module mask(
	eye_offset=40,
	wall=2,
	eye_radius=15,
	outer_radius=30,
	nose1=15,
	nose2=20,
	nose_length=40
){
  //insert your code here...
}