author | Wuzzy <Wuzzy2@mail.ru> |
Fri, 09 Nov 2018 23:41:40 +0100 | |
changeset 14211 | 6f76fe84fdee |
parent 14142 | 69db1d2e4cec |
child 14228 | bb2f301d4fe0 |
permissions | -rw-r--r-- |
14121 | 1 |
mod outline; |
14090 | 2 |
pub mod outline_template; |
14121 | 3 |
pub mod template_based; |
13929 | 4 |
|
13959
1fa905aa4cdb
move point struct into integral-geometry and use it to refactor a bit
alfadur
parents:
13929
diff
changeset
|
5 |
extern crate integral_geometry; |
14121 | 6 |
extern crate itertools; |
14047 | 7 |
extern crate land2d; |
8 |
||
14048 | 9 |
pub struct LandGenerationParameters<T> { |
14047 | 10 |
zero: T, |
11 |
basic: T, |
|
14121 | 12 |
distance_divisor: u32, |
14142 | 13 |
skip_distort: bool, |
14 |
skip_bezier: bool, |
|
14047 | 15 |
} |
16 |
||
14121 | 17 |
impl<T: Copy + PartialEq> LandGenerationParameters<T> { |
14142 | 18 |
pub fn new(zero: T, basic: T, distance_divisor: u32, skip_distort: bool, skip_bezier: bool) -> Self { |
14121 | 19 |
Self { |
20 |
zero, |
|
21 |
basic, |
|
14142 | 22 |
distance_divisor, |
23 |
skip_distort, |
|
24 |
skip_bezier, |
|
14121 | 25 |
} |
14075
3185fb34f3b5
update theme editor to use new land generator implementation
alfadur
parents:
14072
diff
changeset
|
26 |
} |
3185fb34f3b5
update theme editor to use new land generator implementation
alfadur
parents:
14072
diff
changeset
|
27 |
} |
3185fb34f3b5
update theme editor to use new land generator implementation
alfadur
parents:
14072
diff
changeset
|
28 |
|
14048 | 29 |
pub trait LandGenerator { |
14047 | 30 |
fn generate_land<T: Copy + PartialEq, I: Iterator<Item = u32>>( |
31 |
&self, |
|
14142 | 32 |
parameters: &LandGenerationParameters<T>, |
14047 | 33 |
random_numbers: &mut I, |
34 |
) -> land2d::Land2D<T>; |
|
35 |
} |
|
13959
1fa905aa4cdb
move point struct into integral-geometry and use it to refactor a bit
alfadur
parents:
13929
diff
changeset
|
36 |
|
13929 | 37 |
#[cfg(test)] |
38 |
mod tests { |
|
39 |
#[test] |
|
40 |
fn it_works() { |
|
41 |
assert_eq!(2 + 2, 4); |
|
42 |
} |
|
43 |
} |