Node: Regular Closed Plane Curve Segments, Previous: Regular Closed Plane Curve Intersections, Up: Regular Closed Plane Curve Reference



Segments

Path segment (unsigned int factor, [real angle = 0, [bool closed = true]]) const function
Returns a Path representing a segment of the Reg_Cl_Plane_Curve. factor must be >1 and <= number_of_points. If it is not, an error message is issued and an empty Path is returned.

If angle is non-zero, the segment Path is rotated by angle about a line from center in the direction of the normal to the plane of the Reg_Cl_Plane_Curve. Please note, that a Reg_Cl_Plane_Curve must have a meaningful center, in order for rotation to work. If the absolute value of angle >360, a warning is issued, and fmod(angle, 360) is used.

If closed is true, the Path will be a cycle, with the ends of the curved segment joined using the connector --. The curved segment is joined to the line using & on each side.

          Circle c(origin, 4, 30, 30, 30);
          Path p = c.segment(3, 130);
          p.show("p:");
          -| p:
          points.size() == 8
          connectors.size() == 8(-0.00662541, -0.888379, -1.79185) ..
          (0.741088, -0.673392, -1.73128) ..
          (1.37598, -0.355887, -1.40714) ..
          (1.80139, 0.0157987, -0.868767) ..
          (1.95255, 0.385079, -0.198137) .. (1.80646, 0.695735, 0.502658) &
          (1.80646, 0.695735, 0.502658) --
          (-0.00662541, -0.888379, -1.79185) & cycle;
          


[Figure 156. Not displayed.]

Fig. 156.

Path half ([real angle = 0, [bool closed = true]]) const inline function
Returns a Path using half of the Points on the Reg_Cl_Plane_Curve. The effect of the arguments angle and closed is similar to that in segment(), above.
          Ellipse e(origin, 3, 5, 20, 15, 12.5);
          Path p = e.half(0, false);
          


[Figure 157. Not displayed.]

Fig. 157.

Path quarter ([real angle = 0, [bool closed = true]]) const inline function
Returns a Path using a quarter of the Points on the Reg_Cl_Plane_Curve. The effect of the arguments angle and closed is similar to that in segment(), above.
          Ellipse e(origin, 3, 5, 60, 5, 2.5);
          Path p = e.quarter(180, false);
          


[Figure 158. Not displayed.]

Fig. 158.