@@ -149,8 +149,6 @@ namespace PCGExExtrudeTensors
149149 if (RemainingIterations > 1 )
150150 {
151151 // We re-entered bounds from a previously completed path.
152- // TODO : Start a new extrusion from head if selected mode allows for it
153- // TODO : Set extrusion origin to be the intersection point with the limit box
154152 if (const TSharedPtr<FExtrusion> ChildExtrusion = Processor->InitExtrusionFromExtrusion (SharedThis (this )))
155153 {
156154 ChildExtrusion->bIsChildExtrusion = true ;
@@ -252,17 +250,20 @@ namespace PCGExExtrudeTensors
252250
253251 void FProcessor::InitExtrusionFromSeed (const int32 InSeedIndex)
254252 {
255- if (Settings->bIgnoreStoppedSeeds && StopFilters)
256- {
257- if (StopFilters->Test (PointDataFacade->Source ->GetInPoint (InSeedIndex))) { return ; }
258- }
259-
260253 const int32 Iterations = PerPointIterations ? PerPointIterations->Read (InSeedIndex) : Settings->Iterations ;
261254 if (Iterations < 1 ) { return ; }
262255
256+ bool bIsStopped = false ;
257+ if (StopFilters)
258+ {
259+ bIsStopped = StopFilters->Test (PointDataFacade->Source ->GetInPoint (InSeedIndex));
260+ if (Settings->bIgnoreStoppedSeeds && bIsStopped) { return ; }
261+ }
262+
263263 const TSharedPtr<FExtrusion> NewExtrusion = CreateExtrusionTemplate (InSeedIndex, Iterations);
264264 if (!NewExtrusion) { return ; }
265265
266+ NewExtrusion->bIsProbe = bIsStopped;
266267 if (Settings->bUseMaxLength ) { NewExtrusion->MaxLength = PerPointMaxLength ? PerPointMaxLength->Read (InSeedIndex) : Settings->MaxLength ; }
267268 if (Settings->bUseMaxPointsCount ) { NewExtrusion->MaxPointCount = PerPointMaxPoints ? PerPointMaxPoints->Read (InSeedIndex) : Settings->MaxPointsCount ; }
268269
0 commit comments