summaryrefslogtreecommitdiff
path: root/testdata/scad/features/render-tests.scad
blob: 44bf3feebfcdcf0302cea762ce76447032b8e021 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
module edgeprofile()
{
  difference() {
    cube([20, 20, 150], center = true);
    translate([-10, -10, 0]) cylinder(h = 80, r = 10, center = true);
  }
}

module rendered_edgeprofile()
{
  render(convexity = 2) edgeprofile();
}

module mycube() {
  difference() {
    cube(100, center = true);
    translate([ -50, -50, 0 ]) rotate(180, [0, 0, 1]) edgeprofile();
    translate([ 50, -50, 0 ]) rotate(270, [0, 0, 1]) edgeprofile();
  }
}

module rendered_mycube() {
  difference() {
    cube(100, center = true);
    translate([ -50, -50, 0 ]) rotate(180, [0, 0, 1]) rendered_edgeprofile();
    translate([ 50, -50, 0 ]) rotate(270, [0, 0, 1]) rendered_edgeprofile();
  }
}

// Empty
render();
// No children
render() { }

mycube();

translate([110,0,0]) rendered_mycube();

// This may trigger a convexity issue
translate([-110,0,0]) {
  difference() {
    render(convexity=2) difference() {
      cube(100, center = true);
      cylinder(r=30,h=110,center=true);
    }
    translate([-55, -55, 45]) cube(10);
  }
}
contact: Jan Huwald // Impressum