Começei calculando o ângulo de visão, discutido no post anterior..agora já na classe C#
using System;
namespace fotografia
{
internal class fotografia : IFotografia
{
public double FatordeCorte { get; set; }
public int ObjetivaMM { get; set; }
public int CameraFabricante(_CamerasFabricante _value)
{
return (int)_value;
}
private double _MMFinalObjetiva()
{
return (Convert.ToDouble(ObjetivaMM) * FatordeCorte);
}
public double SensorHmm
{
get;
set;
}
private double myVar;
public double SensorVmm
{
get { return myVar; }
set { myVar = value; }
}
public double CalculoAnguloVisaoH()
{
double fov = SensorHmm / (2 * _MMFinalObjetiva());
double arctan = 2 * Math.Atan(fov) * 180.0 / Math.PI;
return arctan;
}
private double CalculoAnguloVisaoV()
{
double fov = SensorVmm / (2 * _MMFinalObjetiva());
double arctan = 2 * Math.Atan(fov) * 180.0 / Math.PI;
return arctan;
}
}
}
vamos testar, para ver se funciona.
fotografia ft = new fotografia();
ft.CameraFabricante(_CamerasFabricante.Canon);
ft.ObjetivaMM = 50;
ft.SensorHmm = 22.3;
ft.FatordeCorte = 1.6;
var t = ft.CalculoAnguloVisaoH();
voilá...funcionando perfeitamente. :)
Nenhum comentário:
Postar um comentário