From fbd85d4d779e0c7785ea2dce23dceda9bc4ec6e1 Mon Sep 17 00:00:00 2001 From: iasonmanolas Date: Wed, 19 Jan 2022 12:32:55 +0200 Subject: [PATCH] computing the base triangle height of a pattern as the half of the bbox of the fanned configuration. Previous version used the triangleEdgeSize variable which must had been set and made things more complicated --- trianglepatterngeometry.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/trianglepatterngeometry.cpp b/trianglepatterngeometry.cpp index 0031a23..b189371 100755 --- a/trianglepatterngeometry.cpp +++ b/trianglepatterngeometry.cpp @@ -99,11 +99,15 @@ PatternGeometry PatternGeometry::createTile(PatternGeometry &pattern) vcg::tri::UpdatePosition::Matrix(fan, R); } vcg::Matrix44d T; - const double centerAngle = 2 * M_PI / fanSize; - const double triangleHeight = std::sin((M_PI - centerAngle) / 2) - * PatternGeometry().triangleEdgeSize; + // const double centerAngle = 2 * M_PI / fanSize; + // const double triangleHeight = std::sin((M_PI - centerAngle) / 2) + // * PatternGeometry().triangleEdgeSize; + vcg::tri::UpdateBounding::Box(fan); + const double triangleHeight = fan.bbox.DimY() / 2; T.SetTranslate(0, -2 * triangleHeight, 0); vcg::tri::UpdatePosition::Matrix(fan, T); + // fan.registerForDrawing(); + // polyscope::show(); PatternGeometry fanOfFan = createFan(fan); vcg::tri::Append::Mesh(tile, fanOfFan);