CrDeviceProperty_Focus_Magnifier_Setting

Get/Set the Focus Magnifier Setting

CrDataType: CrDataType_UInt64Array

Parameter Code

Explanation

0x0000000000000000~0xFFFFFFFFFFFFFFFF

Focus Magnifier Ratio [Upper 4bytes] | Focus Magnifier Position (x,y) [Lower 4bytes]
Caution :
The range of focus magnifier ratio and focus magnifier position varies depending on the model and aspect ratio.

[Upper 4bytes] Regarding Focus Magnifier Ratio :
Select the focus magnifier ratio to be set from the focus magnifier ratio obtained by GetValues() function.
Ex.) Result obtained by GetValues() function.
If the camera supports OFF, x1.0, x4.0 and x8.0 as focus magnifier ratio, Result is the following.
  Enum value[0] = 0x00000000FFFFFFFF (means OFF)
  Enum value[1] = 0x0000000AFFFFFFFF (means x1.0)
  Enum value[2] = 0x00000028FFFFFFFF (means x4.0)
  Enum value[3] = 0x00000050FFFFFFFF (means x8.0)
[Lower 4bytes] Regarding Focus Magnifier Position (x,y) :
The upper 2 bytes are the x coordinate and the lower 2 bytes are the y coordinate.
If this part is 0xFFFFFFFF, it means an invalid value.
If focus magnifier position (x) is 150 and (y) is 100, set 0x00960064. 0x0096 = 0d150, 0x0064 = 0d100.
The range of X is 0 ~ 639 (0x027F), and the range of Y is 0 ~ 479 (0x01DF).
Frame size is acquired by CrMagPosInfo. CrMagPosInfo is in LiveViewProperty.
Since this position specifies the center of the frame, the position range is more inside by half the frame size than CrMagPosInfo.xDenominator/yDenominator.

Caution:
If it is not in the magnified focus state, the desired result may not be obtained unless the correct position is set again after refreshing the state by setting 0xFFFFFFFF (Invalid Value) in the lower 4 bytes in advance.

Note:
See Tips/Trouble shooting for a detailed implementation example.

Fig. Relationship between CrMagPosInfo and settable area