LEFT | RIGHT |
(no file at all) | |
1 /* | 1 /* |
2 This file is part of LilyPond, the GNU music typesetter. | 2 This file is part of LilyPond, the GNU music typesetter. |
3 | 3 |
4 Copyright (C) 2008--2012 Han-Wen Nienhuys <hanwen@lilypond.org> | 4 Copyright (C) 2008--2012 Han-Wen Nienhuys <hanwen@lilypond.org> |
5 | 5 |
6 LilyPond is free software: you can redistribute it and/or modify | 6 LilyPond is free software: you can redistribute it and/or modify |
7 it under the terms of the GNU General Public License as published by | 7 it under the terms of the GNU General Public License as published by |
8 the Free Software Foundation, either version 3 of the License, or | 8 the Free Software Foundation, either version 3 of the License, or |
9 (at your option) any later version. | 9 (at your option) any later version. |
10 | 10 |
(...skipping 12 matching lines...) Expand all Loading... |
23 #include "skyline.hh" | 23 #include "skyline.hh" |
24 | 24 |
25 class Skyline_pair | 25 class Skyline_pair |
26 { | 26 { |
27 private: | 27 private: |
28 Drul_array<Skyline> skylines_; | 28 Drul_array<Skyline> skylines_; |
29 | 29 |
30 DECLARE_SIMPLE_SMOBS (Skyline_pair); | 30 DECLARE_SIMPLE_SMOBS (Skyline_pair); |
31 public: | 31 public: |
32 Skyline_pair (); | 32 Skyline_pair (); |
33 Skyline_pair (vector<Box> const &boxes, Real horizon_padding, Axis a); | 33 Skyline_pair (vector<Box> const &boxes, Axis a); |
34 Skyline_pair (Box const &, Real horizon_padding, Axis a); | 34 Skyline_pair (vector<Drul_array<Offset> > const &buildings, Axis a); |
| 35 Skyline_pair (vector<Skyline_pair> const &skypairs); |
| 36 Skyline_pair (Box const &, Axis a); |
| 37 |
35 void raise (Real); | 38 void raise (Real); |
| 39 void grow (Real); |
36 void shift (Real); | 40 void shift (Real); |
37 void insert (Box const &, Real horizon_padding, Axis); | 41 void deholify (); |
| 42 Real smallest_shift (Skyline_pair const &other, Direction d, |
| 43 Real h_padding = 0, Real v_padding = 0); |
| 44 Real left () const; |
| 45 Real right () const; |
| 46 bool intersects (Skyline_pair const &other) const; |
| 47 void insert (Box const &, Axis); |
38 void merge (Skyline_pair const &other); | 48 void merge (Skyline_pair const &other); |
39 Skyline &operator [] (Direction d); | 49 Skyline &operator [] (Direction d); |
40 Skyline const &operator [] (Direction d) const; | 50 Skyline const &operator [] (Direction d) const; |
| 51 bool is_singleton () const; |
41 bool is_empty () const; | 52 bool is_empty () const; |
42 void print () const; | 53 void print () const; |
43 void print_points () const; | 54 void print_points () const; |
44 | 55 |
45 DECLARE_SCHEME_CALLBACK (skyline, (SCM, SCM)); | 56 DECLARE_SCHEME_CALLBACK (skyline, (SCM, SCM)); |
46 }; | 57 }; |
47 | 58 |
48 #endif /* SKYLINE_PAIR_HH */ | 59 #endif /* SKYLINE_PAIR_HH */ |
LEFT | RIGHT |