126126net_transform_tess_cut_clean (struct PRIM * Prim , int PrimQty , int * cutcells ,
127127 int cutcellqty , int * mirrorseeds ,
128128 int * mirrorseedprims , int mirrorseedqty ,
129- struct TESS * pTess )
129+ struct TESS * pTess ,
130+ int * intseed_oldseed , int * pintseedqty )
130131{
131132 int i , j ;
132133 int * seeds = NULL , seedqty ;
@@ -149,6 +150,13 @@ net_transform_tess_cut_clean (struct PRIM *Prim, int PrimQty, int *cutcells,
149150
150151 int domfaceqty_old = (* pTess ).DomFaceQty ;
151152
153+ for (i = 1 ; i <= (* pTess ).PolyQty ; i ++ )
154+ if ((* pTess ).PolyState [i ] == -1 )
155+ {
156+ ut_array_1d_int_memcpy (intseed_oldseed + i + 1 , (* pintseedqty ) - i , intseed_oldseed + i );
157+ (* pintseedqty )-- ;
158+ }
159+
152160 neut_tess_compress (pTess );
153161
154162 ut_array_1d_int_addval (newdomfaces , PrimQty ,
@@ -176,7 +184,7 @@ net_transform_tess_cut_post (struct TESS TessGen, int *intseed_oldseed,
176184 ut_string_string (TessGen .CellCrySym , & (* pTess ).CellCrySym );
177185
178186 // CellId
179- if ((* pTess ).CellQty && TessGen .CellId )
187+ if ((* pTess ).CellQty && ! TessGen .CellId && intseedqty > 0 )
180188 {
181189 oldseed_max = ut_array_1d_int_max (intseed_oldseed + 1 , intseedqty );
182190
0 commit comments