From 066b3158e7e1e46dcb03deed16ab70f9157dfdc7 Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Fri, 4 Dec 2009 15:34:42 +0100 Subject: [PATCH] quickly implemented BSpline2 as an alternative B-Spline implementation - also looks reasonable and doesn't deviate much from Catmull-Rom --- applications/test/spline/splineTest.C | 35 +++-- src/mesh/blockMesh/Make/files | 1 + src/mesh/blockMesh/curvedEdges/BSpline2.C | 131 ++++++++++++++++++ src/mesh/blockMesh/curvedEdges/BSpline2.H | 126 +++++++++++++++++ .../blockMesh/curvedEdges/CatmullRomSpline.C | 2 +- 5 files changed, 286 insertions(+), 9 deletions(-) create mode 100644 src/mesh/blockMesh/curvedEdges/BSpline2.C create mode 100644 src/mesh/blockMesh/curvedEdges/BSpline2.H diff --git a/applications/test/spline/splineTest.C b/applications/test/spline/splineTest.C index c4c8f1434d..4c793c2136 100644 --- a/applications/test/spline/splineTest.C +++ b/applications/test/spline/splineTest.C @@ -27,7 +27,9 @@ License #include "vector.H" #include "IFstream.H" + #include "BSpline.H" +#include "BSpline2.H" #include "CatmullRomSpline.H" using namespace Foam; @@ -39,8 +41,9 @@ int main(int argc, char *argv[]) { argList::noParallel(); argList::validArgs.insert("file .. fileN"); - argList::addBoolOption("B", "B-Spline"); - argList::addBoolOption("cmr", "catmull-rom spline (default)"); + argList::addBoolOption("Bold", "B-Spline implementation OLD"); + argList::addBoolOption("Bnew", "B-Spline implementation NEW"); + argList::addBoolOption("CMR", "catmull-rom spline (default)"); argList::addOption ( "n", @@ -55,11 +58,12 @@ int main(int argc, char *argv[]) args.printUsage(); } - bool useBSpline = args.optionFound("B"); - bool useCatmullRom = args.optionFound("cmr"); + bool useBSplineOld = args.optionFound("Bold"); + bool useBSplineNew = args.optionFound("Bnew"); + bool useCatmullRom = args.optionFound("CMR"); label nSeg = args.optionLookupOrDefault