2

我正在尝试使用EDSDK lib从实时取景框中更改相机上的焦点。我不知道该怎么做,我的意思是,不知道我必须设置什么属性才能改变焦点。你们有什么想法或样品吗?顺便说一句,我已经能够更改一些其他值,例如、或color temperatureclick ISOAVTV

先感谢您!

4

2 回答 2

4

在触发焦点命令之前设置一个EdsPointinto 。kEdsPropID_Evf_ZoomPosition“Zoom”这个名字有点令人困惑,但是这个属性:

获取/设置实时取景的焦点和缩放边框位置。使用 EdsCameraRef 设置焦点和缩放边界,但使用实时取景图像数据,换句话说,使用 EdsEvfImageRef 获得。

于 2016-07-03T07:53:38.057 回答
0

您可以设置缩放点将此方法添加到相机类。

public void SetZoomPositionSetting(PropertyID propID, Point value, int inParam = 0)
{
    CheckState();

    int size = Marshal.SizeOf(typeof(Point));
    ErrorCode err = CanonSDK.EdsSetPropertyData(CamRef, propID, inParam, size, value);
}

并像这样调用这个方法。MainCamera.SetZoomPositionSetting(PropertyID.Evf_ZoomPosition, p); 这里的 p 是 EOSDigital.SDK.Point 实例。

并且不要忘记将相机设置更改为 AF Live 模式。(不是快速模式)

于 2018-02-15T07:53:08.693 回答