示例#1
0
        public void GenerateFiducialPattern(double radius = 2.5, int numOfLines = 4)
        {
            _fiducialPattern = new List <IMarkGeometry>();

            var baseLine  = new MarkGeometryLine(new MarkGeometryPoint(-radius, 0), new MarkGeometryPoint(radius, 0));
            var transform = GeometricArithmeticModule.GetRotationTransformationMatrix(
                0, 0, Math.PI / numOfLines
                );

            for (int i = 0; i < numOfLines; i++)
            {
                _fiducialPattern.Add((IMarkGeometry)baseLine.Clone());
                baseLine.Transform(transform);
            }

            _fiducialPattern.Add(new MarkGeometryCircle(radius));
        }