Commit Graph

7 Commits

Author SHA1 Message Date
a1518
3a3f07628d feat: add manual lasso wall splitting with magnetic edge-snapping and active contour refinement
Some checks failed
Deploy Docs to GitHub Pages / deploy (push) Has been cancelled
Publish to npm / publish (push) Has been cancelled
- New magneticLasso module: Sobel energy map + Dijkstra shortest-path + Douglas-Peucker
- New activeContour module: greedy snake + balloon force for polygon-to-edge refinement
- wallTextureSplit: edge barrier mask, morphological mask hole closing, Moore boundary tracing, simplified polygon contours, manual pick map patching, gap absorption
- MaskSegmentCanvas: full lasso gesture pipeline (tap vertices, drag, magnetic paths, close polygon, endLasso/cancelLasso/deleteLasso)
- New maskConfig options: splitWallsEdgeBarrierThreshold, splitWallsCloseMaskRadius, manualSplitWalls, manualSplitWallsMaxCount, manualSplitWallsGapAbsorbDilatePx, magneticLasso, activeContourRefine
- New ref methods: startLasso, endLasso, cancelLasso, getManualRegions, deleteLasso
- New exported types: LassoPolygon, ManualWallPartition
- RegionMaskData carries indexToName and wallSemanticIdx through downsample
- Simplify README to point to documentation site
- Update documentation site (EN + ZH-CN) with all new APIs and interaction guide
- Example app: lasso mode toggles and operation buttons

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-06 20:23:57 -07:00
a1518
8bc66a4ee9 refactor: remove Chinese, add build obfuscation, polish README
Some checks failed
Publish to npm / publish (push) Has been cancelled
- Remove all Chinese characters from src/, example/, ios/, patches/, tests/
- Add esbuild-based build obfuscation (minify + identifier mangle + no sourcemaps)
- Drop src/ from npm publish, only ship minified dist/
- Remove source maps and declaration maps from build output
- Add README icons and visual polish throughout
- Fix broken Table of Contents anchor links in README

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-01 19:07:32 -07:00
a1518
843544b9e8 fix: align default pipeline config with docs and split large modules
- Fix DEFAULT_PIPELINE_CONFIG from PIPELINE_HIGH (1440) to PIPELINE_MEDIUM
  (720) to match documented performance estimates and test expectations
- Extract geometry/hit-detection utilities from MaskSegmentCanvas.tsx into
  canvasGeometry.ts (~380 lines)
- Extract outline path functions from maskSegmentation.ts into
  maskOutlinePaths.ts (~470 lines)
- Net reduction of ~1,700 lines across the two core files

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-01 02:13:38 -07:00
a1518
84b45ef24d refactor: simplify MaskSegmentCanvas core logic and reduce bundle size
Streamline the main canvas component, type definitions, and paint
shader runtime. Removes unused code paths and redundant logic across
src/ and example/, resulting in a net reduction of ~460 lines.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 23:56:13 -07:00
a1518
70499176d6 Add splitWalls to subdivide wall regions by texture boundaries.
Enables optional wall-1/wall-2… sub-regions with independent paint and undo, plus example toggle and unit tests.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 22:41:17 -07:00
a1518
eb246efa8a Add example app and fix Android asset loading on image switch.
Introduce the example integration demo, export resolveAssetPath, harden resolveImageUrl for Android bundled assets, and update gitignore to exclude example build outputs.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 20:24:43 -07:00
a1518
56738b1f06 feat: add MaskSegmentApp source code and config
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-26 00:23:52 -07:00