///|
fn main raise {
let src = [
@core.Point2::new(x=0.0, y=0.0),
@core.Point2::new(x=1.0, y=0.0),
@core.Point2::new(x=0.0, y=1.0),
@core.Point2::new(x=1.0, y=1.0),
@core.Point2::new(x=2.0, y=1.0),
@core.Point2::new(x=-1.0, y=2.0),
]
let dst = [
@core.Point2::new(x=10.0, y=20.0),
@core.Point2::new(x=12.0, y=20.0),
@core.Point2::new(x=10.0, y=23.0),
@core.Point2::new(x=12.0, y=23.0),
@core.Point2::new(x=14.0, y=23.0),
@core.Point2::new(x=8.0, y=26.0),
]
let h = @multiview.estimate_homography(src, dst)
let p = h.apply(@core.Point2::new(x=0.25, y=0.5))
println("mapped point: \{p.x}, \{p.y}")
}