forked from 1b-agent/opencadstudio-upstream
feat(entities): surface remaining 2D + Region fields in properties
Closes out the 2D-entity audit (and the Region partner that ships next to Solid3D / Body). Round-trip-only metadata fields plus a few editable ones gain Properties-panel rows so the values the parser populates are visible and don't get silently dropped on save: - Hatch: seed_points count, pixel_size, normal - Polyline2D: smooth_surface, default_start_width, default_end_width, thickness, normal (with editors for the widths/thickness) - Region: uid, silhouettes (shared file with Solid3D / Body) - Underlay: clip_inverted - RasterImage: class_version, definition_handle, definition_reactor_handle - Wipeout: class_version, clip_mode, definition_handle, definition_reactor_handle - Leader: annotation_handle, override_color - Tolerance: dimension_style_name, dimension_style_handle, dimension_gap, text_height (editable), direction, normal - MLine: style_handle, style_element_count, justification picker - Ole2Frame: version, source_application, binary_data size, dwg_mode, dwg_trailing_byte, is_paper_space - Viewport: snap_base/spacing/angle, twist_angle, front/back clip Z, circle_sides, grid_flags, grid_major, base_ucs_handle, ucs_ortho_type, background_handle, shade_plot_handle, visual_style_handle, default_lighting, default_lighting_type, ambient_color (with editors for the snap / clip / circle_sides values) Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
1 parent
613d6cf99d
commit
0b4facc50d
10 files changed
+361
-1
No files matched your search
@@ -290,6 +290,41 @@ impl PropertyEditable for Tolerance {
|
||||
edit("Insert X", "tol_ix", self.insertion_point.x),
|
||||
edit("Insert Y", "tol_iy", self.insertion_point.y),
|
||||
edit("Insert Z", "tol_iz", self.insertion_point.z),
|
||||
ro(
|
||||
"Dim Style",
|
||||
"tol_dim_style",
|
||||
if self.dimension_style_name.is_empty() {
|
||||
"(default)".to_string()
|
||||
} else {
|
||||
self.dimension_style_name.clone()
|
||||
},
|
||||
),
|
||||
ro(
|
||||
"Dim Style Handle",
|
||||
"tol_dim_style_handle",
|
||||
match self.dimension_style_handle {
|
||||
Some(h) if !h.is_null() => format!("{:X}", h.value()),
|
||||
_ => "(none)".to_string(),
|
||||
},
|
||||
),
|
||||
edit("Text Height", "tol_text_height", self.text_height),
|
||||
edit("Dim Gap", "tol_dim_gap", self.dimension_gap),
|
||||
ro(
|
||||
"Direction",
|
||||
"tol_direction",
|
||||
format!(
|
||||
"{:.3}, {:.3}, {:.3}",
|
||||
self.direction.x, self.direction.y, self.direction.z
|
||||
),
|
||||
),
|
||||
ro(
|
||||
"Normal",
|
||||
"tol_normal",
|
||||
format!(
|
||||
"{:.3}, {:.3}, {:.3}",
|
||||
self.normal.x, self.normal.y, self.normal.z
|
||||
),
|
||||
),
|
||||
],
|
||||
}
|
||||
}
|
||||
@@ -302,6 +337,8 @@ impl PropertyEditable for Tolerance {
|
||||
"tol_ix" => self.insertion_point.x = v,
|
||||
"tol_iy" => self.insertion_point.y = v,
|
||||
"tol_iz" => self.insertion_point.z = v,
|
||||
"tol_text_height" if v > 0.0 => self.text_height = v,
|
||||
"tol_dim_gap" => self.dimension_gap = v,
|
||||
_ => {}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user