2023-06-06 09:32:05 +00:00
|
|
|
//pub mod common;
|
2023-06-06 09:44:33 +00:00
|
|
|
mod translate;
|
|
|
|
mod replicate;
|
2023-06-08 20:34:03 +00:00
|
|
|
mod rotate;
|
|
|
|
mod flip_horizontal;
|
|
|
|
mod flip_vertical;
|
2023-06-10 16:47:04 +00:00
|
|
|
mod grid;
|
2023-06-06 09:32:05 +00:00
|
|
|
|
|
|
|
use crate::point::Point;
|
2023-06-29 21:24:56 +00:00
|
|
|
use crate::worldstate::WorldState;
|
2023-06-06 09:32:05 +00:00
|
|
|
|
|
|
|
// re-export transformers to be abe to use it directly from transformer::
|
|
|
|
pub use translate::Translate;
|
|
|
|
pub use replicate::Replicate;
|
2023-06-08 20:34:03 +00:00
|
|
|
pub use rotate::Rotate;
|
|
|
|
pub use flip_horizontal::FlipHorizontal;
|
|
|
|
pub use flip_vertical::FlipVertical;
|
2023-06-10 16:47:04 +00:00
|
|
|
pub use grid::Grid;
|
2023-06-06 09:32:05 +00:00
|
|
|
|
|
|
|
pub trait Transformers {
|
2023-06-29 21:24:56 +00:00
|
|
|
fn apply(
|
|
|
|
&self,
|
|
|
|
point_list: &[Point],
|
|
|
|
world_state: &WorldState
|
|
|
|
) -> Vec<Point>;
|
2023-06-06 09:32:05 +00:00
|
|
|
}
|