Mike Erickson
Mike Erickson
Compile directly into wasm interface and publish npm package
This feature is very useful. Shape{outline:Polyline,holes:Polyline[]} Shape Boolean operation: Multiple Shape Union operation. Multiple Shape Difference Operation Multiple shape intersection operations
Maybe something like this? 
嗯 仓库里面好像没watch的命令, ``` "build": "tsc -watch" ```
嗯 这个方法也行
我会写React,所以想看看ReactUMG效果怎么样
OK 已经可以用了 非常好
The intersection of these two is a very thin slice, usually I don't need this, I will judge its volume inside the program and filter it out.  ```json {"polygons":[{"vertices":[[271,13,0],[280,13,4.996600151062012],[280,13,0]]},{"vertices":[[271,13,0],[271,13,4.996600151062012],[280,13,4.996600151062012]]},{"vertices":[[280,13,0],[280,172,4.996600151062012],[280,172,0]]},{"vertices":[[280,13,0],[280,13,4.996600151062012],[280,172,4.996600151062012]]},{"vertices":[[271,172,0],[271,13,4.996600151062012],[271,13,0]]},{"vertices":[[271,172,0],[271,172,4.996600151062012],[271,13,4.996600151062012]]},{"vertices":[[280,172,4.996600151062012],[271,13,4.996600151062012],[271,172,4.996600151062012]]},{"vertices":[[271,13,4.996600151062012],[280,172,4.996600151062012],[280,13,4.996600151062012]]},{"vertices":[[0,0,0],[300,0,0],[300,0,18]]},{"vertices":[[0,0,0],[300,0,18],[0,0,18]]},{"vertices":[[300,0,0],[300,172,0],[300,172,18]]},{"vertices":[[300,0,0],[300,172,18],[300,0,18]]},{"vertices":[[300,172,0],[280,172,0],[280,172,18]]},{"vertices":[[300,172,0],[280,172,18],[300,172,18]]},{"vertices":[[280,172,4.996600151062012],[271,172,4.996600151062012],[271,172,18]]},{"vertices":[[280,172,4.996600151062012],[271,172,18],[280,172,18]]},{"vertices":[[271,172,0],[0,172,0],[0,172,18]]},{"vertices":[[271,172,0],[0,172,18],[271,172,18]]},{"vertices":[[0,172,0],[0,0,0],[0,0,18]]},{"vertices":[[0,172,0],[0,0,18],[0,172,18]]},{"vertices":[[300,0,0],[280,172,0],[300,172,0]]},{"vertices":[[271,13,0],[0,172,0],[271,172,0]]},{"vertices":[[300,0,0],[280,13,0],[280,172,0]]},{"vertices":[[271,13,0],[0,0,0],[0,172,0]]},{"vertices":[[0,0,0],[280,13,0],[300,0,0]]},{"vertices":[[280,13,0],[0,0,0],[271,13,0]]},{"vertices":[[0,172,18],[0,0,18],[300,0,18]]},{"vertices":[[300,0,18],[300,172,18],[0,172,18]]}],"transforms":[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]}...
Similar use case ```json {"polygons":[{"vertices":[[462,0,0],[462,1166.6700439453125,5.003333568572998],[462,1166.6700439453125,0]],"plane":[-0.9999999999999999,0,0,-461.99999999999994]},{"vertices":[[462,0,0],[462,0,5.003333568572998],[462,1166.6700439453125,5.003333568572998]],"plane":[-0.9999999999999999,0,0,-461.99999999999994]},{"vertices":[[453,1166.6700439453125,0],[453,0,5.003333568572998],[453,0,0]],"plane":[0.9999999999999999,0,0,452.99999999999994]},{"vertices":[[453,1166.6700439453125,0],[453,1166.6700439453125,5.003333568572998],[453,0,5.003333568572998]],"plane":[0.9999999999999999,0,0,452.99999999999994]},{"vertices":[[462,1166.6700439453125,5.003333568572998],[453,0,5.003333568572998],[453,1166.6700439453125,5.003333568572998]],"plane":[0,0,-1,-5.003333568572998]},{"vertices":[[453,0,5.003333568572998],[462,1166.6700439453125,5.003333568572998],[462,0,5.003333568572998]],"plane":[0,0,-1,-5.003333568572998]},{"vertices":[[462,0,13],[462,1166.6700439453125,18],[462,1166.6700439453125,13]],"plane":[-0.9999999999999999,0,0,-461.99999999999994]},{"vertices":[[462,0,13],[462,0,18],[462,1166.6700439453125,18]],"plane":[-0.9999999999999999,0,0,-461.99999999999994]},{"vertices":[[453,1166.6700439453125,13],[453,0,18],[453,0,13]],"plane":[0.9999999999999999,0,0,452.99999999999994]},{"vertices":[[453,1166.6700439453125,13],[453,1166.6700439453125,18],[453,0,18]],"plane":[0.9999999999999999,0,0,452.99999999999994]},{"vertices":[[462,1166.6700439453125,13],[453,1166.6700439453125,13],[453,0,13]],"plane":[0,0,1,13]},{"vertices":[[453,0,13],[462,0,13],[462,1166.6700439453125,13]],"plane":[0,0,1,13]},{"vertices":[[0,0,0],[453,0,0],[453,0,18]],"plane":[0,-0.9999999999999999,0,0]},{"vertices":[[0,0,0],[453,0,18],[0,0,18]],"plane":[0,-0.9999999999999999,0,0]},{"vertices":[[453,0,5.003333568572998],[462,0,5.003333568572998],[462,0,13]],"plane":[0,-1,0,0]},{"vertices":[[453,0,5.003333568572998],[462,0,13],[453,0,13]],"plane":[0,-1,0,0]},{"vertices":[[462,0,0],[480,0,0],[480,0,18]],"plane":[0,-1,0,0]},{"vertices":[[462,0,0],[480,0,18],[462,0,18]],"plane":[0,-1,0,0]},{"vertices":[[480,0,0],[480,1166.6700439453125,0],[480,1166.6700439453125,18]],"plane":[1,0,0,480]},{"vertices":[[480,0,0],[480,1166.6700439453125,18],[480,0,18]],"plane":[1,0,0,480]},{"vertices":[[480,1166.6700439453125,0],[462,1166.6700439453125,0],[462,1166.6700439453125,18]],"plane":[0,1,0,1166.6700439453125]},{"vertices":[[480,1166.6700439453125,0],[462,1166.6700439453125,18],[480,1166.6700439453125,18]],"plane":[0,1,0,1166.6700439453125]},{"vertices":[[462,1166.6700439453125,5.003333568572998],[453,1166.6700439453125,5.003333568572998],[453,1166.6700439453125,13]],"plane":[0,1,0,1166.6700439453125]},{"vertices":[[462,1166.6700439453125,5.003333568572998],[453,1166.6700439453125,13],[462,1166.6700439453125,13]],"plane":[0,1,0,1166.6700439453125]},{"vertices":[[453,1166.6700439453125,0],[0,1166.6700439453125,0],[0,1166.6700439453125,18]],"plane":[0,0.9999999999999999,0,1166.6700439453123]},{"vertices":[[453,1166.6700439453125,0],[0,1166.6700439453125,18],[453,1166.6700439453125,18]],"plane":[0,0.9999999999999999,0,1166.6700439453123]},{"vertices":[[0,1166.6700439453125,0],[0,0,0],[0,0,18]],"plane":[-1,0,0,0]},{"vertices":[[0,1166.6700439453125,0],[0,0,18],[0,1166.6700439453125,18]],"plane":[-1,0,0,0]},{"vertices":[[462,1166.6700439453125,0],[480,0,0],[462,0,0]],"plane":[0,0,-1,0]},{"vertices":[[480,0,0],[462,1166.6700439453125,0],[480,1166.6700439453125,0]],"plane":[0,0,-1,0]},{"vertices":[[0,1166.6700439453125,0],[453,0,0],[0,0,0]],"plane":[0,0,-1,0]},{"vertices":[[453,0,0],[0,1166.6700439453125,0],[453,1166.6700439453125,0]],"plane":[0,0,-1,0]},{"vertices":[[462,1166.6700439453125,18],[462,0,18],[480,0,18]],"plane":[0,0,1,18]},{"vertices":[[480,0,18],[480,1166.6700439453125,18],[462,1166.6700439453125,18]],"plane":[0,0,1,18]},{"vertices":[[0,1166.6700439453125,18],[0,0,18],[453,0,18]],"plane":[0,0,1,18]},{"vertices":[[453,0,18],[453,1166.6700439453125,18],[0,1166.6700439453125,18]],"plane":[0,0,1,18]}],"transforms":[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]} ``` ```json {"polygons":[{"vertices":[[453,481.3299865722656,0],[462,481.3299865722656,5.002839088439941],[462,481.3299865722656,0]]},{"vertices":[[453,481.3299865722656,0],[453,481.3299865722656,5.002839088439941],[462,481.3299865722656,5.002839088439941]]},{"vertices":[[462,481.3299865722656,0],[462,1432,5.002839088439941],[462,1432,0]]},{"vertices":[[462,481.3299865722656,0],[462,481.3299865722656,5.002839088439941],[462,1432,5.002839088439941]]},{"vertices":[[453,1432,0],[453,481.3299865722656,5.002839088439941],[453,481.3299865722656,0]]},{"vertices":[[453,1432,0],[453,1432,5.002839088439941],[453,481.3299865722656,5.002839088439941]]},{"vertices":[[462,1432,5.002839088439941],[453,481.3299865722656,5.002839088439941],[453,1432,5.002839088439941]]},{"vertices":[[453,481.3299865722656,5.002839088439941],[462,1432,5.002839088439941],[462,481.3299865722656,5.002839088439941]]},{"vertices":[[462,0,0],[462,473.3333435058594,5.002839088439941],[462,473.3333435058594,0]]},{"vertices":[[462,0,0],[462,0,5.002839088439941],[462,473.3333435058594,5.002839088439941]]},{"vertices":[[462,473.3333435058594,0],[453,473.3333435058594,5.002839088439941],[453,473.3333435058594,0]]},{"vertices":[[462,473.3333435058594,0],[462,473.3333435058594,5.002839088439941],[453,473.3333435058594,5.002839088439941]]},{"vertices":[[453,473.3333435058594,0],[453,0,5.002839088439941],[453,0,0]]},{"vertices":[[453,473.3333435058594,0],[453,473.3333435058594,5.002839088439941],[453,0,5.002839088439941]]},{"vertices":[[462,473.3333435058594,5.002839088439941],[453,0,5.002839088439941],[453,473.3333435058594,5.002839088439941]]},{"vertices":[[453,0,5.002839088439941],[462,473.3333435058594,5.002839088439941],[462,0,5.002839088439941]]},{"vertices":[[0,0,0],[453,0,0],[453,0,18]]},{"vertices":[[0,0,0],[453,0,18],[0,0,18]]},{"vertices":[[453,0,5.002839088439941],[462,0,5.002839088439941],[462,0,18]]},{"vertices":[[453,0,5.002839088439941],[462,0,18],[453,0,18]]},{"vertices":[[462,0,0],[480,0,0],[480,0,18]]},{"vertices":[[462,0,0],[480,0,18],[462,0,18]]},{"vertices":[[480,0,0],[480,1432,0],[480,1432,18]]},{"vertices":[[480,0,0],[480,1432,18],[480,0,18]]},{"vertices":[[480,1432,0],[462,1432,0],[462,1432,18]]},{"vertices":[[480,1432,0],[462,1432,18],[480,1432,18]]},{"vertices":[[462,1432,5.002839088439941],[453,1432,5.002839088439941],[453,1432,18]]},{"vertices":[[462,1432,5.002839088439941],[453,1432,18],[462,1432,18]]},{"vertices":[[453,1432,0],[0,1432,0],[0,1432,18]]},{"vertices":[[453,1432,0],[0,1432,18],[453,1432,18]]},{"vertices":[[0,1432,0],[0,0,0],[0,0,18]]},{"vertices":[[0,1432,0],[0,0,18],[0,1432,18]]},{"vertices":[[0,1432,0],[453,0,0],[0,0,0]]},{"vertices":[[462,473.3333435058594,0],[480,0,0],[462,0,0]]},{"vertices":[[480,0,0],[462,1432,0],[480,1432,0]]},{"vertices":[[453,481.3299865722656,0],[0,1432,0],[453,1432,0]]},{"vertices":[[0,1432,0],[453,473.3333435058594,0],[453,0,0]]},{"vertices":[[480,0,0],[462,481.3299865722656,0],[462,1432,0]]},{"vertices":[[453,481.3299865722656,0],[453,473.3333435058594,0],[0,1432,0]]},{"vertices":[[462,473.3333435058594,0],[462,481.3299865722656,0],[480,0,0]]},{"vertices":[[462,481.3299865722656,0],[453,473.3333435058594,0],[453,481.3299865722656,0]]},{"vertices":[[453,473.3333435058594,0],[462,481.3299865722656,0],[462,473.3333435058594,0]]},{"vertices":[[0,1432,18],[0,0,18],[480,0,18]]},{"vertices":[[480,0,18],[480,1432,18],[0,1432,18]]}],"transforms":[1,0,0,0,0,0,-1,0,0,1,0,0,0,1166.6671609740006,486.33333333399787,1]} ```
```json {"polygons":[{"vertices":[[412,0,13],[412,769.3300170898438,18],[412,769.3300170898438,13]],"plane":[-0.9999999999999999,0,0,-411.99999999999994]},{"vertices":[[412,0,13],[412,0,18],[412,769.3300170898438,18]],"plane":[-0.9999999999999999,0,0,-411.99999999999994]},{"vertices":[[412,769.3300170898438,13],[403,769.3300170898438,18],[403,769.3300170898438,13]],"plane":[0,-1,0,-769.3300170898438]},{"vertices":[[412,769.3300170898438,13],[412,769.3300170898438,18],[403,769.3300170898438,18]],"plane":[0,-1,0,-769.3300170898438]},{"vertices":[[403,769.3300170898438,13],[403,0,18],[403,0,13]],"plane":[0.9999999999999999,0,0,402.99999999999994]},{"vertices":[[403,769.3300170898438,13],[403,769.3300170898438,18],[403,0,18]],"plane":[0.9999999999999999,0,0,402.99999999999994]},{"vertices":[[412,769.3300170898438,13],[403,769.3300170898438,13],[403,0,13]],"plane":[0,0,0.9999999999999999,12.999999999999998]},{"vertices":[[403,0,13],[412,0,13],[412,769.3300170898438,13]],"plane":[0,0,0.9999999999999999,12.999999999999998]},{"vertices":[[0,0,0],[403,0,0],[403,0,18]],"plane":[0,-1,0,0]},{"vertices":[[0,0,0],[403,0,18],[0,0,18]],"plane":[0,-1,0,0]},{"vertices":[[403,0,0],[412,0,0],[412,0,13]],"plane":[0,-1,0,0]},{"vertices":[[403,0,0],[412,0,13],[403,0,13]],"plane":[0,-1,0,0]},{"vertices":[[412,0,0],[430,0,0],[430,0,18]],"plane":[0,-1,0,0]},{"vertices":[[412,0,0],[430,0,18],[412,0,18]],"plane":[0,-1,0,0]},{"vertices":[[430,0,0],[430,782.3300170898438,0],[430,782.3300170898438,18]],"plane":[0.9999999999999999,0,0,429.99999999999994]},{"vertices":[[430,0,0],[430,782.3300170898438,18],[430,0,18]],"plane":[0.9999999999999999,0,0,429.99999999999994]},{"vertices":[[430,782.3300170898438,0],[0,782.3300170898438,0],[0,782.3300170898438,18]],"plane":[0,0.9999999999999999,0,782.3300170898436]},{"vertices":[[430,782.3300170898438,0],[0,782.3300170898438,18],[430,782.3300170898438,18]],"plane":[0,0.9999999999999999,0,782.3300170898436]},{"vertices":[[0,782.3300170898438,0],[0,0,0],[0,0,18]],"plane":[-0.9999999999999999,0,0,0]},{"vertices":[[0,782.3300170898438,0],[0,0,18],[0,782.3300170898438,18]],"plane":[-0.9999999999999999,0,0,0]},{"vertices":[[0,782.3300170898438,0],[430,0,0],[0,0,0]],"plane":[0,0,-1,0]},{"vertices":[[430,0,0],[0,782.3300170898438,0],[430,782.3300170898438,0]],"plane":[0,0,-1,0]},{"vertices":[[0,782.3300170898438,18],[0,0,18],[403,0,18]],"plane":[0,0,1,18]},{"vertices":[[412,769.3300170898438,18],[412,0,18],[430,0,18]],"plane":[0,0,0.9999999999999999,17.999999999999996]},{"vertices":[[0,782.3300170898438,18],[403,0,18],[403,769.3300170898438,18]],"plane":[0,0,1,18]},{"vertices":[[412,769.3300170898438,18],[430,0,18],[430,782.3300170898438,18]],"plane":[0,0,0.9999999999999999,17.999999999999996]},{"vertices":[[430,782.3300170898438,18],[0,782.3300170898438,18],[403,769.3300170898438,18]],"plane":[0,0,1,18]},{"vertices":[[403,769.3300170898438,18],[412,769.3300170898438,18],[430,782.3300170898438,18]],"plane":[0,0,1,18]}],"transforms":[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]} ``` ```json {"polygons":[{"vertices":[[403,13.006667137145996,13],[412,13.006667137145996,18],[412,13.006667137145996,13]]},{"vertices":[[403,13.006667137145996,13],[403,13.006667137145996,18],[412,13.006667137145996,18]]},{"vertices":[[412,13.006667137145996,13],[412,816.336669921875,18],[412,816.336669921875,13]]},{"vertices":[[412,13.006667137145996,13],[412,13.006667137145996,18],[412,816.336669921875,18]]},{"vertices":[[412,816.336669921875,13],[403,816.336669921875,18],[403,816.336669921875,13]]},{"vertices":[[412,816.336669921875,13],[412,816.336669921875,18],[403,816.336669921875,18]]},{"vertices":[[403,816.336669921875,13],[403,13.006667137145996,18],[403,13.006667137145996,13]]},{"vertices":[[403,816.336669921875,13],[403,816.336669921875,18],[403,13.006667137145996,18]]},{"vertices":[[412,816.336669921875,13],[403,816.336669921875,13],[403,13.006667137145996,13]]},{"vertices":[[403,13.006667137145996,13],[412,13.006667137145996,13],[412,816.336669921875,13]]},{"vertices":[[403,824.3400268554688,13],[412,824.3400268554688,18],[412,824.3400268554688,13]]},{"vertices":[[403,824.3400268554688,13],[403,824.3400268554688,18],[412,824.3400268554688,18]]},{"vertices":[[412,824.3400268554688,13],[412,1602.6700439453125,18],[412,1602.6700439453125,13]]},{"vertices":[[412,824.3400268554688,13],[412,824.3400268554688,18],[412,1602.6700439453125,18]]},{"vertices":[[403,1602.6700439453125,13],[403,824.3400268554688,18],[403,824.3400268554688,13]]},{"vertices":[[403,1602.6700439453125,13],[403,1602.6700439453125,18],[403,824.3400268554688,18]]},{"vertices":[[412,1602.6700439453125,13],[403,1602.6700439453125,13],[403,824.3400268554688,13]]},{"vertices":[[403,824.3400268554688,13],[412,824.3400268554688,13],[412,1602.6700439453125,13]]},{"vertices":[[0,0,0],[430,0,0],[430,0,18]]},{"vertices":[[0,0,0],[430,0,18],[0,0,18]]},{"vertices":[[430,0,0],[430,1602.6700439453125,0],[430,1602.6700439453125,18]]},{"vertices":[[430,0,0],[430,1602.6700439453125,18],[430,0,18]]},{"vertices":[[430,1602.6700439453125,0],[412,1602.6700439453125,0],[412,1602.6700439453125,18]]},{"vertices":[[430,1602.6700439453125,0],[412,1602.6700439453125,18],[430,1602.6700439453125,18]]},{"vertices":[[412,1602.6700439453125,0],[403,1602.6700439453125,0],[403,1602.6700439453125,13]]},{"vertices":[[412,1602.6700439453125,0],[403,1602.6700439453125,13],[412,1602.6700439453125,13]]},{"vertices":[[403,1602.6700439453125,0],[0,1602.6700439453125,0],[0,1602.6700439453125,18]]},{"vertices":[[403,1602.6700439453125,0],[0,1602.6700439453125,18],[403,1602.6700439453125,18]]},{"vertices":[[0,1602.6700439453125,0],[0,0,0],[0,0,18]]},{"vertices":[[0,1602.6700439453125,0],[0,0,18],[0,1602.6700439453125,18]]},{"vertices":[[0,1602.6700439453125,0],[430,0,0],[0,0,0]]},{"vertices":[[430,0,0],[0,1602.6700439453125,0],[430,1602.6700439453125,0]]},{"vertices":[[0,0,18],[403,13.006667137145996,18],[403,816.336669921875,18]]},{"vertices":[[412,13.006667137145996,18],[403,13.006667137145996,18],[0,0,18]]},{"vertices":[[430,0,18],[430,1602.6700439453125,18],[412,1602.6700439453125,18]]},{"vertices":[[403,824.3400268554688,18],[403,1602.6700439453125,18],[0,1602.6700439453125,18]]},{"vertices":[[0,1602.6700439453125,18],[0,0,18],[403,816.336669921875,18]]},{"vertices":[[412,13.006667137145996,18],[0,0,18],[430,0,18]]},{"vertices":[[430,0,18],[412,1602.6700439453125,18],[412,824.3400268554688,18]]},{"vertices":[[403,824.3400268554688,18],[0,1602.6700439453125,18],[403,816.336669921875,18]]},{"vertices":[[412,816.336669921875,18],[412,13.006667137145996,18],[430,0,18]]},{"vertices":[[412,824.3400268554688,18],[403,824.3400268554688,18],[403,816.336669921875,18]]},{"vertices":[[412,816.336669921875,18],[430,0,18],[412,824.3400268554688,18]]},{"vertices":[[412,824.3400268554688,18],[403,816.336669921875,18],[412,816.336669921875,18]]}],"transforms":[1,0,0,0,0,1,0,0,0,0,1,0,0,782.3266666670097,0,1]} ```