1#
2# Demo and test for clipping applied to objects.
3# axis coordinates run from [-1:1]
4# graph coordinates from from [0:1]
5# screen coordinates from from [0.2:0.8]
6#
7reset
8
9set title "Default object clipping"
10set label 1 at graph 0.5, 0.9 center
11set label 1 "Outer = screen coords\nMiddle = graph coords\nInner = axis coords"
12
13set xrange[-1:1]
14set yrange[-1:1]
15set macros
16fs="fillstyle solid 1.0 border lc rgb 'black' lw 2"
17unset key
18
19set lmargin at screen 0.2
20set rmargin at screen 0.8
21set tmargin at screen 0.8
22set bmargin at screen 0.2
23
24set object 1 rectangle from screen 0.1,screen 0.1 to screen 0.4, screen 0.4
25set object 1 fc rgb '#880000' @fs
26
27set object 11 rectangle from first -1.1,first -1.1 to first -0.9, first -0.9
28set object 11 fc rgb 'red' @fs
29set object 11 front
30
31set object 111 rectangle from graph -.1, -.1 to graph .1,.1
32set object 111 fc rgb "#DDAA00' @fs
33
34
35set object 2 circle at screen 0.2, screen 0.8 radius screen 0.1
36set object 2 fc rgb '#008800' @fs
37
38set object 22 circle at first -1, 1 radius first .15
39set object 22 fc rgb 'green' @fs
40set object 22 front
41
42set object 222 circle at graph 0, graph 1 radius graph 0.1
43set object 222 fc rgb '#00DDAA' @fs
44
45
46set object 3 polygon from screen 0.6,screen 0.6 rto 0.4,0 rto -0.2,0.4
47set object 3 fc rgb '#BBBB00' @fs
48
49set object 33 polygon from first 0.8,first 0.8 rto first 0.4,0  rto first -0.2, 0.4
50set object 33 fc rgb 'yellow' @fs
51set object 33 front
52
53set object 333 polygon from graph .8,graph .8 rto graph 0.4,0 rto graph -0.2, 0.4
54set object 333 fc rgb '#AAAA88' @fs
55
56set object 4 ellipse at screen 0.8, screen 0.2 size screen 0.3, 0.25
57set object 4 fc rgb '#4444bb' @fs
58
59set object 44 ellipse at first 1, -1 size first 0.4, first 0.25
60set object 44 fc rgb "cyan" @fs
61set object 44 front
62
63set object 444 ellipse at graph 1,graph 0 size first 0.8, first 0.5
64set object 444 fc rgb '#6666ff' @fs
65
66
67plot 0
68
69pause -1 "Hit return to continue"
70
71set title "Object property 'noclip'"
72
73do for [i=1:4]{ set object i noclip; set object i*11 noclip; set object i*111 noclip; }
74
75plot 0
76
77pause -1 "Hit return to continue"
78
79set title "Clipping in 3D projection ('set view map')"
80do for [i=1:4]{ set object i clip; set object i*11 clip; set object i*111 clip; }
81set view map
82set zrange [.1:100]
83set log z
84splot 0
85
86pause -1 "Hit return to continue"
87
88undefine fs
89reset
90