Example #1
0
        public Match(
            DatabaseFin unknownFin,
            DarwinDatabase db,
            UpdateDisplayOutlinesDelegate updateOutlines,
            List <MatchFactor> matchFactors,
            bool createDefaultFactors = false)
            : this(unknownFin, db, updateOutlines)
        {
            if (!createDefaultFactors)
            {
                MatchFactors = matchFactors;
            }
            else if (Database.CatalogScheme != null)
            {
                switch (db.CatalogScheme.FeatureSetType)
                {
                case FeatureSetType.DorsalFin:
                    SetMatchOptions(RegistrationMethodType.TrimOptimalTip, true);
                    break;

                case FeatureSetType.Bear:
                    MatchFactors = MatchFactorPresets.CreateBearMatchFactors(db);
                    break;
                }
            }

            CheckUnknownForRequiredFeatures();

            // Force rediscovery (for debugging/testing, can uncomment
            //UnknownFin.FinOutline.RediscoverFeaturePoints(Database.CatalogScheme.FeatureSetType);
        }
Example #2
0
 public Match(
     DatabaseFin unknownFin,
     DarwinDatabase db,
     UpdateDisplayOutlinesDelegate updateOutlines,
     RegistrationMethodType registrationMethod,
     bool useFullFinError)
     : this(unknownFin, db, updateOutlines)
 {
     SetMatchOptions(registrationMethod, useFullFinError);
 }
Example #3
0
        public Match(
            DatabaseFin unknownFin,
            DarwinDatabase db,
            UpdateDisplayOutlinesDelegate updateOutlines)
        {
            if (unknownFin == null)
            {
                throw new ArgumentNullException(nameof(unknownFin));
            }

            if (db == null)
            {
                throw new ArgumentNullException(nameof(db));
            }

            UnknownFin      = new DatabaseFin(unknownFin);
            Database        = db;
            _updateOutlines = updateOutlines;

            CurrentFinIndex = 0;

            MatchResults = new MatchResults(unknownFin.IDCode, unknownFin?.FinFilename, db?.Filename);
        }