Image_map в Pov-ray не работает должным образом

Я хотел бы сопоставить изображение, которое у меня есть, с лицевой стороной коробки в Pov-ray.

Размеры изображения 1500x1125 (Пример изображения)

Поэтому я создал сцену с источником света над камерой, смотрящей на коробку.

camera{location <3,1.8,0> look_at <3,1.8,1>}
light_source{<3,20,0>  color rgb <1,1,1>}
box{<0,0,0> <1,0.75,1> texture{pigment{image_map{png "Test1.png"}}} translate <2.5,1.425,3>}

Размеры коробки составляют 1x0,75 (z не имеет значения), что имеет то же соотношение сторон 4:3, что и изображение.

Однако при рендеринге сцены ширина изображения идеально совпадает с полем, но часть высоты обрезается. Изображение не выглядит растянутым, и я не понимаю, почему оно не подходит.

как выглядит вертикальное и горизонтальное поле зрения (он же параметр fov?)

Vertexwahn 28.12.2020 20:23

Можете предоставить файл "Test 1.png"?

Vertexwahn 28.12.2020 20:36

@Vertexwahn Извините за поздний ответ. Изображение test1.png является примером ссылки на изображение в вопросе. Также я новичок в Pov-Ray и не знаю, как найти параметр fov.

TheFluffDragon9 04.01.2021 22:44

Может быть, вы видите только 0,75 * texture_height. Можно ли указать уф-координаты?

Vertexwahn 05.01.2021 17:10
Применение градиента к изображению с помощью CSS
Применение градиента к изображению с помощью CSS
Здравствуйте, братья и сестры, как дела? Недавно я застрял на применении градиента к изображению. Я применял это много раз, но иногда наши требования...
Получение URL-адреса изображения курса в Moodle с помощью PHP
Получение URL-адреса изображения курса в Moodle с помощью PHP
Moodle - это популярная система управления обучением с открытым исходным кодом, используемая многими учебными заведениями и организациями по всему...
1
4
310
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

IIRC, porvray всегда будет читать изображения, как если бы они имели соотношение сторон 1: 1. Если вы вставите шкалу в свое заявление о пигменте, прежде чем использовать его, это должно исправить это:

box{
   <0,0,0> <1,0.75,1> 
   texture{
       pigment {
           image_map{png "Test1.png"}
           scale <1, 0.75, 1>
       }
   } translate <2.5,1.425,3>
}

(Я прошу прощения за то, что не проверил это, чтобы быть действительно уверенным прямо сейчас).

Извините за поздний ответ, но спасибо! Я нигде не мог найти на это ответ.

TheFluffDragon9 15.04.2021 12:25

Другие вопросы по теме