Пример #1
0
        static ComponentProblemTypesManager()
        {
            Infos.Add(ComponentProblemTypes.BrepIsInvalid, true, "Brep is invalid ", null).SetWeight(IssueSeverityType.Error, 20, false);
            Infos.Add(ComponentProblemTypes.BrepIsEmpty, true, "Brep is empty ", null).SetWeight(IssueSeverityType.Error, 2, true);

            //Infos.Add(ComponentProblemTypes.LoopIncorrectOrientation, true, "Loop trims has incorrect orientation").SetWeight(IssueSeverityType.Error, 10, true);


            Infos.Add(ComponentProblemTypes.FaceWithNoArea, true, "Face with no area").SetWeight(IssueSeverityType.Error, 15, true);
            Infos.Add(ComponentProblemTypes.FaceIsIncomplete, true, "Face is incomplete").SetWeight(IssueSeverityType.Error, 15, false);
            Infos.Add(ComponentProblemTypes.FaceIsDuplicated, true, "Face is duplicated").SetWeight(IssueSeverityType.Error, 5, false);
            Infos.Add(ComponentProblemTypes.FaceDomainLengthIsVerySmall, true, "Face domain dimension is dangerously small or big", null, ComponentProblemTypes_Options.FaceDomainLengthIsVerySmall.InitSettings).SetWeight(IssueSeverityType.Warning, 5, true);
            Infos.Add(ComponentProblemTypes.FaceUnfixableTrimDefinition, true, "Face unfixable trim definitions").SetWeight(IssueSeverityType.Error, 7, false);
            Infos.Add(ComponentProblemTypes.FaceRebuildUV, true, "Face UV should be rebuilded").SetWeight(IssueSeverityType.Suggestion, 3, true); //- by now this issue is works improperly
            Infos.Add(ComponentProblemTypes.FaceRedundantSeam, true, "Face has redundant seam").SetWeight(IssueSeverityType.Warning, 7, true);
            Infos.Add(ComponentProblemTypes.FaceRedundantSingularity, true, "Face has redundant singularity").SetWeight(IssueSeverityType.Warning, 10, true);
            Infos.Add(ComponentProblemTypes.FaceHasKinks, false, "Face have kink").SetWeight(IssueSeverityType.Warning, 7, true);
            Infos.Add(ComponentProblemTypes.FaceTrimEdgeMismatch, true, "Faces has Mismatch in edges and trims", null, ComponentProblemTypes_Options.FaceTrimEdgeMismatch.InitSettings).SetWeight(IssueSeverityType.Warning, 10, false);

            Infos.Add(ComponentProblemTypes.TrimDoubleIsoStatuses, true, "Trim has redundant iso definition", 2022).SetWeight(IssueSeverityType.Error, 7, true);
            Infos.Add(ComponentProblemTypes.TrimInvalidIsoStatus, true, "Trim invalid iso definition", 2021).SetWeight(IssueSeverityType.Error, 7, true);
            Infos.Add(ComponentProblemTypes.TrimEndBeginMismatch, true, "Trim begin and end points mismatch", 2020).SetWeight(IssueSeverityType.Error, 7, true);
            Infos.Add(ComponentProblemTypes.TrimControlPointsNotCorrectInSeam, true, "Trim ControlPoints not correct in Seam", 2019).SetWeight(IssueSeverityType.Error, 10, true);
            Infos.Add(ComponentProblemTypes.TrimControlPointsNotCorrectInSingularity, true, "Trim ControlPoints not correct in Singularity", 2018).SetWeight(IssueSeverityType.Warning, 7, true);
            Infos.Add(ComponentProblemTypes.TrimZigZagControlpoints, true, "Trim deformed", 2017).SetWeight(IssueSeverityType.Warning, 15, true);
            Infos.Add(ComponentProblemTypes.TrimUVOutOfFaceDomain, true, "Trim outside of face domain", 2016).SetWeight(IssueSeverityType.Hint, 5, true);
            Infos.Add(ComponentProblemTypes.TrimControlPointsCanBeSimplified, true, "Trim can by simplified", null, ComponentProblemTypes_Options.ControlPointsCanBeSimplified.TrimSimplificationInitSettings).SetWeight(IssueSeverityType.Hint, 1, true);

            Infos.Add(ComponentProblemTypes.EdgeStartAndEndVertexesSame, true, "Edge start and end vertexes are same").SetWeight(IssueSeverityType.Error, 10, true);
            Infos.Add(ComponentProblemTypes.EdgeIsClosedButNoUniquInLoop, true, "Edge is wrongly closed").SetWeight(IssueSeverityType.Error, 10, true);
            Infos.Add(ComponentProblemTypes.EdgeIsClosedButEndAndStartPointsAreFar, true, "Edge is invalidly closed").SetWeight(IssueSeverityType.Error, 10, true);
            Infos.Add(ComponentProblemTypes.EdgeVerySmall, true, "Edge is very small").SetWeight(IssueSeverityType.Warning, 7, true);
            Infos.Add(ComponentProblemTypes.EdgeVerySmallUnatached, true, "Edge is very small and unattached").SetWeight(IssueSeverityType.Error, 15, true);
            Infos.Add(ComponentProblemTypes.EdgeInvalidDomainLength, true, "Edge invalid domain length").SetWeight(IssueSeverityType.Error, 10, true);
            Infos.Add(ComponentProblemTypes.EdgeCrossIntersection, true, "Edges cross-intersection", 1018).SetWeight(IssueSeverityType.Error, 10, true);
            Infos.Add(ComponentProblemTypes.EdgeHasKinks, true, "Edge have kink", 1017).SetWeight(IssueSeverityType.Warning, 10, true);
            Infos.Add(ComponentProblemTypes.EdgeZigZagControlpoints, true, "Edge deformed", 1016).SetWeight(IssueSeverityType.Warning, 15, true);
            Infos.Add(ComponentProblemTypes.EdgeControlPointsCanBeSimplified, false, "Edge can by simplified", 1015, ComponentProblemTypes_Options.ControlPointsCanBeSimplified.EdgeSimplificationInitSettings).SetWeight(IssueSeverityType.Hint, 1, true);
            Infos.Add(ComponentProblemTypes.EdgeNeedJoin, true, "Edges should be joined", 1014, ComponentProblemTypes_Options.EdgeNeedJoin.InitSettings).SetWeight(IssueSeverityType.Hint, 5, true);

            Infos.Add(ComponentProblemTypes.VertexFarFromEdges, true, "Vertex very far from edges", 1010).SetWeight(IssueSeverityType.Warning, 10, true);
            Infos.Add(ComponentProblemTypes.VertexFarFromTrims, true, "Vertex very far from trims").SetWeight(IssueSeverityType.Warning, 10, true);

            Infos.Add(ComponentProblemTypes.MeshIsEmpty, true, "Mesh is empty").SetWeight(IssueSeverityType.Error, 10, true);
            Infos.Add(ComponentProblemTypes.MeshHasInvalidFaces, true, "Mesh has invalid faces").SetWeight(IssueSeverityType.Error, 10, true);
            Infos.Add(ComponentProblemTypes.MeshHasDisjoints, true, "Mesh has disjoints").SetWeight(IssueSeverityType.Warning, 10, true);
            Infos.Add(ComponentProblemTypes.MeshHasUnattachedVertices, true, "Mesh has unattached vertices").SetWeight(IssueSeverityType.Warning, 10, true);
            Infos.Add(ComponentProblemTypes.MeshHasFlippedFaces, true, "Mesh has flipped faces").SetWeight(IssueSeverityType.Error, 10, true);

            Infos.ValidateEnumFullness();
        }