Я хочу поместить трехмерное изображение в основу сцены по мировым / глобальным координатам. У меня есть изображение сцены. Изображение было снято по некоторой глобальной координате (x1, y1, z1). Мне дан объект, который нужно поместить в эту сцену на основе ее глобальной координаты (x2, y2, y3). Этот объект необходимо проецировать на сцену точно так же, как в перспективе.
Пример может помочь прояснить это. Представьте, что есть автостоянка с некоторым набором глобальных координат. Снимок части парковки. Координаты от места, где было снято изображение, записывается. Цель состоит в том, чтобы разместить виртуальное транспортное средство на этом изображении, используя глобальные координаты для этого транспортного средства. Поскольку глобальные координаты транспортного средства могут не совпадать с глобальными координатами изображения, я предполагаю, что мне понадобятся координаты изображения, угол и, возможно, поле обзора.
3D-графика - это не моя область, поэтому я смотрю на http://en.wikipedia.org/wiki/Perspective_projection#Perspective_projection. Я также смотрю на Matrix3DProjection, которое, возможно, является тем, что я ищу, но оно работает только в Silverlight, и я пытаюсь сделать это в WPF. В моем представлении мне кажется, что мне нужно определить координаты (X, Y, Z), которые находятся в поле зрения изображения, определить преобразование мировой координаты в пиксели, а затем точно спроецировать транспортное средство на изображение, придав ему правильную перспективу, так что выглядит 3D, т.е. чем меньше, тем дальше больше, ближе
Есть ли в WPF функция, которая может помочь с этим, или мне нужно заново изучать матрицы и делать это вручную?