forked from 1b-agent/opencadstudio-upstream
Fix Concentric build integration
This commit is contained in:
1 parent
a6a70420c4
commit
d9f3d71342
3 files changed
+6
-6
No files matched your search
@@ -55,8 +55,8 @@ impl ConcentricConstraintCommand {
|
||||
let planar = crate::entities::curve::entity_curve(entity)?;
|
||||
let local = planar.plane.project(point.to_array())?;
|
||||
let segments = planar.curve.segments();
|
||||
let (index, segment) = cadkernel::geom2d::nearest_of(segments.iter(), local)?;
|
||||
matches!(segment, cadkernel::geom2d::Curve::Arc(_))
|
||||
let (index, _) = cadkernel::geom2d::nearest_of(segments.iter(), local)?;
|
||||
matches!(segments.get(index), Some(cadkernel::geom2d::Curve::Arc(_)))
|
||||
.then(|| ParametricRef::segment_center(handle, index))
|
||||
}
|
||||
_ => None,
|
||||
|
||||
@@ -23,8 +23,8 @@ pub use point_on_entity::{
|
||||
};
|
||||
pub use tangent_command::TangentConstraintCommand;
|
||||
pub use tools::{
|
||||
colinear, concentric, equal, fixed, horizontal, normal, parallel, perpendicular, symmetric,
|
||||
tangent, vertical,
|
||||
colinear, concentric as concentric_tool, equal, fixed, horizontal, normal, parallel,
|
||||
perpendicular, symmetric, tangent, vertical,
|
||||
};
|
||||
pub use value::{
|
||||
angle_tool, dimensional_tools, distance_tool, AngleConstraintCommand,
|
||||
@@ -67,7 +67,7 @@ impl CadModule for ParametricModule {
|
||||
"SMOOTHCONSTRAINT", "Smooth",
|
||||
include_bytes!("../../../assets/icons/constrain/smooth.svg"),
|
||||
)),
|
||||
RibbonItem::LargeTool(concentric::tool()),
|
||||
RibbonItem::LargeTool(concentric_tool::tool()),
|
||||
RibbonItem::LargeTool(horizontal::tool()),
|
||||
RibbonItem::LargeTool(symmetric::tool()),
|
||||
RibbonItem::LargeTool(fixed::tool()),
|
||||
|
||||
@@ -837,11 +837,11 @@ fn glyph_placement_for_reference(
|
||||
if let Some(segment) = r.segment_center_index() {
|
||||
let planar = crate::entities::curve::entity_curve(entity)?;
|
||||
let curve = planar.curve.segments().into_iter().nth(segment)?;
|
||||
let on_arc = planar.plane.point_at(curve.point_at(0.5));
|
||||
let cadkernel::geom2d::Curve::Arc(arc) = curve else {
|
||||
return None;
|
||||
};
|
||||
let center = planar.plane.point_at(arc.centre);
|
||||
let on_arc = planar.plane.point_at(arc.point_at(0.5));
|
||||
let center = Vector3::new(center[0], center[1], center[2]);
|
||||
let on_arc = Vector3::new(on_arc[0], on_arc[1], on_arc[2]);
|
||||
return Some((on_arc, on_arc - center));
|
||||
|
||||
Reference in new issue
Block a user