@markandre13/usd.js 0.0.1

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 (239) hide show
  1. package/LICENSE +661 -0
  2. package/README.md +5 -0
  3. package/dist/compression/compress.d.ts +7 -0
  4. package/dist/compression/compress.d.ts.map +1 -0
  5. package/dist/compression/compress.js +28 -0
  6. package/dist/compression/compress.js.map +1 -0
  7. package/dist/compression/integers.d.ts +3 -0
  8. package/dist/compression/integers.d.ts.map +1 -0
  9. package/dist/compression/integers.js +159 -0
  10. package/dist/compression/integers.js.map +1 -0
  11. package/dist/compression/lz4.d.ts +4 -0
  12. package/dist/compression/lz4.d.ts.map +1 -0
  13. package/dist/compression/lz4.js +163 -0
  14. package/dist/compression/lz4.js.map +1 -0
  15. package/dist/crate/BootStrap.d.ts +17 -0
  16. package/dist/crate/BootStrap.d.ts.map +1 -0
  17. package/dist/crate/BootStrap.js +47 -0
  18. package/dist/crate/BootStrap.js.map +1 -0
  19. package/dist/crate/Crate.d.ts +30 -0
  20. package/dist/crate/Crate.d.ts.map +1 -0
  21. package/dist/crate/Crate.js +203 -0
  22. package/dist/crate/Crate.js.map +1 -0
  23. package/dist/crate/CrateDataType.d.ts +78 -0
  24. package/dist/crate/CrateDataType.d.ts.map +1 -0
  25. package/dist/crate/CrateDataType.js +119 -0
  26. package/dist/crate/CrateDataType.js.map +1 -0
  27. package/dist/crate/Field.d.ts +9 -0
  28. package/dist/crate/Field.d.ts.map +1 -0
  29. package/dist/crate/Field.js +12 -0
  30. package/dist/crate/Field.js.map +1 -0
  31. package/dist/crate/FieldSets.d.ts +8 -0
  32. package/dist/crate/FieldSets.d.ts.map +1 -0
  33. package/dist/crate/FieldSets.js +16 -0
  34. package/dist/crate/FieldSets.js.map +1 -0
  35. package/dist/crate/Fields.d.ts +61 -0
  36. package/dist/crate/Fields.d.ts.map +1 -0
  37. package/dist/crate/Fields.js +416 -0
  38. package/dist/crate/Fields.js.map +1 -0
  39. package/dist/crate/Paths.d.ts +19 -0
  40. package/dist/crate/Paths.d.ts.map +1 -0
  41. package/dist/crate/Paths.js +47 -0
  42. package/dist/crate/Paths.js.map +1 -0
  43. package/dist/crate/Reader.d.ts +18 -0
  44. package/dist/crate/Reader.d.ts.map +1 -0
  45. package/dist/crate/Reader.js +86 -0
  46. package/dist/crate/Reader.js.map +1 -0
  47. package/dist/crate/Section.d.ts +16 -0
  48. package/dist/crate/Section.d.ts.map +1 -0
  49. package/dist/crate/Section.js +24 -0
  50. package/dist/crate/Section.js.map +1 -0
  51. package/dist/crate/SectionName.d.ts +9 -0
  52. package/dist/crate/SectionName.d.ts.map +1 -0
  53. package/dist/crate/SectionName.js +10 -0
  54. package/dist/crate/SectionName.js.map +1 -0
  55. package/dist/crate/SpecType.d.ts +17 -0
  56. package/dist/crate/SpecType.d.ts.map +1 -0
  57. package/dist/crate/SpecType.js +29 -0
  58. package/dist/crate/SpecType.js.map +1 -0
  59. package/dist/crate/Specifier.d.ts +7 -0
  60. package/dist/crate/Specifier.d.ts.map +1 -0
  61. package/dist/crate/Specifier.js +8 -0
  62. package/dist/crate/Specifier.js.map +1 -0
  63. package/dist/crate/Specs.d.ts +11 -0
  64. package/dist/crate/Specs.d.ts.map +1 -0
  65. package/dist/crate/Specs.js +29 -0
  66. package/dist/crate/Specs.js.map +1 -0
  67. package/dist/crate/Stage.d.ts +8 -0
  68. package/dist/crate/Stage.d.ts.map +1 -0
  69. package/dist/crate/Stage.js +35 -0
  70. package/dist/crate/Stage.js.map +1 -0
  71. package/dist/crate/Strings.d.ts +14 -0
  72. package/dist/crate/Strings.d.ts.map +1 -0
  73. package/dist/crate/Strings.js +45 -0
  74. package/dist/crate/Strings.js.map +1 -0
  75. package/dist/crate/TableOfContents.d.ts +13 -0
  76. package/dist/crate/TableOfContents.d.ts.map +1 -0
  77. package/dist/crate/TableOfContents.js +32 -0
  78. package/dist/crate/TableOfContents.js.map +1 -0
  79. package/dist/crate/Tokens.d.ts +11 -0
  80. package/dist/crate/Tokens.d.ts.map +1 -0
  81. package/dist/crate/Tokens.js +78 -0
  82. package/dist/crate/Tokens.js.map +1 -0
  83. package/dist/crate/UsdNode.d.ts +64 -0
  84. package/dist/crate/UsdNode.d.ts.map +1 -0
  85. package/dist/crate/UsdNode.js +283 -0
  86. package/dist/crate/UsdNode.js.map +1 -0
  87. package/dist/crate/ValueRep.d.ts +31 -0
  88. package/dist/crate/ValueRep.d.ts.map +1 -0
  89. package/dist/crate/ValueRep.js +379 -0
  90. package/dist/crate/ValueRep.js.map +1 -0
  91. package/dist/crate/Variability.d.ts +7 -0
  92. package/dist/crate/Variability.d.ts.map +1 -0
  93. package/dist/crate/Variability.js +8 -0
  94. package/dist/crate/Variability.js.map +1 -0
  95. package/dist/crate/Writer.d.ts +56 -0
  96. package/dist/crate/Writer.d.ts.map +1 -0
  97. package/dist/crate/Writer.js +214 -0
  98. package/dist/crate/Writer.js.map +1 -0
  99. package/dist/detail/hexdump.d.ts +3 -0
  100. package/dist/detail/hexdump.d.ts.map +1 -0
  101. package/dist/detail/hexdump.js +41 -0
  102. package/dist/detail/hexdump.js.map +1 -0
  103. package/dist/nodes/attributes/AssetPathAttr.d.ts +7 -0
  104. package/dist/nodes/attributes/AssetPathAttr.d.ts.map +1 -0
  105. package/dist/nodes/attributes/AssetPathAttr.js +17 -0
  106. package/dist/nodes/attributes/AssetPathAttr.js.map +1 -0
  107. package/dist/nodes/attributes/Attribute.d.ts +7 -0
  108. package/dist/nodes/attributes/Attribute.d.ts.map +1 -0
  109. package/dist/nodes/attributes/Attribute.js +15 -0
  110. package/dist/nodes/attributes/Attribute.js.map +1 -0
  111. package/dist/nodes/attributes/BooleanAttr.d.ts +13 -0
  112. package/dist/nodes/attributes/BooleanAttr.d.ts.map +1 -0
  113. package/dist/nodes/attributes/BooleanAttr.js +22 -0
  114. package/dist/nodes/attributes/BooleanAttr.js.map +1 -0
  115. package/dist/nodes/attributes/Color3fAttr.d.ts +7 -0
  116. package/dist/nodes/attributes/Color3fAttr.d.ts.map +1 -0
  117. package/dist/nodes/attributes/Color3fAttr.js +17 -0
  118. package/dist/nodes/attributes/Color3fAttr.js.map +1 -0
  119. package/dist/nodes/attributes/FloatAttr.d.ts +7 -0
  120. package/dist/nodes/attributes/FloatAttr.d.ts.map +1 -0
  121. package/dist/nodes/attributes/FloatAttr.js +17 -0
  122. package/dist/nodes/attributes/FloatAttr.js.map +1 -0
  123. package/dist/nodes/attributes/IntArrayAttr.d.ts +7 -0
  124. package/dist/nodes/attributes/IntArrayAttr.d.ts.map +1 -0
  125. package/dist/nodes/attributes/IntArrayAttr.js +17 -0
  126. package/dist/nodes/attributes/IntArrayAttr.js.map +1 -0
  127. package/dist/nodes/attributes/Relationship.d.ts +8 -0
  128. package/dist/nodes/attributes/Relationship.d.ts.map +1 -0
  129. package/dist/nodes/attributes/Relationship.js +18 -0
  130. package/dist/nodes/attributes/Relationship.js.map +1 -0
  131. package/dist/nodes/attributes/StringAttr.d.ts +10 -0
  132. package/dist/nodes/attributes/StringAttr.d.ts.map +1 -0
  133. package/dist/nodes/attributes/StringAttr.js +19 -0
  134. package/dist/nodes/attributes/StringAttr.js.map +1 -0
  135. package/dist/nodes/attributes/TokenAttr.d.ts +9 -0
  136. package/dist/nodes/attributes/TokenAttr.d.ts.map +1 -0
  137. package/dist/nodes/attributes/TokenAttr.js +24 -0
  138. package/dist/nodes/attributes/TokenAttr.js.map +1 -0
  139. package/dist/nodes/attributes/VariabilityAttr.d.ts +9 -0
  140. package/dist/nodes/attributes/VariabilityAttr.d.ts.map +1 -0
  141. package/dist/nodes/attributes/VariabilityAttr.js +20 -0
  142. package/dist/nodes/attributes/VariabilityAttr.js.map +1 -0
  143. package/dist/nodes/attributes/Vec2fArrayAttr.d.ts +10 -0
  144. package/dist/nodes/attributes/Vec2fArrayAttr.d.ts.map +1 -0
  145. package/dist/nodes/attributes/Vec2fArrayAttr.js +23 -0
  146. package/dist/nodes/attributes/Vec2fArrayAttr.js.map +1 -0
  147. package/dist/nodes/attributes/Vec3fArrayAttr.d.ts +9 -0
  148. package/dist/nodes/attributes/Vec3fArrayAttr.d.ts.map +1 -0
  149. package/dist/nodes/attributes/Vec3fArrayAttr.js +23 -0
  150. package/dist/nodes/attributes/Vec3fArrayAttr.js.map +1 -0
  151. package/dist/nodes/geometry/Boundable.d.ts +5 -0
  152. package/dist/nodes/geometry/Boundable.d.ts.map +1 -0
  153. package/dist/nodes/geometry/Boundable.js +11 -0
  154. package/dist/nodes/geometry/Boundable.js.map +1 -0
  155. package/dist/nodes/geometry/Camera.d.ts +12 -0
  156. package/dist/nodes/geometry/Camera.d.ts.map +1 -0
  157. package/dist/nodes/geometry/Camera.js +55 -0
  158. package/dist/nodes/geometry/Camera.js.map +1 -0
  159. package/dist/nodes/geometry/GeomSubset.d.ts +6 -0
  160. package/dist/nodes/geometry/GeomSubset.d.ts.map +1 -0
  161. package/dist/nodes/geometry/GeomSubset.js +19 -0
  162. package/dist/nodes/geometry/GeomSubset.js.map +1 -0
  163. package/dist/nodes/geometry/Gprim.d.ts +5 -0
  164. package/dist/nodes/geometry/Gprim.d.ts.map +1 -0
  165. package/dist/nodes/geometry/Gprim.js +12 -0
  166. package/dist/nodes/geometry/Gprim.js.map +1 -0
  167. package/dist/nodes/geometry/Imageable.d.ts +4 -0
  168. package/dist/nodes/geometry/Imageable.d.ts.map +1 -0
  169. package/dist/nodes/geometry/Imageable.js +4 -0
  170. package/dist/nodes/geometry/Imageable.js.map +1 -0
  171. package/dist/nodes/geometry/Mesh.d.ts +26 -0
  172. package/dist/nodes/geometry/Mesh.d.ts.map +1 -0
  173. package/dist/nodes/geometry/Mesh.js +110 -0
  174. package/dist/nodes/geometry/Mesh.js.map +1 -0
  175. package/dist/nodes/geometry/PointBased.d.ts +13 -0
  176. package/dist/nodes/geometry/PointBased.d.ts.map +1 -0
  177. package/dist/nodes/geometry/PointBased.js +36 -0
  178. package/dist/nodes/geometry/PointBased.js.map +1 -0
  179. package/dist/nodes/geometry/Scope.d.ts +6 -0
  180. package/dist/nodes/geometry/Scope.d.ts.map +1 -0
  181. package/dist/nodes/geometry/Scope.js +12 -0
  182. package/dist/nodes/geometry/Scope.js.map +1 -0
  183. package/dist/nodes/geometry/Xform.d.ts +6 -0
  184. package/dist/nodes/geometry/Xform.d.ts.map +1 -0
  185. package/dist/nodes/geometry/Xform.js +12 -0
  186. package/dist/nodes/geometry/Xform.js.map +1 -0
  187. package/dist/nodes/geometry/Xformable.d.ts +11 -0
  188. package/dist/nodes/geometry/Xformable.d.ts.map +1 -0
  189. package/dist/nodes/geometry/Xformable.js +46 -0
  190. package/dist/nodes/geometry/Xformable.js.map +1 -0
  191. package/dist/nodes/lux/BoundableLightBase.d.ts +8 -0
  192. package/dist/nodes/lux/BoundableLightBase.d.ts.map +1 -0
  193. package/dist/nodes/lux/BoundableLightBase.js +39 -0
  194. package/dist/nodes/lux/BoundableLightBase.js.map +1 -0
  195. package/dist/nodes/lux/DomeLight.d.ts +8 -0
  196. package/dist/nodes/lux/DomeLight.d.ts.map +1 -0
  197. package/dist/nodes/lux/DomeLight.js +23 -0
  198. package/dist/nodes/lux/DomeLight.js.map +1 -0
  199. package/dist/nodes/lux/NonboundableLightBase.d.ts +6 -0
  200. package/dist/nodes/lux/NonboundableLightBase.d.ts.map +1 -0
  201. package/dist/nodes/lux/NonboundableLightBase.js +23 -0
  202. package/dist/nodes/lux/NonboundableLightBase.js.map +1 -0
  203. package/dist/nodes/lux/SphereLight.d.ts +7 -0
  204. package/dist/nodes/lux/SphereLight.d.ts.map +1 -0
  205. package/dist/nodes/lux/SphereLight.js +22 -0
  206. package/dist/nodes/lux/SphereLight.js.map +1 -0
  207. package/dist/nodes/shader/Material.d.ts +7 -0
  208. package/dist/nodes/shader/Material.d.ts.map +1 -0
  209. package/dist/nodes/shader/Material.js +19 -0
  210. package/dist/nodes/shader/Material.js.map +1 -0
  211. package/dist/nodes/shader/NodeGraph.d.ts +4 -0
  212. package/dist/nodes/shader/NodeGraph.d.ts.map +1 -0
  213. package/dist/nodes/shader/NodeGraph.js +4 -0
  214. package/dist/nodes/shader/NodeGraph.js.map +1 -0
  215. package/dist/nodes/shader/Shader.d.ts +7 -0
  216. package/dist/nodes/shader/Shader.d.ts.map +1 -0
  217. package/dist/nodes/shader/Shader.js +19 -0
  218. package/dist/nodes/shader/Shader.js.map +1 -0
  219. package/dist/nodes/skeleton/SkelRoot.d.ts +6 -0
  220. package/dist/nodes/skeleton/SkelRoot.d.ts.map +1 -0
  221. package/dist/nodes/skeleton/SkelRoot.js +12 -0
  222. package/dist/nodes/skeleton/SkelRoot.js.map +1 -0
  223. package/dist/nodes/skeleton/Skeleton.d.ts +12 -0
  224. package/dist/nodes/skeleton/Skeleton.d.ts.map +1 -0
  225. package/dist/nodes/skeleton/Skeleton.js +68 -0
  226. package/dist/nodes/skeleton/Skeleton.js.map +1 -0
  227. package/dist/nodes/usd/PseudoRoot.d.ts +11 -0
  228. package/dist/nodes/usd/PseudoRoot.d.ts.map +1 -0
  229. package/dist/nodes/usd/PseudoRoot.js +20 -0
  230. package/dist/nodes/usd/PseudoRoot.js.map +1 -0
  231. package/dist/nodes/usd/SchemaBase.d.ts +4 -0
  232. package/dist/nodes/usd/SchemaBase.d.ts.map +1 -0
  233. package/dist/nodes/usd/SchemaBase.js +4 -0
  234. package/dist/nodes/usd/SchemaBase.js.map +1 -0
  235. package/dist/nodes/usd/Typed.d.ts +8 -0
  236. package/dist/nodes/usd/Typed.d.ts.map +1 -0
  237. package/dist/nodes/usd/Typed.js +11 -0
  238. package/dist/nodes/usd/Typed.js.map +1 -0
  239. package/package.json +39 -0
@@ -0,0 +1,379 @@
1
+ import { hexdump } from "../detail/hexdump.js";
2
+ import { decodeIntegers } from "../compression/integers.js";
3
+ import { CrateDataType, ListOpHeader } from "./CrateDataType.js";
4
+ import { Specifier } from "./Specifier.js";
5
+ import { UsdNode } from "./UsdNode.js";
6
+ import { Variability } from "./Variability.js";
7
+ import { decompressFromBuffer } from "../compression/compress.js";
8
+ export const kMinCompressedArraySize = 16;
9
+ export class ValueRep {
10
+ _buffer;
11
+ _offset;
12
+ constructor(buffer, offset) {
13
+ this._buffer = buffer;
14
+ this._offset = offset;
15
+ }
16
+ toJSON(node, key) {
17
+ const v = node instanceof UsdNode ? this.getValue(node.crate) : this.getValue(node);
18
+ if (v === undefined) {
19
+ if (node instanceof UsdNode) {
20
+ console.log(`ValueRep.getValue(): for ${node.getFullPathName()}.${key} not implemented yet: type: ${CrateDataType[this.getType()]}, array: ${this.isArray()}, inline: ${this.isInlined()}, compressed: ${this.isCompressed()}`);
21
+ }
22
+ else {
23
+ console.log(`ValueRep.getValue(): for .${key} not implemented yet: type: ${CrateDataType[this.getType()]}, array: ${this.isArray()}, inline: ${this.isInlined()}, compressed: ${this.isCompressed()}`);
24
+ }
25
+ }
26
+ return {
27
+ type: CrateDataType[this.getType()],
28
+ inline: this.isInlined(),
29
+ array: this.isArray(),
30
+ compressed: this.isCompressed(),
31
+ value: v
32
+ };
33
+ }
34
+ getValue(crate) {
35
+ const reader = crate.reader;
36
+ switch (this.getType()) {
37
+ case CrateDataType.Bool:
38
+ if (this.isInlined() && !this.isArray() && !this.isCompressed()) {
39
+ return this.getBool();
40
+ }
41
+ break;
42
+ case CrateDataType.Float:
43
+ if (this.isInlined() && !this.isArray() && !this.isCompressed()) {
44
+ return this.getFloat();
45
+ }
46
+ if (!this.isInlined() && !this.isArray() && !this.isCompressed()) {
47
+ crate.reader.offset = this.getIndex();
48
+ return crate.reader.getFloat32();
49
+ }
50
+ if (!this.isInlined() && this.isArray() && !this.isCompressed()) {
51
+ crate.reader.offset = this.getIndex();
52
+ const n = crate.reader.getUint64();
53
+ const arr = new Array(n);
54
+ for (let i = 0; i < n; ++i) {
55
+ arr[i] = crate.reader.getFloat32();
56
+ }
57
+ return arr;
58
+ }
59
+ break;
60
+ case CrateDataType.Double:
61
+ if (this.isInlined() && !this.isArray() && !this.isCompressed()) {
62
+ return this.getDouble();
63
+ }
64
+ break;
65
+ case CrateDataType.Token:
66
+ if (this.isInlined() && !this.isArray() && !this.isCompressed()) {
67
+ return crate.tokens.get(this.getIndex());
68
+ }
69
+ if (!this.isInlined() && this.isArray() && !this.isCompressed()) {
70
+ crate.reader.offset = this.getIndex();
71
+ const n = crate.reader.getUint64();
72
+ const arr = new Array(n);
73
+ for (let i = 0; i < n; ++i) {
74
+ arr[i] = crate.tokens.get(crate.reader.getInt32());
75
+ }
76
+ return arr;
77
+ }
78
+ break;
79
+ case CrateDataType.String:
80
+ if (this.isInlined() && !this.isArray() && !this.isCompressed()) {
81
+ return crate.strings.get(this.getIndex());
82
+ }
83
+ break;
84
+ case CrateDataType.Specifier:
85
+ if (!this.isArray() && this.isInlined() && !this.isCompressed()) {
86
+ return Specifier[this.getIndex()];
87
+ }
88
+ break;
89
+ case CrateDataType.Int:
90
+ if (this.isArray() && !this.isInlined()) {
91
+ crate.reader.offset = this.getIndex();
92
+ const n = crate.reader.getUint64();
93
+ if (!this.isCompressed() || n < kMinCompressedArraySize) {
94
+ const arr = new Array(n);
95
+ for (let i = 0; i < n; ++i) {
96
+ arr[i] = crate.reader.getInt32();
97
+ }
98
+ return arr;
99
+ }
100
+ else {
101
+ const compSize = crate.reader.getUint64();
102
+ const comp_buffer = new Uint8Array(crate.reader._dataview.buffer, crate.reader.offset, compSize);
103
+ const workingSpaceSize = 4 + Math.floor((n * 2 + 7) / 8) + n * 4;
104
+ const workingSpace = new Uint8Array(workingSpaceSize);
105
+ const decompSz = decompressFromBuffer(comp_buffer, workingSpace);
106
+ const arr = decodeIntegers(new DataView(workingSpace.buffer), n);
107
+ return arr;
108
+ }
109
+ }
110
+ if (!this.isArray() && this.isInlined() && !this.isCompressed()) {
111
+ return this._buffer.getInt32(this._offset, true);
112
+ }
113
+ break;
114
+ case CrateDataType.Vec2f:
115
+ case CrateDataType.Vec3f:
116
+ case CrateDataType.Vec4f:
117
+ {
118
+ let size = 0;
119
+ switch (this.getType()) {
120
+ case CrateDataType.Vec2f:
121
+ size = 2;
122
+ break;
123
+ case CrateDataType.Vec3f:
124
+ size = 3;
125
+ break;
126
+ case CrateDataType.Vec4f:
127
+ size = 4;
128
+ break;
129
+ }
130
+ if (this.isArray() && !this.isInlined() && !this.isCompressed()) {
131
+ crate.reader.offset = this.getIndex();
132
+ const n = reader.getUint64();
133
+ const arr = new Array(n * size);
134
+ for (let i = 0; i < n * size; ++i) {
135
+ arr[i] = reader.getFloat32();
136
+ }
137
+ return arr;
138
+ }
139
+ if (!this.isArray() && !this.isInlined() && !this.isCompressed()) {
140
+ reader.offset = this.getIndex();
141
+ const arr = new Array(size);
142
+ for (let i = 0; i < size; ++i) {
143
+ arr[i] = reader.getFloat32();
144
+ }
145
+ return arr;
146
+ }
147
+ if (!this.isArray() && this.isInlined() && !this.isCompressed()) {
148
+ return this.getVec3f();
149
+ }
150
+ }
151
+ break;
152
+ case CrateDataType.Vec2d:
153
+ case CrateDataType.Vec3d:
154
+ case CrateDataType.Vec4d:
155
+ {
156
+ let size = 0;
157
+ switch (this.getType()) {
158
+ case CrateDataType.Vec2d:
159
+ size = 2;
160
+ break;
161
+ case CrateDataType.Vec3d:
162
+ size = 3;
163
+ break;
164
+ case CrateDataType.Vec4d:
165
+ size = 4;
166
+ break;
167
+ }
168
+ if (this.isArray() && !this.isInlined() && !this.isCompressed()) {
169
+ crate.reader.offset = this.getIndex();
170
+ const n = reader.getUint64();
171
+ const arr = new Array(n * size);
172
+ for (let i = 0; i < n * size; ++i) {
173
+ arr[i] = reader.getFloat64();
174
+ }
175
+ return arr;
176
+ }
177
+ if (!this.isArray() && !this.isInlined() && !this.isCompressed()) {
178
+ reader.offset = this.getIndex();
179
+ const arr = new Array(3);
180
+ for (let i = 0; i < 3; ++i) {
181
+ arr[i] = reader.getFloat64();
182
+ }
183
+ return arr;
184
+ }
185
+ if (!this.isArray() && this.isInlined() && !this.isCompressed()) {
186
+ return this.getVec3f();
187
+ }
188
+ }
189
+ break;
190
+ case CrateDataType.Matrix2d:
191
+ case CrateDataType.Matrix3d:
192
+ case CrateDataType.Matrix4d:
193
+ let n;
194
+ switch (this.getType()) {
195
+ case CrateDataType.Matrix2d:
196
+ n = 2 * 2;
197
+ break;
198
+ case CrateDataType.Matrix3d:
199
+ n = 3 * 3;
200
+ break;
201
+ case CrateDataType.Matrix4d:
202
+ n = 4 * 4;
203
+ break;
204
+ }
205
+ if (!this.isInlined() && !this.isArray() && !this.isCompressed()) {
206
+ crate.reader.offset = this.getIndex();
207
+ const arr = new Array(n);
208
+ for (let i = 0; i < n; ++i) {
209
+ arr[i] = crate.reader.getFloat64();
210
+ }
211
+ return arr;
212
+ }
213
+ if (!this.isInlined() && this.isArray() && !this.isCompressed()) {
214
+ crate.reader.offset = this.getIndex();
215
+ n = n * reader.getUint64();
216
+ const arr = new Array(n);
217
+ for (let i = 0; i < n; ++i) {
218
+ arr[i] = crate.reader.getFloat64();
219
+ }
220
+ return arr;
221
+ }
222
+ break;
223
+ case CrateDataType.TokenVector:
224
+ if (!this.isInlined() && !this.isArray() && !this.isCompressed()) {
225
+ crate.reader.offset = this.getIndex();
226
+ const n = crate.reader.getUint64();
227
+ const arr = new Array(n);
228
+ for (let i = 0; i < n; ++i) {
229
+ const idx = crate.reader.getUint32();
230
+ arr[i] = crate.tokens.get(idx);
231
+ }
232
+ return arr;
233
+ }
234
+ break;
235
+ case CrateDataType.AssetPath:
236
+ if (!this.isArray() && this.isInlined() && !this.isCompressed()) {
237
+ return crate.tokens.get(this.getIndex());
238
+ }
239
+ break;
240
+ case CrateDataType.Variability:
241
+ if (!this.isArray() && this.isInlined() && !this.isCompressed()) {
242
+ return Variability[this.getIndex()];
243
+ }
244
+ break;
245
+ case CrateDataType.Dictionary:
246
+ if (!this.isArray() && !this.isInlined() && !this.isCompressed()) {
247
+ reader.offset = this.getIndex();
248
+ const sz = reader.getUint64();
249
+ const result = {};
250
+ for (let i = 0; i < sz; ++i) {
251
+ const key = crate.strings.get(reader.getUint32());
252
+ const offset = reader.getUint64();
253
+ const value = new ValueRep(reader._dataview, reader.offset + offset - 8);
254
+ result[key] = value.getValue(crate);
255
+ }
256
+ return result;
257
+ }
258
+ break;
259
+ case CrateDataType.TokenListOp:
260
+ if (!this.isArray() && !this.isInlined() && !this.isCompressed()) {
261
+ reader.offset = this.getIndex();
262
+ const hdr = new ListOpHeader(reader);
263
+ const read = () => {
264
+ const n = reader.getUint64();
265
+ const arr = new Array(n);
266
+ for (let i = 0; i < n; ++i) {
267
+ arr[i] = crate.tokens.get(reader.getUint32());
268
+ }
269
+ return arr;
270
+ };
271
+ const list = {};
272
+ if (hdr.isExplicit()) {
273
+ list.isExplicit = true;
274
+ }
275
+ if (hdr.hasExplicitItems()) {
276
+ list.explicit = read();
277
+ }
278
+ if (hdr.hasAddedItems()) {
279
+ list.add = read();
280
+ }
281
+ if (hdr.hasPrependedItems()) {
282
+ list.prepend = read();
283
+ }
284
+ if (hdr.hasAppendedItems()) {
285
+ list.append = read();
286
+ }
287
+ if (hdr.hasDeletedItems()) {
288
+ list.delete = read();
289
+ }
290
+ if (hdr.hasOrderedItems()) {
291
+ list.order = read();
292
+ }
293
+ return list;
294
+ }
295
+ break;
296
+ case CrateDataType.PathListOp:
297
+ if (!this.isArray() && !this.isInlined() && !this.isCompressed()) {
298
+ reader.offset = this.getIndex();
299
+ const hdr = new ListOpHeader(reader);
300
+ const read = () => {
301
+ const n = reader.getUint64();
302
+ const arr = new Array(n);
303
+ for (let i = 0; i < n; ++i) {
304
+ arr[i] = crate.paths._nodes[reader.getUint32()].getFullPathName();
305
+ }
306
+ return arr;
307
+ };
308
+ const list = {};
309
+ if (hdr.isExplicit()) {
310
+ list.isExplicit = true;
311
+ }
312
+ if (hdr.hasExplicitItems()) {
313
+ list.explicit = read();
314
+ }
315
+ if (hdr.hasAddedItems()) {
316
+ list.add = read();
317
+ }
318
+ if (hdr.hasPrependedItems()) {
319
+ list.prepend = read();
320
+ }
321
+ if (hdr.hasAppendedItems()) {
322
+ list.append = read();
323
+ }
324
+ if (hdr.hasDeletedItems()) {
325
+ list.delete = read();
326
+ }
327
+ if (hdr.hasOrderedItems()) {
328
+ list.order = read();
329
+ }
330
+ return list;
331
+ }
332
+ break;
333
+ }
334
+ return undefined;
335
+ }
336
+ getType() {
337
+ return this._buffer.getUint8(this._offset + 6);
338
+ }
339
+ isArray() { return (this._buffer.getUint8(this._offset + 7) & 128) !== 0; }
340
+ isInlined() { return (this._buffer.getUint8(this._offset + 7) & 64) !== 0; }
341
+ isCompressed() { return (this._buffer.getUint8(this._offset + 7) & 32) !== 0; }
342
+ hexdump() {
343
+ hexdump(new Uint8Array(this._buffer.buffer), this._offset, 8);
344
+ }
345
+ getPayload() {
346
+ const d = new DataView(this._buffer.buffer, this._buffer.byteOffset);
347
+ const value = d.getBigUint64(this._offset, true);
348
+ console.log(`value rep @ ${this._offset} = ${value}`);
349
+ return value;
350
+ }
351
+ getBool() {
352
+ return this._buffer.getUint8(this._offset) !== 0;
353
+ }
354
+ getHalf() {
355
+ return this._buffer.getFloat16(this._offset, true);
356
+ }
357
+ getFloat() {
358
+ return this._buffer.getFloat32(this._offset, true);
359
+ }
360
+ getDouble() {
361
+ return this._buffer.getFloat32(this._offset, true);
362
+ }
363
+ getVec3f() {
364
+ return [this._buffer.getInt8(this._offset), this._buffer.getInt8(this._offset + 1), this._buffer.getInt8(this._offset + 2)];
365
+ }
366
+ getIndex() {
367
+ if (this._buffer.getUint8(this._offset + 4) || this._buffer.getUint8(this._offset + 5)) {
368
+ throw Error(`getIndex too large`);
369
+ }
370
+ return this._buffer.getUint32(this._offset, true);
371
+ }
372
+ toString() {
373
+ return `type: ${GetCrateDataType(this.getType())} (${this.getType()}), isArray: ${this.isArray()}, isInlined: ${this.isInlined()}, isCompressed:${this.isCompressed()}, payload: ${this.getPayload()}`;
374
+ }
375
+ }
376
+ function GetCrateDataType(type_id) {
377
+ return CrateDataType[type_id];
378
+ }
379
+ //# sourceMappingURL=ValueRep.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ValueRep.js","sourceRoot":"","sources":["../../src/crate/ValueRep.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export declare enum Variability {
2
+ Varying = 0,
3
+ Uniform = 1,
4
+ Config = 2,
5
+ Invalid = 3
6
+ }
7
+ //# sourceMappingURL=Variability.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Variability.d.ts","sourceRoot":"","sources":["../../src/crate/Variability.ts"],"names":[],"mappings":"AACA,oBAAY,WAAW;IACnB,OAAO,IAAA;IACP,OAAO,IAAA;IACP,MAAM,IAAA;IACN,OAAO,IAAA;CACV"}
@@ -0,0 +1,8 @@
1
+ export var Variability;
2
+ (function (Variability) {
3
+ Variability[Variability["Varying"] = 0] = "Varying";
4
+ Variability[Variability["Uniform"] = 1] = "Uniform";
5
+ Variability[Variability["Config"] = 2] = "Config";
6
+ Variability[Variability["Invalid"] = 3] = "Invalid";
7
+ })(Variability || (Variability = {}));
8
+ //# sourceMappingURL=Variability.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Variability.js","sourceRoot":"","sources":["../../src/crate/Variability.ts"],"names":[],"mappings":"AACA,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACnB,mDAAO,CAAA;IACP,mDAAO,CAAA;IACP,iDAAM,CAAA;IACN,mDAAO,CAAA;AACX,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB"}
@@ -0,0 +1,56 @@
1
+ export declare namespace UsdGeom {
2
+ class SchemaBase {
3
+ serialize(out: Writer): void;
4
+ }
5
+ class Typed extends SchemaBase {
6
+ }
7
+ class Imageable extends Typed {
8
+ constructor();
9
+ }
10
+ class Xformable extends Imageable {
11
+ constructor();
12
+ }
13
+ class Xform extends Xformable {
14
+ constructor();
15
+ }
16
+ class Boundable extends Xformable {
17
+ }
18
+ class Gprim extends Boundable {
19
+ }
20
+ class PointBased extends Gprim {
21
+ points?: ArrayLike<number>;
22
+ normals?: ArrayLike<number>;
23
+ serialize(out: Writer): void;
24
+ }
25
+ class Mesh extends PointBased {
26
+ faceVertexIndices?: ArrayLike<number>;
27
+ faceVertexCounts?: ArrayLike<number>;
28
+ serialize(out: Writer): void;
29
+ }
30
+ }
31
+ export declare class Writer {
32
+ buffer: ArrayBuffer;
33
+ view: DataView;
34
+ name?: string;
35
+ private offset;
36
+ constructor(byteLength?: number, name?: string);
37
+ seek(n: number): void;
38
+ skip(n: number): void;
39
+ tell(): number;
40
+ reserve(n: number): void;
41
+ writeString(value: string, fixedSize?: number): void;
42
+ writeUint8(value: number): void;
43
+ writeUint16(value: number): void;
44
+ writeUint32(value: number): void;
45
+ writeInt32(value: number): void;
46
+ writeUint64(value: number): void;
47
+ writeFloat32(value: number): void;
48
+ writeFloat64(value: number): void;
49
+ writeBuffer(value: ArrayLike<number>, start: number, length: number): void;
50
+ writeCompressedIntegers(value: ArrayLike<number>): void;
51
+ writeCompressedIntWithoutSize(value: ArrayLike<number>): void;
52
+ writeIntArray(name: string, value: ArrayLike<number>): void;
53
+ writePoint3fArray(name: string, value: ArrayLike<number>): void;
54
+ hexdump(): void;
55
+ }
56
+ //# sourceMappingURL=Writer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Writer.d.ts","sourceRoot":"","sources":["../../src/crate/Writer.ts"],"names":[],"mappings":"AAkBA,yBAAiB,OAAO,CAAC;IACrB,MAAa,UAAU;QACnB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;KAC/B;IACD,MAAa,KAAM,SAAQ,UAAU;KAAI;IACzC,MAAa,SAAU,SAAQ,KAAK;;KAInC;IACD,MAAa,SAAU,SAAQ,SAAS;;KAIvC;IACD,MAAa,KAAM,SAAQ,SAAS;;KAInC;IACD,MAAa,SAAU,SAAQ,SAAS;KAAI;IAC5C,MAAa,KAAM,SAAQ,SAAS;KAAI;IACxC,MAAa,UAAW,SAAQ,KAAK;QACjC,MAAM,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAA;QAC1B,OAAO,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAA;QAClB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;KASxC;IACD,MAAa,IAAK,SAAQ,UAAU;QAChC,iBAAiB,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAA;QACrC,gBAAgB,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAA;QAE3B,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;KASxC;CACJ;AAqBD,qBAAa,MAAM;IACf,MAAM,EAAE,WAAW,CAAA;IACnB,IAAI,EAAE,QAAQ,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,MAAM,CAAQ;gBAEV,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;IAM9C,IAAI,CAAC,CAAC,EAAE,MAAM;IAGd,IAAI,CAAC,CAAC,EAAE,MAAM;IAId,IAAI;IAMJ,OAAO,CAAC,CAAC,EAAE,MAAM;IAqBjB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;IAkB7C,UAAU,CAAC,KAAK,EAAE,MAAM;IAIxB,WAAW,CAAC,KAAK,EAAE,MAAM;IAKzB,WAAW,CAAC,KAAK,EAAE,MAAM;IAKzB,UAAU,CAAC,KAAK,EAAE,MAAM;IAKxB,WAAW,CAAC,KAAK,EAAE,MAAM;IAKzB,YAAY,CAAC,KAAK,EAAE,MAAM;IAK1B,YAAY,CAAC,KAAK,EAAE,MAAM;IAK1B,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IASnE,uBAAuB,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC;IAIhD,6BAA6B,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC;IAgBtD,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC;IAKpD,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC;IAKxD,OAAO;CAGV"}