2016-06-03 3 views
1
point de mise au point

Je suis en train de changer le point de mise au point sur l'appareil photo d'un click dans un cadre de vue en direct à l'aide du EDSDKlib. Je ne peux pas comprendre comment le faire, je veux dire, je ne sais pas quelle propriété je dois définir afin de changer le point de discussion. Avez-vous des idées ou des échantillons? Par ailleurs, je suis déjà en mesure de modifier d'autres valeurs comme ISO, AV, TV ou température de couleur.Canon EDSDK ensemble

Merci d'avance!

Répondre

3

Définissez un EdsPoint en kEdsPropID_Evf_ZoomPosition avant de déclencher une commande de mise au point. Le nom « Zoom » est un peu déroutant, mais cette propriété:

Lit/définit la mise au point et le zoom poste frontière pour une vue en direct. La bordure de mise au point et de zoom est définie à l'aide de EdsCameraRef, mais obtenue en utilisant en temps réel pour afficher les données d'image, autrement dit, en utilisant EdsEvfImageRef.

+0

Merci @gdh, vous avez fait ma journée! – Vinny

0

Vous pouvez définir le point de zoom en ajoutant cette méthode à la classe de caméra.

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); 
} 

et appelez cette méthode comme ceci. MainCamera.SetZoomPositionSetting (PropertyID.Evf_ZoomPosition, p); p est ici l'instance EOSDigital.SDK.Point.

et ne pas oublier de changer le réglage de l'appareil photo en mode AF Live. (Pas en mode rapide)