Skip to content

Conversation

@alexanderoster
Copy link
Contributor

No description provided.

netfabb and others added 30 commits September 6, 2025 00:48
…factor processing (#37)

* LibMCCore: Refine hatch interpolation handling and improve nonlinear factor processing

- Core toolpath logic (amc_toolpathlayerdata.cpp):
  - Introduced compile-time switch `USEALLMODIFICATIONFACTORS` to control whether
    all modification factors (F/G/H) or only factor F are processed.
  - Added safeguard when assigning nonlinear interpolation data to avoid
    out-of-range vector access when `nSubInterpolationCount` is zero.

- ScanLabSMC driver (CSMCJobInstance):
  - Added parsing and output of new active channel data (`active0`, `active1`) in
    SMC v1.0 simulation files.
  - Updated CSV field mapping to include new channels, replacing placeholder
    unused entries.
  - Extended data table schema to add `active0` and `active1` columns.
  - Populated active channel values in the output table and reset corresponding
    vectors after use.

- LibMCEnv layer evaluation (libmcenv_toolpathlayer.cpp):
  - Commented out exception throw for incomplete hatch profile evaluation to
    allow partial evaluation without interrupting execution.

Signed-off-by: Yury Rodzikau <y.rodzikau@c1-technologies.com>

* LibMCCore: add laser power channel to scatter plot and implement datatable channel filling

- Renamed simulation column `active0` to `power` to reflect actual laser power semantics
  in SMC v1.1 job data output.
- Updated simulation data export to write laser power values into the new `power` column.
- Implemented `fillScatterplotChannel` in `libmcenv_datatable.cpp`:

* LibMCCore/WebClient: add laser power visualization mode and power data display in point inspector

- Added a new "powerramp" color mode in LayerView for visualizing laser power
  distribution across the toolpath.
- Implemented computeChannelColumnRange(...) to detect the min/max of a data
  column and normalize power values for coloring.
- Added makeLaserPowerColors() to convert normalized power values to HSL-based
  RGB gradient for visual representation.
- Extended point inspector to display per-point laser power.
- Updated data loading logic to correctly populate the "power" channel from
  backend stream data.
- Updated Vue integration to cycle `laseron → powerramp → uniform → time`
  when toggling color modes.

Signed-off-by: Yury Rodzikau <y.rodzikau@c1-technologies.com>

---------

Signed-off-by: Yury Rodzikau <y.rodzikau@c1-technologies.com>
… get absolute path of 8c48dc68_core.apidocs(2) (#40)
…to job execution lifecycle (#43)

- SDK bindings (`libmcdriver_scanlabsmc_sdk.*`):
  - Added bindings for `slsc_ctrl_write_digital_x`, `slsc_ctrl_write_digital_mask_x`,
    `slsc_job_write_digital_x` and `slsc_job_write_digital_mask_x`.
  - Introduced new enum `slsc_DigitalOutput` to address digital output channels.
  - Added wrapper functions with logging support for journaling/tracing.

- Job instance (`libmcdriver_scanlabsmc_smcjobinstance.cpp`):
  - Digital output is now explicitly initialized to `0` before a job starts.
  - Output is set to `1` immediately after `slsc_job_begin` to signal job activation.
  - On finalization, output is set back to `0` before stopping the recorder.
  - Recording start/stop has been fully enabled to capture digital transitions.

  Signed-off-by: Yury Rodzikau <y.rodzikau@c1-technologies.com>
alexanderoster and others added 19 commits October 31, 2025 11:36
…ing (#47)

- Updated the SMC job recording configuration to use
  `slsc_RecordSet_HeadAPosition` instead of the previous
  `slsc_RecordSet_SetPositions` for record set A.
- Ensures that the recorded data includes set and actual scanner head A
  position information during job execution.

Signed-off-by: Yury Rodzikau <y.rodzikau@c1-technologies.com>
…ent (#46)

This fixes error: "invalid execution delay error".
This could occur after NTP clock adjustments causing system clock to jump backwards.
* Signalslot unittest: Use valid UUIDs to make tests pass

* AccessControl unittests: fix invalid permission identifiers, e.g perm_read, not perm.read
)

The executionlist component now works like the buildlist component
Allowing config.xml to define upload controls with attribute "acceptedtypes".

Example:
<upload class="image" caption="Select png file to upload" acceptedtypes=".png" successevent="onfileuploadfinished"/>
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.

5 participants