pymomentum-cpu 0.1.78.post11__cp312-cp312-win_amd64.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/arrow_bundled_dependencies.lib +0 -0
  454. lib/arrow_static.lib +0 -0
  455. lib/axel.lib +0 -0
  456. lib/cmake/axel/axel-config.cmake +45 -0
  457. lib/cmake/axel/axelTargets-release.cmake +19 -0
  458. lib/cmake/axel/axelTargets.cmake +108 -0
  459. lib/cmake/momentum/Findre2.cmake +52 -0
  460. lib/cmake/momentum/momentum-config.cmake +67 -0
  461. lib/cmake/momentum/momentumTargets-release.cmake +259 -0
  462. lib/cmake/momentum/momentumTargets.cmake +377 -0
  463. lib/cmake/rerun_sdk/rerun_sdkConfig.cmake +70 -0
  464. lib/cmake/rerun_sdk/rerun_sdkConfigVersion.cmake +83 -0
  465. lib/cmake/rerun_sdk/rerun_sdkTargets-release.cmake +19 -0
  466. lib/cmake/rerun_sdk/rerun_sdkTargets.cmake +108 -0
  467. lib/momentum_app_utils.lib +0 -0
  468. lib/momentum_character.lib +0 -0
  469. lib/momentum_character_sequence_solver.lib +0 -0
  470. lib/momentum_character_solver.lib +0 -0
  471. lib/momentum_common.lib +0 -0
  472. lib/momentum_diff_ik.lib +0 -0
  473. lib/momentum_io.lib +0 -0
  474. lib/momentum_io_common.lib +0 -0
  475. lib/momentum_io_fbx.lib +0 -0
  476. lib/momentum_io_gltf.lib +0 -0
  477. lib/momentum_io_legacy_json.lib +0 -0
  478. lib/momentum_io_marker.lib +0 -0
  479. lib/momentum_io_motion.lib +0 -0
  480. lib/momentum_io_shape.lib +0 -0
  481. lib/momentum_io_skeleton.lib +0 -0
  482. lib/momentum_io_urdf.lib +0 -0
  483. lib/momentum_marker_tracker.lib +0 -0
  484. lib/momentum_math.lib +0 -0
  485. lib/momentum_online_qr.lib +0 -0
  486. lib/momentum_process_markers.lib +0 -0
  487. lib/momentum_rerun.lib +0 -0
  488. lib/momentum_simd_constraints.lib +0 -0
  489. lib/momentum_simd_generalized_loss.lib +0 -0
  490. lib/momentum_skeleton.lib +0 -0
  491. lib/momentum_solver.lib +0 -0
  492. lib/rerun_c__win_x64.lib +0 -0
  493. lib/rerun_sdk.lib +0 -0
  494. pymomentum/axel.cp312-win_amd64.pyd +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.cp312-win_amd64.pyd +0 -0
  500. pymomentum/marker_tracking.cp312-win_amd64.pyd +0 -0
  501. pymomentum/quaternion.py +740 -0
  502. pymomentum/skel_state.py +514 -0
  503. pymomentum/solver.cp312-win_amd64.pyd +0 -0
  504. pymomentum/solver2.cp312-win_amd64.pyd +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.78.post11.dist-info/METADATA +121 -0
  510. pymomentum_cpu-0.1.78.post11.dist-info/RECORD +512 -0
  511. pymomentum_cpu-0.1.78.post11.dist-info/WHEEL +5 -0
  512. pymomentum_cpu-0.1.78.post11.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,425 @@
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/depth_image.fbs".
3
+
4
+ #pragma once
5
+
6
+ #include "../collection.hpp"
7
+ #include "../component_batch.hpp"
8
+ #include "../component_column.hpp"
9
+ #include "../components/colormap.hpp"
10
+ #include "../components/depth_meter.hpp"
11
+ #include "../components/draw_order.hpp"
12
+ #include "../components/fill_ratio.hpp"
13
+ #include "../components/image_buffer.hpp"
14
+ #include "../components/image_format.hpp"
15
+ #include "../components/value_range.hpp"
16
+ #include "../image_utils.hpp"
17
+ #include "../indicator_component.hpp"
18
+ #include "../result.hpp"
19
+
20
+ #include <cstdint>
21
+ #include <optional>
22
+ #include <utility>
23
+ #include <vector>
24
+
25
+ namespace rerun::archetypes {
26
+ /// **Archetype**: A depth image, i.e. as captured by a depth camera.
27
+ ///
28
+ /// Each pixel corresponds to a depth value in units specified by `components::DepthMeter`.
29
+ ///
30
+ /// Since the underlying `rerun::datatypes::ImageBuffer` uses `rerun::Collection` internally,
31
+ /// data can be passed in without a copy from raw pointers or by reference from `std::vector`/`std::array`/c-arrays.
32
+ /// If needed, this "borrow-behavior" can be extended by defining your own `rerun::CollectionAdapter`.
33
+ ///
34
+ /// ## Example
35
+ ///
36
+ /// ### Depth to 3D example
37
+ /// ![image](https://static.rerun.io/depth_image_3d/924e9d4d6a39d63d4fdece82582855fdaa62d15e/full.png)
38
+ ///
39
+ /// ```cpp
40
+ /// #include <rerun.hpp>
41
+ ///
42
+ /// #include <algorithm> // fill_n
43
+ /// #include <vector>
44
+ ///
45
+ /// int main() {
46
+ /// const auto rec = rerun::RecordingStream("rerun_example_depth_image_3d");
47
+ /// rec.spawn().exit_on_failure();
48
+ ///
49
+ /// // Create a synthetic depth image.
50
+ /// const int HEIGHT = 200;
51
+ /// const int WIDTH = 300;
52
+ /// std::vector<uint16_t> data(WIDTH * HEIGHT, 65535);
53
+ /// for (auto y = 50; y <150; ++y) {
54
+ /// std::fill_n(data.begin() + y * WIDTH + 50, 100, static_cast<uint16_t>(20000));
55
+ /// }
56
+ /// for (auto y = 130; y <180; ++y) {
57
+ /// std::fill_n(data.begin() + y * WIDTH + 100, 180, static_cast<uint16_t>(45000));
58
+ /// }
59
+ ///
60
+ /// // If we log a pinhole camera model, the depth gets automatically back-projected to 3D
61
+ /// rec.log(
62
+ /// "world/camera",
63
+ /// rerun::Pinhole::from_focal_length_and_resolution(
64
+ /// 200.0f,
65
+ /// {static_cast<float>(WIDTH), static_cast<float>(HEIGHT)}
66
+ /// )
67
+ /// );
68
+ ///
69
+ /// rec.log(
70
+ /// "world/camera/depth",
71
+ /// rerun::DepthImage(data.data(), {WIDTH, HEIGHT})
72
+ /// .with_meter(10000.0)
73
+ /// .with_colormap(rerun::components::Colormap::Viridis)
74
+ /// );
75
+ /// }
76
+ /// ```
77
+ struct DepthImage {
78
+ /// The raw depth image data.
79
+ std::optional<ComponentBatch> buffer;
80
+
81
+ /// The format of the image.
82
+ std::optional<ComponentBatch> format;
83
+
84
+ /// An optional floating point value that specifies how long a meter is in the native depth units.
85
+ ///
86
+ /// For instance: with uint16, perhaps meter=1000 which would mean you have millimeter precision
87
+ /// and a range of up to ~65 meters (2^16 / 1000).
88
+ ///
89
+ /// Note that the only effect on 2D views is the physical depth values shown when hovering the image.
90
+ /// In 3D views on the other hand, this affects where the points of the point cloud are placed.
91
+ std::optional<ComponentBatch> meter;
92
+
93
+ /// Colormap to use for rendering the depth image.
94
+ ///
95
+ /// If not set, the depth image will be rendered using the Turbo colormap.
96
+ std::optional<ComponentBatch> colormap;
97
+
98
+ /// The expected range of depth values.
99
+ ///
100
+ /// This is typically the expected range of valid values.
101
+ /// Everything outside of the range is clamped to the range for the purpose of colormpaping.
102
+ /// Note that point clouds generated from this image will still display all points, regardless of this range.
103
+ ///
104
+ /// If not specified, the range will be automatically estimated from the data.
105
+ /// Note that the Viewer may try to guess a wider range than the minimum/maximum of values
106
+ /// in the contents of the depth image.
107
+ /// E.g. if all values are positive, some bigger than 1.0 and all smaller than 255.0,
108
+ /// the Viewer will guess that the data likely came from an 8bit image, thus assuming a range of 0-255.
109
+ std::optional<ComponentBatch> depth_range;
110
+
111
+ /// Scale the radii of the points in the point cloud generated from this image.
112
+ ///
113
+ /// A fill ratio of 1.0 (the default) means that each point is as big as to touch the center of its neighbor
114
+ /// if it is at the same depth, leaving no gaps.
115
+ /// A fill ratio of 0.5 means that each point touches the edge of its neighbor if it has the same depth.
116
+ ///
117
+ /// TODO(#6744): This applies only to 3D views!
118
+ std::optional<ComponentBatch> point_fill_ratio;
119
+
120
+ /// An optional floating point value that specifies the 2D drawing order, used only if the depth image is shown as a 2D image.
121
+ ///
122
+ /// Objects with higher values are drawn on top of those with lower values.
123
+ /// Defaults to `-20.0`.
124
+ std::optional<ComponentBatch> draw_order;
125
+
126
+ public:
127
+ static constexpr const char IndicatorComponentName[] =
128
+ "rerun.components.DepthImageIndicator";
129
+
130
+ /// Indicator component, used to identify the archetype when converting to a list of components.
131
+ using IndicatorComponent = rerun::components::IndicatorComponent<IndicatorComponentName>;
132
+ /// The name of the archetype as used in `ComponentDescriptor`s.
133
+ static constexpr const char ArchetypeName[] = "rerun.archetypes.DepthImage";
134
+
135
+ /// `ComponentDescriptor` for the `buffer` field.
136
+ static constexpr auto Descriptor_buffer = ComponentDescriptor(
137
+ ArchetypeName, "buffer",
138
+ Loggable<rerun::components::ImageBuffer>::Descriptor.component_name
139
+ );
140
+ /// `ComponentDescriptor` for the `format` field.
141
+ static constexpr auto Descriptor_format = ComponentDescriptor(
142
+ ArchetypeName, "format",
143
+ Loggable<rerun::components::ImageFormat>::Descriptor.component_name
144
+ );
145
+ /// `ComponentDescriptor` for the `meter` field.
146
+ static constexpr auto Descriptor_meter = ComponentDescriptor(
147
+ ArchetypeName, "meter",
148
+ Loggable<rerun::components::DepthMeter>::Descriptor.component_name
149
+ );
150
+ /// `ComponentDescriptor` for the `colormap` field.
151
+ static constexpr auto Descriptor_colormap = ComponentDescriptor(
152
+ ArchetypeName, "colormap",
153
+ Loggable<rerun::components::Colormap>::Descriptor.component_name
154
+ );
155
+ /// `ComponentDescriptor` for the `depth_range` field.
156
+ static constexpr auto Descriptor_depth_range = ComponentDescriptor(
157
+ ArchetypeName, "depth_range",
158
+ Loggable<rerun::components::ValueRange>::Descriptor.component_name
159
+ );
160
+ /// `ComponentDescriptor` for the `point_fill_ratio` field.
161
+ static constexpr auto Descriptor_point_fill_ratio = ComponentDescriptor(
162
+ ArchetypeName, "point_fill_ratio",
163
+ Loggable<rerun::components::FillRatio>::Descriptor.component_name
164
+ );
165
+ /// `ComponentDescriptor` for the `draw_order` field.
166
+ static constexpr auto Descriptor_draw_order = ComponentDescriptor(
167
+ ArchetypeName, "draw_order",
168
+ Loggable<rerun::components::DrawOrder>::Descriptor.component_name
169
+ );
170
+
171
+ public: // START of extensions from depth_image_ext.cpp:
172
+ /// Constructs image from pointer + resolution, inferring the datatype from the pointer type.
173
+ ///
174
+ /// @param pixels The raw image data.
175
+ /// ⚠️ Does not take ownership of the data, the caller must ensure the data outlives the image.
176
+ /// The number of elements is assumed to be `W * H`.
177
+ /// @param resolution The resolution of the image as {width, height}.
178
+ template <typename TElement>
179
+ DepthImage(const TElement* pixels, WidthHeight resolution)
180
+ : DepthImage{
181
+ reinterpret_cast<const uint8_t*>(pixels), resolution, get_datatype(pixels)} {}
182
+
183
+ /// Constructs image from pixel data + resolution with datatype inferred from the passed collection.
184
+ ///
185
+ /// @param pixels The raw image data.
186
+ /// If the data does not outlive the image, use `std::move` or create the `rerun::Collection`
187
+ /// explicitly ahead of time with `rerun::Collection::take_ownership`.
188
+ /// The length of the data should be `W * H`.
189
+ /// @param resolution The resolution of the image as {width, height}.
190
+ template <typename TElement>
191
+ DepthImage(Collection<TElement> pixels, WidthHeight resolution)
192
+ : DepthImage{pixels.to_uint8(), resolution, get_datatype(pixels.data())} {}
193
+
194
+ /// Constructs image from pixel data + resolution with explicit datatype. Borrows data from a pointer (i.e. data must outlive the image!).
195
+ ///
196
+ /// @param bytes The raw image data.
197
+ /// ⚠️ Does not take ownership of the data, the caller must ensure the data outlives the image.
198
+ /// The byte size of the data is assumed to be `W * H * datatype.size`
199
+ /// @param resolution The resolution of the image as {width, height}.
200
+ /// @param datatype How the data should be interpreted.
201
+ DepthImage(const void* bytes, WidthHeight resolution, datatypes::ChannelDatatype datatype)
202
+ : DepthImage{
203
+ Collection<uint8_t>::borrow(bytes, num_bytes(resolution, datatype)),
204
+ resolution,
205
+ datatype} {}
206
+
207
+ /// Constructs image from pixel data + resolution + datatype.
208
+ ///
209
+ /// @param bytes The raw image data as bytes.
210
+ /// If the data does not outlive the image, use `std::move` or create the `rerun::Collection`
211
+ /// explicitly ahead of time with `rerun::Collection::take_ownership`.
212
+ /// The length of the data should be `W * H`.
213
+ /// @param resolution The resolution of the image as {width, height}.
214
+ /// @param datatype How the data should be interpreted.
215
+ DepthImage(
216
+ Collection<uint8_t> bytes, WidthHeight resolution, datatypes::ChannelDatatype datatype
217
+ ) {
218
+ auto image_format = datatypes::ImageFormat{resolution, datatype};
219
+ if (bytes.size() != image_format.num_bytes()) {
220
+ Error(
221
+ ErrorCode::InvalidTensorDimension,
222
+ "DepthImage buffer has the wrong size. Got " + std::to_string(bytes.size()) +
223
+ " bytes, expected " + std::to_string(image_format.num_bytes())
224
+ )
225
+ .handle();
226
+ }
227
+ *this = std::move(*this).with_buffer(bytes).with_format(image_format);
228
+ }
229
+
230
+ // END of extensions from depth_image_ext.cpp, start of generated code:
231
+
232
+ public:
233
+ DepthImage() = default;
234
+ DepthImage(DepthImage&& other) = default;
235
+ DepthImage(const DepthImage& other) = default;
236
+ DepthImage& operator=(const DepthImage& other) = default;
237
+ DepthImage& operator=(DepthImage&& other) = default;
238
+
239
+ /// Update only some specific fields of a `DepthImage`.
240
+ static DepthImage update_fields() {
241
+ return DepthImage();
242
+ }
243
+
244
+ /// Clear all the fields of a `DepthImage`.
245
+ static DepthImage clear_fields();
246
+
247
+ /// The raw depth image data.
248
+ DepthImage with_buffer(const rerun::components::ImageBuffer& _buffer) && {
249
+ buffer = ComponentBatch::from_loggable(_buffer, Descriptor_buffer).value_or_throw();
250
+ return std::move(*this);
251
+ }
252
+
253
+ /// This method makes it possible to pack multiple `buffer` in a single component batch.
254
+ ///
255
+ /// This only makes sense when used in conjunction with `columns`. `with_buffer` should
256
+ /// be used when logging a single row's worth of data.
257
+ DepthImage with_many_buffer(const Collection<rerun::components::ImageBuffer>& _buffer) && {
258
+ buffer = ComponentBatch::from_loggable(_buffer, Descriptor_buffer).value_or_throw();
259
+ return std::move(*this);
260
+ }
261
+
262
+ /// The format of the image.
263
+ DepthImage with_format(const rerun::components::ImageFormat& _format) && {
264
+ format = ComponentBatch::from_loggable(_format, Descriptor_format).value_or_throw();
265
+ return std::move(*this);
266
+ }
267
+
268
+ /// This method makes it possible to pack multiple `format` in a single component batch.
269
+ ///
270
+ /// This only makes sense when used in conjunction with `columns`. `with_format` should
271
+ /// be used when logging a single row's worth of data.
272
+ DepthImage with_many_format(const Collection<rerun::components::ImageFormat>& _format) && {
273
+ format = ComponentBatch::from_loggable(_format, Descriptor_format).value_or_throw();
274
+ return std::move(*this);
275
+ }
276
+
277
+ /// An optional floating point value that specifies how long a meter is in the native depth units.
278
+ ///
279
+ /// For instance: with uint16, perhaps meter=1000 which would mean you have millimeter precision
280
+ /// and a range of up to ~65 meters (2^16 / 1000).
281
+ ///
282
+ /// Note that the only effect on 2D views is the physical depth values shown when hovering the image.
283
+ /// In 3D views on the other hand, this affects where the points of the point cloud are placed.
284
+ DepthImage with_meter(const rerun::components::DepthMeter& _meter) && {
285
+ meter = ComponentBatch::from_loggable(_meter, Descriptor_meter).value_or_throw();
286
+ return std::move(*this);
287
+ }
288
+
289
+ /// This method makes it possible to pack multiple `meter` in a single component batch.
290
+ ///
291
+ /// This only makes sense when used in conjunction with `columns`. `with_meter` should
292
+ /// be used when logging a single row's worth of data.
293
+ DepthImage with_many_meter(const Collection<rerun::components::DepthMeter>& _meter) && {
294
+ meter = ComponentBatch::from_loggable(_meter, Descriptor_meter).value_or_throw();
295
+ return std::move(*this);
296
+ }
297
+
298
+ /// Colormap to use for rendering the depth image.
299
+ ///
300
+ /// If not set, the depth image will be rendered using the Turbo colormap.
301
+ DepthImage with_colormap(const rerun::components::Colormap& _colormap) && {
302
+ colormap =
303
+ ComponentBatch::from_loggable(_colormap, Descriptor_colormap).value_or_throw();
304
+ return std::move(*this);
305
+ }
306
+
307
+ /// This method makes it possible to pack multiple `colormap` in a single component batch.
308
+ ///
309
+ /// This only makes sense when used in conjunction with `columns`. `with_colormap` should
310
+ /// be used when logging a single row's worth of data.
311
+ DepthImage with_many_colormap(const Collection<rerun::components::Colormap>& _colormap) && {
312
+ colormap =
313
+ ComponentBatch::from_loggable(_colormap, Descriptor_colormap).value_or_throw();
314
+ return std::move(*this);
315
+ }
316
+
317
+ /// The expected range of depth values.
318
+ ///
319
+ /// This is typically the expected range of valid values.
320
+ /// Everything outside of the range is clamped to the range for the purpose of colormpaping.
321
+ /// Note that point clouds generated from this image will still display all points, regardless of this range.
322
+ ///
323
+ /// If not specified, the range will be automatically estimated from the data.
324
+ /// Note that the Viewer may try to guess a wider range than the minimum/maximum of values
325
+ /// in the contents of the depth image.
326
+ /// E.g. if all values are positive, some bigger than 1.0 and all smaller than 255.0,
327
+ /// the Viewer will guess that the data likely came from an 8bit image, thus assuming a range of 0-255.
328
+ DepthImage with_depth_range(const rerun::components::ValueRange& _depth_range) && {
329
+ depth_range = ComponentBatch::from_loggable(_depth_range, Descriptor_depth_range)
330
+ .value_or_throw();
331
+ return std::move(*this);
332
+ }
333
+
334
+ /// This method makes it possible to pack multiple `depth_range` in a single component batch.
335
+ ///
336
+ /// This only makes sense when used in conjunction with `columns`. `with_depth_range` should
337
+ /// be used when logging a single row's worth of data.
338
+ DepthImage with_many_depth_range(
339
+ const Collection<rerun::components::ValueRange>& _depth_range
340
+ ) && {
341
+ depth_range = ComponentBatch::from_loggable(_depth_range, Descriptor_depth_range)
342
+ .value_or_throw();
343
+ return std::move(*this);
344
+ }
345
+
346
+ /// Scale the radii of the points in the point cloud generated from this image.
347
+ ///
348
+ /// A fill ratio of 1.0 (the default) means that each point is as big as to touch the center of its neighbor
349
+ /// if it is at the same depth, leaving no gaps.
350
+ /// A fill ratio of 0.5 means that each point touches the edge of its neighbor if it has the same depth.
351
+ ///
352
+ /// TODO(#6744): This applies only to 3D views!
353
+ DepthImage with_point_fill_ratio(const rerun::components::FillRatio& _point_fill_ratio) && {
354
+ point_fill_ratio =
355
+ ComponentBatch::from_loggable(_point_fill_ratio, Descriptor_point_fill_ratio)
356
+ .value_or_throw();
357
+ return std::move(*this);
358
+ }
359
+
360
+ /// This method makes it possible to pack multiple `point_fill_ratio` in a single component batch.
361
+ ///
362
+ /// This only makes sense when used in conjunction with `columns`. `with_point_fill_ratio` should
363
+ /// be used when logging a single row's worth of data.
364
+ DepthImage with_many_point_fill_ratio(
365
+ const Collection<rerun::components::FillRatio>& _point_fill_ratio
366
+ ) && {
367
+ point_fill_ratio =
368
+ ComponentBatch::from_loggable(_point_fill_ratio, Descriptor_point_fill_ratio)
369
+ .value_or_throw();
370
+ return std::move(*this);
371
+ }
372
+
373
+ /// An optional floating point value that specifies the 2D drawing order, used only if the depth image is shown as a 2D image.
374
+ ///
375
+ /// Objects with higher values are drawn on top of those with lower values.
376
+ /// Defaults to `-20.0`.
377
+ DepthImage with_draw_order(const rerun::components::DrawOrder& _draw_order) && {
378
+ draw_order =
379
+ ComponentBatch::from_loggable(_draw_order, Descriptor_draw_order).value_or_throw();
380
+ return std::move(*this);
381
+ }
382
+
383
+ /// This method makes it possible to pack multiple `draw_order` in a single component batch.
384
+ ///
385
+ /// This only makes sense when used in conjunction with `columns`. `with_draw_order` should
386
+ /// be used when logging a single row's worth of data.
387
+ DepthImage with_many_draw_order(const Collection<rerun::components::DrawOrder>& _draw_order
388
+ ) && {
389
+ draw_order =
390
+ ComponentBatch::from_loggable(_draw_order, Descriptor_draw_order).value_or_throw();
391
+ return std::move(*this);
392
+ }
393
+
394
+ /// Partitions the component data into multiple sub-batches.
395
+ ///
396
+ /// Specifically, this transforms the existing `ComponentBatch` data into `ComponentColumn`s
397
+ /// instead, via `ComponentBatch::partitioned`.
398
+ ///
399
+ /// This makes it possible to use `RecordingStream::send_columns` to send columnar data directly into Rerun.
400
+ ///
401
+ /// The specified `lengths` must sum to the total length of the component batch.
402
+ Collection<ComponentColumn> columns(const Collection<uint32_t>& lengths_);
403
+
404
+ /// Partitions the component data into unit-length sub-batches.
405
+ ///
406
+ /// This is semantically similar to calling `columns` with `std::vector<uint32_t>(n, 1)`,
407
+ /// where `n` is automatically guessed.
408
+ Collection<ComponentColumn> columns();
409
+ };
410
+
411
+ } // namespace rerun::archetypes
412
+
413
+ namespace rerun {
414
+ /// \private
415
+ template <typename T>
416
+ struct AsComponents;
417
+
418
+ /// \private
419
+ template <>
420
+ struct AsComponents<archetypes::DepthImage> {
421
+ /// Serialize all set component batches.
422
+ static Result<Collection<ComponentBatch>> as_batches(const archetypes::DepthImage& archetype
423
+ );
424
+ };
425
+ } // namespace rerun