Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #include "splineEdge.H"
00027 #include <OpenFOAM/addToRunTimeSelectionTable.H>
00028
00029
00030
00031
00032 namespace Foam
00033 {
00034 defineTypeNameAndDebug(splineEdge, 0);
00035
00036 addToRunTimeSelectionTable
00037 (
00038 curvedEdge,
00039 splineEdge,
00040 Istream
00041 );
00042
00043
00044 addNamedToRunTimeSelectionTable
00045 (
00046 curvedEdge,
00047 splineEdge,
00048 Istream,
00049 simpleSpline
00050 );
00051
00052
00053 addNamedToRunTimeSelectionTable
00054 (
00055 curvedEdge,
00056 splineEdge,
00057 Istream,
00058 polySpline
00059 );
00060
00061 }
00062
00063
00064
00065
00066 Foam::splineEdge::splineEdge
00067 (
00068 const pointField& points,
00069 const label start,
00070 const label end,
00071 const pointField& internalPoints
00072 )
00073 :
00074 curvedEdge(points, start, end),
00075 CatmullRomSpline(appendEndPoints(points, start, end, internalPoints))
00076 {}
00077
00078
00079 Foam::splineEdge::splineEdge(const pointField& points, Istream& is)
00080 :
00081 curvedEdge(points, is),
00082 CatmullRomSpline(appendEndPoints(points, start_, end_, pointField(is)))
00083 {
00084 token t(is);
00085 is.putBack(t);
00086
00087
00088 if (t == token::BEGIN_LIST)
00089 {
00090 vector tangent0Ignored(is);
00091 vector tangent1Ignored(is);
00092 }
00093 }
00094
00095
00096
00097
00098 Foam::splineEdge::~splineEdge()
00099 {}
00100
00101
00102
00103
00104 Foam::point Foam::splineEdge::position(const scalar mu) const
00105 {
00106 return CatmullRomSpline::position(mu);
00107 }
00108
00109
00110 Foam::scalar Foam::splineEdge::length() const
00111 {
00112 return CatmullRomSpline::length();
00113 }
00114
00115
00116