Вот наверное похожая задача.
http://tslab.reformal.ru/proj/?ia=505474