cad-editor/src/entities
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Hakan f4ae0e7773 fix(scene): per-line text greek honors word-wrap subline count
`text_obb_corners_native` derived MText line count from explicit `\n`
matches in `m.value`, so any MText that relied on `\P`/`\N` breaks or
word-wrap (rectangle_width-driven) reported a single line. The greek
emitter then split the OBB into one row and the user saw a single box
on top of a 5-line wrapped paragraph.

  - text_support: new `mtext_line_count` — strip codes, split on
    \n/\P/\N, word-wrap each paragraph against `rectangle_width`,
    sum. Same line splitting the MText/MultiLeader renderers already
    perform; centralized for reuse.
  - text_obb_corners_native: takes `mtext_lines_override: Option<usize>`.
    When supplied, OBB height = h_world × n × line_spacing_factor; this
    also overrides a possibly stale `rectangle_height` on resaved DWGs.
  - Top-level greek paths (scene/mod.rs) compute the line count via
    `mtext_line_count` and pass it through to baseline / rect emission.
  - block_cache: tessellate_sub_local computes the count at defn build
    so the stored `text_obb_local` is wrap-aware; emit_text_baseline
    and emit_greeked_text recover n_lines from `ulen / h_local` as
    before and now produce the correct per-row split inside Inserts.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-15 17:41:56 +03:00
..
arc.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
attribute.rs cargo fmt 2026-05-12 10:36:15 +03:00
circle.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
common.rs first commit 2026-03-22 14:56:27 +03:00
dimension.rs cargo fmt 2026-05-12 10:36:15 +03:00
ellipse.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
hatch.rs cargo fmt 2026-05-12 10:36:15 +03:00
insert.rs cargo fmt 2026-05-12 10:36:15 +03:00
leader.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
line.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
lwpolyline.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
mesh.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
mline.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
mod.rs cargo fmt 2026-05-12 10:36:15 +03:00
mtext.rs feat(render): solid fill for PolyfaceMesh and PolygonMesh entities 2026-05-06 23:24:26 +03:00
multileader.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
ole2frame.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
point.rs feat(render): solid fill for PolyfaceMesh and PolygonMesh entities 2026-05-06 23:24:26 +03:00
polyline.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
raster_image.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
ray.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
shape.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
solid.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
solid3d.rs cargo fmt 2026-05-12 10:36:15 +03:00
spline.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
table.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
text.rs cargo fmt 2026-05-12 10:36:15 +03:00
text_support.rs fix(scene): per-line text greek honors word-wrap subline count 2026-05-15 17:41:56 +03:00
tolerance.rs cargo fmt 2026-05-12 10:36:15 +03:00
traits.rs cargo fmt 2026-05-12 10:36:15 +03:00
underlay.rs fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
viewport.rs cargo fmt 2026-05-12 10:36:15 +03:00