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 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101
// use geo::CoordFloat;
// use num_traits::FloatConst;
// use crate::clip::antimeridian::gen_clip_antimeridian;
// use crate::identity::Identity;
// use crate::projection::resampler::none::None;
// use crate::projection::resampler::resample::Resample;
// use crate::projection::ClipExtentClear;
// // TODO Need 4 varyations here.
// // Vary by Antimeridian/Circle
// // Vary by Resample/None
// impl<DRAIN, PR, T> ClipExtentClear for BuilderAntimeridianResampleClip<DRAIN, PR, T>
// where
// DRAIN: Clone,
// PR: Clone,
// T: CoordFloat + Default + FloatConst,
// {
// type T = T;
// type Output = BuilderAntimeridianResampleNoClip<DRAIN, PR, T>;
// #[inline]
// fn clip_extent_clear(self) -> Self::Output {
// Self::Output {
// p_lb: self.p_lb,
// p_drain: self.p_drain,
// projection_raw: self.projection_raw,
// phi: self.phi,
// lambda: self.lambda,
// alpha: self.alpha,
// k: self.k,
// sx: self.sx,
// sy: self.sy,
// x: self.x,
// y: self.y,
// delta_lambda: self.delta_lambda,
// delta_phi: self.delta_phi,
// delta_gamma: self.delta_gamma,
// delta2: self.delta2,
// theta: self.theta,
// rotate: self.rotate,
// project_transform: self.project_transform.clone(),
// project_rotate_transform: self.project_rotate_transform,
// rotator: self.rotator,
// // Mutate section.
// postclip: Identity::default(),
// clip: gen_clip_antimeridian::<NoClipU<DRAIN>, ResampleNoClipC<DRAIN, PR, T>, T>(),
// resample: Resample::new(self.project_transform, self.delta2),
// x0: None,
// y0: None,
// x1: None,
// y1: None,
// }
// }
// }
// impl<DRAIN, PR, T> ClipExtentClear for BuilderAntimeridianResampleNoneClip<DRAIN, PR, T>
// where
// DRAIN: Clone,
// PR: Clone,
// T: CoordFloat + Default + FloatConst,
// {
// type T = T;
// type Output = BuilderAntimeridianResampleNoneNoClip<DRAIN, PR, T>;
// #[inline]
// fn clip_extent_clear(self) -> Self::Output {
// Self::Output {
// p_lb: self.p_lb,
// p_drain: self.p_drain,
// projection_raw: self.projection_raw,
// phi: self.phi,
// lambda: self.lambda,
// alpha: self.alpha,
// k: self.k,
// sx: self.sx,
// sy: self.sy,
// x: self.x,
// y: self.y,
// delta_lambda: self.delta_lambda,
// delta_phi: self.delta_phi,
// delta_gamma: self.delta_gamma,
// delta2: self.delta2,
// theta: self.theta,
// rotate: self.rotate,
// project_transform: self.project_transform.clone(),
// project_rotate_transform: self.project_rotate_transform,
// rotator: self.rotator,
// // Mutate section.
// clip: gen_clip_antimeridian::<NoClipU<DRAIN>, _, _>(),
// postclip: Identity::default(),
// resample: None::new(self.project_transform),
// x0: None,
// y0: None,
// x1: None,
// y1: None,
// }
// }
// }