Forum

Author Topic: renderImage Camera position  (Read 2550 times)

chehroma

  • Newbie
  • *
  • Posts: 24
    • View Profile
renderImage Camera position
« on: September 08, 2020, 10:41:17 AM »
Добрый день. Использую скрипт, который нашел в одной из тем. Но есть один нюанс: конечное изображение почему то всегда получается под разным углом (примеры http://prntscr.com/udgmvp http://prntscr.com/udgn6z). Как подправить скрипт, что бы виртуальная камера постоянно смотрела на центр области реконструкции (как то так http://prntscr.com/udgpg7). Буду очень благодарен за помощь.
Code: [Select]
import Metashape

chunk = Metashape.app.document.chunk
T = chunk.crs.localframe(chunk.transform.translation) * chunk.transform.matrix

location = chunk.region.center + chunk.region.rot * chunk.region.size
direction = (chunk.region.center - location).normalized()
vertical = T.inv().mulv(Metashape.Vector([0, 0, 1]))
horizontal = Metashape.Vector.cross(direction, vertical).normalized()
vertical = Metashape.Vector.cross(direction, horizontal).normalized()
R = Metashape.Matrix([horizontal, vertical, direction])

cameraT = Metashape.Matrix().Translation(location) * Metashape.Matrix().Rotation(R.t())

image = chunk.model.renderImage(cameraT, chunk.sensors[0].calibration)
image.save("c://Work//render2.jpg")

Alexey Pasumansky

  • Agisoft Technical Support
  • Hero Member
  • *****
  • Posts: 15090
    • View Profile
Re: renderImage Camera position
« Reply #1 on: September 11, 2020, 10:42:03 PM »
Добрый день,

Данный скрипт должен создавать рендер модели с видом из одного из углов области реконструкции на её центр.

Уточните, пожалуйста, с какой точки Вы хотите рендерить вид модели? Например, с центра какой-либо грани?
Best regards,
Alexey Pasumansky,
Agisoft LLC

chehroma

  • Newbie
  • *
  • Posts: 24
    • View Profile
Re: renderImage Camera position
« Reply #2 on: October 15, 2020, 03:50:48 PM »
Добрый день,

Данный скрипт должен создавать рендер модели с видом из одного из углов области реконструкции на её центр.

Уточните, пожалуйста, с какой точки Вы хотите рендерить вид модели? Например, с центра какой-либо грани?

Если взять область реконструкции, на ней есть крестик, так нужно напротив (см. скриншот http://prntscr.com/uzv4wn). Спасибо.