42 cylinderAnnulusToCell::typeName,
43 "\n Usage: cylinderAnnulusToCell (p1X p1Y p1Z) (p2X p2Y p2Z)"
44 " outerRadius innerRadius\n\n"
45 " Select all cells with cell centre within bounding cylinder annulus\n\n"
51 void Foam::cylinderAnnulusToCell::combine(topoSet&
set,
const bool add)
const
53 const vector axis = p2_ - p1_;
54 const scalar orad2 =
sqr(outerRadius_);
55 const scalar irad2 =
sqr(innerRadius_);
56 const scalar magAxis2 =
magSqr(axis);
63 scalar magD = d & axis;
65 if ((magD > 0) && (magD < magAxis2))
67 scalar d2 = (d &
d) -
sqr(magD)/magAxis2;
68 if ((d2 < orad2) && (d2 > irad2))
84 const scalar outerRadius,
85 const scalar innerRadius
91 outerRadius_(outerRadius),
92 innerRadius_(innerRadius)
141 Info<<
" Adding cells with centre within cylinder annulus,"
143 << p1_ <<
", p2 = " << p2_ <<
" and outer radius = " << outerRadius_
144 <<
" and inner radius = " << innerRadius_
151 Info<<
" Removing cells with centre within cylinder, with p1 = "
152 << p1_ <<
", p2 = " << p2_ <<
" and outer radius = " << outerRadius_
153 <<
" and inner radius " << innerRadius_