46 bool anyFunctionFound =
false;
60 if (isA<searchableSurfaceControl>(cSF))
62 const searchableSurfaceControl& sSC =
63 refCast<const searchableSurfaceControl>(cSF);
65 anyFunctionFound = sSC.cellSize(pt, minSize, previousPriority);
67 if (previousPriority > maxPriority)
69 maxPriority = previousPriority;
75 return anyFunctionFound;
84 const dictionary& shapeControlDict,
85 const conformationSurfaces& geometryToConformTo,
86 const scalar& defaultCellSize
89 shapeControlDict_(shapeControlDict),
90 geometryToConformTo_(geometryToConformTo),
91 controlFunctions_(shapeControlDict_.size()),
92 defaultCellSize_(defaultCellSize)
98 word shapeControlEntryName = iter().keyword();
100 const dictionary& controlFunctionDict
102 shapeControlDict_.subDict(shapeControlEntryName)
105 Info<<
nl <<
"Shape Control : " << shapeControlEntryName <<
endl;
108 controlFunctions_.set
114 shapeControlEntryName,
116 geometryToConformTo_,
127 SortableList<label> functionPriorities(functionI);
129 forAll(controlFunctions_, funcI)
131 functionPriorities[funcI] = controlFunctions_[funcI].maxPriority();
134 functionPriorities.reverseSort();
137 invert(functionPriorities.size(), functionPriorities.indices());
139 controlFunctions_.reorder(invertedFunctionPriorities);
156 scalar size = defaultCellSize_;
157 label maxPriority = -1;
159 evalCellSizeFunctions(pt, size, maxPriority);
171 scalar size = defaultCellSize_;
174 evalCellSizeFunctions(pt, size, maxPriority);