reorganize and rename driver files for consistency and clarity

This commit is contained in:
Stewart Allen 2026-01-08 16:52:41 -05:00
commit 67f405fd7b
74 changed files with 283 additions and 283 deletions

View file

@ -29,12 +29,12 @@ import { platform } from './platform.js';
import { selection } from './selected.js';
import { settingsUI } from './conf/dialog.js';
import { showDevices } from './devices.js';
import { showTools } from '../mode/cam/tools.js';
import { showTools } from '../mode/cam/app/tools.js';
import { space as SPACE } from '../../moto/space.js';
import { stats } from './stats.js';
import { types as load } from '../../load/file.js';
import { UI } from './inputs.js';
import { updateTool } from '../mode/cam/tools.js';
import { updateTool } from '../mode/cam/app/tools.js';
import { view as viewModule } from './view-mode.js';
import { visuals } from './visuals.js';
import { widgets } from './widgets.js';

View file

@ -6,8 +6,8 @@ import { client } from './workers.js';
import { local } from '../../data/local.js';
import { util } from '../../geo/base.js';
import { MODES } from './consts.js';
import { LASER as laser_driver } from '../mode/laser/driver.js';
import { SLA as sla_client } from '../mode/sla/init-ui.js';
import { LASER as laser_driver } from '../mode/laser/init-work.js';
import { SLA as sla_client } from '../mode/sla/app/init-ui.js';
import { hash } from '../../ext/md5.js';
/**

View file

@ -5,20 +5,20 @@ import { api } from '../api.js';
import { bind } from './bind.js';
import { version } from '../../../moto/license.js';
import { fileOps } from '../file-ops.js';
import { init as initCAM } from '../../mode/cam/init-ui.js';
import { init as initCAM } from '../../mode/cam/app/init-ui.js';
import { init as initDRAG } from '../../mode/drag/init-ui.js';
import { init as initFDM } from '../../mode/fdm/init-ui.js';
import { init as initFDM } from '../../mode/fdm/app/init-ui.js';
import { init as initLaser } from '../../mode/laser/init-ui.js';
import { init as initSLA } from '../../mode/sla/init-ui.js';
import { init as initSLA } from '../../mode/sla/app/init-ui.js';
import { init as initWEDM } from '../../mode/wedm/init-ui.js';
import { init as initWJET } from '../../mode/wjet/init-ui.js';
import { interact } from '../mouse.js';
import { keyboard } from '../keyboard.js';
import { local as sdb } from '../../../data/local.js';
import { menu as menuCAM } from '../../mode/cam/init-menu.js';
import { menu as menuFDM } from '../../mode/fdm/init-menu.js';
import { menu as menuCAM } from '../../mode/cam/app/init-menu.js';
import { menu as menuFDM } from '../../mode/fdm/app/init-menu.js';
import { menu as menuLaser } from '../../mode/laser/init-menu.js';
import { menu as menuSLA } from '../../mode/sla/init-menu.js';
import { menu as menuSLA } from '../../mode/sla/app/init-menu.js';
import { modal } from '../modal.js';
import { preferences } from '../preferences.js';
import { settings as set_ctrl } from '../conf/manager.js';

View file

@ -2,8 +2,8 @@
// UI FRONT END ANIMATION CODE for 2D
import { api } from '../../app/api.js';
import { space } from '../../../moto/space.js';
import { api } from '../../../app/api.js';
import { space } from '../../../../moto/space.js';
const { client } = api;

View file

@ -2,8 +2,8 @@
// UI FRONT END ANIMATION CODE for 3D (indexed)
import { api } from '../../app/api.js';
import { space } from '../../../moto/space.js';
import { api } from '../../../app/api.js';
import { space } from '../../../../moto/space.js';
const { client } = api;

View file

@ -1,8 +1,8 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { api } from '../../app/api.js';
import { api } from '../../../app/api.js';
import { env, opAdd, opRender } from './init-ui.js';
import { CAM } from './driver-fe.js';
import { CAM } from './driver.js';
import { clearTabs, restoreTabs } from './cl-tab.js';
import { updateStock } from './cl-stock.js';

View file

@ -1,5 +1,5 @@
import { api } from '../../app/api.js';
import { CAM } from "./driver-fe.js";
import { api } from '../../../app/api.js';
import { CAM } from "./driver.js";
import { clearPops, env } from "./init-ui.js";
let alert, lastWidget;

View file

@ -1,8 +1,8 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { api } from '../../app/api.js';
import { api } from '../../../app/api.js';
import { env, clearPops } from './init-ui.js';
import { CAM } from './driver-fe.js';
import { CAM } from './driver.js';
export let holeSelOn = false;
export let lastSelHoles;

View file

@ -1,15 +1,15 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { $, h } from '../../../moto/webui.js';
import { api } from '../../app/api.js';
import { $, h } from '../../../../moto/webui.js';
import { api } from '../../../app/api.js';
import { env, opRender } from './init-ui.js';
import { Tool } from './tool.js';
import { Tool } from '../core/tool.js';
import { opFlip } from './cl-flip.js';
import { selectHoles } from './cl-hole.js';
import { selectHelical } from './cl-helical.js';
import { surfaceAdd } from './cl-surface.js';
import { traceAdd, traceClear, traceLoad } from './cl-trace.js';
import { startFaceUp } from '../../app/face-tool.js';
import { startFaceUp } from '../../../app/face-tool.js';
import { showZBottom, showZTop, updateStock } from './cl-stock.js';
const { MODES } = api.const;

View file

@ -1,9 +1,9 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { api } from '../../app/api.js';
import { api } from '../../../app/api.js';
import { env, clearPops } from './init-ui.js';
import { CAM } from './driver-fe.js';
import { addbox, clearboxes } from '../../app/boxes.js';
import { CAM } from './driver.js';
import { addbox, clearboxes } from '../../../app/boxes.js';
export let originSelectOn = false;

View file

@ -1,8 +1,8 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { api } from '../../app/api.js';
import { api } from '../../../app/api.js';
import { env, isDark } from './init-ui.js';
import { space as SPACE } from '../../../moto/space.js';
import { space as SPACE } from '../../../../moto/space.js';
const { ui: UI } = api;

View file

@ -1,8 +1,8 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { api } from '../../app/api.js';
import { api } from '../../../app/api.js';
import { env, clearPops } from './init-ui.js';
import { CAM } from './driver-fe.js';
import { CAM } from './driver.js';
const DEG2RAD = Math.PI / 180;
const RAD2DEG = 180 / Math.PI;

View file

@ -1,11 +1,11 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { api } from '../../app/api.js';
import { colorSchemeRegistry } from '../../app/color/schemes.js';
import { api } from '../../../app/api.js';
import { colorSchemeRegistry } from '../../../app/color/schemes.js';
import { env, isDark } from './init-ui.js';
import { addbox, delbox, clearboxes } from '../../app/boxes.js';
import { addbox, delbox, clearboxes } from '../../../app/boxes.js';
import { traceDone } from './cl-trace.js';
import { space as SPACE } from '../../../moto/space.js';
import { space as SPACE } from '../../../../moto/space.js';
let showTab, lastTab, tab, iw, ic;

View file

@ -1,12 +1,12 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { api } from '../../app/api.js';
import { api } from '../../../app/api.js';
import { env, clearPops, isDark } from './init-ui.js';
import { parse } from '../../../load/svg.js';
import { CAM } from './driver-fe.js';
import { Layers } from '../../app/layers.js';
import { Stack } from '../../app/stack.js';
import { newPolygon } from '../../../geo/polygon.js';
import { parse } from '../../../../load/svg.js';
import { CAM } from './driver.js';
import { Layers } from '../../../app/layers.js';
import { Stack } from '../../../app/stack.js';
import { newPolygon } from '../../../../geo/polygon.js';
export let traceOn = false;
export let lastTrace;

View file

@ -1,6 +1,6 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { api } from '../../app/api.js';
import { api } from '../../../app/api.js';
import { clearPops, hoverStart } from './init-ui.js';
import { showZTop, showZBottom, updateStock } from './cl-stock.js';

View file

@ -1,7 +1,7 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { api } from '../../app/api.js';
import { codec } from '../../core/codec.js';
import { api } from '../../../app/api.js';
import { codec } from '../../../core/codec.js';
function surface_prep(index, ondone) {
api.client.sync();

View file

@ -1,6 +1,6 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { api } from '../../app/api.js';
import { api } from '../../../app/api.js';
import { originReset, originSelect } from './cl-origin.js';
import { updateTool } from './tools.js';

View file

@ -1,24 +1,24 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { $ } from '../../../moto/webui.js';
import { api } from '../../app/api.js';
import { animate as anim_2d, animate_clear as anim_2d_clear } from './anim-2d-fe.js';
import { animate2 as anim_3d, animate_clear2 as anim_3d_clear } from './anim-3d-fe.js';
import { $ } from '../../../../moto/webui.js';
import { api } from '../../../app/api.js';
import { animate as anim_2d, animate_clear as anim_2d_clear } from './anim-2d.js';
import { animate2 as anim_3d, animate_clear2 as anim_3d_clear } from './anim-3d.js';
import { createPopOps } from './cl-ops.js';
import { helicalOn, helicalDone } from './cl-helical.js';
import { holeSelOn, selectHolesDone, clearHolesRec } from './cl-hole.js';
import { load } from '../../../load/file.js';
import { Layers } from '../../app/layers.js';
import { load } from '../../../../load/file.js';
import { Layers } from '../../../app/layers.js';
import { originSelectDone } from './cl-origin.js';
import { recreateTabs } from './cl-tab.js';
import { showZTop, showZBottom, updateStock } from './cl-stock.js';
import { space as SPACE } from '../../../moto/space.js';
import { space } from '../../../moto/space.js';
import { Stack } from '../../app/stack.js';
import { space as SPACE } from '../../../../moto/space.js';
import { space } from '../../../../moto/space.js';
import { Stack } from '../../../app/stack.js';
import { surfaceOn, surfaceDone } from './cl-surface.js';
import { tabAdd, tabDone, tabClear, restoreTabs, rotateTabs, updateTabs, clearTabs, mirrorTabs } from './cl-tab.js';
import { traceOn, traceDone, unselectTraces } from './cl-trace.js';
import { Widget, newWidget } from '../../app/widget.js';
import { Widget, newWidget } from '../../../app/widget.js';
import { zPlaneStart, zPlaneDone, zPlaneSelecting } from './cl-zplane.js';
const { BufferGeometryUtils } = THREE;

View file

@ -1,10 +1,10 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { $ } from '../../../moto/webui.js';
import { api } from '../../app/api.js';
import { consts } from '../../app/consts.js';
import { settings as setconf } from '../../app/conf/manager.js';
import { Tool, calcTaperAngle, calcTaperBallExtent, calcTaperLength } from './tool.js';
import { $ } from '../../../../moto/webui.js';
import { api } from '../../../app/api.js';
import { consts } from '../../../app/consts.js';
import { settings as setconf } from '../../../app/conf/manager.js';
import { Tool, calcTaperAngle, calcTaperBallExtent, calcTaperLength } from '../core/tool.js';
const DEG2RAD = Math.PI / 180;

View file

@ -0,0 +1,43 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { OpArea } from '../work/op-area.js';
import { OpContour } from '../work/op-contour.js';
import { OpDrill } from '../work/op-drill.js';
import { OpGCode } from '../work/op-gcode.js';
import { OpHelical } from '../work/op-helical.js';
import { OpIndex } from '../work/op-index.js';
import { OpLaserOff } from '../work/op-laser-off.js';
import { OpLaserOn } from '../work/op-laser-on.js';
import { OpLathe } from '../work/op-lathe.js';
import { OpLevel } from '../work/op-level.js';
import { OpLoop } from '../work/op-loop.js';
import { OpOutline } from '../work/op-outline.js';
import { OpPocket } from '../work/op-pocket.js';
import { OpRegister } from '../work/op-register.js';
import { OpRough } from '../work/op-rough.js';
import { OpShadow } from '../work/op-shadow.js';
import { OpTrace } from '../work/op-trace.js';
import { OpXRay } from '../work/op-xray.js';
export const ops = {
"area": OpArea,
"contour": OpContour,
"drill": OpDrill,
"flip": CamOp,
"gcode": OpGCode,
"helical": OpHelical,
"index": OpIndex,
"laser off": OpLaserOff,
"laser on": OpLaserOn,
"lathe": OpLathe,
"level": OpLevel,
"loop": OpLoop,
"outline": OpOutline,
"pocket": OpPocket,
"register": OpRegister,
"rough": OpRough,
"shadow": OpShadow,
"trace": OpTrace,
"xray": OpXRay
};

View file

@ -1,43 +0,0 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { OpArea } from './op-area.js';
import { OpContour } from './op-contour.js';
import { OpDrill } from './op-drill.js';
import { OpGCode } from './op-gcode.js';
import { OpHelical } from './op-helical.js';
import { OpIndex } from './op-index.js';
import { OpLaserOff } from './op-laser-off.js';
import { OpLaserOn } from './op-laser-on.js';
import { OpLathe } from './op-lathe.js';
import { OpLevel } from './op-level.js';
import { OpLoop } from './op-loop.js';
import { OpOutline } from './op-outline.js';
import { OpPocket } from './op-pocket.js';
import { OpRegister } from './op-register.js';
import { OpRough } from './op-rough.js';
import { OpShadow } from './op-shadow.js';
import { OpTrace } from './op-trace.js';
import { OpXRay } from './op-xray.js';
export const ops = {
"area": OpArea,
"contour": OpContour,
"drill": OpDrill,
"flip": CamOp,
"gcode": OpGCode,
"helical": OpHelical,
"index": OpIndex,
"laser off": OpLaserOff,
"laser on": OpLaserOn,
"lathe": OpLathe,
"level": OpLevel,
"loop": OpLoop,
"outline": OpOutline,
"pocket": OpPocket,
"register": OpRegister,
"rough": OpRough,
"shadow": OpShadow,
"trace": OpTrace,
"xray": OpXRay
};

View file

@ -2,7 +2,7 @@
// WORKER BACK END ANIMATION CODE for 2D
import { Tool } from './tool.js';
import { Tool } from '../core/tool.js';
const asPoints = false;
const asLines = false;

View file

@ -2,8 +2,8 @@
// WORKER BACK END ANIMATION CODE for 3D (indexed)
import { CSG } from '../../../geo/csg.js';
import { Tool } from './tool.js';
import { CSG } from '../../../../geo/csg.js';
import { Tool } from '../core/tool.js';
let nextMeshID = 1,
stock,

View file

@ -1,7 +1,7 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { base } from '../../../geo/base.js';
import { version } from '../../../moto/license.js';
import { base } from '../../../../geo/base.js';
import { version } from '../../../../moto/license.js';
const { util } = base;

View file

@ -1,14 +1,14 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { codec } from '../../core/codec.js';
import { codec } from '../../../core/codec.js';
import { cam_slice_pre, cam_slice, holes, traces } from './slice.js';
import { cam_prepare } from './prepare.js';
import { cam_export } from './export.js';
import { tool as mesh_tool } from '../../../mesh/tool.js';
import { tool as mesh_tool } from '../../../../mesh/tool.js';
import { cylinder_poly_find } from './slice.js';
import { init as init_2d } from './anim-2d-be.js';
import { init as init_3d } from './anim-3d-be.js';
import { init as init_2d } from './anim-2d.js';
import { init as init_3d } from './anim-3d.js';
function surface_prep(widget, index) {
if (!widget.tool) {

View file

@ -3,15 +3,15 @@
// todo: surface offset pattern
// todo: trace dogbones, merge overlap
import { CamOp } from './op.js';
import { Tool } from './tool.js';
import { newSlice } from '../../core/slice.js';
import { newPoint } from '../../../geo/point.js';
import { newPolygon } from '../../../geo/polygon.js';
import { polygons as POLY } from '../../../geo/polygons.js';
import { util as base_util } from '../../../geo/base.js';
import { tip2tipJoin } from '../../../geo/paths.js';
import { CAM } from './driver-be.js';
import { CamOp } from '../core/op.js';
import { Tool } from '../core/tool.js';
import { newSlice } from '../../../core/slice.js';
import { newPoint } from '../../../../geo/point.js';
import { newPolygon } from '../../../../geo/polygon.js';
import { polygons as POLY } from '../../../../geo/polygons.js';
import { util as base_util } from '../../../../geo/base.js';
import { tip2tipJoin } from '../../../../geo/paths.js';
import { CAM } from './init-work.js';
const DEG2RAD = Math.PI / 180;
const clib = self.ClipperLib;

View file

@ -1,12 +1,12 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { Tool } from './tool.js';
import { CamOp } from '../core/op.js';
import { Tool } from '../core/tool.js';
import { generate as Topo } from './topo3.js';
import { newPoint } from '../../../geo/point.js';
import { newPolygon } from '../../../geo/polygon.js';
import { newSlice } from '../../core/slice.js';
import { tip2tipEmit } from '../../../geo/paths.js';
import { newPoint } from '../../../../geo/point.js';
import { newPolygon } from '../../../../geo/polygon.js';
import { newSlice } from '../../../core/slice.js';
import { tip2tipEmit } from '../../../../geo/paths.js';
function createFilter(op, origin, axis) {
// console.log({ origin, axis });

View file

@ -1,10 +1,10 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { Tool } from './tool.js';
import { newPolygon } from '../../../geo/polygon.js';
import { newSlice } from '../../core/slice.js';
import { newPoint } from '../../../geo/point.js';
import { CamOp } from '../core/op.js';
import { Tool } from '../core/tool.js';
import { newPolygon } from '../../../../geo/polygon.js';
import { newSlice } from '../../../core/slice.js';
import { newPoint } from '../../../../geo/point.js';
class OpDrill extends CamOp {
constructor(state, op) {

View file

@ -1,6 +1,6 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { CamOp } from '../core/op.js';
export class OpGCode extends CamOp {
constructor(state, op) {

View file

@ -1,10 +1,10 @@
import { arcToPath } from "../../../geo/paths.js";
import { newPolygon } from "../../../geo/polygon.js";
import { CamOp } from "./op.js";
import { Tool } from "./tool.js";
import { arcToPath } from "../../../../geo/paths.js";
import { newPolygon } from "../../../../geo/polygon.js";
import { CamOp } from "../core/op.js";
import { Tool } from "../core/tool.js";
import { cylinder_poly_find } from "./slice.js";
import { newPoint } from "../../../geo/point.js";
import { newSlice } from "../../core/slice.js";
import { newPoint } from "../../../../geo/point.js";
import { newSlice } from "../../../core/slice.js";
export class OpHelical extends CamOp {
constructor(state, op) {

View file

@ -1,6 +1,6 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { CamOp } from '../core/op.js';
export class OpIndex extends CamOp {
constructor(state, op) {

View file

@ -1,6 +1,6 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { CamOp } from '../core/op.js';
export class OpLaserOff extends CamOp {
constructor(state, op) {

View file

@ -1,6 +1,6 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { CamOp } from '../core/op.js';
export class OpLaserOn extends CamOp {
constructor(state, op) {

View file

@ -1,8 +1,8 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { CamOp } from '../core/op.js';
import { generate as topo4_generate } from './topo4.js';
import { newPoint } from '../../../geo/point.js';
import { newPoint } from '../../../../geo/point.js';
function createFilter(op) {
let ok = () => true;

View file

@ -1,11 +1,11 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { Tool } from './tool.js';
import { newPolygon } from '../../../geo/polygon.js';
import { polygons as POLY } from '../../../geo/polygons.js';
import { newSlice } from '../../core/slice.js';
import { util } from '../../../geo/base.js';
import { CamOp } from '../core/op.js';
import { Tool } from '../core/tool.js';
import { newPolygon } from '../../../../geo/polygon.js';
import { polygons as POLY } from '../../../../geo/polygons.js';
import { newSlice } from '../../../core/slice.js';
import { util } from '../../../../geo/base.js';
class OpLevel extends CamOp {
constructor(state, op) {

View file

@ -1,6 +1,6 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { CamOp } from '../core/op.js';
export class OpLoop extends CamOp {
weight() {

View file

@ -1,6 +1,6 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { CamOp } from '../core/op.js';
import { OpArea } from './op-area.js';
class OpOutline extends CamOp {

View file

@ -1,6 +1,6 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { CamOp } from '../core/op.js';
import { OpArea } from './op-area.js';
class OpPocket extends CamOp {

View file

@ -1,11 +1,11 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { Tool } from './tool.js';
import { newPolygon } from '../../../geo/polygon.js';
import { newSlice } from '../../core/slice.js';
import { newPoint } from '../../../geo/point.js';
import { util } from '../../../geo/base.js';
import { CamOp } from '../core/op.js';
import { Tool } from '../core/tool.js';
import { newPolygon } from '../../../../geo/polygon.js';
import { newSlice } from '../../../core/slice.js';
import { newPoint } from '../../../../geo/point.js';
import { util } from '../../../../geo/base.js';
class OpRegister extends CamOp {
constructor(state, op) {

View file

@ -1,9 +1,9 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { CamOp } from '../core/op.js';
import { OpArea } from './op-area.js';
import { newPolygon } from '../../../geo/polygon.js';
import { polygons as POLY } from '../../../geo/polygons.js';
import { newPolygon } from '../../../../geo/polygon.js';
import { polygons as POLY } from '../../../../geo/polygons.js';
class OpRough extends CamOp {
constructor(state, op) {

View file

@ -1,8 +1,8 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { newSlice } from '../../core/slice.js';
import { newPolygon } from '../../../geo/polygon.js';
import { CamOp } from '../core/op.js';
import { newSlice } from '../../../core/slice.js';
import { newPolygon } from '../../../../geo/polygon.js';
/**
* Computes the Part "shadow" and attaches relevant data to the "state" object

View file

@ -1,6 +1,6 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { CamOp } from '../core/op.js';
import { OpArea } from './op-area.js';
class OpTrace extends CamOp {

View file

@ -1,8 +1,8 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CamOp } from './op.js';
import { newSlice } from '../../core/slice.js';
import { Slicer } from './slicer_cam.js';
import { CamOp } from '../core/op.js';
import { newSlice } from '../../../core/slice.js';
import { Slicer } from './slicer-cam.js';
class OpXRay extends CamOp {
constructor(state, op) {

View file

@ -1,12 +1,12 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { tip2tipEmit, poly2polyEmit } from '../../../geo/paths.js';
import { newPoint } from '../../../geo/point.js';
import { polygons as POLY } from '../../../geo/polygons.js';
import { render } from '../../core/render.js';
import { newPrint } from '../../core/print.js';
import { Tool } from './tool.js';
import { newPolygon } from '../../../geo/polygon.js';
import { tip2tipEmit, poly2polyEmit } from '../../../../geo/paths.js';
import { newPoint } from '../../../../geo/point.js';
import { polygons as POLY } from '../../../../geo/polygons.js';
import { render } from '../../../core/render.js';
import { newPrint } from '../../../core/print.js';
import { Tool } from '../core/tool.js';
import { newPolygon } from '../../../../geo/polygon.js';
const debug = false;
const debug_push = false;

View file

@ -1,15 +1,15 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { CAM } from './driver-be.js';
import { newLine } from '../../../geo/line.js';
import { newPoint } from '../../../geo/point.js';
import { newPolygon } from '../../../geo/polygon.js';
import { ops as OPS } from './ops.js';
import { polygons as POLY } from '../../../geo/polygons.js';
import { setSliceTracker } from '../../core/slice.js';
import { Slicer as cam_slicer } from './slicer_cam.js';
import { Tool } from './tool.js';
import { util } from '../../../geo/base.js';
import { CAM } from './init-work.js';
import { newLine } from '../../../../geo/line.js';
import { newPoint } from '../../../../geo/point.js';
import { newPolygon } from '../../../../geo/polygon.js';
import { ops as OPS } from '../core/ops.js';
import { polygons as POLY } from '../../../../geo/polygons.js';
import { setSliceTracker } from '../../../core/slice.js';
import { Slicer as cam_slicer } from './slicer-cam.js';
import { Tool } from '../core/tool.js';
import { util } from '../../../../geo/base.js';
// state shared across all widget slicing
let shared;

View file

@ -1,18 +1,18 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { util } from '../../../geo/base.js';
import { decode, decodePointArray } from '../../core/codec.js';
import { newLine } from '../../../geo/line.js';
import { newPoint } from '../../../geo/point.js';
import { newSlice } from '../../core/slice.js';
import { polygons as POLY } from '../../../geo/polygons.js';
import { util } from '../../../../geo/base.js';
import { decode, decodePointArray } from '../../../core/codec.js';
import { newLine } from '../../../../geo/line.js';
import { newPoint } from '../../../../geo/point.js';
import { newSlice } from '../../../core/slice.js';
import { polygons as POLY } from '../../../../geo/polygons.js';
import {
checkOverUnderOn,
intersectPoints,
makeZLine,
removeDuplicateLines,
sliceConnect,
} from '../../../geo/slicer.js';
} from '../../../../geo/slicer.js';
const timing = false;
const zDecimal = 3;

View file

@ -1,12 +1,12 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { newPoint } from '../../../geo/point.js';
import { newPoint } from '../../../../geo/point.js';
import {
checkOverUnderOn,
makeZLine,
removeDuplicateLines,
intersectPoints
} from '../../../geo/slicer.js';
} from '../../../../geo/slicer.js';
/** Slicer used in Topo3 and Topo4 to find contour lines */
export class Slicer {

View file

@ -1,12 +1,12 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { codec } from '../../core/codec.js';
import { newPoint } from '../../../geo/point.js';
import { newPolygon } from '../../../geo/polygon.js';
import { newSlice } from '../../core/slice.js';
import { Slicer as topo_slicer } from './slicer_topo.js';
import { polygons as POLY } from '../../../geo/polygons.js';
import { Tool } from './tool.js';
import { codec } from '../../../core/codec.js';
import { newPoint } from '../../../../geo/point.js';
import { newPolygon } from '../../../../geo/polygon.js';
import { newSlice } from '../../../core/slice.js';
import { Slicer as topo_slicer } from './slicer-topo.js';
import { polygons as POLY } from '../../../../geo/polygons.js';
import { Tool } from '../core/tool.js';
const RAD2DEG = 180 / Math.PI;
const DEG2RAD = Math.PI / 180;

View file

@ -1,12 +1,12 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { codec } from '../../core/codec.js';
import { newPoint } from '../../../geo/point.js';
import { newPolygon } from '../../../geo/polygon.js';
import { sliceConnect } from '../../../geo/slicer.js';
import { newSlice } from '../../core/slice.js';
import { Tool } from './tool.js';
import { Slicer as topo_slicer } from './slicer_topo.js';
import { codec } from '../../../core/codec.js';
import { newPoint } from '../../../../geo/point.js';
import { newPolygon } from '../../../../geo/polygon.js';
import { sliceConnect } from '../../../../geo/slicer.js';
import { newSlice } from '../../../core/slice.js';
import { Tool } from '../core/tool.js';
import { Slicer as topo_slicer } from './slicer-topo.js';
const RAD2DEG = 180 / Math.PI;
const DEG2RAD = Math.PI / 180;

View file

@ -1,6 +1,6 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { LASER, TYPE, FUNC } from '../laser/driver.js';
import { LASER, TYPE, FUNC } from '../laser/init-work.js';
import { newPoint } from '../../../geo/point.js';
import { newPolygon } from '../../../geo/polygon.js';
import { newSlopeFromAngle } from '../../../geo/slope.js';

View file

@ -1,6 +1,6 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { api } from '../../app/api.js';
import { api } from '../../../app/api.js';
let LANG = api.language.current;
let { FDM } = api.const.MODES,

View file

@ -1,11 +1,11 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { newPoint } from '../../../geo/point.js';
import { $ } from '../../../moto/webui.js';
import { api } from '../../app/api.js';
import { colorSchemeRegistry } from '../../app/color/schemes.js';
import { conf } from '../../app/conf/defaults.js';
import { addPaintOverlayTexture, updatePaintOverlay } from '../../app/paint.js';
import { newPoint } from '../../../../geo/point.js';
import { $ } from '../../../../moto/webui.js';
import { api } from '../../../app/api.js';
import { colorSchemeRegistry } from '../../../app/color/schemes.js';
import { conf } from '../../../app/conf/defaults.js';
import { addPaintOverlayTexture, updatePaintOverlay } from '../../../app/paint.js';
const { VIEWS } = api.const;

View file

@ -5,10 +5,10 @@
* Handles anchor generation, text embossing, and belt-specific bounds
*/
import { newPolygon } from '../../../geo/polygon.js';
import { newBounds } from '../../../geo/bounds.js';
import { newSlice } from '../../core/slice.js';
import { getRangeParameters } from './driver.js';
import { newPolygon } from '../../../../geo/polygon.js';
import { newBounds } from '../../../../geo/bounds.js';
import { newSlice } from '../../../core/slice.js';
import { getRangeParameters } from '../core/params.js';
// Import constants from slice.js
// These would ideally be shared, but for now we'll define locally

View file

@ -1,9 +1,9 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { base, util } from '../../../geo/base.js';
import { getRangeParameters } from './driver.js';
import { FDM } from './driver-be.js';
import { version } from '../../../moto/license.js';
import { base, util } from '../../../../geo/base.js';
import { getRangeParameters } from '../core/params.js';
import { FDM } from './init-work.js';
import { version } from '../../../../moto/license.js';
const { config } = base;
const debug = false;

View file

@ -1,7 +1,7 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { newPolygon } from '../../../geo/polygon.js';
import { slice as gyroid_slice } from '../../../geo/gyroid.js';
import { newPolygon } from '../../../../geo/polygon.js';
import { slice as gyroid_slice } from '../../../../geo/gyroid.js';
export const fill_fixed = {
hex: fillHexFull,

View file

@ -1,10 +1,10 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { util } from '../../../geo/base.js';
import { util } from '../../../../geo/base.js';
import { sliceOne, slicePost } from './slice.js';
import { fdm_prepare } from './prepare.js';
import { fdm_export } from './export.js';
import { codec } from '../../core/codec.js';
import { codec } from '../../../core/codec.js';
// noz = nozzle diameter
// fil = filament diameter

View file

@ -1,13 +1,13 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import '../../../ext/jspoly.js';
import { base } from '../../../geo/base.js';
import { newPolygon, Polygon } from '../../../geo/polygon.js';
import { polygons as POLY, fillArea } from '../../../geo/polygons.js';
import { getRangeParameters } from './driver.js';
import { slicer } from '../../../geo/slicer.js';
import { Point } from '../../../geo/point.js';
import { Slope } from '../../../geo/slope.js';
import '../../../../ext/jspoly.js';
import { base } from '../../../../geo/base.js';
import { newPolygon, Polygon } from '../../../../geo/polygon.js';
import { polygons as POLY, fillArea } from '../../../../geo/polygons.js';
import { getRangeParameters } from '../core/params.js';
import { slicer } from '../../../../geo/slicer.js';
import { Point } from '../../../../geo/point.js';
import { Slope } from '../../../../geo/slope.js';
// tell the slicer what to do in FDM mode
// with slices (post processing). the post

View file

@ -1,16 +1,16 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { FDM } from './driver-be.js';
import { base, util } from '../../../geo/base.js';
import { poly2polyEmit, tip2tipEmit } from '../../../geo/paths.js';
import { newBounds } from '../../../geo/bounds.js';
import { newPoint, Point } from '../../../geo/point.js';
import { newPolygon, Polygon } from '../../../geo/polygon.js';
import { polygons as POLY, fillArea } from '../../../geo/polygons.js';
import { newPrint } from '../../core/print.js';
import { newSlice } from '../../core/slice.js';
import { render } from '../../core/render.js';
import { getRangeParameters } from './driver.js';
import { FDM } from './init-work.js';
import { base, util } from '../../../../geo/base.js';
import { poly2polyEmit, tip2tipEmit } from '../../../../geo/paths.js';
import { newBounds } from '../../../../geo/bounds.js';
import { newPoint, Point } from '../../../../geo/point.js';
import { newPolygon, Polygon } from '../../../../geo/polygon.js';
import { polygons as POLY, fillArea } from '../../../../geo/polygons.js';
import { newPrint } from '../../../core/print.js';
import { newSlice } from '../../../core/slice.js';
import { render } from '../../../core/render.js';
import { getRangeParameters } from '../core/params.js';
const { numOrDefault } = util;

View file

@ -3,13 +3,13 @@
import { layerProcessTop } from './post.js';
import { fill, fill_fixed } from './fill.js';
import { generateBeltAnchor, embossBeltPooch, finalizeBeltBounds } from './belt.js';
import { getRangeParameters } from './driver.js';
import { newPoint } from '../../../geo/point.js';
import { newPolygon } from '../../../geo/polygon.js';
import { newSlice } from '../../core/slice.js';
import { polygons as POLY } from '../../../geo/polygons.js';
import { slice, sliceZ } from '../../../geo/slicer.js';
import { util } from '../../../geo/base.js';
import { getRangeParameters } from '../core/params.js';
import { newPoint } from '../../../../geo/point.js';
import { newPolygon } from '../../../../geo/polygon.js';
import { newSlice } from '../../../core/slice.js';
import { polygons as POLY } from '../../../../geo/polygons.js';
import { slice, sliceZ } from '../../../../geo/slicer.js';
import { util } from '../../../../geo/base.js';
const CONSTANTS = {
// Support fill

View file

@ -1,6 +1,6 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { api } from '../../app/api.js';
import { api } from '../../../app/api.js';
let LANG = api.language.current;
let { SLA } = api.const.MODES,

View file

@ -1,7 +1,7 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { $ } from '../../../moto/webui.js';
import { api } from '../../app/api.js';
import { $ } from '../../../../moto/webui.js';
import { api } from '../../../app/api.js';
export const SLA = {
init,

View file

@ -2,7 +2,7 @@
import { CXDLP } from './x_cxdlp.js';
import { photon } from './x_photon.js';
import { SLA } from './driver.js';
import { SLA } from './init-work.js';
/**
* DRIVER CONTRACT - runs in worker

View file

@ -1,6 +1,6 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { newPrint } from '../../core/print.js';
import { newPrint } from '../../../core/print.js';
import { sla_slice } from './slice.js';
import { sla_export } from './export.js';

View file

@ -1,13 +1,13 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { util } from '../../../geo/base.js';
import { slicer } from '../../../geo/slicer.js';
import { newPolygon } from '../../../geo/polygon.js';
import { polygons as POLY } from '../../../geo/polygons.js';
import { newSlice, newTop } from '../../core/slice.js';
import { layerProcessTops, layerDiff, projectFlats, projectBridges } from '../fdm/slice.js';
import { PNG } from '../../../ext/pngjs.esm.js';
import { SLA } from './driver.js';
import { util } from '../../../../geo/base.js';
import { slicer } from '../../../../geo/slicer.js';
import { newPolygon } from '../../../../geo/polygon.js';
import { polygons as POLY } from '../../../../geo/polygons.js';
import { newSlice, newTop } from '../../../core/slice.js';
import { layerProcessTops, layerDiff, projectFlats, projectBridges } from '../../fdm/work/slice.js';
import { PNG } from '../../../../ext/pngjs.esm.js';
import { SLA } from './init-work.js';
const tracker = util.pwait;

View file

@ -1,6 +1,6 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { SLA } from './driver.js';
import { SLA } from './init-work.js';
function generatePhoton(print, conf, progress) {
let printset = print.settings,

View file

@ -1,6 +1,6 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { LASER, TYPE } from '../laser/driver.js';
import { LASER, TYPE } from '../laser/init-work.js';
const DEG2RAD = Math.PI / 180;

View file

@ -1,6 +1,6 @@
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
import { LASER, TYPE } from '../laser/driver.js';
import { LASER, TYPE } from '../laser/init-work.js';
function init(worker) {
// console.log({ WATERJET_INIT: worker });

View file

@ -8,15 +8,15 @@ import '../../add/three.js';
import { base } from '../../geo/base.js';
import { codec, encode, encodePointArray } from '../core/codec.js';
import { layerProcessTop } from '../mode/fdm/post.js';
import { layerProcessTop } from '../mode/fdm/work/post.js';
import { newPoint } from '../../geo/point.js';
import { newWidget } from '../core/widget.js';
import { polygons as POLY } from '../../geo/polygons.js';
import { sliceZ, sliceConnect } from '../../geo/slicer.js';
import { Slicer as cam_slicer } from '../mode/cam/slicer_cam.js';
import { Slicer as topo_slicer } from '../mode/cam/slicer_topo.js';
import { Probe, Trace, raster_slice } from '../mode/cam/topo3.js';
import { Topo as Topo4, rotatePoints } from '../mode/cam/topo4.js';
import { Slicer as cam_slicer } from '../mode/cam/work/slicer-cam.js';
import { Slicer as topo_slicer } from '../mode/cam/work/slicer-topo.js';
import { Probe, Trace, raster_slice } from '../mode/cam/work/topo3.js';
import { Topo as Topo4, rotatePoints } from '../mode/cam/work/topo4.js';
import { wasm_ctrl } from '../../geo/wasm.js';
const clib = self.ClipperLib;

View file

@ -18,13 +18,13 @@ import { version } from '../../moto/license.js';
import { wasm_ctrl } from '../../geo/wasm.js';
import { Widget, newWidget } from '../core/widget.js';
import { CAM } from '../mode/cam/driver-be.js';
import { DRAG } from '../mode/drag/driver.js';
import { FDM } from '../mode/fdm/driver-be.js';
import { LASER } from '../mode/laser/driver.js';
import { SLA } from '../mode/sla/driver.js';
import { WEDM } from '../mode/wedm/driver.js';
import { WJET } from '../mode/wjet/driver.js';
import { CAM } from '../mode/cam/work/init-work.js';
import { DRAG } from '../mode/drag/init-work.js';
import { FDM } from '../mode/fdm/work/init-work.js';
import { LASER } from '../mode/laser/init-work.js';
import { SLA } from '../mode/sla/work/init-work.js';
import { WEDM } from '../mode/wedm/init-work.js';
import { WJET } from '../mode/wjet/init-work.js';
const { time } = util;
const POOLPATH = "./minion.js";