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