@@ -210,6 +210,7 @@ message Direction {
210210message Box {
211211 Point min = 1 ;
212212 Point max = 2 ;
213+ Point center = 3 ;
213214}
214215
215216//
@@ -313,14 +314,20 @@ message DuplicateCurveProblemArea {
313314
314315message SmallCurveProblemArea {
315316 int32 id = 1 ;
316- repeated string curve_point_monikers = 2 ;
317+ repeated ansys.api.dbu.v0.EntityIdentifier curve_monikers = 2 ;
317318}
318319
319320message AdjustSimplifyProblemArea {
320321 int32 id = 1 ;
321322 repeated string body_monikers = 2 ;
322323}
323324
325+ message GapProblemArea {
326+ int32 id = 1 ;
327+ repeated ansys.api.dbu.v0.EntityIdentifier edge_monikers = 2 ;
328+ }
329+
330+
324331message RepairToolMessage {
325332 bool success = 1 ;
326333 repeated string created_bodies_monikers = 2 ;
@@ -578,6 +585,49 @@ message Gap {
578585 double distance = 1 ;
579586}
580587
588+ message NurbsCurve {
589+ repeated ControlPoint control_points = 1 ;
590+ NurbsData nurbs_data = 2 ;
591+ bool is_rational = 3 ;
592+ Parameterization parameterization = 4 ;
593+ }
594+
595+ message NurbsData {
596+ int32 degree = 1 ;
597+ bool is_closed = 2 ;
598+ bool is_periodic = 3 ;
599+ repeated Knot knots = 4 ;
600+ int32 order = 5 ;
601+ }
602+
603+ message Knot {
604+ int32 multiplicity = 1 ;
605+ double parameter = 2 ;
606+ }
607+
608+ message ControlPoint {
609+ Point position = 1 ;
610+ double weight = 2 ;
611+ }
612+
613+ message Parameterization {
614+ ParameterizationBounds bounds = 1 ;
615+ ParameterizationForm form = 2 ;
616+ }
617+
618+ message ParameterizationBounds {
619+ bool infinite_start = 1 ;
620+ double start = 2 ;
621+ bool infinite_end = 3 ;
622+ double end = 4 ;
623+ }
624+
625+ enum ParameterizationForm {
626+ OPEN = 0 ;
627+ CLOSED = 1 ;
628+ PERIODIC = 2 ;
629+ }
630+
581631enum DraftSide {
582632 DRAFTSIDE_NO_SPLIT = 0 ;
583633 DRAFTSIDE_THIS = 1 ;
@@ -613,4 +663,85 @@ enum PatternModificationType {
613663 PATTERNMODIFICATIONTYPE_SECONDARY_OVERALL_DIMENSION = 14 ;
614664 PATTERNMODIFICATIONTYPE_SECONDARY_SPACING_DIMENSION = 15 ;
615665 PATTERNMODIFICATIONTYPE_CIRCULAR_RADIUS = 16 ;
666+ }
667+
668+ enum InspectGeometryMessageType {
669+ INSPECT_GEOMETRY_UNKNOWN = 0 ;
670+ INSPECT_GEOMETRY_INFORMATION = 1 ;
671+ INSPECT_GEOMETRY_WARNING = 2 ;
672+ INSPECT_GEOMETRY_ERROR = 3 ;
673+ }
674+
675+ enum InspectGeometryLevel {
676+ COMPLETE = 0 ;
677+ VALIDATE = 1 ;
678+ SANITY = 2 ;
679+ }
680+
681+ enum InspectGeometryMessageId {
682+ INSPECT_GEOMETRY_ID_UNKNOWN = 0 ;
683+ NONE = 1 ;
684+ NOERROR = 2 ;
685+ ERROR_BODYTOPOLOGY = 3 ;
686+ ERROR_INSIDEOUTBODY = 4 ;
687+ ERROR_GENERALBODY = 5 ;
688+ ERROR_FACETOPOLOGY = 6 ;
689+ ERROR_FACELOOP = 7 ;
690+ ERROR_FACEGEOMETRY = 8 ;
691+ ERROR_FACEEDGEGEOMETRY = 9 ;
692+ ERROR_EDGEGEOMETRY = 10 ;
693+ ERROR_EDGENONMANIFOLD = 11 ;
694+ ERROR_EDGETOPOLOGY = 12 ;
695+ ERROR_VERTEX = 13 ;
696+ ERROR_VERTEXNONMANIFOLD = 14 ;
697+ ERROR_MESHSELFINTERSECTS = 15 ;
698+ WARNING_MULTIPLESHELLS = 16 ;
699+ ERROR_MESHISOPEN = 17 ;
700+ ERROR_MESHISNONMANIFOLD = 18 ;
701+ UNKNOWN_FACE_ERROR = 19 ;
702+ UNKNOWN_EDGE_ERROR = 20 ;
703+ INTERNAL_ERROR = 21 ;
704+ ERROR_FACEDISPLAY = 22 ;
705+ INFO_SLIVERFACE = 23 ;
706+ INFO_SLIVEREDGE = 24 ;
707+ ERROR_FACEINTERSECTION = 25 ;
708+ ERROR_FACESELFINTERSECTINGTOPOLOGY = 26 ;
709+ ERROR_FACEFACEINTERSECTION = 27 ;
710+ ERROR_EDGEOFFINEXACT = 28 ;
711+ ERROR_EDGESELFINTERSECTINGTOPOLOGY = 29 ;
712+ ERROR_MESHINCONSISTENTORIENTATION = 30 ;
713+ WARNING_GEOMETRYNONG1 = 31 ;
714+ WARNING_GEOMETRYSELFINTERSECTS = 32 ;
715+ WARNING_GEOMETRYCOLLAPSED = 33 ;
716+ WARNING_LOOPISNOTCLOSEDPROPERLY = 34 ;
717+ WARNING_CURVEISNOTCLOSEDPROPERLY = 35 ;
718+ WARNING_SURFACEISNOTCLOSEDPROPERLY = 36 ;
719+ WARNING_MESHHASFOLDOVERS = 37 ;
720+ ERROR_MESH = 38 ;
721+ ERROR_NOGEOMETRY = 39 ;
722+ VERTEXOVERLAP = 40 ;
723+ }
724+
725+ message InspectGeometryOptions {
726+ InspectGeometryLevel level = 1 ;
727+ int32 max_number_of_issues = 2 ;
728+ bool check_self_intersections = 3 ;
729+ bool find_g1_discontinuities = 4 ;
730+ double sliver_edge_tolerance = 5 ;
731+ double sliver_face_tolerance = 6 ;
732+ }
733+
734+ message InspectGeometryResultIssue
735+ {
736+ InspectGeometryMessageType message_type = 1 ;
737+ InspectGeometryMessageId message_id = 2 ;
738+ ansys.api.dbu.v0.EntityIdentifier entity_id = 3 ;
739+ string entity_type = 4 ;
740+ string message = 5 ;
741+ optional double scalar_value = 6 ;
742+ }
743+
744+ message InspectGeometryResult {
745+ ansys.api.dbu.v0.EntityIdentifier body_with_issues = 1 ;
746+ repeated InspectGeometryResultIssue issues = 2 ;
616747}
0 commit comments