@@ -29,7 +29,7 @@ def __init__(self, loop=None, brep=None):
2929 self ._loop = loop
3030 self ._brep = brep
3131
32- def add_trim (self , curve , edge_index , is_reversed , iso_status ):
32+ def add_trim (self , curve , edge_index , is_reversed , iso_status , vertex_index ):
3333 """Add trim to the new Brep.
3434
3535 Parameters
@@ -50,8 +50,12 @@ def add_trim(self, curve, edge_index, is_reversed, iso_status):
5050
5151 """
5252 c_index = self ._brep .AddTrimCurve (curve )
53- edge = self ._brep .Edges [edge_index ]
54- trim = self ._brep .Trims .Add (edge , is_reversed , self ._loop , c_index )
53+ if edge_index == - 1 : # singular trim
54+ vertex = self ._brep .Vertices [vertex_index ]
55+ trim = self ._brep .Trims .AddSingularTrim (vertex , self ._loop , iso_status , c_index )
56+ else :
57+ edge = self ._brep .Edges [edge_index ]
58+ trim = self ._brep .Trims .Add (edge , is_reversed , self ._loop , c_index )
5559 trim .IsoStatus = iso_status
5660 trim .SetTolerances (TOLERANCE , TOLERANCE )
5761 return trim
@@ -123,8 +127,8 @@ def __init__(self):
123127 @property
124128 def result (self ):
125129 is_valid , log = self ._brep .IsValidWithLog ()
126- if not is_valid :
127- raise BrepInvalidError ("Brep reconstruction failed!\n {}" .format (log ))
130+ # if not is_valid:
131+ # raise BrepInvalidError("Brep reconstruction failed!\n{}".format(log))
128132 return self ._brep
129133
130134 def add_vertex (self , point ):
0 commit comments