Cog3DPatMaxRunParams ZoneAngleDecomposition Property Cognex VisionPro 9.7
Gets or sets the decomposition mode for the angle zones. This mode controls how you specify the range of 3D rotations that are allowed in your results. It defines the meanings of the three angle zones returned by the ZoneAngleFirst, ZoneAngleSecond and ZoneAngleThird properties.

Namespace: Cognex.VisionPro3D
Assembly: Cognex.VisionPro3D (in Cognex.VisionPro3D.dll) Version: 73.0.0.0
Syntax

public Cog3DPatMaxZoneAngleDecompositionConstants ZoneAngleDecomposition { get; set; }

Property Value

Type: Cog3DPatMaxZoneAngleDecompositionConstants
The decomposition mode for the angle zones. Default value is EulerXYZ.
Events

Event TypeReason
ICogChangedEvent Changed Fires when this property changes. The following state flag may be affected:
Exceptions

ExceptionCondition
ArgumentOutOfRangeException The supplied value is not a member of Cog3DPatMaxZoneAngleDecompositionConstants.
Remarks

You can specify the range of 3D rotations that are allowed for your results.

Remember that a single rotation about an arbitrary axis in 3D space can also be described by three angles known as Euler angles. The Euler angles decompose the single rotation (about the arbitrary axis) into a sequence of rotations about three known coordinate system axes. Applying these three rotations in sequence is equivalent to the single rotation about the arbitrary axis.

To specify the allowed range of 3D rotations you provide three Euler angle zones. Each zone describes a range of rotations about a known coordinate system axis. By applying these three rotation ranges in succession you describe the allowed range of rotations for your results.

To define the three Euler ranges follow these steps:

  1. Use the ZoneAngleDecomposition property to choose which set of Euler angle zones you wish to use.
  2. Use the ZoneAngleFirst, ZoneAngleSecond and ZoneAngleThird properties to specify the three angle zones.

The individual zone angles are always applied in the order indicated by their names: ZoneAngleFirst is first, ZoneAngleSecond is second and ZoneAngleThird is third.

If you choose the EulerXYZ decomposition mode:

  • The angle zone returned by ZoneAngleFirst represents the range of allowed rotations about the X axis of the runtime vision data's 3D selected space.
  • The angle zone returned by ZoneAngleSecond represents the range of allowed rotations about the Y axis of the runtime vision data's 3D selected space.
  • The angle zone returned by ZoneAngleThird represents the range of allowed rotations about the Z axis of the runtime vision data's 3D selected space.

If you choose the EulerZYZMovingAxes decomposition mode:

  • The angle zone returned by ZoneAngleFirst represents the range of allowed rotations about the Z axis of the runtime vision data's 3D selected space.
  • The angle zone returned by ZoneAngleSecond represents the range of allowed rotations about the Y axis of the runtime vision data's 3D selected space -- after first rotating that coordinate space by the angle specified in ZoneAngleFirst.
  • The angle zone returned by ZoneAngleThird represents the range of allowed rotations about the Z axis of the runtime vision data's 3D selected space -- after first rotating that coordinate space by the angle specified in ZoneAngleFirst, and then rotating the resulting coordinate space by the angle specified in ZoneAngleSecond.

A Cog3DPatMaxResult is returned only if all of the following conditions are met:

See Also