| 51 | \*---------------------------------------------------------------------------*/ |
| 52 | |
| 53 | class circleSet |
| 54 | : |
| 55 | public sampledSet |
| 56 | { |
| 57 | // Private data |
| 58 | |
| 59 | // Circle definition |
| 60 | |
| 61 | //- Origin (x, y, z) in global cartesian co-ordinates |
| 62 | point origin_; |
| 63 | |
| 64 | //- Axis of the circle |
| 65 | vector circleAxis_; |
| 66 | |
| 67 | //- Point on circle (x, y, z) in global cartesian co-ordinates |
| 68 | // Defines start point |
| 69 | point startPoint_; |
| 70 | |
| 71 | |
| 72 | // Sampling definition |
| 73 | |
| 74 | //- Sampling interval in degrees about the origin |
| 75 | scalar dTheta_; |
| 76 | |
| 77 | |
| 78 | // Private Member Functions |
| 79 | |
| 80 | //- Samples all points in sampleCoords. |
| 81 | void calcSamples |
| 82 | ( |
| 83 | DynamicList<point>& samplingPts, |
| 84 | DynamicList<label>& samplingCells, |
| 85 | DynamicList<label>& samplingFaces, |
| 86 | DynamicList<label>& samplingSegments, |
| 87 | DynamicList<scalar>& samplingCurveDist |
| 88 | ) const; |
| 89 | |
| 90 | //- Uses calcSamples to obtain samples. Copies them into *this. |
| 91 | void genSamples(); |
| 92 | |
| 93 | public: |
| 94 | |
| 95 | //- Runtime type information |
| 96 | TypeName("circle"); |
| 97 | |
| 98 | |
| 99 | // Constructors |
| 100 | |
| 101 | //- Construct from components |
| 102 | circleSet |
| 103 | ( |
| 104 | const word& name, |
| 105 | const polyMesh& mesh, |
| 106 | const meshSearch& searchEngine, |
| 107 | const word& axis, |
| 108 | const point& origin, |
| 109 | const vector& circleAxis, |
| 110 | const point& startPoint, |