bool TopologyRefinerFactoryBase::prepareFaceVaryingChannels(TopologyRefiner& refiner) { Vtr::internal::Level& baseLevel = refiner.getLevel(0); int regVertexValence = Sdc::SchemeTypeTraits::GetRegularVertexValence(refiner.GetSchemeType()); int regBoundaryValence = regVertexValence / 2; for (int channel=0; channel<refiner.GetNumFVarChannels(); ++channel) { baseLevel.completeFVarChannelTopology(channel, regBoundaryValence); } return true; }
bool TopologyRefinerFactoryBase::prepareFaceVaryingChannels(TopologyRefiner& refiner) { Vtr::internal::Level& baseLevel = refiner.getLevel(0); int regVertexValence = Sdc::SchemeTypeTraits::GetRegularVertexValence(refiner.GetSchemeType()); int regBoundaryValence = regVertexValence / 2; for (int channel=0; channel<refiner.GetNumFVarChannels(); ++channel) { if (baseLevel.getNumFVarValues(channel) == 0) { char msg[1024]; snprintf(msg, 1024, "Failure in TopologyRefinerFactory<>::Create() -- " "face-varying channel %d has no values.", channel); Error(FAR_RUNTIME_ERROR, msg); return false; } baseLevel.completeFVarChannelTopology(channel, regBoundaryValence); } return true; }