Skip to content

Commit 59f63f0

Browse files
authored
Add the circular involute as a new path segment (#819)
* Add circular involute path segment * Remove duplicate and document involute * Change radii to LengthUnit
1 parent 0e9158c commit 59f63f0

File tree

2 files changed

+16
-1
lines changed

2 files changed

+16
-1
lines changed

modeling-cmds/src/ok_response.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -845,6 +845,5 @@ define_ok_modeling_cmd_response_enum! {
845845
/// The response from the 'SetGridReferencePlane'.
846846
#[derive(Debug, Serialize, Deserialize, Clone, JsonSchema, ModelingCmdOutput)]
847847
pub struct SetGridReferencePlane {}
848-
849848
}
850849
}

modeling-cmds/src/shared.rs

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -324,6 +324,22 @@ pub enum PathSegment {
324324
///Whether or not interior and end are relative to the previous path position
325325
relative: bool,
326326
},
327+
///Adds a circular involute from the current position that goes through the given end_radius
328+
///and is rotated around the current point by angle.
329+
CircularInvolute {
330+
///The involute is described between two circles, start_radius is the radius of the inner
331+
///circle.
332+
start_radius: LengthUnit,
333+
///The involute is described between two circles, end_radius is the radius of the outer
334+
///circle.
335+
end_radius: LengthUnit,
336+
///The angle to rotate the involute by. A value of zero will produce a curve with a tangent
337+
///along the x-axis at the start point of the curve.
338+
angle: f64,
339+
///If reverse is true, the segment will start
340+
///from the end of the involute, otherwise it will start from that start.
341+
reverse: bool,
342+
},
327343
}
328344

329345
/// An angle, with a specific unit.

0 commit comments

Comments
 (0)