|
SFCGAL
2.3.0
|
Options for controlling sweep operation behavior. More...
#include <Sweep.h>
Public Types | |
| enum | FrameMethod : std::uint8_t { FrameMethod::ROTATION_MINIMIZING, FrameMethod::SEGMENT_ALIGNED } |
| Frame computation method for sweep operation. More... | |
| enum | EndCapStyle : std::uint8_t { EndCapStyle::NONE, EndCapStyle::FLAT } |
| End cap style for sweep termination. More... | |
Public Attributes | |
| FrameMethod | frame_method = FrameMethod::ROTATION_MINIMIZING |
| Method used to compute the reference frame along the path. More... | |
| EndCapStyle | start_cap = EndCapStyle::FLAT |
| Style for the start of the sweep. More... | |
| EndCapStyle | end_cap = EndCapStyle::FLAT |
| Style for the end of the sweep. More... | |
| bool | closed_path = false |
| If true, connects the end of the path back to the start. More... | |
| double | anchor_x = 0.0 |
| Anchor point X coordinate in profile space (default: 0.0) The anchor point of the profile is the point that will travel exactly along the path. More... | |
| double | anchor_y = 0.0 |
| Anchor point Y coordinate in profile space (default: 0.0) More... | |
| std::optional< Kernel::Vector_3 > | reference_normal = std::nullopt |
| Optional reference vector to orient the profile consistently. More... | |
Options for controlling sweep operation behavior.
|
strong |
|
strong |
Frame computation method for sweep operation.
| Enumerator | |
|---|---|
| ROTATION_MINIMIZING |
Rotation Minimizing Frame (RMF) / Double Reflection Method. Best for smooth, organic paths (pipes, cables, knots). Computes frames that minimize twist around the tangent. Based on: Wang, W., et al. (2008). "Computation of rotation minimizing frames". ACM Transactions on Graphics, 27(1), 1-18. |
| SEGMENT_ALIGNED |
Segment Aligned (Discrete Miter). Best for architecture, mechanical parts, and CAD (beams, walls). Does not use continuous frame propagation. Instead, computes a constant orientation for each segment and projects vertices onto bisector planes at corners to create perfect miter joins. |
| double SFCGAL::algorithm::SweepOptions::anchor_x = 0.0 |
Anchor point X coordinate in profile space (default: 0.0) The anchor point of the profile is the point that will travel exactly along the path.
| double SFCGAL::algorithm::SweepOptions::anchor_y = 0.0 |
Anchor point Y coordinate in profile space (default: 0.0)
| bool SFCGAL::algorithm::SweepOptions::closed_path = false |
If true, connects the end of the path back to the start.
| EndCapStyle SFCGAL::algorithm::SweepOptions::end_cap = EndCapStyle::FLAT |
Style for the end of the sweep.
| FrameMethod SFCGAL::algorithm::SweepOptions::frame_method = FrameMethod::ROTATION_MINIMIZING |
Method used to compute the reference frame along the path.
| std::optional<Kernel::Vector_3> SFCGAL::algorithm::SweepOptions::reference_normal = std::nullopt |
Optional reference vector to orient the profile consistently.
If provided, the frame's normal direction is aligned with this vector (projected onto the plane perpendicular to the path tangent). Used internally by chamfer to align the cutting profile with face normals. Only affects SEGMENT_ALIGNED frame method.
| EndCapStyle SFCGAL::algorithm::SweepOptions::start_cap = EndCapStyle::FLAT |
Style for the start of the sweep.
1.8.10