pymomentum-cpu 0.1.77.post26__cp312-cp312-macosx_15_0_arm64.whl

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.

Potentially problematic release.


This version of pymomentum-cpu might be problematic. Click here for more details.

Files changed (512) hide show
  1. include/axel/BoundingBox.h +58 -0
  2. include/axel/Bvh.h +708 -0
  3. include/axel/BvhBase.h +75 -0
  4. include/axel/BvhCommon.h +43 -0
  5. include/axel/BvhEmbree.h +86 -0
  6. include/axel/BvhFactory.h +34 -0
  7. include/axel/Checks.h +21 -0
  8. include/axel/DualContouring.h +79 -0
  9. include/axel/KdTree.h +199 -0
  10. include/axel/Log.h +22 -0
  11. include/axel/MeshToSdf.h +123 -0
  12. include/axel/Profile.h +64 -0
  13. include/axel/Ray.h +45 -0
  14. include/axel/SignedDistanceField.h +248 -0
  15. include/axel/SimdKdTree.h +515 -0
  16. include/axel/TriBvh.h +157 -0
  17. include/axel/TriBvhEmbree.h +57 -0
  18. include/axel/common/Constants.h +27 -0
  19. include/axel/common/Types.h +21 -0
  20. include/axel/common/VectorizationTypes.h +58 -0
  21. include/axel/math/BoundingBoxUtils.h +54 -0
  22. include/axel/math/ContinuousCollisionDetection.h +48 -0
  23. include/axel/math/CoplanarityCheck.h +30 -0
  24. include/axel/math/EdgeEdgeDistance.h +31 -0
  25. include/axel/math/MeshHoleFilling.h +117 -0
  26. include/axel/math/PointTriangleProjection.h +34 -0
  27. include/axel/math/PointTriangleProjectionDefinitions.h +209 -0
  28. include/axel/math/RayTriangleIntersection.h +36 -0
  29. include/momentum/character/blend_shape.h +91 -0
  30. include/momentum/character/blend_shape_base.h +70 -0
  31. include/momentum/character/blend_shape_skinning.h +96 -0
  32. include/momentum/character/character.h +272 -0
  33. include/momentum/character/character_state.h +108 -0
  34. include/momentum/character/character_utility.h +128 -0
  35. include/momentum/character/collision_geometry.h +80 -0
  36. include/momentum/character/collision_geometry_state.h +130 -0
  37. include/momentum/character/fwd.h +262 -0
  38. include/momentum/character/inverse_parameter_transform.h +58 -0
  39. include/momentum/character/joint.h +82 -0
  40. include/momentum/character/joint_state.h +241 -0
  41. include/momentum/character/linear_skinning.h +139 -0
  42. include/momentum/character/locator.h +82 -0
  43. include/momentum/character/locator_state.h +43 -0
  44. include/momentum/character/marker.h +48 -0
  45. include/momentum/character/mesh_state.h +71 -0
  46. include/momentum/character/parameter_limits.h +144 -0
  47. include/momentum/character/parameter_transform.h +250 -0
  48. include/momentum/character/pose_shape.h +65 -0
  49. include/momentum/character/skeleton.h +85 -0
  50. include/momentum/character/skeleton_state.h +181 -0
  51. include/momentum/character/skeleton_utility.h +38 -0
  52. include/momentum/character/skin_weights.h +67 -0
  53. include/momentum/character/skinned_locator.h +80 -0
  54. include/momentum/character/types.h +202 -0
  55. include/momentum/character_sequence_solver/fwd.h +200 -0
  56. include/momentum/character_sequence_solver/model_parameters_sequence_error_function.h +65 -0
  57. include/momentum/character_sequence_solver/multipose_solver.h +65 -0
  58. include/momentum/character_sequence_solver/multipose_solver_function.h +82 -0
  59. include/momentum/character_sequence_solver/sequence_error_function.h +104 -0
  60. include/momentum/character_sequence_solver/sequence_solver.h +144 -0
  61. include/momentum/character_sequence_solver/sequence_solver_function.h +134 -0
  62. include/momentum/character_sequence_solver/state_sequence_error_function.h +109 -0
  63. include/momentum/character_sequence_solver/vertex_sequence_error_function.h +128 -0
  64. include/momentum/character_solver/aim_error_function.h +112 -0
  65. include/momentum/character_solver/collision_error_function.h +92 -0
  66. include/momentum/character_solver/collision_error_function_stateless.h +75 -0
  67. include/momentum/character_solver/constraint_error_function-inl.h +324 -0
  68. include/momentum/character_solver/constraint_error_function.h +248 -0
  69. include/momentum/character_solver/distance_error_function.h +77 -0
  70. include/momentum/character_solver/error_function_utils.h +60 -0
  71. include/momentum/character_solver/fixed_axis_error_function.h +139 -0
  72. include/momentum/character_solver/fwd.h +924 -0
  73. include/momentum/character_solver/gauss_newton_solver_qr.h +64 -0
  74. include/momentum/character_solver/limit_error_function.h +57 -0
  75. include/momentum/character_solver/model_parameters_error_function.h +64 -0
  76. include/momentum/character_solver/normal_error_function.h +73 -0
  77. include/momentum/character_solver/orientation_error_function.h +74 -0
  78. include/momentum/character_solver/plane_error_function.h +102 -0
  79. include/momentum/character_solver/point_triangle_vertex_error_function.h +141 -0
  80. include/momentum/character_solver/pose_prior_error_function.h +80 -0
  81. include/momentum/character_solver/position_error_function.h +75 -0
  82. include/momentum/character_solver/projection_error_function.h +93 -0
  83. include/momentum/character_solver/simd_collision_error_function.h +99 -0
  84. include/momentum/character_solver/simd_normal_error_function.h +157 -0
  85. include/momentum/character_solver/simd_plane_error_function.h +164 -0
  86. include/momentum/character_solver/simd_position_error_function.h +165 -0
  87. include/momentum/character_solver/skeleton_error_function.h +151 -0
  88. include/momentum/character_solver/skeleton_solver_function.h +94 -0
  89. include/momentum/character_solver/skinned_locator_error_function.h +166 -0
  90. include/momentum/character_solver/skinned_locator_triangle_error_function.h +146 -0
  91. include/momentum/character_solver/skinning_weight_iterator.h +80 -0
  92. include/momentum/character_solver/state_error_function.h +94 -0
  93. include/momentum/character_solver/transform_pose.h +80 -0
  94. include/momentum/character_solver/trust_region_qr.h +80 -0
  95. include/momentum/character_solver/vertex_error_function.h +155 -0
  96. include/momentum/character_solver/vertex_projection_error_function.h +126 -0
  97. include/momentum/character_solver/vertex_vertex_distance_error_function.h +151 -0
  98. include/momentum/common/aligned.h +155 -0
  99. include/momentum/common/checks.h +27 -0
  100. include/momentum/common/exception.h +70 -0
  101. include/momentum/common/filesystem.h +20 -0
  102. include/momentum/common/fwd.h +27 -0
  103. include/momentum/common/log.h +173 -0
  104. include/momentum/common/log_channel.h +17 -0
  105. include/momentum/common/memory.h +71 -0
  106. include/momentum/common/profile.h +79 -0
  107. include/momentum/common/progress_bar.h +37 -0
  108. include/momentum/common/string.h +52 -0
  109. include/momentum/diff_ik/ceres_utility.h +73 -0
  110. include/momentum/diff_ik/fully_differentiable_body_ik.h +58 -0
  111. include/momentum/diff_ik/fully_differentiable_distance_error_function.h +69 -0
  112. include/momentum/diff_ik/fully_differentiable_motion_error_function.h +46 -0
  113. include/momentum/diff_ik/fully_differentiable_orientation_error_function.h +114 -0
  114. include/momentum/diff_ik/fully_differentiable_pose_prior_error_function.h +76 -0
  115. include/momentum/diff_ik/fully_differentiable_position_error_function.h +138 -0
  116. include/momentum/diff_ik/fully_differentiable_projection_error_function.h +65 -0
  117. include/momentum/diff_ik/fully_differentiable_skeleton_error_function.h +160 -0
  118. include/momentum/diff_ik/fully_differentiable_state_error_function.h +54 -0
  119. include/momentum/diff_ik/fwd.h +385 -0
  120. include/momentum/diff_ik/union_error_function.h +67 -0
  121. include/momentum/gui/rerun/eigen_adapters.h +70 -0
  122. include/momentum/gui/rerun/logger.h +102 -0
  123. include/momentum/gui/rerun/logging_redirect.h +27 -0
  124. include/momentum/io/character_io.h +56 -0
  125. include/momentum/io/common/gsl_utils.h +50 -0
  126. include/momentum/io/common/stream_utils.h +65 -0
  127. include/momentum/io/fbx/fbx_io.h +109 -0
  128. include/momentum/io/fbx/fbx_memory_stream.h +66 -0
  129. include/momentum/io/fbx/openfbx_loader.h +49 -0
  130. include/momentum/io/fbx/polygon_data.h +60 -0
  131. include/momentum/io/gltf/gltf_builder.h +132 -0
  132. include/momentum/io/gltf/gltf_file_format.h +19 -0
  133. include/momentum/io/gltf/gltf_io.h +148 -0
  134. include/momentum/io/gltf/utils/accessor_utils.h +299 -0
  135. include/momentum/io/gltf/utils/coordinate_utils.h +60 -0
  136. include/momentum/io/gltf/utils/json_utils.h +102 -0
  137. include/momentum/io/legacy_json/legacy_json_io.h +70 -0
  138. include/momentum/io/marker/c3d_io.h +29 -0
  139. include/momentum/io/marker/conversions.h +57 -0
  140. include/momentum/io/marker/coordinate_system.h +30 -0
  141. include/momentum/io/marker/marker_io.h +54 -0
  142. include/momentum/io/marker/trc_io.h +27 -0
  143. include/momentum/io/motion/mmo_io.h +97 -0
  144. include/momentum/io/shape/blend_shape_io.h +70 -0
  145. include/momentum/io/shape/pose_shape_io.h +21 -0
  146. include/momentum/io/skeleton/locator_io.h +41 -0
  147. include/momentum/io/skeleton/mppca_io.h +26 -0
  148. include/momentum/io/skeleton/parameter_limits_io.h +25 -0
  149. include/momentum/io/skeleton/parameter_transform_io.h +41 -0
  150. include/momentum/io/skeleton/parameters_io.h +20 -0
  151. include/momentum/io/urdf/urdf_io.h +26 -0
  152. include/momentum/io/usd/usd_io.h +36 -0
  153. include/momentum/marker_tracking/app_utils.h +62 -0
  154. include/momentum/marker_tracking/marker_tracker.h +213 -0
  155. include/momentum/marker_tracking/process_markers.h +58 -0
  156. include/momentum/marker_tracking/tracker_utils.h +90 -0
  157. include/momentum/math/constants.h +82 -0
  158. include/momentum/math/covariance_matrix.h +84 -0
  159. include/momentum/math/fmt_eigen.h +23 -0
  160. include/momentum/math/fwd.h +132 -0
  161. include/momentum/math/generalized_loss.h +61 -0
  162. include/momentum/math/intersection.h +32 -0
  163. include/momentum/math/mesh.h +84 -0
  164. include/momentum/math/mppca.h +67 -0
  165. include/momentum/math/online_householder_qr.h +516 -0
  166. include/momentum/math/random-inl.h +404 -0
  167. include/momentum/math/random.h +310 -0
  168. include/momentum/math/simd_generalized_loss.h +40 -0
  169. include/momentum/math/transform.h +229 -0
  170. include/momentum/math/types.h +461 -0
  171. include/momentum/math/utility.h +251 -0
  172. include/momentum/rasterizer/camera.h +453 -0
  173. include/momentum/rasterizer/fwd.h +102 -0
  174. include/momentum/rasterizer/geometry.h +83 -0
  175. include/momentum/rasterizer/image.h +18 -0
  176. include/momentum/rasterizer/rasterizer.h +583 -0
  177. include/momentum/rasterizer/tensor.h +140 -0
  178. include/momentum/rasterizer/utility.h +268 -0
  179. include/momentum/simd/simd.h +221 -0
  180. include/momentum/solver/fwd.h +131 -0
  181. include/momentum/solver/gauss_newton_solver.h +136 -0
  182. include/momentum/solver/gradient_descent_solver.h +65 -0
  183. include/momentum/solver/solver.h +155 -0
  184. include/momentum/solver/solver_function.h +126 -0
  185. include/momentum/solver/subset_gauss_newton_solver.h +109 -0
  186. include/rerun/archetypes/annotation_context.hpp +157 -0
  187. include/rerun/archetypes/arrows2d.hpp +271 -0
  188. include/rerun/archetypes/arrows3d.hpp +257 -0
  189. include/rerun/archetypes/asset3d.hpp +262 -0
  190. include/rerun/archetypes/asset_video.hpp +275 -0
  191. include/rerun/archetypes/bar_chart.hpp +261 -0
  192. include/rerun/archetypes/boxes2d.hpp +293 -0
  193. include/rerun/archetypes/boxes3d.hpp +369 -0
  194. include/rerun/archetypes/capsules3d.hpp +333 -0
  195. include/rerun/archetypes/clear.hpp +180 -0
  196. include/rerun/archetypes/depth_image.hpp +425 -0
  197. include/rerun/archetypes/ellipsoids3d.hpp +384 -0
  198. include/rerun/archetypes/encoded_image.hpp +250 -0
  199. include/rerun/archetypes/geo_line_strings.hpp +166 -0
  200. include/rerun/archetypes/geo_points.hpp +177 -0
  201. include/rerun/archetypes/graph_edges.hpp +152 -0
  202. include/rerun/archetypes/graph_nodes.hpp +206 -0
  203. include/rerun/archetypes/image.hpp +434 -0
  204. include/rerun/archetypes/instance_poses3d.hpp +221 -0
  205. include/rerun/archetypes/line_strips2d.hpp +289 -0
  206. include/rerun/archetypes/line_strips3d.hpp +270 -0
  207. include/rerun/archetypes/mesh3d.hpp +387 -0
  208. include/rerun/archetypes/pinhole.hpp +385 -0
  209. include/rerun/archetypes/points2d.hpp +333 -0
  210. include/rerun/archetypes/points3d.hpp +369 -0
  211. include/rerun/archetypes/recording_properties.hpp +132 -0
  212. include/rerun/archetypes/scalar.hpp +170 -0
  213. include/rerun/archetypes/scalars.hpp +153 -0
  214. include/rerun/archetypes/segmentation_image.hpp +305 -0
  215. include/rerun/archetypes/series_line.hpp +274 -0
  216. include/rerun/archetypes/series_lines.hpp +271 -0
  217. include/rerun/archetypes/series_point.hpp +265 -0
  218. include/rerun/archetypes/series_points.hpp +251 -0
  219. include/rerun/archetypes/tensor.hpp +213 -0
  220. include/rerun/archetypes/text_document.hpp +200 -0
  221. include/rerun/archetypes/text_log.hpp +211 -0
  222. include/rerun/archetypes/transform3d.hpp +925 -0
  223. include/rerun/archetypes/video_frame_reference.hpp +295 -0
  224. include/rerun/archetypes/view_coordinates.hpp +393 -0
  225. include/rerun/archetypes.hpp +43 -0
  226. include/rerun/arrow_utils.hpp +32 -0
  227. include/rerun/as_components.hpp +90 -0
  228. include/rerun/blueprint/archetypes/background.hpp +113 -0
  229. include/rerun/blueprint/archetypes/container_blueprint.hpp +259 -0
  230. include/rerun/blueprint/archetypes/dataframe_query.hpp +178 -0
  231. include/rerun/blueprint/archetypes/entity_behavior.hpp +130 -0
  232. include/rerun/blueprint/archetypes/force_center.hpp +115 -0
  233. include/rerun/blueprint/archetypes/force_collision_radius.hpp +141 -0
  234. include/rerun/blueprint/archetypes/force_link.hpp +136 -0
  235. include/rerun/blueprint/archetypes/force_many_body.hpp +124 -0
  236. include/rerun/blueprint/archetypes/force_position.hpp +132 -0
  237. include/rerun/blueprint/archetypes/line_grid3d.hpp +178 -0
  238. include/rerun/blueprint/archetypes/map_background.hpp +104 -0
  239. include/rerun/blueprint/archetypes/map_zoom.hpp +103 -0
  240. include/rerun/blueprint/archetypes/near_clip_plane.hpp +109 -0
  241. include/rerun/blueprint/archetypes/panel_blueprint.hpp +95 -0
  242. include/rerun/blueprint/archetypes/plot_legend.hpp +118 -0
  243. include/rerun/blueprint/archetypes/scalar_axis.hpp +116 -0
  244. include/rerun/blueprint/archetypes/tensor_scalar_mapping.hpp +146 -0
  245. include/rerun/blueprint/archetypes/tensor_slice_selection.hpp +167 -0
  246. include/rerun/blueprint/archetypes/tensor_view_fit.hpp +95 -0
  247. include/rerun/blueprint/archetypes/view_blueprint.hpp +170 -0
  248. include/rerun/blueprint/archetypes/view_contents.hpp +142 -0
  249. include/rerun/blueprint/archetypes/viewport_blueprint.hpp +200 -0
  250. include/rerun/blueprint/archetypes/visible_time_ranges.hpp +116 -0
  251. include/rerun/blueprint/archetypes/visual_bounds2d.hpp +109 -0
  252. include/rerun/blueprint/archetypes/visualizer_overrides.hpp +113 -0
  253. include/rerun/blueprint/archetypes.hpp +29 -0
  254. include/rerun/blueprint/components/active_tab.hpp +82 -0
  255. include/rerun/blueprint/components/apply_latest_at.hpp +79 -0
  256. include/rerun/blueprint/components/auto_layout.hpp +77 -0
  257. include/rerun/blueprint/components/auto_views.hpp +77 -0
  258. include/rerun/blueprint/components/background_kind.hpp +66 -0
  259. include/rerun/blueprint/components/column_share.hpp +78 -0
  260. include/rerun/blueprint/components/component_column_selector.hpp +81 -0
  261. include/rerun/blueprint/components/container_kind.hpp +65 -0
  262. include/rerun/blueprint/components/corner2d.hpp +64 -0
  263. include/rerun/blueprint/components/enabled.hpp +77 -0
  264. include/rerun/blueprint/components/filter_by_range.hpp +74 -0
  265. include/rerun/blueprint/components/filter_is_not_null.hpp +77 -0
  266. include/rerun/blueprint/components/force_distance.hpp +82 -0
  267. include/rerun/blueprint/components/force_iterations.hpp +82 -0
  268. include/rerun/blueprint/components/force_strength.hpp +82 -0
  269. include/rerun/blueprint/components/grid_columns.hpp +78 -0
  270. include/rerun/blueprint/components/grid_spacing.hpp +78 -0
  271. include/rerun/blueprint/components/included_content.hpp +86 -0
  272. include/rerun/blueprint/components/lock_range_during_zoom.hpp +82 -0
  273. include/rerun/blueprint/components/map_provider.hpp +64 -0
  274. include/rerun/blueprint/components/near_clip_plane.hpp +82 -0
  275. include/rerun/blueprint/components/panel_state.hpp +61 -0
  276. include/rerun/blueprint/components/query_expression.hpp +89 -0
  277. include/rerun/blueprint/components/root_container.hpp +77 -0
  278. include/rerun/blueprint/components/row_share.hpp +78 -0
  279. include/rerun/blueprint/components/selected_columns.hpp +76 -0
  280. include/rerun/blueprint/components/tensor_dimension_index_slider.hpp +90 -0
  281. include/rerun/blueprint/components/timeline_name.hpp +76 -0
  282. include/rerun/blueprint/components/view_class.hpp +76 -0
  283. include/rerun/blueprint/components/view_fit.hpp +61 -0
  284. include/rerun/blueprint/components/view_maximized.hpp +79 -0
  285. include/rerun/blueprint/components/view_origin.hpp +81 -0
  286. include/rerun/blueprint/components/viewer_recommendation_hash.hpp +82 -0
  287. include/rerun/blueprint/components/visible_time_range.hpp +77 -0
  288. include/rerun/blueprint/components/visual_bounds2d.hpp +74 -0
  289. include/rerun/blueprint/components/visualizer_override.hpp +86 -0
  290. include/rerun/blueprint/components/zoom_level.hpp +78 -0
  291. include/rerun/blueprint/components.hpp +41 -0
  292. include/rerun/blueprint/datatypes/component_column_selector.hpp +61 -0
  293. include/rerun/blueprint/datatypes/filter_by_range.hpp +59 -0
  294. include/rerun/blueprint/datatypes/filter_is_not_null.hpp +61 -0
  295. include/rerun/blueprint/datatypes/selected_columns.hpp +62 -0
  296. include/rerun/blueprint/datatypes/tensor_dimension_index_slider.hpp +63 -0
  297. include/rerun/blueprint/datatypes.hpp +9 -0
  298. include/rerun/c/arrow_c_data_interface.h +111 -0
  299. include/rerun/c/compiler_utils.h +10 -0
  300. include/rerun/c/rerun.h +627 -0
  301. include/rerun/c/sdk_info.h +28 -0
  302. include/rerun/collection.hpp +496 -0
  303. include/rerun/collection_adapter.hpp +43 -0
  304. include/rerun/collection_adapter_builtins.hpp +138 -0
  305. include/rerun/compiler_utils.hpp +61 -0
  306. include/rerun/component_batch.hpp +163 -0
  307. include/rerun/component_column.hpp +111 -0
  308. include/rerun/component_descriptor.hpp +142 -0
  309. include/rerun/component_type.hpp +35 -0
  310. include/rerun/components/aggregation_policy.hpp +76 -0
  311. include/rerun/components/albedo_factor.hpp +74 -0
  312. include/rerun/components/annotation_context.hpp +102 -0
  313. include/rerun/components/axis_length.hpp +74 -0
  314. include/rerun/components/blob.hpp +73 -0
  315. include/rerun/components/class_id.hpp +71 -0
  316. include/rerun/components/clear_is_recursive.hpp +75 -0
  317. include/rerun/components/color.hpp +99 -0
  318. include/rerun/components/colormap.hpp +99 -0
  319. include/rerun/components/depth_meter.hpp +84 -0
  320. include/rerun/components/draw_order.hpp +79 -0
  321. include/rerun/components/entity_path.hpp +83 -0
  322. include/rerun/components/fill_mode.hpp +72 -0
  323. include/rerun/components/fill_ratio.hpp +79 -0
  324. include/rerun/components/gamma_correction.hpp +80 -0
  325. include/rerun/components/geo_line_string.hpp +63 -0
  326. include/rerun/components/graph_edge.hpp +75 -0
  327. include/rerun/components/graph_node.hpp +79 -0
  328. include/rerun/components/graph_type.hpp +57 -0
  329. include/rerun/components/half_size2d.hpp +91 -0
  330. include/rerun/components/half_size3d.hpp +95 -0
  331. include/rerun/components/image_buffer.hpp +86 -0
  332. include/rerun/components/image_format.hpp +84 -0
  333. include/rerun/components/image_plane_distance.hpp +77 -0
  334. include/rerun/components/interactive.hpp +76 -0
  335. include/rerun/components/keypoint_id.hpp +74 -0
  336. include/rerun/components/lat_lon.hpp +89 -0
  337. include/rerun/components/length.hpp +77 -0
  338. include/rerun/components/line_strip2d.hpp +73 -0
  339. include/rerun/components/line_strip3d.hpp +73 -0
  340. include/rerun/components/magnification_filter.hpp +63 -0
  341. include/rerun/components/marker_shape.hpp +82 -0
  342. include/rerun/components/marker_size.hpp +74 -0
  343. include/rerun/components/media_type.hpp +157 -0
  344. include/rerun/components/name.hpp +83 -0
  345. include/rerun/components/opacity.hpp +77 -0
  346. include/rerun/components/pinhole_projection.hpp +94 -0
  347. include/rerun/components/plane3d.hpp +75 -0
  348. include/rerun/components/pose_rotation_axis_angle.hpp +73 -0
  349. include/rerun/components/pose_rotation_quat.hpp +71 -0
  350. include/rerun/components/pose_scale3d.hpp +102 -0
  351. include/rerun/components/pose_transform_mat3x3.hpp +87 -0
  352. include/rerun/components/pose_translation3d.hpp +96 -0
  353. include/rerun/components/position2d.hpp +86 -0
  354. include/rerun/components/position3d.hpp +90 -0
  355. include/rerun/components/radius.hpp +98 -0
  356. include/rerun/components/range1d.hpp +75 -0
  357. include/rerun/components/resolution.hpp +88 -0
  358. include/rerun/components/rotation_axis_angle.hpp +72 -0
  359. include/rerun/components/rotation_quat.hpp +71 -0
  360. include/rerun/components/scalar.hpp +76 -0
  361. include/rerun/components/scale3d.hpp +102 -0
  362. include/rerun/components/series_visible.hpp +76 -0
  363. include/rerun/components/show_labels.hpp +79 -0
  364. include/rerun/components/stroke_width.hpp +74 -0
  365. include/rerun/components/tensor_data.hpp +94 -0
  366. include/rerun/components/tensor_dimension_index_selection.hpp +77 -0
  367. include/rerun/components/tensor_height_dimension.hpp +71 -0
  368. include/rerun/components/tensor_width_dimension.hpp +71 -0
  369. include/rerun/components/texcoord2d.hpp +101 -0
  370. include/rerun/components/text.hpp +83 -0
  371. include/rerun/components/text_log_level.hpp +110 -0
  372. include/rerun/components/timestamp.hpp +76 -0
  373. include/rerun/components/transform_mat3x3.hpp +92 -0
  374. include/rerun/components/transform_relation.hpp +66 -0
  375. include/rerun/components/translation3d.hpp +96 -0
  376. include/rerun/components/triangle_indices.hpp +85 -0
  377. include/rerun/components/value_range.hpp +78 -0
  378. include/rerun/components/vector2d.hpp +92 -0
  379. include/rerun/components/vector3d.hpp +96 -0
  380. include/rerun/components/video_timestamp.hpp +120 -0
  381. include/rerun/components/view_coordinates.hpp +346 -0
  382. include/rerun/components/visible.hpp +74 -0
  383. include/rerun/components.hpp +77 -0
  384. include/rerun/config.hpp +52 -0
  385. include/rerun/datatypes/angle.hpp +76 -0
  386. include/rerun/datatypes/annotation_info.hpp +76 -0
  387. include/rerun/datatypes/blob.hpp +67 -0
  388. include/rerun/datatypes/bool.hpp +57 -0
  389. include/rerun/datatypes/channel_datatype.hpp +87 -0
  390. include/rerun/datatypes/class_description.hpp +92 -0
  391. include/rerun/datatypes/class_description_map_elem.hpp +69 -0
  392. include/rerun/datatypes/class_id.hpp +62 -0
  393. include/rerun/datatypes/color_model.hpp +68 -0
  394. include/rerun/datatypes/dvec2d.hpp +76 -0
  395. include/rerun/datatypes/entity_path.hpp +60 -0
  396. include/rerun/datatypes/float32.hpp +62 -0
  397. include/rerun/datatypes/float64.hpp +62 -0
  398. include/rerun/datatypes/image_format.hpp +107 -0
  399. include/rerun/datatypes/keypoint_id.hpp +63 -0
  400. include/rerun/datatypes/keypoint_pair.hpp +65 -0
  401. include/rerun/datatypes/mat3x3.hpp +105 -0
  402. include/rerun/datatypes/mat4x4.hpp +119 -0
  403. include/rerun/datatypes/pixel_format.hpp +142 -0
  404. include/rerun/datatypes/plane3d.hpp +60 -0
  405. include/rerun/datatypes/quaternion.hpp +110 -0
  406. include/rerun/datatypes/range1d.hpp +59 -0
  407. include/rerun/datatypes/range2d.hpp +55 -0
  408. include/rerun/datatypes/rgba32.hpp +94 -0
  409. include/rerun/datatypes/rotation_axis_angle.hpp +67 -0
  410. include/rerun/datatypes/tensor_buffer.hpp +529 -0
  411. include/rerun/datatypes/tensor_data.hpp +100 -0
  412. include/rerun/datatypes/tensor_dimension_index_selection.hpp +58 -0
  413. include/rerun/datatypes/tensor_dimension_selection.hpp +56 -0
  414. include/rerun/datatypes/time_int.hpp +62 -0
  415. include/rerun/datatypes/time_range.hpp +55 -0
  416. include/rerun/datatypes/time_range_boundary.hpp +175 -0
  417. include/rerun/datatypes/uint16.hpp +62 -0
  418. include/rerun/datatypes/uint32.hpp +62 -0
  419. include/rerun/datatypes/uint64.hpp +62 -0
  420. include/rerun/datatypes/utf8.hpp +76 -0
  421. include/rerun/datatypes/utf8pair.hpp +62 -0
  422. include/rerun/datatypes/uuid.hpp +60 -0
  423. include/rerun/datatypes/uvec2d.hpp +76 -0
  424. include/rerun/datatypes/uvec3d.hpp +80 -0
  425. include/rerun/datatypes/uvec4d.hpp +59 -0
  426. include/rerun/datatypes/vec2d.hpp +76 -0
  427. include/rerun/datatypes/vec3d.hpp +80 -0
  428. include/rerun/datatypes/vec4d.hpp +84 -0
  429. include/rerun/datatypes/video_timestamp.hpp +67 -0
  430. include/rerun/datatypes/view_coordinates.hpp +87 -0
  431. include/rerun/datatypes/visible_time_range.hpp +57 -0
  432. include/rerun/datatypes.hpp +51 -0
  433. include/rerun/demo_utils.hpp +75 -0
  434. include/rerun/entity_path.hpp +20 -0
  435. include/rerun/error.hpp +180 -0
  436. include/rerun/half.hpp +10 -0
  437. include/rerun/image_utils.hpp +187 -0
  438. include/rerun/indicator_component.hpp +59 -0
  439. include/rerun/loggable.hpp +54 -0
  440. include/rerun/recording_stream.hpp +960 -0
  441. include/rerun/rerun_sdk_export.hpp +25 -0
  442. include/rerun/result.hpp +86 -0
  443. include/rerun/rotation3d.hpp +33 -0
  444. include/rerun/sdk_info.hpp +20 -0
  445. include/rerun/spawn.hpp +21 -0
  446. include/rerun/spawn_options.hpp +57 -0
  447. include/rerun/string_utils.hpp +16 -0
  448. include/rerun/third_party/cxxopts.hpp +2198 -0
  449. include/rerun/time_column.hpp +288 -0
  450. include/rerun/timeline.hpp +38 -0
  451. include/rerun/type_traits.hpp +40 -0
  452. include/rerun.hpp +86 -0
  453. lib/cmake/axel/axel-config.cmake +45 -0
  454. lib/cmake/axel/axelTargets-release.cmake +19 -0
  455. lib/cmake/axel/axelTargets.cmake +108 -0
  456. lib/cmake/momentum/Findre2.cmake +52 -0
  457. lib/cmake/momentum/momentum-config.cmake +67 -0
  458. lib/cmake/momentum/momentumTargets-release.cmake +259 -0
  459. lib/cmake/momentum/momentumTargets.cmake +377 -0
  460. lib/cmake/rerun_sdk/rerun_sdkConfig.cmake +70 -0
  461. lib/cmake/rerun_sdk/rerun_sdkConfigVersion.cmake +83 -0
  462. lib/cmake/rerun_sdk/rerun_sdkTargets-release.cmake +19 -0
  463. lib/cmake/rerun_sdk/rerun_sdkTargets.cmake +108 -0
  464. lib/libarrow.a +0 -0
  465. lib/libarrow_bundled_dependencies.a +0 -0
  466. lib/libaxel.a +0 -0
  467. lib/libmomentum_app_utils.a +0 -0
  468. lib/libmomentum_character.a +0 -0
  469. lib/libmomentum_character_sequence_solver.a +0 -0
  470. lib/libmomentum_character_solver.a +0 -0
  471. lib/libmomentum_common.a +0 -0
  472. lib/libmomentum_diff_ik.a +0 -0
  473. lib/libmomentum_io.a +0 -0
  474. lib/libmomentum_io_common.a +0 -0
  475. lib/libmomentum_io_fbx.a +0 -0
  476. lib/libmomentum_io_gltf.a +0 -0
  477. lib/libmomentum_io_legacy_json.a +0 -0
  478. lib/libmomentum_io_marker.a +0 -0
  479. lib/libmomentum_io_motion.a +0 -0
  480. lib/libmomentum_io_shape.a +0 -0
  481. lib/libmomentum_io_skeleton.a +0 -0
  482. lib/libmomentum_io_urdf.a +0 -0
  483. lib/libmomentum_marker_tracker.a +0 -0
  484. lib/libmomentum_math.a +0 -0
  485. lib/libmomentum_online_qr.a +0 -0
  486. lib/libmomentum_process_markers.a +0 -0
  487. lib/libmomentum_rerun.a +0 -0
  488. lib/libmomentum_simd_constraints.a +0 -0
  489. lib/libmomentum_simd_generalized_loss.a +0 -0
  490. lib/libmomentum_skeleton.a +0 -0
  491. lib/libmomentum_solver.a +0 -0
  492. lib/librerun_c__macos_arm64.a +0 -0
  493. lib/librerun_sdk.a +0 -0
  494. pymomentum/axel.cpython-312-darwin.so +0 -0
  495. pymomentum/backend/__init__.py +16 -0
  496. pymomentum/backend/skel_state_backend.py +614 -0
  497. pymomentum/backend/trs_backend.py +871 -0
  498. pymomentum/backend/utils.py +224 -0
  499. pymomentum/geometry.cpython-312-darwin.so +0 -0
  500. pymomentum/marker_tracking.cpython-312-darwin.so +0 -0
  501. pymomentum/quaternion.py +740 -0
  502. pymomentum/skel_state.py +514 -0
  503. pymomentum/solver.cpython-312-darwin.so +0 -0
  504. pymomentum/solver2.cpython-312-darwin.so +0 -0
  505. pymomentum/torch/character.py +809 -0
  506. pymomentum/torch/parameter_limits.py +494 -0
  507. pymomentum/torch/utility.py +20 -0
  508. pymomentum/trs.py +535 -0
  509. pymomentum_cpu-0.1.77.post26.dist-info/METADATA +208 -0
  510. pymomentum_cpu-0.1.77.post26.dist-info/RECORD +512 -0
  511. pymomentum_cpu-0.1.77.post26.dist-info/WHEEL +5 -0
  512. pymomentum_cpu-0.1.77.post26.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,257 @@
1
+ // DO NOT EDIT! This file was auto-generated by crates/build/re_types_builder/src/codegen/cpp/mod.rs
2
+ // Based on "crates/store/re_types/definitions/rerun/archetypes/arrows3d.fbs".
3
+
4
+ #pragma once
5
+
6
+ #include "../collection.hpp"
7
+ #include "../component_batch.hpp"
8
+ #include "../component_column.hpp"
9
+ #include "../components/class_id.hpp"
10
+ #include "../components/color.hpp"
11
+ #include "../components/position3d.hpp"
12
+ #include "../components/radius.hpp"
13
+ #include "../components/show_labels.hpp"
14
+ #include "../components/text.hpp"
15
+ #include "../components/vector3d.hpp"
16
+ #include "../indicator_component.hpp"
17
+ #include "../result.hpp"
18
+
19
+ #include <cstdint>
20
+ #include <optional>
21
+ #include <utility>
22
+ #include <vector>
23
+
24
+ namespace rerun::archetypes {
25
+ /// **Archetype**: 3D arrows with optional colors, radii, labels, etc.
26
+ ///
27
+ /// ## Example
28
+ ///
29
+ /// ### Simple batch of 3D arrows
30
+ /// ![image](https://static.rerun.io/arrow3d_simple/55e2f794a520bbf7527d7b828b0264732146c5d0/full.png)
31
+ ///
32
+ /// ```cpp
33
+ /// #include <rerun.hpp>
34
+ ///
35
+ /// #include <cmath>
36
+ /// #include <vector>
37
+ ///
38
+ /// constexpr float TAU = 6.28318530717958647692528676655900577f;
39
+ ///
40
+ /// int main() {
41
+ /// const auto rec = rerun::RecordingStream("rerun_example_arrow3d");
42
+ /// rec.spawn().exit_on_failure();
43
+ ///
44
+ /// std::vector<rerun::Position3D> origins;
45
+ /// std::vector<rerun::Vector3D> vectors;
46
+ /// std::vector<rerun::Color> colors;
47
+ ///
48
+ /// for (int i = 0; i <100; ++i) {
49
+ /// origins.push_back({0, 0, 0});
50
+ ///
51
+ /// float angle = TAU * static_cast<float>(i) * 0.01f;
52
+ /// float length = static_cast<float>(log2(i + 1));
53
+ /// vectors.push_back({length * sinf(angle), 0.0, length * cosf(angle)});
54
+ ///
55
+ /// uint8_t c = static_cast<uint8_t>(round(angle / TAU * 255.0f));
56
+ /// colors.push_back({static_cast<uint8_t>(255 - c), c, 128, 128});
57
+ /// }
58
+ ///
59
+ /// rec.log(
60
+ /// "arrows",
61
+ /// rerun::Arrows3D::from_vectors(vectors).with_origins(origins).with_colors(colors)
62
+ /// );
63
+ /// }
64
+ /// ```
65
+ struct Arrows3D {
66
+ /// All the vectors for each arrow in the batch.
67
+ std::optional<ComponentBatch> vectors;
68
+
69
+ /// All the origin (base) positions for each arrow in the batch.
70
+ ///
71
+ /// If no origins are set, (0, 0, 0) is used as the origin for each arrow.
72
+ std::optional<ComponentBatch> origins;
73
+
74
+ /// Optional radii for the arrows.
75
+ ///
76
+ /// The shaft is rendered as a line with `radius = 0.5 * radius`.
77
+ /// The tip is rendered with `height = 2.0 * radius` and `radius = 1.0 * radius`.
78
+ std::optional<ComponentBatch> radii;
79
+
80
+ /// Optional colors for the points.
81
+ std::optional<ComponentBatch> colors;
82
+
83
+ /// Optional text labels for the arrows.
84
+ ///
85
+ /// If there's a single label present, it will be placed at the center of the entity.
86
+ /// Otherwise, each instance will have its own label.
87
+ std::optional<ComponentBatch> labels;
88
+
89
+ /// Optional choice of whether the text labels should be shown by default.
90
+ std::optional<ComponentBatch> show_labels;
91
+
92
+ /// Optional class Ids for the points.
93
+ ///
94
+ /// The `components::ClassId` provides colors and labels if not specified explicitly.
95
+ std::optional<ComponentBatch> class_ids;
96
+
97
+ public:
98
+ static constexpr const char IndicatorComponentName[] = "rerun.components.Arrows3DIndicator";
99
+
100
+ /// Indicator component, used to identify the archetype when converting to a list of components.
101
+ using IndicatorComponent = rerun::components::IndicatorComponent<IndicatorComponentName>;
102
+ /// The name of the archetype as used in `ComponentDescriptor`s.
103
+ static constexpr const char ArchetypeName[] = "rerun.archetypes.Arrows3D";
104
+
105
+ /// `ComponentDescriptor` for the `vectors` field.
106
+ static constexpr auto Descriptor_vectors = ComponentDescriptor(
107
+ ArchetypeName, "vectors",
108
+ Loggable<rerun::components::Vector3D>::Descriptor.component_name
109
+ );
110
+ /// `ComponentDescriptor` for the `origins` field.
111
+ static constexpr auto Descriptor_origins = ComponentDescriptor(
112
+ ArchetypeName, "origins",
113
+ Loggable<rerun::components::Position3D>::Descriptor.component_name
114
+ );
115
+ /// `ComponentDescriptor` for the `radii` field.
116
+ static constexpr auto Descriptor_radii = ComponentDescriptor(
117
+ ArchetypeName, "radii", Loggable<rerun::components::Radius>::Descriptor.component_name
118
+ );
119
+ /// `ComponentDescriptor` for the `colors` field.
120
+ static constexpr auto Descriptor_colors = ComponentDescriptor(
121
+ ArchetypeName, "colors", Loggable<rerun::components::Color>::Descriptor.component_name
122
+ );
123
+ /// `ComponentDescriptor` for the `labels` field.
124
+ static constexpr auto Descriptor_labels = ComponentDescriptor(
125
+ ArchetypeName, "labels", Loggable<rerun::components::Text>::Descriptor.component_name
126
+ );
127
+ /// `ComponentDescriptor` for the `show_labels` field.
128
+ static constexpr auto Descriptor_show_labels = ComponentDescriptor(
129
+ ArchetypeName, "show_labels",
130
+ Loggable<rerun::components::ShowLabels>::Descriptor.component_name
131
+ );
132
+ /// `ComponentDescriptor` for the `class_ids` field.
133
+ static constexpr auto Descriptor_class_ids = ComponentDescriptor(
134
+ ArchetypeName, "class_ids",
135
+ Loggable<rerun::components::ClassId>::Descriptor.component_name
136
+ );
137
+
138
+ public: // START of extensions from arrows3d_ext.cpp:
139
+ /// Creates new 3D arrows pointing in the given directions, with a base at the origin (0, 0,
140
+ /// 0).
141
+ static Arrows3D from_vectors(Collection<components::Vector3D> vectors_) {
142
+ return Arrows3D().with_vectors(vectors_);
143
+ }
144
+
145
+ // END of extensions from arrows3d_ext.cpp, start of generated code:
146
+
147
+ public:
148
+ Arrows3D() = default;
149
+ Arrows3D(Arrows3D&& other) = default;
150
+ Arrows3D(const Arrows3D& other) = default;
151
+ Arrows3D& operator=(const Arrows3D& other) = default;
152
+ Arrows3D& operator=(Arrows3D&& other) = default;
153
+
154
+ /// Update only some specific fields of a `Arrows3D`.
155
+ static Arrows3D update_fields() {
156
+ return Arrows3D();
157
+ }
158
+
159
+ /// Clear all the fields of a `Arrows3D`.
160
+ static Arrows3D clear_fields();
161
+
162
+ /// All the vectors for each arrow in the batch.
163
+ Arrows3D with_vectors(const Collection<rerun::components::Vector3D>& _vectors) && {
164
+ vectors = ComponentBatch::from_loggable(_vectors, Descriptor_vectors).value_or_throw();
165
+ return std::move(*this);
166
+ }
167
+
168
+ /// All the origin (base) positions for each arrow in the batch.
169
+ ///
170
+ /// If no origins are set, (0, 0, 0) is used as the origin for each arrow.
171
+ Arrows3D with_origins(const Collection<rerun::components::Position3D>& _origins) && {
172
+ origins = ComponentBatch::from_loggable(_origins, Descriptor_origins).value_or_throw();
173
+ return std::move(*this);
174
+ }
175
+
176
+ /// Optional radii for the arrows.
177
+ ///
178
+ /// The shaft is rendered as a line with `radius = 0.5 * radius`.
179
+ /// The tip is rendered with `height = 2.0 * radius` and `radius = 1.0 * radius`.
180
+ Arrows3D with_radii(const Collection<rerun::components::Radius>& _radii) && {
181
+ radii = ComponentBatch::from_loggable(_radii, Descriptor_radii).value_or_throw();
182
+ return std::move(*this);
183
+ }
184
+
185
+ /// Optional colors for the points.
186
+ Arrows3D with_colors(const Collection<rerun::components::Color>& _colors) && {
187
+ colors = ComponentBatch::from_loggable(_colors, Descriptor_colors).value_or_throw();
188
+ return std::move(*this);
189
+ }
190
+
191
+ /// Optional text labels for the arrows.
192
+ ///
193
+ /// If there's a single label present, it will be placed at the center of the entity.
194
+ /// Otherwise, each instance will have its own label.
195
+ Arrows3D with_labels(const Collection<rerun::components::Text>& _labels) && {
196
+ labels = ComponentBatch::from_loggable(_labels, Descriptor_labels).value_or_throw();
197
+ return std::move(*this);
198
+ }
199
+
200
+ /// Optional choice of whether the text labels should be shown by default.
201
+ Arrows3D with_show_labels(const rerun::components::ShowLabels& _show_labels) && {
202
+ show_labels = ComponentBatch::from_loggable(_show_labels, Descriptor_show_labels)
203
+ .value_or_throw();
204
+ return std::move(*this);
205
+ }
206
+
207
+ /// This method makes it possible to pack multiple `show_labels` in a single component batch.
208
+ ///
209
+ /// This only makes sense when used in conjunction with `columns`. `with_show_labels` should
210
+ /// be used when logging a single row's worth of data.
211
+ Arrows3D with_many_show_labels(const Collection<rerun::components::ShowLabels>& _show_labels
212
+ ) && {
213
+ show_labels = ComponentBatch::from_loggable(_show_labels, Descriptor_show_labels)
214
+ .value_or_throw();
215
+ return std::move(*this);
216
+ }
217
+
218
+ /// Optional class Ids for the points.
219
+ ///
220
+ /// The `components::ClassId` provides colors and labels if not specified explicitly.
221
+ Arrows3D with_class_ids(const Collection<rerun::components::ClassId>& _class_ids) && {
222
+ class_ids =
223
+ ComponentBatch::from_loggable(_class_ids, Descriptor_class_ids).value_or_throw();
224
+ return std::move(*this);
225
+ }
226
+
227
+ /// Partitions the component data into multiple sub-batches.
228
+ ///
229
+ /// Specifically, this transforms the existing `ComponentBatch` data into `ComponentColumn`s
230
+ /// instead, via `ComponentBatch::partitioned`.
231
+ ///
232
+ /// This makes it possible to use `RecordingStream::send_columns` to send columnar data directly into Rerun.
233
+ ///
234
+ /// The specified `lengths` must sum to the total length of the component batch.
235
+ Collection<ComponentColumn> columns(const Collection<uint32_t>& lengths_);
236
+
237
+ /// Partitions the component data into unit-length sub-batches.
238
+ ///
239
+ /// This is semantically similar to calling `columns` with `std::vector<uint32_t>(n, 1)`,
240
+ /// where `n` is automatically guessed.
241
+ Collection<ComponentColumn> columns();
242
+ };
243
+
244
+ } // namespace rerun::archetypes
245
+
246
+ namespace rerun {
247
+ /// \private
248
+ template <typename T>
249
+ struct AsComponents;
250
+
251
+ /// \private
252
+ template <>
253
+ struct AsComponents<archetypes::Arrows3D> {
254
+ /// Serialize all set component batches.
255
+ static Result<Collection<ComponentBatch>> as_batches(const archetypes::Arrows3D& archetype);
256
+ };
257
+ } // namespace rerun
@@ -0,0 +1,262 @@
1
+ // DO NOT EDIT! This file was auto-generated by crates/build/re_types_builder/src/codegen/cpp/mod.rs
2
+ // Based on "crates/store/re_types/definitions/rerun/archetypes/asset3d.fbs".
3
+
4
+ #pragma once
5
+
6
+ #include "../collection.hpp"
7
+ #include "../component_batch.hpp"
8
+ #include "../component_column.hpp"
9
+ #include "../components/albedo_factor.hpp"
10
+ #include "../components/blob.hpp"
11
+ #include "../components/media_type.hpp"
12
+ #include "../indicator_component.hpp"
13
+ #include "../result.hpp"
14
+
15
+ #include <cstdint>
16
+ #include <filesystem>
17
+ #include <optional>
18
+ #include <utility>
19
+ #include <vector>
20
+
21
+ namespace rerun::archetypes {
22
+ /// **Archetype**: A prepacked 3D asset (`.gltf`, `.glb`, `.obj`, `.stl`, etc.).
23
+ ///
24
+ /// See also `archetypes::Mesh3D`.
25
+ ///
26
+ /// If there are multiple `archetypes::InstancePoses3D` instances logged to the same entity as a mesh,
27
+ /// an instance of the mesh will be drawn for each transform.
28
+ ///
29
+ /// ## Example
30
+ ///
31
+ /// ### Simple 3D asset
32
+ /// ![image](https://static.rerun.io/asset3d_simple/af238578188d3fd0de3e330212120e2842a8ddb2/full.png)
33
+ ///
34
+ /// ```cpp
35
+ /// #include <rerun.hpp>
36
+ ///
37
+ /// #include <iostream>
38
+ ///
39
+ /// int main(int argc, char* argv[]) {
40
+ /// if (argc <2) {
41
+ /// std::cerr <<"Usage: " <<argv[0] <<" <path_to_asset.[gltf|glb|obj|stl]>" <<std::endl;
42
+ /// return 1;
43
+ /// }
44
+ ///
45
+ /// const auto path = argv[1];
46
+ ///
47
+ /// const auto rec = rerun::RecordingStream("rerun_example_asset3d");
48
+ /// rec.spawn().exit_on_failure();
49
+ ///
50
+ /// rec.log_static("world", rerun::ViewCoordinates::RIGHT_HAND_Z_UP); // Set an up-axis
51
+ /// rec.log("world/asset", rerun::Asset3D::from_file_path(path).value_or_throw());
52
+ /// }
53
+ /// ```
54
+ struct Asset3D {
55
+ /// The asset's bytes.
56
+ std::optional<ComponentBatch> blob;
57
+
58
+ /// The Media Type of the asset.
59
+ ///
60
+ /// Supported values:
61
+ /// * `model/gltf-binary`
62
+ /// * `model/gltf+json`
63
+ /// * `model/obj` (.mtl material files are not supported yet, references are silently ignored)
64
+ /// * `model/stl`
65
+ ///
66
+ /// If omitted, the viewer will try to guess from the data blob.
67
+ /// If it cannot guess, it won't be able to render the asset.
68
+ std::optional<ComponentBatch> media_type;
69
+
70
+ /// A color multiplier applied to the whole asset.
71
+ ///
72
+ /// For mesh who already have `albedo_factor` in materials,
73
+ /// it will be overwritten by actual `albedo_factor` of `archetypes::Asset3D` (if specified).
74
+ std::optional<ComponentBatch> albedo_factor;
75
+
76
+ public:
77
+ static constexpr const char IndicatorComponentName[] = "rerun.components.Asset3DIndicator";
78
+
79
+ /// Indicator component, used to identify the archetype when converting to a list of components.
80
+ using IndicatorComponent = rerun::components::IndicatorComponent<IndicatorComponentName>;
81
+ /// The name of the archetype as used in `ComponentDescriptor`s.
82
+ static constexpr const char ArchetypeName[] = "rerun.archetypes.Asset3D";
83
+
84
+ /// `ComponentDescriptor` for the `blob` field.
85
+ static constexpr auto Descriptor_blob = ComponentDescriptor(
86
+ ArchetypeName, "blob", Loggable<rerun::components::Blob>::Descriptor.component_name
87
+ );
88
+ /// `ComponentDescriptor` for the `media_type` field.
89
+ static constexpr auto Descriptor_media_type = ComponentDescriptor(
90
+ ArchetypeName, "media_type",
91
+ Loggable<rerun::components::MediaType>::Descriptor.component_name
92
+ );
93
+ /// `ComponentDescriptor` for the `albedo_factor` field.
94
+ static constexpr auto Descriptor_albedo_factor = ComponentDescriptor(
95
+ ArchetypeName, "albedo_factor",
96
+ Loggable<rerun::components::AlbedoFactor>::Descriptor.component_name
97
+ );
98
+
99
+ public: // START of extensions from asset3d_ext.cpp:
100
+ /// Creates a new `Asset3D` from the file contents at `path`.
101
+ ///
102
+ /// The `MediaType` will be guessed from the file extension.
103
+ ///
104
+ /// If no `MediaType` can be guessed at the moment, the Rerun Viewer will try to guess one
105
+ /// from the data at render-time. If it can't, rendering will fail with an error.
106
+ /// \deprecated Use `from_file_path` instead.
107
+ [[deprecated("Use `from_file_path` instead")]] static Result<Asset3D> from_file(
108
+ const std::filesystem::path& path
109
+ );
110
+
111
+ /// Creates a new `Asset3D` from the file contents at `path`.
112
+ ///
113
+ /// The `MediaType` will be guessed from the file extension.
114
+ ///
115
+ /// If no `MediaType` can be guessed at the moment, the Rerun Viewer will try to guess one
116
+ /// from the data at render-time. If it can't, rendering will fail with an error.
117
+ static Result<Asset3D> from_file_path(const std::filesystem::path& path);
118
+
119
+ /// Creates a new `Asset3D` from the given `bytes`.
120
+ ///
121
+ /// If no `MediaType` is specified, the Rerun Viewer will try to guess one from the data
122
+ /// at render-time. If it can't, rendering will fail with an error.
123
+ /// \deprecated Use `from_file_contents` instead.
124
+ [[deprecated("Use `from_file_contents` instead")]] static Asset3D from_bytes(
125
+ rerun::Collection<uint8_t> bytes,
126
+ std::optional<rerun::components::MediaType> media_type = {}
127
+ ) {
128
+ return from_file_contents(bytes, media_type);
129
+ }
130
+
131
+ /// Creates a new `Asset3D` from the given `bytes`.
132
+ ///
133
+ /// If no `MediaType` is specified, the Rerun Viewer will try to guess one from the data
134
+ /// at render-time. If it can't, rendering will fail with an error.
135
+ static Asset3D from_file_contents(
136
+ rerun::Collection<uint8_t> bytes,
137
+ std::optional<rerun::components::MediaType> media_type = {}
138
+ ) {
139
+ Asset3D asset = Asset3D(std::move(bytes));
140
+ // TODO(cmc): we could try and guess using magic bytes here, like rust does.
141
+ if (media_type.has_value()) {
142
+ return std::move(asset).with_media_type(media_type.value());
143
+ }
144
+ return asset;
145
+ }
146
+
147
+ // END of extensions from asset3d_ext.cpp, start of generated code:
148
+
149
+ public:
150
+ Asset3D() = default;
151
+ Asset3D(Asset3D&& other) = default;
152
+ Asset3D(const Asset3D& other) = default;
153
+ Asset3D& operator=(const Asset3D& other) = default;
154
+ Asset3D& operator=(Asset3D&& other) = default;
155
+
156
+ explicit Asset3D(rerun::components::Blob _blob)
157
+ : blob(ComponentBatch::from_loggable(std::move(_blob), Descriptor_blob).value_or_throw()
158
+ ) {}
159
+
160
+ /// Update only some specific fields of a `Asset3D`.
161
+ static Asset3D update_fields() {
162
+ return Asset3D();
163
+ }
164
+
165
+ /// Clear all the fields of a `Asset3D`.
166
+ static Asset3D clear_fields();
167
+
168
+ /// The asset's bytes.
169
+ Asset3D with_blob(const rerun::components::Blob& _blob) && {
170
+ blob = ComponentBatch::from_loggable(_blob, Descriptor_blob).value_or_throw();
171
+ return std::move(*this);
172
+ }
173
+
174
+ /// This method makes it possible to pack multiple `blob` in a single component batch.
175
+ ///
176
+ /// This only makes sense when used in conjunction with `columns`. `with_blob` should
177
+ /// be used when logging a single row's worth of data.
178
+ Asset3D with_many_blob(const Collection<rerun::components::Blob>& _blob) && {
179
+ blob = ComponentBatch::from_loggable(_blob, Descriptor_blob).value_or_throw();
180
+ return std::move(*this);
181
+ }
182
+
183
+ /// The Media Type of the asset.
184
+ ///
185
+ /// Supported values:
186
+ /// * `model/gltf-binary`
187
+ /// * `model/gltf+json`
188
+ /// * `model/obj` (.mtl material files are not supported yet, references are silently ignored)
189
+ /// * `model/stl`
190
+ ///
191
+ /// If omitted, the viewer will try to guess from the data blob.
192
+ /// If it cannot guess, it won't be able to render the asset.
193
+ Asset3D with_media_type(const rerun::components::MediaType& _media_type) && {
194
+ media_type =
195
+ ComponentBatch::from_loggable(_media_type, Descriptor_media_type).value_or_throw();
196
+ return std::move(*this);
197
+ }
198
+
199
+ /// This method makes it possible to pack multiple `media_type` in a single component batch.
200
+ ///
201
+ /// This only makes sense when used in conjunction with `columns`. `with_media_type` should
202
+ /// be used when logging a single row's worth of data.
203
+ Asset3D with_many_media_type(const Collection<rerun::components::MediaType>& _media_type
204
+ ) && {
205
+ media_type =
206
+ ComponentBatch::from_loggable(_media_type, Descriptor_media_type).value_or_throw();
207
+ return std::move(*this);
208
+ }
209
+
210
+ /// A color multiplier applied to the whole asset.
211
+ ///
212
+ /// For mesh who already have `albedo_factor` in materials,
213
+ /// it will be overwritten by actual `albedo_factor` of `archetypes::Asset3D` (if specified).
214
+ Asset3D with_albedo_factor(const rerun::components::AlbedoFactor& _albedo_factor) && {
215
+ albedo_factor = ComponentBatch::from_loggable(_albedo_factor, Descriptor_albedo_factor)
216
+ .value_or_throw();
217
+ return std::move(*this);
218
+ }
219
+
220
+ /// This method makes it possible to pack multiple `albedo_factor` in a single component batch.
221
+ ///
222
+ /// This only makes sense when used in conjunction with `columns`. `with_albedo_factor` should
223
+ /// be used when logging a single row's worth of data.
224
+ Asset3D with_many_albedo_factor(
225
+ const Collection<rerun::components::AlbedoFactor>& _albedo_factor
226
+ ) && {
227
+ albedo_factor = ComponentBatch::from_loggable(_albedo_factor, Descriptor_albedo_factor)
228
+ .value_or_throw();
229
+ return std::move(*this);
230
+ }
231
+
232
+ /// Partitions the component data into multiple sub-batches.
233
+ ///
234
+ /// Specifically, this transforms the existing `ComponentBatch` data into `ComponentColumn`s
235
+ /// instead, via `ComponentBatch::partitioned`.
236
+ ///
237
+ /// This makes it possible to use `RecordingStream::send_columns` to send columnar data directly into Rerun.
238
+ ///
239
+ /// The specified `lengths` must sum to the total length of the component batch.
240
+ Collection<ComponentColumn> columns(const Collection<uint32_t>& lengths_);
241
+
242
+ /// Partitions the component data into unit-length sub-batches.
243
+ ///
244
+ /// This is semantically similar to calling `columns` with `std::vector<uint32_t>(n, 1)`,
245
+ /// where `n` is automatically guessed.
246
+ Collection<ComponentColumn> columns();
247
+ };
248
+
249
+ } // namespace rerun::archetypes
250
+
251
+ namespace rerun {
252
+ /// \private
253
+ template <typename T>
254
+ struct AsComponents;
255
+
256
+ /// \private
257
+ template <>
258
+ struct AsComponents<archetypes::Asset3D> {
259
+ /// Serialize all set component batches.
260
+ static Result<Collection<ComponentBatch>> as_batches(const archetypes::Asset3D& archetype);
261
+ };
262
+ } // namespace rerun