55 static size_t ComputeNumPoints();
57 static size_t ComputeNumNormals()
63 static TfToken GetNormalsInterpolation()
66 return GeomUtilInterpolationTokens->uniform;
72 template<
typename PointIterType,
75 typename _EnableIfGfVec3Iterator<PointIterType>::type>
76 static void GeneratePoints(
78 const ScalarType xLength,
79 const ScalarType yLength,
80 const ScalarType zLength,
84 typename std::iterator_traits<PointIterType>::value_type;
86 _GeneratePointsImpl(xLength, yLength, zLength,
87 framePtr ? _PointWriter<PointType>(iter, framePtr)
88 : _PointWriter<PointType>(iter));
91 using GeomUtilMeshGeneratorBase::GeneratePoints;
93 template<
typename PointIterType,
95 typename _EnableIfGfVec3Iterator<PointIterType>::type>
96 static void GenerateNormals(
101 typename std::iterator_traits<PointIterType>::value_type;
103 _GenerateNormalsImpl(
104 framePtr ? _PointWriter<PointType>(iter, framePtr)
105 : _PointWriter<PointType>(iter));
108 using GeomUtilMeshGeneratorBase::GenerateNormals;
112 template<
typename Po
intType>
113 static void _GeneratePointsImpl(
114 const typename PointType::ScalarType xLength,
115 const typename PointType::ScalarType yLength,
116 const typename PointType::ScalarType zLength,
117 const _PointWriter<PointType>& ptWriter);
119 template<
typename Po
intType>
120 static void _GenerateNormalsImpl(
121 const _PointWriter<PointType>& ptWriter);