Skip to content

raygeo migration#251

Merged
knipknap merged 18 commits into
mainfrom
raygeo-migration
May 22, 2026
Merged

raygeo migration#251
knipknap merged 18 commits into
mainfrom
raygeo-migration

Conversation

@knipknap

@knipknap knipknap commented May 21, 2026

Copy link
Copy Markdown
Contributor

Migrates ops to use external raygeo library.

knipknap added 17 commits May 19, 2026 19:04
Add per-type accessors (bezier_params, power, speed, frequency,
pulse_width, laser_uid, layer_uid, workpiece_uid, section_params,
extra_axes, dwell_duration) and a linearize() method to Ops.
Migrate gcode, vertex, cairo, and ruida encoders from Command
object dispatch to CommandType/CommandCategory-based dispatch.
Port all transformers, producers, simulators, encoders, and ~700+
tests from direct Command/ops.commands usage to the index-based Ops
API. Add lazy state computation in clipping._get_state() to avoid
expensive preload_state() call. Update tracking docs to reflect
remaining work.
state_at(), preloaded_state() now return MachineState NamedTuple.
inspect() returns CommandInfo NamedTuple. This makes the read API
PyO3-friendly as required for the upcoming Rust port.
Inline group_by_state_continuity and flip_segment into Ops methods.
Delete group.py and flip.py. Refactor estimate_time to use Ops index
API instead of raw Command list. Add 42 tests covering 19 previously
untested public Ops methods.
@knipknap
knipknap merged commit 0073b9f into main May 22, 2026
29 checks passed
@knipknap
knipknap deleted the raygeo-migration branch June 12, 2026 11:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant