@@ -681,7 +681,8 @@ Manifold Manifold::CalculateNormals(int normalIdx, float minSharpAngle) const {
681
681
* Smooths out the Manifold by filling in the halfedgeTangent vectors. The
682
682
* geometry will remain unchanged until Refine or RefineToLength is called to
683
683
* interpolate the surface. This version uses the supplied vertex normal
684
- * properties to define the tangent vectors.
684
+ * properties to define the tangent vectors. Faces of two coplanar triangles
685
+ * will be marked as quads, while faces with three or more will be flat.
685
686
*
686
687
* @param normalIdx The first property channel of the normals. NumProp must be
687
688
* at least normalIdx + 3. Any vertex where multiple normals exist and don't
@@ -699,7 +700,8 @@ Manifold Manifold::SmoothByNormals(int normalIdx) const {
699
700
* Smooths out the Manifold by filling in the halfedgeTangent vectors. The
700
701
* geometry will remain unchanged until Refine or RefineToLength is called to
701
702
* interpolate the surface. This version uses the geometry of the triangles and
702
- * pseudo-normals to define the tangent vectors.
703
+ * pseudo-normals to define the tangent vectors. Faces of two coplanar triangles
704
+ * will be marked as quads.
703
705
*
704
706
* @param minSharpAngle degrees, default 60. Any edges with angles greater than
705
707
* this value will remain sharp. The rest will be smoothed to G1 continuity,
@@ -722,11 +724,12 @@ Manifold Manifold::SmoothOut(float minSharpAngle, float minSmoothness) const {
722
724
723
725
/* *
724
726
* Increase the density of the mesh by splitting every edge into n pieces. For
725
- * instance, with n = 2, each triangle will be split into 4 triangles. These
726
- * will all be coplanar (and will not be immediately collapsed) unless the
727
- * Mesh/Manifold has halfedgeTangents specified (e.g. from the Smooth()
728
- * constructor), in which case the new vertices will be moved to the
729
- * interpolated surface according to their barycentric coordinates.
727
+ * instance, with n = 2, each triangle will be split into 4 triangles. Quads
728
+ * will ignore their interior triangle bisector. These will all be coplanar (and
729
+ * will not be immediately collapsed) unless the Mesh/Manifold has
730
+ * halfedgeTangents specified (e.g. from the Smooth() constructor), in which
731
+ * case the new vertices will be moved to the interpolated surface according to
732
+ * their barycentric coordinates.
730
733
*
731
734
* @param n The number of pieces to split every edge into. Must be > 1.
732
735
*/
@@ -743,7 +746,8 @@ Manifold Manifold::Refine(int n) const {
743
746
* roughly the input length. Interior verts are added to keep the rest of the
744
747
* triangulation edges also of roughly the same length. If halfedgeTangents are
745
748
* present (e.g. from the Smooth() constructor), the new vertices will be moved
746
- * to the interpolated surface according to their barycentric coordinates.
749
+ * to the interpolated surface according to their barycentric coordinates. Quads
750
+ * will ignore their interior triangle bisector.
747
751
*
748
752
* @param length The length that edges will be broken down to.
749
753
*/
0 commit comments