@markandre13/usd.js 0.0.4 → 0.0.6

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.
Files changed (183) hide show
  1. package/README.md +10 -2
  2. package/dist/compression/compress.js +5 -2
  3. package/dist/compression/compress.js.map +1 -1
  4. package/dist/compression/integers.js +13 -0
  5. package/dist/compression/integers.js.map +1 -1
  6. package/dist/compression/lz4.d.ts +18 -1
  7. package/dist/compression/lz4.js +100 -17
  8. package/dist/compression/lz4.js.map +1 -1
  9. package/dist/crate/BootStrap.js +2 -0
  10. package/dist/crate/BootStrap.js.map +1 -1
  11. package/dist/crate/Crate.d.ts +10 -1
  12. package/dist/crate/Crate.js +72 -8
  13. package/dist/crate/Crate.js.map +1 -1
  14. package/dist/crate/CrateDataType.d.ts +1 -1
  15. package/dist/crate/CrateDataType.js +3 -0
  16. package/dist/crate/CrateDataType.js.map +1 -1
  17. package/dist/crate/Field.d.ts +2 -1
  18. package/dist/crate/Field.js +2 -2
  19. package/dist/crate/Field.js.map +1 -1
  20. package/dist/crate/FieldSets.js +1 -0
  21. package/dist/crate/FieldSets.js.map +1 -1
  22. package/dist/crate/Fields.d.ts +2 -10
  23. package/dist/crate/Fields.js +35 -4
  24. package/dist/crate/Fields.js.map +1 -1
  25. package/dist/crate/ListOp.d.ts +29 -0
  26. package/dist/crate/ListOp.js +22 -0
  27. package/dist/crate/ListOp.js.map +1 -0
  28. package/dist/crate/Paths.d.ts +1 -1
  29. package/dist/crate/Paths.js +16 -2
  30. package/dist/crate/Paths.js.map +1 -1
  31. package/dist/crate/Reader.js +3 -3
  32. package/dist/crate/Reader.js.map +1 -1
  33. package/dist/crate/SpecType.d.ts +3 -3
  34. package/dist/crate/SpecType.js +2 -0
  35. package/dist/crate/SpecType.js.map +1 -1
  36. package/dist/crate/Specifier.d.ts +1 -1
  37. package/dist/crate/Specs.js +1 -0
  38. package/dist/crate/Specs.js.map +1 -1
  39. package/dist/crate/Stage.d.ts +1 -1
  40. package/dist/crate/Stage.js +1 -0
  41. package/dist/crate/Stage.js.map +1 -1
  42. package/dist/crate/Strings.js +5 -0
  43. package/dist/crate/Strings.js.map +1 -1
  44. package/dist/crate/Tokens.js +47 -1
  45. package/dist/crate/Tokens.js.map +1 -1
  46. package/dist/crate/ValueRep.d.ts +2 -2
  47. package/dist/crate/ValueRep.js +33 -6
  48. package/dist/crate/ValueRep.js.map +1 -1
  49. package/dist/crate/Variability.d.ts +1 -1
  50. package/dist/crate/Writer.d.ts +3 -0
  51. package/dist/crate/Writer.js +21 -0
  52. package/dist/crate/Writer.js.map +1 -1
  53. package/dist/detail/hexdump.js +1 -0
  54. package/dist/detail/hexdump.js.map +1 -1
  55. package/dist/nodes/attributes/AssetPathAttr.d.ts +1 -1
  56. package/dist/nodes/attributes/AssetPathAttr.js +1 -1
  57. package/dist/nodes/attributes/AssetPathAttr.js.map +1 -1
  58. package/dist/nodes/attributes/Attribute.d.ts +1 -1
  59. package/dist/nodes/attributes/Attribute.js +1 -1
  60. package/dist/nodes/attributes/Attribute.js.map +1 -1
  61. package/dist/nodes/attributes/BooleanAttr.d.ts +1 -1
  62. package/dist/nodes/attributes/BooleanAttr.js +1 -1
  63. package/dist/nodes/attributes/BooleanAttr.js.map +1 -1
  64. package/dist/nodes/attributes/Color3fAttr.d.ts +3 -3
  65. package/dist/nodes/attributes/Color3fAttr.js +1 -1
  66. package/dist/nodes/attributes/Color3fAttr.js.map +1 -1
  67. package/dist/nodes/attributes/FloatArrayAttr.d.ts +6 -0
  68. package/dist/nodes/attributes/FloatArrayAttr.js +18 -0
  69. package/dist/nodes/attributes/FloatArrayAttr.js.map +1 -0
  70. package/dist/nodes/attributes/FloatAttr.d.ts +1 -1
  71. package/dist/nodes/attributes/FloatAttr.js +1 -1
  72. package/dist/nodes/attributes/FloatAttr.js.map +1 -1
  73. package/dist/nodes/attributes/IntArrayAttr.d.ts +4 -2
  74. package/dist/nodes/attributes/IntArrayAttr.js +6 -2
  75. package/dist/nodes/attributes/IntArrayAttr.js.map +1 -1
  76. package/dist/nodes/attributes/Relationship.d.ts +2 -2
  77. package/dist/nodes/attributes/Relationship.js +1 -1
  78. package/dist/nodes/attributes/Relationship.js.map +1 -1
  79. package/dist/nodes/attributes/StringAttr.d.ts +1 -1
  80. package/dist/nodes/attributes/StringAttr.js +1 -1
  81. package/dist/nodes/attributes/StringAttr.js.map +1 -1
  82. package/dist/nodes/attributes/TokenAttr.d.ts +3 -3
  83. package/dist/nodes/attributes/TokenAttr.js +13 -3
  84. package/dist/nodes/attributes/TokenAttr.js.map +1 -1
  85. package/dist/nodes/attributes/VariabilityAttr.d.ts +1 -1
  86. package/dist/nodes/attributes/VariabilityAttr.js +1 -1
  87. package/dist/nodes/attributes/VariabilityAttr.js.map +1 -1
  88. package/dist/nodes/attributes/Vec2fArrayAttr.d.ts +1 -1
  89. package/dist/nodes/attributes/Vec2fArrayAttr.js +1 -1
  90. package/dist/nodes/attributes/Vec2fArrayAttr.js.map +1 -1
  91. package/dist/nodes/attributes/Vec3fArrayAttr.d.ts +4 -2
  92. package/dist/nodes/attributes/Vec3fArrayAttr.js +6 -2
  93. package/dist/nodes/attributes/Vec3fArrayAttr.js.map +1 -1
  94. package/dist/nodes/geometry/Boundable.d.ts +6 -0
  95. package/dist/nodes/geometry/Boundable.js +6 -0
  96. package/dist/nodes/geometry/Boundable.js.map +1 -1
  97. package/dist/nodes/geometry/Camera.d.ts +7 -2
  98. package/dist/nodes/geometry/Camera.js +36 -0
  99. package/dist/nodes/geometry/Camera.js.map +1 -1
  100. package/dist/nodes/geometry/GeomSubset.d.ts +67 -2
  101. package/dist/nodes/geometry/GeomSubset.js +101 -8
  102. package/dist/nodes/geometry/GeomSubset.js.map +1 -1
  103. package/dist/nodes/geometry/Gprim.d.ts +28 -0
  104. package/dist/nodes/geometry/Gprim.js +30 -0
  105. package/dist/nodes/geometry/Gprim.js.map +1 -1
  106. package/dist/nodes/geometry/Imageable.d.ts +9 -0
  107. package/dist/nodes/geometry/Imageable.js +9 -0
  108. package/dist/nodes/geometry/Imageable.js.map +1 -1
  109. package/dist/nodes/geometry/Mesh.d.ts +75 -10
  110. package/dist/nodes/geometry/Mesh.js +121 -8
  111. package/dist/nodes/geometry/Mesh.js.map +1 -1
  112. package/dist/nodes/geometry/PointBased.d.ts +20 -2
  113. package/dist/nodes/geometry/PointBased.js +35 -11
  114. package/dist/nodes/geometry/PointBased.js.map +1 -1
  115. package/dist/nodes/geometry/Scope.d.ts +9 -1
  116. package/dist/nodes/geometry/Scope.js +8 -0
  117. package/dist/nodes/geometry/Scope.js.map +1 -1
  118. package/dist/nodes/geometry/SkelBindingAPI.d.ts +70 -0
  119. package/dist/nodes/geometry/SkelBindingAPI.js +2 -0
  120. package/dist/nodes/geometry/SkelBindingAPI.js.map +1 -0
  121. package/dist/nodes/geometry/Xform.d.ts +6 -1
  122. package/dist/nodes/geometry/Xform.js +5 -0
  123. package/dist/nodes/geometry/Xform.js.map +1 -1
  124. package/dist/nodes/geometry/Xformable.d.ts +9 -3
  125. package/dist/nodes/geometry/Xformable.js +6 -0
  126. package/dist/nodes/geometry/Xformable.js.map +1 -1
  127. package/dist/nodes/lux/BoundableLightBase.d.ts +8 -0
  128. package/dist/nodes/lux/BoundableLightBase.js +8 -0
  129. package/dist/nodes/lux/BoundableLightBase.js.map +1 -1
  130. package/dist/nodes/lux/DomeLight.d.ts +11 -1
  131. package/dist/nodes/lux/DomeLight.js +10 -0
  132. package/dist/nodes/lux/DomeLight.js.map +1 -1
  133. package/dist/nodes/lux/NonboundableLightBase.d.ts +1 -1
  134. package/dist/nodes/lux/NonboundableLightBase.js +10 -1
  135. package/dist/nodes/lux/NonboundableLightBase.js.map +1 -1
  136. package/dist/nodes/lux/SphereLight.d.ts +9 -1
  137. package/dist/nodes/lux/SphereLight.js +8 -0
  138. package/dist/nodes/lux/SphereLight.js.map +1 -1
  139. package/dist/nodes/shader/Material.d.ts +8 -1
  140. package/dist/nodes/shader/Material.js +19 -0
  141. package/dist/nodes/shader/Material.js.map +1 -1
  142. package/dist/nodes/shader/NodeGraph.d.ts +7 -0
  143. package/dist/nodes/shader/NodeGraph.js +7 -0
  144. package/dist/nodes/shader/NodeGraph.js.map +1 -1
  145. package/dist/nodes/shader/Shader.d.ts +9 -1
  146. package/dist/nodes/shader/Shader.js +8 -0
  147. package/dist/nodes/shader/Shader.js.map +1 -1
  148. package/dist/nodes/shader/blender/ImageTexture.d.ts +12 -0
  149. package/dist/nodes/shader/blender/ImageTexture.js +59 -0
  150. package/dist/nodes/shader/blender/ImageTexture.js.map +1 -0
  151. package/dist/nodes/shader/blender/PrincipledBSDF.d.ts +14 -0
  152. package/dist/nodes/shader/blender/PrincipledBSDF.js +82 -0
  153. package/dist/nodes/shader/blender/PrincipledBSDF.js.map +1 -0
  154. package/dist/nodes/shader/blender/UVMap.d.ts +9 -0
  155. package/dist/nodes/shader/blender/UVMap.js +32 -0
  156. package/dist/nodes/shader/blender/UVMap.js.map +1 -0
  157. package/dist/nodes/skeleton/BlendShape.d.ts +21 -0
  158. package/dist/nodes/skeleton/BlendShape.js +46 -0
  159. package/dist/nodes/skeleton/BlendShape.js.map +1 -0
  160. package/dist/nodes/skeleton/SkelAnimation.d.ts +26 -0
  161. package/dist/nodes/skeleton/SkelAnimation.js +50 -0
  162. package/dist/nodes/skeleton/SkelAnimation.js.map +1 -0
  163. package/dist/nodes/skeleton/SkelRoot.d.ts +6 -1
  164. package/dist/nodes/skeleton/SkelRoot.js +5 -0
  165. package/dist/nodes/skeleton/SkelRoot.js.map +1 -1
  166. package/dist/nodes/skeleton/Skeleton.d.ts +51 -4
  167. package/dist/nodes/skeleton/Skeleton.js +51 -0
  168. package/dist/nodes/skeleton/Skeleton.js.map +1 -1
  169. package/dist/nodes/usd/PseudoRoot.d.ts +1 -1
  170. package/dist/nodes/usd/PseudoRoot.js +21 -1
  171. package/dist/nodes/usd/PseudoRoot.js.map +1 -1
  172. package/dist/nodes/usd/SchemaBase.d.ts +1 -1
  173. package/dist/nodes/usd/SchemaBase.js +1 -1
  174. package/dist/nodes/usd/SchemaBase.js.map +1 -1
  175. package/dist/nodes/usd/Typed.d.ts +10 -0
  176. package/dist/nodes/usd/Typed.js +10 -0
  177. package/dist/nodes/usd/Typed.js.map +1 -1
  178. package/dist/{crate → nodes/usd}/UsdNode.d.ts +21 -9
  179. package/dist/{crate → nodes/usd}/UsdNode.js +56 -2
  180. package/dist/nodes/usd/UsdNode.js.map +1 -0
  181. package/package.json +8 -8
  182. package/dist/crate/UsdNode.js.map +0 -1
  183. package/dist/tsconfig.tsbuildinfo +0 -1
@@ -1,5 +1,5 @@
1
1
  import { SpecType } from "../../crate/SpecType";
2
- import { UsdNode } from "../../crate/UsdNode";
2
+ import { UsdNode } from "../usd/UsdNode";
3
3
  export class FloatAttr extends UsdNode {
4
4
  constructor(parent, name, value) {
5
5
  super(parent.crate, parent, -1, name, false);
@@ -1 +1 @@
1
- {"version":3,"file":"FloatAttr.js","sourceRoot":"","sources":["../../../src/nodes/attributes/FloatAttr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAE7C,MAAM,OAAO,SAAU,SAAQ,OAAO;IAElC,YAAY,MAAe,EAAE,IAAY,EAAE,KAAa;QACpD,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;QACnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,CAAC;IAEQ,YAAY;QACjB,KAAK,CAAC,YAAY,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QAExB,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAC7C,CAAA;QACD,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAC/C,CAAA;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"FloatAttr.js","sourceRoot":"","sources":["../../../src/nodes/attributes/FloatAttr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAExC,MAAM,OAAO,SAAU,SAAQ,OAAO;IAElC,YAAY,MAAe,EAAE,IAAY,EAAE,KAAa;QACpD,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;QACnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,CAAC;IAEQ,YAAY;QACjB,KAAK,CAAC,YAAY,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACxB,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAC7C,CAAA;QACD,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,KAAe,CAAC,CACzD,CAAA;IACL,CAAC;CACJ"}
@@ -1,6 +1,8 @@
1
- import { UsdNode } from "../../crate/UsdNode";
1
+ import { Variability } from "../../crate/Variability";
2
+ import { UsdNode } from "../usd/UsdNode";
2
3
  export declare class IntArrayAttr extends UsdNode {
3
4
  value: ArrayLike<number>;
4
- constructor(parent: UsdNode, name: string, value: ArrayLike<number>);
5
+ variability?: Variability;
6
+ constructor(parent: UsdNode, name: string, value: ArrayLike<number>, variability?: Variability);
5
7
  encodeFields(): void;
6
8
  }
@@ -1,15 +1,19 @@
1
1
  import { SpecType } from "../../crate/SpecType";
2
- import { UsdNode } from "../../crate/UsdNode";
2
+ import { UsdNode } from "../usd/UsdNode";
3
3
  export class IntArrayAttr extends UsdNode {
4
- constructor(parent, name, value) {
4
+ constructor(parent, name, value, variability) {
5
5
  super(parent.crate, parent, -1, name, false);
6
6
  this.spec_type = SpecType.Attribute;
7
7
  this.value = value;
8
+ this.variability = variability;
8
9
  }
9
10
  encodeFields() {
10
11
  super.encodeFields();
11
12
  const crate = this.crate;
12
13
  crate.fieldsets.fieldset_indices.push(crate.fields.setToken("typeName", "int[]"));
14
+ if (this.variability !== undefined) {
15
+ crate.fieldsets.fieldset_indices.push(crate.fields.setVariability("variability", this.variability));
16
+ }
13
17
  crate.fieldsets.fieldset_indices.push(crate.fields.setIntArray("default", this.value));
14
18
  }
15
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"IntArrayAttr.js","sourceRoot":"","sources":["../../../src/nodes/attributes/IntArrayAttr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAE7C,MAAM,OAAO,YAAa,SAAQ,OAAO;IAErC,YAAY,MAAe,EAAE,IAAY,EAAE,KAAwB;QAC/D,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;QACnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,CAAC;IAEQ,YAAY;QACjB,KAAK,CAAC,YAAY,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QAExB,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAC7C,CAAA;QACD,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAClD,CAAA;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"IntArrayAttr.js","sourceRoot":"","sources":["../../../src/nodes/attributes/IntArrayAttr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAE/C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAExC,MAAM,OAAO,YAAa,SAAQ,OAAO;IAGrC,YAAY,MAAe,EAAE,IAAY,EAAE,KAAwB,EAAE,WAAyB;QAC1F,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;QACnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAClC,CAAC;IAEQ,YAAY;QACjB,KAAK,CAAC,YAAY,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QAExB,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAC7C,CAAA;QACD,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACjC,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAC/D,CAAA;QACL,CAAC;QACD,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAClD,CAAA;IACL,CAAC;CACJ"}
@@ -1,5 +1,5 @@
1
- import type { ListOp } from "../../crate/Fields";
2
- import { UsdNode } from "../../crate/UsdNode";
1
+ import type { ListOp } from "../../crate/ListOp";
2
+ import { UsdNode } from "../usd/UsdNode";
3
3
  export declare class Relationship extends UsdNode {
4
4
  value: ListOp<UsdNode>;
5
5
  constructor(parent: UsdNode, name: string, value: ListOp<UsdNode>);
@@ -1,5 +1,5 @@
1
1
  import { SpecType } from "../../crate/SpecType";
2
- import { UsdNode } from "../../crate/UsdNode";
2
+ import { UsdNode } from "../usd/UsdNode";
3
3
  import { Variability } from "../../crate/Variability";
4
4
  export class Relationship extends UsdNode {
5
5
  constructor(parent, name, value) {
@@ -1 +1 @@
1
- {"version":3,"file":"Relationship.js","sourceRoot":"","sources":["../../../src/nodes/attributes/Relationship.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAErD,MAAM,OAAO,YAAa,SAAQ,OAAO;IAErC,YAAY,MAAe,EAAE,IAAY,EAAE,KAAsB;QAC7D,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,YAAY,CAAA;QACtC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,CAAC;IAEQ,YAAY;QACjB,KAAK,CAAC,YAAY,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QAExB,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,WAAW,CAAC,OAAO,CAAC,CAClE,CAAA;QACD,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,CACxD,CAAA;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"Relationship.js","sourceRoot":"","sources":["../../../src/nodes/attributes/Relationship.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAErD,MAAM,OAAO,YAAa,SAAQ,OAAO;IAErC,YAAY,MAAe,EAAE,IAAY,EAAE,KAAsB;QAC7D,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,YAAY,CAAA;QACtC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,CAAC;IAEQ,YAAY;QACjB,KAAK,CAAC,YAAY,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QAExB,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,WAAW,CAAC,OAAO,CAAC,CAClE,CAAA;QACD,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,CACxD,CAAA;IACL,CAAC;CACJ"}
@@ -1,4 +1,4 @@
1
- import { UsdNode } from "../../crate/UsdNode";
1
+ import { UsdNode } from "../usd/UsdNode";
2
2
  export declare class StringAttr extends UsdNode {
3
3
  value: string;
4
4
  custom?: boolean;
@@ -1,5 +1,5 @@
1
1
  import { SpecType } from "../../crate/SpecType";
2
- import { UsdNode } from "../../crate/UsdNode";
2
+ import { UsdNode } from "../usd/UsdNode";
3
3
  export class StringAttr extends UsdNode {
4
4
  constructor(parent, name, value, options) {
5
5
  super(parent.crate, parent, -1, name, false);
@@ -1 +1 @@
1
- {"version":3,"file":"StringAttr.js","sourceRoot":"","sources":["../../../src/nodes/attributes/StringAttr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAE7C,MAAM,OAAO,UAAW,SAAQ,OAAO;IAGnC,YAAY,MAAe,EAAE,IAAY,EAAE,KAAa,EAAE,OAA6B;QACnF,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;QACnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,MAAM,GAAG,OAAO,EAAE,MAAM,CAAA;IACjC,CAAC;IACQ,YAAY;QACjB,KAAK,CAAC,YAAY,EAAE,CAAA;QACpB,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QACtC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QACnC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IACzC,CAAC;CACJ"}
1
+ {"version":3,"file":"StringAttr.js","sourceRoot":"","sources":["../../../src/nodes/attributes/StringAttr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAExC,MAAM,OAAO,UAAW,SAAQ,OAAO;IAGnC,YAAY,MAAe,EAAE,IAAY,EAAE,KAAa,EAAE,OAA6B;QACnF,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;QACnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,MAAM,GAAG,OAAO,EAAE,MAAM,CAAA;IACjC,CAAC;IACQ,YAAY;QACjB,KAAK,CAAC,YAAY,EAAE,CAAA;QACpB,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QACtC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QACnC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IACzC,CAAC;CACJ"}
@@ -1,8 +1,8 @@
1
- import { UsdNode } from "../../crate/UsdNode";
1
+ import { UsdNode } from "../usd/UsdNode";
2
2
  import type { Variability } from "../../crate/Variability";
3
3
  export declare class TokenAttr extends UsdNode {
4
4
  variability?: Variability;
5
- token?: string;
6
- constructor(parent: UsdNode, name: string, variability?: Variability, token?: string);
5
+ token?: string | string[];
6
+ constructor(parent: UsdNode, name: string, variability?: Variability, token?: string | string[]);
7
7
  encodeFields(): void;
8
8
  }
@@ -1,5 +1,5 @@
1
1
  import { SpecType } from "../../crate/SpecType";
2
- import { UsdNode } from "../../crate/UsdNode";
2
+ import { UsdNode } from "../usd/UsdNode";
3
3
  export class TokenAttr extends UsdNode {
4
4
  constructor(parent, name, variability, token) {
5
5
  super(parent.crate, parent, -1, name, false);
@@ -10,12 +10,22 @@ export class TokenAttr extends UsdNode {
10
10
  encodeFields() {
11
11
  super.encodeFields();
12
12
  const crate = this.crate;
13
- crate.fieldsets.fieldset_indices.push(crate.fields.setToken("typeName", "token"));
13
+ if (Array.isArray(this.token)) {
14
+ crate.fieldsets.fieldset_indices.push(crate.fields.setToken("typeName", "token[]"));
15
+ }
16
+ else {
17
+ crate.fieldsets.fieldset_indices.push(crate.fields.setToken("typeName", "token"));
18
+ }
14
19
  if (this.variability !== undefined) {
15
20
  crate.fieldsets.fieldset_indices.push(crate.fields.setVariability("variability", this.variability));
16
21
  }
17
22
  if (this.token !== undefined) {
18
- crate.fieldsets.fieldset_indices.push(crate.fields.setToken("default", this.token));
23
+ if (Array.isArray(this.token)) {
24
+ crate.fieldsets.fieldset_indices.push(crate.fields.setTokenArray("default", this.token));
25
+ }
26
+ else {
27
+ crate.fieldsets.fieldset_indices.push(crate.fields.setToken("default", this.token));
28
+ }
19
29
  }
20
30
  }
21
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TokenAttr.js","sourceRoot":"","sources":["../../../src/nodes/attributes/TokenAttr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAG7C,MAAM,OAAO,SAAU,SAAQ,OAAO;IAGlC,YAAY,MAAe,EAAE,IAAY,EAAE,WAAyB,EAAE,KAAc;QAChF,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;QACnC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,CAAC;IAEQ,YAAY;QACjB,KAAK,CAAC,YAAY,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACxB,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAC7C,CAAA;QACD,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACjC,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAC/D,CAAA;QACL,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC3B,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAC/C,CAAA;QACL,CAAC;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"TokenAttr.js","sourceRoot":"","sources":["../../../src/nodes/attributes/TokenAttr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAGxC,MAAM,OAAO,SAAU,SAAQ,OAAO;IAGlC,YAAY,MAAe,EAAE,IAAY,EAAE,WAAyB,EAAE,KAAyB;QAC3F,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;QACnC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,CAAC;IAEQ,YAAY;QACjB,KAAK,CAAC,YAAY,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACxB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5B,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,CAC/C,CAAA;QACL,CAAC;aAAM,CAAC;YACJ,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAC7C,CAAA;QACL,CAAC;QACD,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACjC,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAC/D,CAAA;QACL,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC3B,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5B,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CACpD,CAAA;YACL,CAAC;iBAAM,CAAC;gBACJ,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAC/C,CAAA;YACL,CAAC;QACL,CAAC;IACL,CAAC;CACJ"}
@@ -1,4 +1,4 @@
1
- import { UsdNode } from "../../crate/UsdNode";
1
+ import { UsdNode } from "../usd/UsdNode";
2
2
  import type { Variability } from "../../crate/Variability";
3
3
  export declare class VariabilityAttr extends UsdNode {
4
4
  variability: Variability;
@@ -1,5 +1,5 @@
1
1
  import { SpecType } from "../../crate/SpecType";
2
- import { UsdNode } from "../../crate/UsdNode";
2
+ import { UsdNode } from "../usd/UsdNode";
3
3
  export class VariabilityAttr extends UsdNode {
4
4
  constructor(parent, name, variability, value) {
5
5
  super(parent.crate, parent, -1, name, false);
@@ -1 +1 @@
1
- {"version":3,"file":"VariabilityAttr.js","sourceRoot":"","sources":["../../../src/nodes/attributes/VariabilityAttr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAG7C,MAAM,OAAO,eAAgB,SAAQ,OAAO;IAGxC,YAAY,MAAe,EAAE,IAAY,EAAE,WAAwB,EAAE,KAAa;QAC9E,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;QACnC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,CAAC;IAEQ,YAAY;QACjB,KAAK,CAAC,YAAY,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QAExB,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAC7C,CAAA;QACD,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAC/D,CAAA;QACD,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAC/C,CAAA;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"VariabilityAttr.js","sourceRoot":"","sources":["../../../src/nodes/attributes/VariabilityAttr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAGxC,MAAM,OAAO,eAAgB,SAAQ,OAAO;IAGxC,YAAY,MAAe,EAAE,IAAY,EAAE,WAAwB,EAAE,KAAa;QAC9E,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;QACnC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,CAAC;IAEQ,YAAY;QACjB,KAAK,CAAC,YAAY,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QAExB,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAC7C,CAAA;QACD,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAC/D,CAAA;QACD,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAC/C,CAAA;IACL,CAAC;CACJ"}
@@ -1,5 +1,5 @@
1
1
  import type { Crate } from "../../crate/Crate";
2
- import { UsdNode } from "../../crate/UsdNode";
2
+ import { UsdNode } from "../usd/UsdNode";
3
3
  export declare class Vec2fArrayAttr extends UsdNode {
4
4
  value: ArrayLike<number>;
5
5
  typeName: string;
@@ -1,5 +1,5 @@
1
1
  import { SpecType } from "../../crate/SpecType";
2
- import { UsdNode } from "../../crate/UsdNode";
2
+ import { UsdNode } from "../usd/UsdNode";
3
3
  export class Vec2fArrayAttr extends UsdNode {
4
4
  constructor(crate, parent, name, value, typeName) {
5
5
  super(crate, parent, -1, name, false);
@@ -1 +1 @@
1
- {"version":3,"file":"Vec2fArrayAttr.js","sourceRoot":"","sources":["../../../src/nodes/attributes/Vec2fArrayAttr.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAE7C,MAAM,OAAO,cAAe,SAAQ,OAAO;IAIvC,YACI,KAAY,EACZ,MAAe,EACf,IAAY,EACZ,KAAwB,EACxB,QAAwB;QAExB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QACrC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;QACnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAEQ,YAAY;QACjB,KAAK,CAAC,YAAY,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QAExB,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CACnD,CAAA;QACD,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACnC,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,CAC7D,CAAA;QACL,CAAC;QACD,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CACpD,CAAA;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"Vec2fArrayAttr.js","sourceRoot":"","sources":["../../../src/nodes/attributes/Vec2fArrayAttr.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAExC,MAAM,OAAO,cAAe,SAAQ,OAAO;IAIvC,YACI,KAAY,EACZ,MAAe,EACf,IAAY,EACZ,KAAwB,EACxB,QAAwB;QAExB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QACrC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;QACnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAEQ,YAAY;QACjB,KAAK,CAAC,YAAY,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QAExB,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CACnD,CAAA;QACD,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACnC,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,CAC7D,CAAA;QACL,CAAC;QACD,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CACpD,CAAA;IACL,CAAC;CACJ"}
@@ -1,8 +1,10 @@
1
- import { UsdNode } from "../../crate/UsdNode";
1
+ import { Variability } from "../../crate/Variability";
2
+ import { UsdNode } from "../usd/UsdNode";
2
3
  export declare class Vec3fArrayAttr extends UsdNode {
3
4
  value: ArrayLike<number>;
4
5
  typeName: string;
5
6
  interpolation?: string;
6
- constructor(parent: UsdNode, name: string, value: ArrayLike<number>, typeName: "float3[]" | "point3f[]" | "normal3f[]");
7
+ variability?: Variability;
8
+ constructor(parent: UsdNode, name: string, value: ArrayLike<number>, typeName: "float3[]" | "point3f[]" | "normal3f[]" | "vector3f[]", variability?: Variability);
7
9
  encodeFields(): void;
8
10
  }
@@ -1,16 +1,20 @@
1
1
  import { SpecType } from "../../crate/SpecType";
2
- import { UsdNode } from "../../crate/UsdNode";
2
+ import { UsdNode } from "../usd/UsdNode";
3
3
  export class Vec3fArrayAttr extends UsdNode {
4
- constructor(parent, name, value, typeName) {
4
+ constructor(parent, name, value, typeName, variability) {
5
5
  super(parent.crate, parent, -1, name, false);
6
6
  this.spec_type = SpecType.Attribute;
7
7
  this.value = value;
8
8
  this.typeName = typeName;
9
+ this.variability = variability;
9
10
  }
10
11
  encodeFields() {
11
12
  super.encodeFields();
12
13
  const crate = this.crate;
13
14
  crate.fieldsets.fieldset_indices.push(crate.fields.setToken("typeName", this.typeName));
15
+ if (this.variability !== undefined) {
16
+ crate.fieldsets.fieldset_indices.push(crate.fields.setVariability("variability", this.variability));
17
+ }
14
18
  crate.fieldsets.fieldset_indices.push(crate.fields.setVec3fArray("default", this.value));
15
19
  if (this.interpolation !== undefined) {
16
20
  crate.fieldsets.fieldset_indices.push(crate.fields.setToken("interpolation", this.interpolation));
@@ -1 +1 @@
1
- {"version":3,"file":"Vec3fArrayAttr.js","sourceRoot":"","sources":["../../../src/nodes/attributes/Vec3fArrayAttr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAE7C,MAAM,OAAO,cAAe,SAAQ,OAAO;IAIvC,YACI,MAAe,EACf,IAAY,EACZ,KAAwB,EACxB,QAAiD;QAEjD,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;QACnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAEQ,YAAY;QACjB,KAAK,CAAC,YAAY,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QAExB,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CACnD,CAAA;QACD,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CACpD,CAAA;QACD,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACnC,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,CAC7D,CAAA;QACL,CAAC;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"Vec3fArrayAttr.js","sourceRoot":"","sources":["../../../src/nodes/attributes/Vec3fArrayAttr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAE/C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAExC,MAAM,OAAO,cAAe,SAAQ,OAAO;IAKvC,YACI,MAAe,EACf,IAAY,EACZ,KAAwB,EACxB,QAAgE,EAChE,WAAyB;QAEzB,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;QACnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAClC,CAAC;IAEQ,YAAY;QACjB,KAAK,CAAC,YAAY,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QAExB,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CACnD,CAAA;QACD,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACjC,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAC/D,CAAA;QACL,CAAC;QACD,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CACpD,CAAA;QACD,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACnC,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,CAC7D,CAAA;QACL,CAAC;IACL,CAAC;CACJ"}
@@ -1,4 +1,10 @@
1
1
  import { Xformable } from "./Xformable";
2
+ /**
3
+ * Boundable introduces the ability for a prim to persistently
4
+ * cache a rectilinear, local-space, extent.
5
+ *
6
+ * defined in pxr/usd/usdGeom/schema.usda
7
+ */
2
8
  export declare class Boundable extends Xformable {
3
9
  set extent(value: ArrayLike<number> | undefined);
4
10
  }
@@ -1,5 +1,11 @@
1
1
  import { Vec3fArrayAttr } from "../attributes/Vec3fArrayAttr";
2
2
  import { Xformable } from "./Xformable";
3
+ /**
4
+ * Boundable introduces the ability for a prim to persistently
5
+ * cache a rectilinear, local-space, extent.
6
+ *
7
+ * defined in pxr/usd/usdGeom/schema.usda
8
+ */
3
9
  export class Boundable extends Xformable {
4
10
  set extent(value) {
5
11
  this.deleteChild("extent");
@@ -1 +1 @@
1
- {"version":3,"file":"Boundable.js","sourceRoot":"","sources":["../../../src/nodes/geometry/Boundable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAQvC,MAAM,OAAO,SAAU,SAAQ,SAAS;IACpC,IAAI,MAAM,CAAC,KAAoC;QAC3C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QAC1B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACtB,IAAI,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,CAAA;QACzD,CAAC;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"Boundable.js","sourceRoot":"","sources":["../../../src/nodes/geometry/Boundable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC;;;;;GAKG;AACH,MAAM,OAAO,SAAU,SAAQ,SAAS;IACpC,IAAI,MAAM,CAAC,KAAoC;QAC3C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QAC1B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACtB,IAAI,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,CAAA;QACzD,CAAC;IACL,CAAC;CACJ"}
@@ -1,11 +1,16 @@
1
- import type { UsdNode } from "../../crate/UsdNode";
1
+ import type { UsdNode } from "../usd/UsdNode";
2
2
  import { Boundable } from "./Boundable";
3
+ /**
4
+ * Transformable camera.
5
+ *
6
+ * defined in pxr/usd/usdGeom/schema.usda
7
+ */
3
8
  export declare class Camera extends Boundable {
4
9
  constructor(parent: UsdNode, name: string);
5
10
  set projection(value: "perspective" | "orthographic" | undefined);
6
11
  set horizontalAperture(value: number | undefined);
7
12
  set verticalAperture(value: number | undefined);
8
13
  set focalLength(value: number | undefined);
9
- set clippingRange(value: number[] | undefined);
14
+ set clippingRange(value: ArrayLike<number> | undefined);
10
15
  set blenderDataName(value: string | undefined);
11
16
  }
@@ -3,6 +3,11 @@ import { SpecType } from "../../crate/SpecType";
3
3
  import { Attribute } from "../attributes/Attribute";
4
4
  import { StringAttr } from "../attributes/StringAttr";
5
5
  import { Boundable } from "./Boundable";
6
+ /**
7
+ * Transformable camera.
8
+ *
9
+ * defined in pxr/usd/usdGeom/schema.usda
10
+ */
6
11
  export class Camera extends Boundable {
7
12
  constructor(parent, name) {
8
13
  super(parent.crate, parent, -1, name, true);
@@ -10,6 +15,9 @@ export class Camera extends Boundable {
10
15
  this.specifier = Specifier.Def;
11
16
  this.typeName = "Camera";
12
17
  }
18
+ //
19
+ // Viewing Frustum
20
+ //
13
21
  set projection(value) {
14
22
  this.deleteChild("projection");
15
23
  new Attribute(this, "projection", (node) => {
@@ -31,6 +39,8 @@ export class Camera extends Boundable {
31
39
  node.setFloat("default", value);
32
40
  });
33
41
  }
42
+ // horizontalApertureOffset
43
+ // verticalApertureOffset
34
44
  set focalLength(value) {
35
45
  this.deleteChild("focalLength");
36
46
  new Attribute(this, "focalLength", (node) => {
@@ -45,6 +55,32 @@ export class Camera extends Boundable {
45
55
  node.setVec2f("default", value);
46
56
  });
47
57
  }
58
+ // clippingPlanes
59
+ //
60
+ // Depth of Field
61
+ //
62
+ // fStop
63
+ // focusDistance
64
+ //
65
+ // Stereoscopic 3D
66
+ //
67
+ // stereoRole
68
+ //
69
+ // Parameters for Motion Blur
70
+ //
71
+ // shutter:open
72
+ // shutter:close
73
+ //
74
+ // Exposure Adjustment
75
+ //
76
+ // exposure
77
+ //
78
+ // Exposure Controls
79
+ //
80
+ // exposure:iso
81
+ // exposure:time
82
+ // exposure:fStop
83
+ // exposure:responsivity
48
84
  set blenderDataName(value) {
49
85
  this.deleteChild("userProperties:blender:data_name");
50
86
  if (value !== undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"Camera.js","sourceRoot":"","sources":["../../../src/nodes/geometry/Camera.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Camera.js","sourceRoot":"","sources":["../../../src/nodes/geometry/Camera.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,70 @@
1
- import { UsdNode } from "../../crate/UsdNode";
2
- export declare class GeomSubset extends UsdNode {
1
+ import { ListOp } from "../../crate/ListOp";
2
+ import { Material } from "../shader/Material";
3
+ import { Typed } from "../usd/Typed";
4
+ import { UsdNode } from "../usd/UsdNode";
5
+ /**
6
+ * Encodes a subset of a piece of geometry (i.e. a UsdGeomImageable)
7
+ * as a set of indices. Currently supports encoding subsets of faces,
8
+ * points, edges, segments, and tetrahedrons.
9
+ *
10
+ * To apply to a geometric prim, a GeomSubset prim must be the prim's direct
11
+ * child in namespace, and possess a concrete defining specifier (i.e. def).
12
+ * This restriction makes it easy and efficient to discover subsets of a prim.
13
+ * We might want to relax this restriction if it's common to have multiple
14
+ * <b>families</b> of subsets on a gprim and if it's useful to be able to
15
+ * organize subsets belonging to a <b>family</b> under a common scope. See
16
+ * 'familyName' attribute for more info on defining a family of subsets.
17
+ *
18
+ * defined in pxr/usd/usdGeom/schema.usda
19
+ */
20
+ export declare class GeomSubset extends Typed {
3
21
  constructor(parent: UsdNode, name: string);
4
22
  encodeFields(): void;
23
+ private apiSchemas?;
24
+ private prependApiSchema;
25
+ /**
26
+ * The type of element that the indices target. "elementType" can
27
+ * have one of the following values:
28
+ * - face: Identifies faces on a Gprim's surface. For a
29
+ * UsdGeomMesh, each element of the _indices_ attribute would refer to
30
+ * an element of the Mesh's _faceCounts_ attribute. For a UsdGeomTetMesh,
31
+ * each element of the _indices_ attribute would refer to an element of
32
+ * the Mesh's _surfaceFaceVertexIndices_ attribute.</li>
33
+ * - point: for any UsdGeomPointBased, each
34
+ * element of the _indices_ attribute would refer to an element of the
35
+ * Mesh's _points_ attribute</li>
36
+ * - edge: for any UsdGeomMesh, each pair of elements
37
+ * in the _indices_ attribute would refer to a pair of points of the
38
+ * Mesh's _points_ attribute that are connected as an implicit edge on the
39
+ * Mesh. These edges are derived from the Mesh's _faceVertexIndices_
40
+ * attribute. Edges are not currently defined for a UsdGeomTetMesh, but
41
+ * could be derived from all tetrahedron edges or surface face edges only
42
+ * if a specific use-case arises.</li>
43
+ * - segment: for any Curve, each pair of elements
44
+ * in the _indices_ attribute would refer to a pair of indices
45
+ * (_curveIndex_, _segmentIndex_) where _curveIndex_ is the position of
46
+ * the specified curve in the Curve's _curveVertexCounts_ attribute, and
47
+ * _segmentIndex_ is the index of the segment within that curve.</li>
48
+ * - tetrahedron: for any UsdGeomTetMesh, each element of the
49
+ * _indices_ attribute would refer to an element of the TetMesh's
50
+ * _tetVertexIndices_ attribute.
51
+ * </li></ul>
52
+ */
53
+ set elementType(value: "face" | "point" | "edge" | "segment" | "tetrahedron" | undefined);
54
+ /**
55
+ * The set of indices included in this subset. The indices need not
56
+ * be sorted, but the same index should not appear more than once. Indices
57
+ * are invalid if outside the range [0, elementCount) for the given time on
58
+ * the parent geometric prim.
59
+ */
60
+ set indices(value: ArrayLike<number> | undefined);
61
+ /**
62
+ * The name of the family of subsets that this subset belongs to.
63
+ * This is optional and is primarily useful when there are multiple
64
+ * families of subsets under a geometric prim. In some cases, this could
65
+ * also be used for achieving proper roundtripping of subset data between
66
+ * DCC apps.
67
+ */
68
+ set familyName(value: string | undefined);
69
+ set materialBinding(value: ListOp<Material> | undefined);
5
70
  }
@@ -1,19 +1,112 @@
1
1
  import { Specifier } from "../../crate/Specifier";
2
2
  import { SpecType } from "../../crate/SpecType";
3
- import { UsdNode } from "../../crate/UsdNode";
4
- export class GeomSubset extends UsdNode {
3
+ import { Variability } from "../../crate/Variability";
4
+ import { IntArrayAttr } from "../attributes/IntArrayAttr";
5
+ import { Relationship } from "../attributes/Relationship";
6
+ import { VariabilityAttr } from "../attributes/VariabilityAttr";
7
+ import { Typed } from "../usd/Typed";
8
+ /**
9
+ * Encodes a subset of a piece of geometry (i.e. a UsdGeomImageable)
10
+ * as a set of indices. Currently supports encoding subsets of faces,
11
+ * points, edges, segments, and tetrahedrons.
12
+ *
13
+ * To apply to a geometric prim, a GeomSubset prim must be the prim's direct
14
+ * child in namespace, and possess a concrete defining specifier (i.e. def).
15
+ * This restriction makes it easy and efficient to discover subsets of a prim.
16
+ * We might want to relax this restriction if it's common to have multiple
17
+ * <b>families</b> of subsets on a gprim and if it's useful to be able to
18
+ * organize subsets belonging to a <b>family</b> under a common scope. See
19
+ * 'familyName' attribute for more info on defining a family of subsets.
20
+ *
21
+ * defined in pxr/usd/usdGeom/schema.usda
22
+ */
23
+ export class GeomSubset extends Typed {
5
24
  constructor(parent, name) {
6
25
  super(parent.crate, parent, -1, name, false);
7
26
  this.spec_type = SpecType.Prim;
27
+ this.specifier = Specifier.Def;
28
+ this.typeName = "GeomSubset";
8
29
  }
9
30
  encodeFields() {
10
31
  super.encodeFields();
11
- const crate = this.crate;
12
- crate.fieldsets.fieldset_indices.push(crate.fields.setSpecifier("specifier", Specifier.Def));
13
- crate.fieldsets.fieldset_indices.push(crate.fields.setToken("typeName", "GeomSubset"));
14
- crate.fieldsets.fieldset_indices.push(crate.fields.setTokenListOp("apiSchemas", {
15
- prepend: ["MaterialBindingAPI"]
16
- }));
32
+ this.setTokenListOp("apiSchemas", this.apiSchemas);
33
+ }
34
+ prependApiSchema(name) {
35
+ if (this.apiSchemas === undefined) {
36
+ this.apiSchemas = {};
37
+ }
38
+ if (this.apiSchemas.prepend === undefined) {
39
+ this.apiSchemas.prepend = [];
40
+ }
41
+ if (this.apiSchemas.prepend.find(it => it === name) === undefined) {
42
+ this.apiSchemas.prepend.push(name);
43
+ }
44
+ }
45
+ /**
46
+ * The type of element that the indices target. "elementType" can
47
+ * have one of the following values:
48
+ * - face: Identifies faces on a Gprim's surface. For a
49
+ * UsdGeomMesh, each element of the _indices_ attribute would refer to
50
+ * an element of the Mesh's _faceCounts_ attribute. For a UsdGeomTetMesh,
51
+ * each element of the _indices_ attribute would refer to an element of
52
+ * the Mesh's _surfaceFaceVertexIndices_ attribute.</li>
53
+ * - point: for any UsdGeomPointBased, each
54
+ * element of the _indices_ attribute would refer to an element of the
55
+ * Mesh's _points_ attribute</li>
56
+ * - edge: for any UsdGeomMesh, each pair of elements
57
+ * in the _indices_ attribute would refer to a pair of points of the
58
+ * Mesh's _points_ attribute that are connected as an implicit edge on the
59
+ * Mesh. These edges are derived from the Mesh's _faceVertexIndices_
60
+ * attribute. Edges are not currently defined for a UsdGeomTetMesh, but
61
+ * could be derived from all tetrahedron edges or surface face edges only
62
+ * if a specific use-case arises.</li>
63
+ * - segment: for any Curve, each pair of elements
64
+ * in the _indices_ attribute would refer to a pair of indices
65
+ * (_curveIndex_, _segmentIndex_) where _curveIndex_ is the position of
66
+ * the specified curve in the Curve's _curveVertexCounts_ attribute, and
67
+ * _segmentIndex_ is the index of the segment within that curve.</li>
68
+ * - tetrahedron: for any UsdGeomTetMesh, each element of the
69
+ * _indices_ attribute would refer to an element of the TetMesh's
70
+ * _tetVertexIndices_ attribute.
71
+ * </li></ul>
72
+ */
73
+ set elementType(value) {
74
+ this.deleteChild("elementType");
75
+ if (value !== undefined) {
76
+ new VariabilityAttr(this, "elementType", Variability.Uniform, value);
77
+ }
78
+ }
79
+ /**
80
+ * The set of indices included in this subset. The indices need not
81
+ * be sorted, but the same index should not appear more than once. Indices
82
+ * are invalid if outside the range [0, elementCount) for the given time on
83
+ * the parent geometric prim.
84
+ */
85
+ set indices(value) {
86
+ this.deleteChild("indices");
87
+ if (value !== undefined) {
88
+ new IntArrayAttr(this, "indices", value);
89
+ }
90
+ }
91
+ /**
92
+ * The name of the family of subsets that this subset belongs to.
93
+ * This is optional and is primarily useful when there are multiple
94
+ * families of subsets under a geometric prim. In some cases, this could
95
+ * also be used for achieving proper roundtripping of subset data between
96
+ * DCC apps.
97
+ */
98
+ set familyName(value) {
99
+ this.deleteChild("familyName");
100
+ if (value !== undefined) {
101
+ new VariabilityAttr(this, "familyName", Variability.Uniform, value);
102
+ }
103
+ }
104
+ set materialBinding(value) {
105
+ this.deleteChild("material:binding");
106
+ if (value !== undefined) {
107
+ this.prependApiSchema("MaterialBindingAPI");
108
+ new Relationship(this, "material:binding", value);
109
+ }
17
110
  }
18
111
  }
19
112
  //# sourceMappingURL=GeomSubset.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GeomSubset.js","sourceRoot":"","sources":["../../../src/nodes/geometry/GeomSubset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAE7C,MAAM,OAAO,UAAW,SAAQ,OAAO;IACnC,YAAY,MAAe,EAAE,IAAY;QACrC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAA;IAClC,CAAC;IACQ,YAAY;QACjB,KAAK,CAAC,YAAY,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QAExB,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,SAAS,CAAC,GAAG,CAAC,CACxD,CAAA;QACD,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAC,CAClD,CAAA;QAED,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CACjC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE;YACtC,OAAO,EAAE,CAAC,oBAAoB,CAAC;SAClC,CAAC,CACL,CAAA;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"GeomSubset.js","sourceRoot":"","sources":["../../../src/nodes/geometry/GeomSubset.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,32 @@
1
1
  import { Boundable } from "./Boundable";
2
+ /**
3
+ * Base class for all geometric primitives.
4
+ *
5
+ * Gprim encodes basic graphical properties such as _doubleSided_ and
6
+ * _orientation_, and provides primvars for "display color" and "display
7
+ * opacity" that travel with geometry to be used as shader overrides.
8
+ *
9
+ * defined in pxr/usd/usdGeom/schema.usda
10
+ */
2
11
  export declare class Gprim extends Boundable {
12
+ /**
13
+ * Although some renderers treat all parametric or polygonal
14
+ * surfaces as if they were effectively laminae with outward-facing
15
+ * normals on both sides, some renderers derive significant optimizations
16
+ * by considering these surfaces to have only a single outward side,
17
+ * typically determined by control-point winding order and/or
18
+ * \\em orientation. By doing so they can perform "backface culling" to
19
+ * avoid drawing the many polygons of most closed surfaces that face away
20
+ * from the viewer.
21
+ *
22
+ * However, it is often advantageous to model thin objects such as paper
23
+ * and cloth as single, open surfaces that must be viewable from both
24
+ * sides, always. Setting a gprim's \\em doubleSided attribute to
25
+ * \\c true instructs all renderers to disable optimizations such as
26
+ * backface culling for the gprim, and attempt (not all renderers are able
27
+ * to do so, but the USD reference GL renderer always will) to provide
28
+ * forward-facing normals on each side of the surface for lighting
29
+ * calculations.
30
+ */
3
31
  set doubleSided(value: boolean | undefined);
4
32
  }