-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathvoronoi_2D_p1.m
63 lines (47 loc) · 2.48 KB
/
voronoi_2D_p1.m
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
53
54
55
56
57
58
59
60
61
62
63
%% F_{p_1 \ SE(2)}
close all; clear; clc;
%% Tiles
tile = struct ('face_x', 0, 'face_y', 0, 'face_z', 0, 'face_center', 0);
tile(1).face_x = [0.8284, -0.8284, -2.0, -0.8284, 0.8284, 2.0];
tile(1).face_y = [-2.0, -2.0, -0.8284, 2.0, 2.0, 0.8284];
tile(1).face_z = pi * ones (1, 6);
tile(2).face_x = [0.8284, -0.8284, -2.0, -0.8284, 0.8284, 2.0];
tile(2).face_y = [-2.0, -2.0, -0.8284, 2.0, 2.0, 0.8284];
tile(2).face_z = -pi * ones (1, 6);
tile(3).face_x = [tile(1).face_x(1), tile(1).face_x(2), tile(1).face_x(2), tile(1).face_x(1)];
tile(3).face_y = [tile(1).face_y(1), tile(1).face_y(2), tile(1).face_y(2), tile(1).face_y(1)];
tile(3).face_z = pi * [1.0, 1.0, -1.0, -1.0];
tile(4).face_x = [tile(1).face_x(2), tile(1).face_x(3), tile(1).face_x(3), tile(1).face_x(2)];
tile(4).face_y = [tile(1).face_y(2), tile(1).face_y(3), tile(1).face_y(3), tile(1).face_y(2)];
tile(4).face_z = pi * [1.0, 1.0, -1.0, -1.0];
tile(5).face_x = [tile(1).face_x(3), tile(1).face_x(4), tile(1).face_x(4), tile(1).face_x(3)];
tile(5).face_y = [tile(1).face_y(3), tile(1).face_y(4), tile(1).face_y(4), tile(1).face_y(3)];
tile(5).face_z = pi * [1.0, 1.0, -1.0, -1.0];
tile(6).face_x = [tile(1).face_x(4), tile(1).face_x(5), tile(1).face_x(5), tile(1).face_x(4)];
tile(6).face_y = [tile(1).face_y(4), tile(1).face_y(5), tile(1).face_y(5), tile(1).face_y(4)];
tile(6).face_z = pi * [1.0, 1.0, -1.0, -1.0];
tile(7).face_x = [tile(1).face_x(5), tile(1).face_x(6), tile(1).face_x(6), tile(1).face_x(5)];
tile(7).face_y = [tile(1).face_y(5), tile(1).face_y(6), tile(1).face_y(6), tile(1).face_y(5)];
tile(7).face_z = pi * [1.0, 1.0, -1.0, -1.0];
tile(8).face_x = [tile(1).face_x(6), tile(1).face_x(1), tile(1).face_x(1), tile(1).face_x(6)];
tile(8).face_y = [tile(1).face_y(6), tile(1).face_y(1), tile(1).face_y(1), tile(1).face_y(6)];
tile(8).face_z = pi * [1.0, 1.0, -1.0, -1.0];
%% Plots
figure; hold on;
for face_index = 1 : 2
trisurf ([1, 2, 3, 4, 5, 6, 1],...
tile(face_index).face_x, tile(face_index).face_y,...
tile(face_index).face_z, 'FaceAlpha', 0.65, 'Linewidth', 1.3);
end
for face_index = 3 : 8
trisurf ([1, 2, 3, 4, 1],...
tile(face_index).face_x, tile(face_index).face_y,...
tile(face_index).face_z, 'FaceAlpha', 0.65, 'Linewidth', 1.3);
end
xticks ([-2.0, 0.0, 2.0]);
xticklabels ({'$-\frac{1}{2}$', '0', '$\frac{1}{2}$'});
yticks ([-2.0, 0.0, 2.0]);
yticklabels ({'$-\frac{1}{2}$', '0', '$\frac{1}{2}$'});
zticks ([-pi, 0.0, pi]);
zticklabels ({'$-\pi$', '0', '$\pi$'});
plot_properties_SE2;