129 double min_step_size)
const {
137 std::vector<double> zz;
146 for (
unsigned i = 0; i <=
zsteps; ++i) zz.push_back(i *
zstep);
150 for (
double z1 : zz) {
153 segments.insert(Segment(TVec(-
x0, -
y0,
z0), TVec(-
x0, -
y0,
z1)));
154 segments.insert(Segment(TVec(
x0, -
y0,
z0), TVec(
x0, -
y0,
z1)));
155 segments.insert(Segment(TVec(-
x0,
y0,
z0), TVec(-
x0,
y0,
z1)));
156 segments.insert(Segment(TVec(
x0,
y0,
z0), TVec(
x0,
y0,
z1)));
158 for (
unsigned i = 1; i <= (
steps + 1) / 2; ++i) {
161 segments.insert(Segment(TVec(-
x0, -
y0,
z1), TVec(-
x1, -y1,
z1)));
162 segments.insert(Segment(TVec(
x0, -
y0,
z1), TVec(
x1, -y1,
z1)));
163 segments.insert(Segment(TVec(-
x0,
y0,
z1), TVec(-
x1, y1,
z1)));
164 segments.insert(Segment(TVec(
x0,
y0,
z1), TVec(
x1, y1,
z1)));
166 segments.insert(Segment(TVec(-
x1, -y1,
z0), TVec(-
x1, -y1,
z1)));
167 segments.insert(Segment(TVec(
x1, -y1,
z0), TVec(
x1, -y1,
z1)));
168 segments.insert(Segment(TVec(-
x1, y1,
z0), TVec(-
x1, y1,
z1)));
169 segments.insert(Segment(TVec(
x1, y1,
z0), TVec(
x1, y1,
z1)));
172 segments.insert(Segment(TVec(-
x1, -y1,
z1), TVec(-
x1, y1,
z1)));
173 segments.insert(Segment(TVec(
x1, -y1,
z1), TVec(
x1, y1,
z1)));
176 segments.insert(Segment(TVec(-
x1, -y1,
z1), TVec(
x1, -y1,
z1)));
177 segments.insert(Segment(TVec(-
x1, y1,
z1), TVec(
x1, y1,
z1)));