aboutsummaryrefslogtreecommitdiff
path: root/example_beam_trace.m
blob: 889233ed92a880c6bfb93eefdbd867919a866970 (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
49
50
51
52
beam.k=[-1,0];
beam.origin=[2,0.5];
beam.face=NA;
beam.intensity = 1;

face1.vertex1=[-1,0];
face1.vertex2=[1,0];
face1.n_right = 1;
face1.n_left= 2.5;

face2.vertex1=[1,0];
face2.vertex2=[0,1];
face2.n_right = 1;
face2.n_left= 2.5;

face3.vertex1=[0,1];
face3.vertex2=[-1,0];
face3.n_right = 1;
face3.n_left= 2.5;

faces={face1,face2,face3};


border1.vertex1=[-2,-2];
border1.vertex2=[2,-2];
border1.n_right = 1.;
border1.n_left= 1;

border2.vertex1=[2,-2];
border2.vertex2=[2,2];
border2.n_right = 1.;
border2.n_left= 1;

border3.vertex1=[2,2];
border3.vertex2=[-2,2];
border3.n_right = 1.;
border3.n_left= 1;

border4.vertex1=[-2,2];
border4.vertex2=[-2,-2];
border4.n_right = 1.;
border4.n_left= 1;

borders={border1,border2, border3, border4};
beams={beam};


img=zeros(200,100);
border_limits=[-2,-2, 2,2];
img = beam_trace(beams, faces, borders, border_limits, img );

plot_beams_and_faces_figure(border_limits, img, faces);