nodi-modular 0.0.16 → 0.0.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.d.ts CHANGED
@@ -1,6 +1,11 @@
1
1
  /* tslint:disable */
2
2
  /* eslint-disable */
3
3
  export function do_nothing_just_tell_wasm_bindgen_to_generate_types(): void;
4
+ export interface GeometryTransformInterop {
5
+ geometry: GeometryProxy;
6
+ transform: TransformInterop;
7
+ }
8
+
4
9
  export type NodeOutput = (Map<string, Item[]> | undefined)[];
5
10
 
6
11
  /**
@@ -8,11 +13,6 @@ export type NodeOutput = (Map<string, Item[]> | undefined)[];
8
13
  */
9
14
  export type Item = { variant: "Bool"; data: boolean } | { variant: "String"; data: string } | { variant: "Number"; data: number } | { variant: "Domain"; data: Domain } | { variant: "Vector3"; data: Vector3<number> } | { variant: "Matrix4"; data: Matrix4<number> } | { variant: "Complex"; data: Complex<number> } | { variant: "Point3"; data: Point3<number> } | { variant: "Plane"; data: Plane } | { variant: "GeometryTransform"; data: GeometryTransformInterop } | { variant: "MeshFace"; data: MeshTriangleFace };
10
15
 
11
- export interface GeometryTransformInterop {
12
- geometry: GeometryProxy;
13
- transform: TransformInterop;
14
- }
15
-
16
16
  /**
17
17
  * Interop struct for node
18
18
  */
@@ -334,12 +334,6 @@ export interface NodeMapInterop {
334
334
  folder: NodeFolderInterop;
335
335
  }
336
336
 
337
- export type GraphMappingTypes = "None" | "Bezier" | "Linear" | "Sine";
338
-
339
- export interface IOManager<T, U> {
340
- parameters: IOParameter<T, U>[];
341
- }
342
-
343
337
  /**
344
338
  * Graph structure
345
339
  */
@@ -359,29 +353,9 @@ export interface Prune<T, U> {
359
353
  bypass: Connection[] | undefined;
360
354
  }
361
355
 
362
- /**
363
- * A parameter for an input or output of a node.
364
- */
365
- export interface IOParameter<T, U> {
366
- id: T;
367
- name: string;
368
- access_type: AccessTypes;
369
- hint?: TypeHint;
370
- connections: U[];
371
- }
372
-
373
- /**
374
- * Defines the dynamics of an IO parameter.
375
- */
376
- export interface IOVariables {
377
- minCount: number;
378
- maxCount: number;
379
- defaultCount: number;
380
- offset: number;
381
- editable: boolean;
382
- }
356
+ export type GraphMappingTypes = "None" | "Bezier" | "Linear" | "Sine";
383
357
 
384
- export type TypeHint = Internal;
358
+ export type GraphVariant = "Root" | { SubGraph: SubGraphId };
385
359
 
386
360
  /**
387
361
  * A sub graph is a graph that is a part of a larger graph
@@ -401,6 +375,30 @@ export interface SubGraph<T, U> {
401
375
  instances: SubGraphInstanceId[];
402
376
  }
403
377
 
378
+ /**
379
+ * Defines the dynamics of an IO parameter.
380
+ */
381
+ export interface IOVariables {
382
+ minCount: number;
383
+ maxCount: number;
384
+ defaultCount: number;
385
+ offset: number;
386
+ editable: boolean;
387
+ }
388
+
389
+ /**
390
+ * A parameter for an input or output of a node.
391
+ */
392
+ export interface IOParameter<T, U> {
393
+ id: T;
394
+ name: string;
395
+ access_type: AccessTypes;
396
+ hint?: TypeHint;
397
+ connections: U[];
398
+ }
399
+
400
+ export type TypeHint = Internal;
401
+
404
402
  export interface Node<T> {
405
403
  id: NodeId;
406
404
  name: string;
@@ -416,6 +414,15 @@ export type OutputIOManager = IOManager<OutputId, InputId>;
416
414
 
417
415
  export type InputIOManager = IOManager<InputId, OutputId>;
418
416
 
417
+ export interface ConnectedComponentNode {
418
+ sources: NodeId[];
419
+ destinations: NodeId[];
420
+ }
421
+
422
+ export interface ConnectedComponents<T, U> {
423
+ nodes: IndexMap<NodeId, ConnectedComponentNode<T, U>>;
424
+ }
425
+
419
426
  export interface Connection {
420
427
  source: NodeParameter<OutputId>;
421
428
  destination: NodeParameter<InputId>;
@@ -427,17 +434,6 @@ export interface NodeParameter<T> {
427
434
  parameterIndex: number;
428
435
  }
429
436
 
430
- export interface ConnectedComponentNode {
431
- sources: NodeId[];
432
- destinations: NodeId[];
433
- }
434
-
435
- export interface ConnectedComponents<T, U> {
436
- nodes: IndexMap<NodeId, ConnectedComponentNode<T, U>>;
437
- }
438
-
439
- export type GraphVariant = "Root" | { SubGraph: SubGraphId };
440
-
441
437
  export interface SubGraphIdSet {
442
438
  subGraphId: SubGraphId;
443
439
  instanceId: SubGraphInstanceId;
@@ -467,54 +463,41 @@ export interface GraphNodeSet {
467
463
 
468
464
  export type AccessTypes = "Item" | "List" | "Tree";
469
465
 
470
-
471
- export type LineCurve3D = {
472
- a: Point3;
473
- b: Point3;
474
- };
475
-
476
-
477
- export type PolylineCurve2D = {
478
- points: Point2[];
479
- };
480
- export type PolylineCurve3D = {
481
- points: Point3[];
482
- };
483
-
484
- /**
485
- * Interop proxy for various geometry types
486
- */
487
- export type GeometryInterop = { variant: "Mesh"; data: MeshInterop } | { variant: "Curve"; data: CurveInterop } | { variant: "Point"; data: PointCloudInterop } | { variant: "Plane"; data: Plane } | { variant: "Group"; data: GeometryInterop[] };
466
+ export interface IOManager<T, U> {
467
+ parameters: IOParameter<T, U>[];
468
+ }
488
469
 
489
470
  /**
490
- * Mesh representation with vertices, normals, uv, and index
471
+ * An oriented box in 3D space
491
472
  */
492
- export interface Mesh {
473
+ export interface OrientedBox {
493
474
  /**
494
- * Vertices of the mesh
475
+ * The plane that the box is aligned to
495
476
  */
496
- vertices: Point3<number>[];
477
+ plane: Plane;
497
478
  /**
498
- * Normals of the mesh
479
+ * The bounding box in the local coordinate system
499
480
  */
500
- normals: Vector3<number>[] | undefined;
481
+ bounds: BoundingBox3D;
482
+ }
483
+
484
+ /**
485
+ * A circular surface
486
+ */
487
+ export interface CircularSurface {
501
488
  /**
502
- * UV coordinates of the mesh
489
+ * The base plane of the circle
503
490
  */
504
- uv: Vector2<number>[] | undefined;
491
+ plane: Plane;
505
492
  /**
506
- * Index of the mesh
493
+ * The radius of the circle
507
494
  */
508
- index: [number, number, number][];
495
+ radius: number;
509
496
  }
510
497
 
511
- /**
512
- * A face of a mesh with three vertices
513
- */
514
- export interface MeshTriangleFace {
515
- a: number;
516
- b: number;
517
- c: number;
498
+ export interface Domain {
499
+ min: number;
500
+ max: number;
518
501
  }
519
502
 
520
503
  /**
@@ -532,66 +515,59 @@ export interface PointCloudInterop {
532
515
  }
533
516
 
534
517
  /**
535
- * A surface defined by three points
518
+ * Plane representation with origin, normal, x axis, and y axis
536
519
  */
537
- export type TriangleSurface = Triangle3D;
538
-
539
- export type PolyCurve = CompoundCurve<number, U4>;
520
+ export interface Plane {
521
+ /**
522
+ * Origin coordinate of the plane
523
+ */
524
+ origin: Point3<number>;
525
+ /**
526
+ * Normal vector of the plane
527
+ */
528
+ normal: Vector3<number>;
529
+ /**
530
+ * X axis of the plane
531
+ */
532
+ xAxis: Vector3<number>;
533
+ /**
534
+ * Y axis of the plane
535
+ */
536
+ yAxis: Vector3<number>;
537
+ }
540
538
 
541
539
  /**
542
- * Proxy for various curve types
540
+ * A collection of geometry objects
543
541
  */
544
- export type CurveProxy = { variant: "Line"; data: LineCurve3D } | { variant: "Arc"; data: ArcCurve } | { variant: "Circle"; data: CircleCurve } | { variant: "Ellipse"; data: EllipseCurve } | { variant: "Rectangle"; data: RectangleCurve } | { variant: "Polyline"; data: PolylineCurve3D } | { variant: "NURBS"; data: NurbsCurve } | { variant: "Poly"; data: PolyCurve };
542
+ export type Group = GeometryTransform[];
545
543
 
546
544
  /**
547
- * Interop struct for curve data
545
+ * A face of a mesh with three vertices
548
546
  */
549
- export interface CurveInterop {
550
- /**
551
- * Vertices of the curve
552
- */
553
- vertices: [number, number, number][];
554
- /**
555
- * Transform matrix of the curve
556
- */
557
- transform: Transform3<number> | undefined;
547
+ export interface MeshTriangleFace {
548
+ a: number;
549
+ b: number;
550
+ c: number;
558
551
  }
559
552
 
560
553
  /**
561
- * A surface defined by a plane and two domains in x and y directions
554
+ * A geometry object with a transformation
562
555
  */
563
- export interface PlaneSurface {
564
- /**
565
- * The base plane of the surface
566
- */
567
- plane: Plane;
556
+ export interface GeometryTransform {
568
557
  /**
569
- * The domain in x direction
558
+ * The handle to the geometry object
570
559
  */
571
- x: Domain;
560
+ geometry: Handle<GeometryProxy>;
572
561
  /**
573
- * The domain in y direction
562
+ * Transformation matrix of the geometry
574
563
  */
575
- y: Domain;
564
+ transform: Transform3<number>;
576
565
  }
577
566
 
578
567
  /**
579
- * A ellipse curve in 3D space
568
+ * Proxy for various curve types
580
569
  */
581
- export interface EllipseCurve {
582
- /**
583
- * The base plane of the ellipse
584
- */
585
- plane: Plane;
586
- /**
587
- * The x radius of the ellipse
588
- */
589
- xRadius: number;
590
- /**
591
- * The y radius of the ellipse
592
- */
593
- yRadius: number;
594
- }
570
+ export type CurveProxy = { variant: "Line"; data: LineCurve3D } | { variant: "Arc"; data: ArcCurve } | { variant: "Circle"; data: CircleCurve } | { variant: "Ellipse"; data: EllipseCurve } | { variant: "Rectangle"; data: RectangleCurve } | { variant: "Polyline"; data: PolylineCurve3D } | { variant: "NURBS"; data: NurbsCurve } | { variant: "Poly"; data: PolyCurve };
595
571
 
596
572
 
597
573
  export type Triangle3D = {
@@ -626,6 +602,29 @@ export interface MeshInterop {
626
602
  transform?: Transform3<number>;
627
603
  }
628
604
 
605
+ /**
606
+ * A surface defined by three points
607
+ */
608
+ export type TriangleSurface = Triangle3D;
609
+
610
+ /**
611
+ * A surface defined by a plane and two domains in x and y directions
612
+ */
613
+ export interface PlaneSurface {
614
+ /**
615
+ * The base plane of the surface
616
+ */
617
+ plane: Plane;
618
+ /**
619
+ * The domain in x direction
620
+ */
621
+ x: Domain;
622
+ /**
623
+ * The domain in y direction
624
+ */
625
+ y: Domain;
626
+ }
627
+
629
628
  /**
630
629
  * A rectangle curve in 3D space
631
630
  */
@@ -645,19 +644,36 @@ export interface RectangleCurve {
645
644
  }
646
645
 
647
646
  /**
648
- * A circle curve in 3D space
647
+ * Interop proxy for various geometry types
649
648
  */
650
- export interface CircleCurve {
649
+ export type GeometryInterop = { variant: "Mesh"; data: MeshInterop } | { variant: "Curve"; data: CurveInterop } | { variant: "Point"; data: PointCloudInterop } | { variant: "Plane"; data: Plane } | { variant: "Group"; data: GeometryInterop[] };
650
+
651
+ /**
652
+ * Interop struct for curve data
653
+ */
654
+ export interface CurveInterop {
651
655
  /**
652
- * The base plane of the circle
656
+ * Vertices of the curve
653
657
  */
654
- plane: Plane;
658
+ vertices: [number, number, number][];
655
659
  /**
656
- * The radius of the circle
660
+ * Transform matrix of the curve
657
661
  */
658
- radius: number;
662
+ transform: Transform3<number> | undefined;
659
663
  }
660
664
 
665
+ /**
666
+ * Geometry proxy for various geometry types
667
+ */
668
+ export type GeometryProxy = { variant: "Curve"; data: CurveProxy } | { variant: "Surface"; data: SurfaceProxy } | { variant: "Brep"; data: Brep } | { variant: "Mesh"; data: Mesh } | { variant: "BBox"; data: OrientedBox } | { variant: "Group"; data: Group };
669
+
670
+ /**
671
+ * Proxy for various surface types
672
+ */
673
+ export type SurfaceProxy = { variant: "Circular"; data: CircularSurface } | { variant: "Triangle"; data: TriangleSurface } | { variant: "Plane"; data: PlaneSurface } | { variant: "NURBS"; data: NurbsSurface } | { variant: "Trimmed"; data: TrimmedSurface };
674
+
675
+ export type PolyCurve = CompoundCurve<number, U4>;
676
+
661
677
  /**
662
678
  * An arc curve in 3D space
663
679
  */
@@ -680,78 +696,93 @@ export interface ArcCurve {
680
696
  radius: number;
681
697
  }
682
698
 
699
+
700
+ export type NurbsCurve3D<T = number> = {
701
+ control_points: Point4<T>[];
702
+ knots: T[];
703
+ degree: T;
704
+ };
705
+
706
+
707
+ export type NurbsSurface3D<T = number> = {
708
+ control_points: Point4<T>[][];
709
+ u_knots: T[];
710
+ v_knots: T[];
711
+ u_degree: T;
712
+ v_degree: T;
713
+ };
714
+
715
+
716
+ export type BoundingBox3D = {
717
+ min: Vector3;
718
+ max: Vector3;
719
+ };
720
+
683
721
  /**
684
- * Plane representation with origin, normal, x axis, and y axis
722
+ * Mesh representation with vertices, normals, uv, and index
685
723
  */
686
- export interface Plane {
724
+ export interface Mesh {
687
725
  /**
688
- * Origin coordinate of the plane
726
+ * Vertices of the mesh
689
727
  */
690
- origin: Point3<number>;
728
+ vertices: Point3<number>[];
691
729
  /**
692
- * Normal vector of the plane
730
+ * Normals of the mesh
693
731
  */
694
- normal: Vector3<number>;
732
+ normals: Vector3<number>[] | undefined;
695
733
  /**
696
- * X axis of the plane
734
+ * UV coordinates of the mesh
697
735
  */
698
- xAxis: Vector3<number>;
736
+ uv: Vector2<number>[] | undefined;
699
737
  /**
700
- * Y axis of the plane
738
+ * Index of the mesh
701
739
  */
702
- yAxis: Vector3<number>;
740
+ index: [number, number, number][];
703
741
  }
704
742
 
705
743
  /**
706
- * An oriented box in 3D space
744
+ * A NURBS surface container
707
745
  */
708
- export interface OrientedBox {
709
- /**
710
- * The plane that the box is aligned to
711
- */
712
- plane: Plane;
713
- /**
714
- * The bounding box in the local coordinate system
715
- */
716
- bounds: BoundingBox3D;
717
- }
746
+ export type NurbsSurface = NurbsSurface3D<number>;
747
+
748
+ export type NurbsCurve = NurbsCurve3D<number>;
718
749
 
719
750
  /**
720
- * A geometry object with a transformation
751
+ * A ellipse curve in 3D space
721
752
  */
722
- export interface GeometryTransform {
753
+ export interface EllipseCurve {
723
754
  /**
724
- * The handle to the geometry object
755
+ * The base plane of the ellipse
725
756
  */
726
- geometry: Handle<GeometryProxy>;
757
+ plane: Plane;
727
758
  /**
728
- * Transformation matrix of the geometry
759
+ * The x radius of the ellipse
729
760
  */
730
- transform: Transform3<number>;
761
+ xRadius: number;
762
+ /**
763
+ * The y radius of the ellipse
764
+ */
765
+ yRadius: number;
731
766
  }
732
767
 
733
- /**
734
- * Geometry proxy for various geometry types
735
- */
736
- export type GeometryProxy = { variant: "Curve"; data: CurveProxy } | { variant: "Surface"; data: SurfaceProxy } | { variant: "Brep"; data: Brep } | { variant: "Mesh"; data: Mesh } | { variant: "BBox"; data: OrientedBox } | { variant: "Group"; data: Group };
737
-
738
768
 
739
- export type NurbsCurve3D<T = number> = {
740
- control_points: Point4<T>[];
741
- knots: T[];
742
- degree: T;
769
+ export type LineCurve3D = {
770
+ a: Point3;
771
+ b: Point3;
743
772
  };
744
773
 
745
774
 
746
- export type BoundingBox3D = {
747
- min: Vector3;
748
- max: Vector3;
775
+ export type PolylineCurve2D = {
776
+ points: Point2[];
777
+ };
778
+ export type PolylineCurve3D = {
779
+ points: Point3[];
749
780
  };
750
781
 
751
782
  /**
752
- * A circular surface
783
+ * A circle curve in 3D space
753
784
  */
754
- export interface CircularSurface {
785
+ export interface CircleCurve {
755
786
  /**
756
787
  * The base plane of the circle
757
788
  */
@@ -762,37 +793,6 @@ export interface CircularSurface {
762
793
  radius: number;
763
794
  }
764
795
 
765
- export type NurbsCurve = NurbsCurve3D<number>;
766
-
767
-
768
- export type NurbsSurface3D<T = number> = {
769
- control_points: Point4<T>[][];
770
- u_knots: T[];
771
- v_knots: T[];
772
- u_degree: T;
773
- v_degree: T;
774
- };
775
-
776
- export interface Domain {
777
- min: number;
778
- max: number;
779
- }
780
-
781
- /**
782
- * A collection of geometry objects
783
- */
784
- export type Group = GeometryTransform[];
785
-
786
- /**
787
- * Proxy for various surface types
788
- */
789
- export type SurfaceProxy = { variant: "Circular"; data: CircularSurface } | { variant: "Triangle"; data: TriangleSurface } | { variant: "Plane"; data: PlaneSurface } | { variant: "NURBS"; data: NurbsSurface } | { variant: "Trimmed"; data: TrimmedSurface };
790
-
791
- /**
792
- * A NURBS surface container
793
- */
794
- export type NurbsSurface = NurbsSurface3D<number>;
795
-
796
796
  /**
797
797
  * Modular structure with a graph handle
798
798
  */
@@ -871,8 +871,8 @@ export interface InitOutput {
871
871
  readonly __externref_table_dealloc: (a: number) => void;
872
872
  readonly __externref_drop_slice: (a: number, b: number) => void;
873
873
  readonly __wbindgen_free: (a: number, b: number, c: number) => void;
874
- readonly closure839_externref_shim: (a: number, b: number, c: any) => void;
875
- readonly closure3513_externref_shim: (a: number, b: number, c: any, d: any) => void;
874
+ readonly closure851_externref_shim: (a: number, b: number, c: any) => void;
875
+ readonly closure3512_externref_shim: (a: number, b: number, c: any, d: any) => void;
876
876
  readonly __wbindgen_start: () => void;
877
877
  }
878
878
 
package/index.js CHANGED
@@ -225,11 +225,11 @@ export function do_nothing_just_tell_wasm_bindgen_to_generate_types() {
225
225
  }
226
226
 
227
227
  function __wbg_adapter_52(arg0, arg1, arg2) {
228
- wasm.closure839_externref_shim(arg0, arg1, arg2);
228
+ wasm.closure851_externref_shim(arg0, arg1, arg2);
229
229
  }
230
230
 
231
231
  function __wbg_adapter_145(arg0, arg1, arg2, arg3) {
232
- wasm.closure3513_externref_shim(arg0, arg1, arg2, arg3);
232
+ wasm.closure3512_externref_shim(arg0, arg1, arg2, arg3);
233
233
  }
234
234
 
235
235
  const ModularFinalization = (typeof FinalizationRegistry === 'undefined')
@@ -685,8 +685,8 @@ function __wbg_get_imports() {
685
685
  const ret = false;
686
686
  return ret;
687
687
  };
688
- imports.wbg.__wbindgen_closure_wrapper3519 = function(arg0, arg1, arg2) {
689
- const ret = makeMutClosure(arg0, arg1, 840, __wbg_adapter_52);
688
+ imports.wbg.__wbindgen_closure_wrapper3565 = function(arg0, arg1, arg2) {
689
+ const ret = makeMutClosure(arg0, arg1, 852, __wbg_adapter_52);
690
690
  return ret;
691
691
  };
692
692
  imports.wbg.__wbindgen_debug_string = function(arg0, arg1) {
package/index_bg.wasm CHANGED
Binary file
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "Masatatsu Nakamura <masatatsu.nakamura@gmail.com"
6
6
  ],
7
7
  "description": "Modular is a module project designed to import node graphs created in Nodi in JSON format, enabling the extraction of geometric data generated based on the node graph structure.",
8
- "version": "0.0.16",
8
+ "version": "0.0.18",
9
9
  "license": "MIT",
10
10
  "repository": {
11
11
  "type": "git",