pymomentum-cpu 0.1.78.post11__cp313-cp313-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.cp313-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.cp313-win_amd64.pyd +0 -0
  500. pymomentum/marker_tracking.cp313-win_amd64.pyd +0 -0
  501. pymomentum/quaternion.py +740 -0
  502. pymomentum/skel_state.py +514 -0
  503. pymomentum/solver.cp313-win_amd64.pyd +0 -0
  504. pymomentum/solver2.cp313-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,221 @@
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/instance_poses3d.fbs".
3
+
4
+ #pragma once
5
+
6
+ #include "../collection.hpp"
7
+ #include "../component_batch.hpp"
8
+ #include "../component_column.hpp"
9
+ #include "../components/pose_rotation_axis_angle.hpp"
10
+ #include "../components/pose_rotation_quat.hpp"
11
+ #include "../components/pose_scale3d.hpp"
12
+ #include "../components/pose_transform_mat3x3.hpp"
13
+ #include "../components/pose_translation3d.hpp"
14
+ #include "../indicator_component.hpp"
15
+ #include "../result.hpp"
16
+
17
+ #include <cstdint>
18
+ #include <optional>
19
+ #include <utility>
20
+ #include <vector>
21
+
22
+ namespace rerun::archetypes {
23
+ /// **Archetype**: One or more transforms between the current entity and its parent. Unlike `archetypes::Transform3D`, it is *not* propagated in the transform hierarchy.
24
+ ///
25
+ /// If both `archetypes::InstancePoses3D` and `archetypes::Transform3D` are present,
26
+ /// first the tree propagating `archetypes::Transform3D` is applied, then `archetypes::InstancePoses3D`.
27
+ ///
28
+ /// From the point of view of the entity's coordinate system,
29
+ /// all components are applied in the inverse order they are listed here.
30
+ /// E.g. if both a translation and a max3x3 transform are present,
31
+ /// the 3x3 matrix is applied first, followed by the translation.
32
+ ///
33
+ /// Currently, many visualizers support only a single instance transform per entity.
34
+ /// Check archetype documentations for details - if not otherwise specified, only the first instance transform is applied.
35
+ /// Some visualizers like the mesh visualizer used for `archetypes::Mesh3D`,
36
+ /// will draw an object for every pose, a behavior also known as "instancing".
37
+ ///
38
+ /// ## Example
39
+ ///
40
+ /// ### Regular & instance transforms in tandem
41
+ /// ![image](https://static.rerun.io/leaf_transform3d/41674f0082d6de489f8a1cd1583f60f6b5820ddf/full.png)
42
+ ///
43
+ /// ```cpp
44
+ /// #include <rerun.hpp>
45
+ /// #include <rerun/demo_utils.hpp>
46
+ ///
47
+ /// int main() {
48
+ /// const auto rec = rerun::RecordingStream("rerun_example_instance_pose3d_combined");
49
+ /// rec.set_time_sequence("frame", 0);
50
+ ///
51
+ /// // Log a box and points further down in the hierarchy.
52
+ /// rec.log("world/box", rerun::Boxes3D::from_half_sizes({{1.0, 1.0, 1.0}}));
53
+ /// rec.log(
54
+ /// "world/box/points",
55
+ /// rerun::Points3D(rerun::demo::grid3d<rerun::Position3D, float>(-10.0f, 10.0f, 10))
56
+ /// );
57
+ ///
58
+ /// for (int i = 0; i <180; ++i) {
59
+ /// rec.set_time_sequence("frame", i);
60
+ ///
61
+ /// // Log a regular transform which affects both the box and the points.
62
+ /// rec.log(
63
+ /// "world/box",
64
+ /// rerun::Transform3D::from_rotation(rerun::RotationAxisAngle{
65
+ /// {0.0f, 0.0f, 1.0f},
66
+ /// rerun::Angle::degrees(static_cast<float>(i) * 2.0f)})
67
+ /// );
68
+ ///
69
+ /// // Log an instance pose which affects only the box.
70
+ /// rec.log(
71
+ /// "world/box",
72
+ /// rerun::InstancePoses3D().with_translations(
73
+ /// {{0.0f, 0.0f, std::abs(static_cast<float>(i) * 0.1f - 5.0f) - 5.0f}}
74
+ /// )
75
+ /// );
76
+ /// }
77
+ /// }
78
+ /// ```
79
+ struct InstancePoses3D {
80
+ /// Translation vectors.
81
+ std::optional<ComponentBatch> translations;
82
+
83
+ /// Rotations via axis + angle.
84
+ std::optional<ComponentBatch> rotation_axis_angles;
85
+
86
+ /// Rotations via quaternion.
87
+ std::optional<ComponentBatch> quaternions;
88
+
89
+ /// Scaling factors.
90
+ std::optional<ComponentBatch> scales;
91
+
92
+ /// 3x3 transformation matrices.
93
+ std::optional<ComponentBatch> mat3x3;
94
+
95
+ public:
96
+ static constexpr const char IndicatorComponentName[] =
97
+ "rerun.components.InstancePoses3DIndicator";
98
+
99
+ /// Indicator component, used to identify the archetype when converting to a list of components.
100
+ using IndicatorComponent = rerun::components::IndicatorComponent<IndicatorComponentName>;
101
+ /// The name of the archetype as used in `ComponentDescriptor`s.
102
+ static constexpr const char ArchetypeName[] = "rerun.archetypes.InstancePoses3D";
103
+
104
+ /// `ComponentDescriptor` for the `translations` field.
105
+ static constexpr auto Descriptor_translations = ComponentDescriptor(
106
+ ArchetypeName, "translations",
107
+ Loggable<rerun::components::PoseTranslation3D>::Descriptor.component_name
108
+ );
109
+ /// `ComponentDescriptor` for the `rotation_axis_angles` field.
110
+ static constexpr auto Descriptor_rotation_axis_angles = ComponentDescriptor(
111
+ ArchetypeName, "rotation_axis_angles",
112
+ Loggable<rerun::components::PoseRotationAxisAngle>::Descriptor.component_name
113
+ );
114
+ /// `ComponentDescriptor` for the `quaternions` field.
115
+ static constexpr auto Descriptor_quaternions = ComponentDescriptor(
116
+ ArchetypeName, "quaternions",
117
+ Loggable<rerun::components::PoseRotationQuat>::Descriptor.component_name
118
+ );
119
+ /// `ComponentDescriptor` for the `scales` field.
120
+ static constexpr auto Descriptor_scales = ComponentDescriptor(
121
+ ArchetypeName, "scales",
122
+ Loggable<rerun::components::PoseScale3D>::Descriptor.component_name
123
+ );
124
+ /// `ComponentDescriptor` for the `mat3x3` field.
125
+ static constexpr auto Descriptor_mat3x3 = ComponentDescriptor(
126
+ ArchetypeName, "mat3x3",
127
+ Loggable<rerun::components::PoseTransformMat3x3>::Descriptor.component_name
128
+ );
129
+
130
+ public:
131
+ InstancePoses3D() = default;
132
+ InstancePoses3D(InstancePoses3D&& other) = default;
133
+ InstancePoses3D(const InstancePoses3D& other) = default;
134
+ InstancePoses3D& operator=(const InstancePoses3D& other) = default;
135
+ InstancePoses3D& operator=(InstancePoses3D&& other) = default;
136
+
137
+ /// Update only some specific fields of a `InstancePoses3D`.
138
+ static InstancePoses3D update_fields() {
139
+ return InstancePoses3D();
140
+ }
141
+
142
+ /// Clear all the fields of a `InstancePoses3D`.
143
+ static InstancePoses3D clear_fields();
144
+
145
+ /// Translation vectors.
146
+ InstancePoses3D with_translations(
147
+ const Collection<rerun::components::PoseTranslation3D>& _translations
148
+ ) && {
149
+ translations = ComponentBatch::from_loggable(_translations, Descriptor_translations)
150
+ .value_or_throw();
151
+ return std::move(*this);
152
+ }
153
+
154
+ /// Rotations via axis + angle.
155
+ InstancePoses3D with_rotation_axis_angles(
156
+ const Collection<rerun::components::PoseRotationAxisAngle>& _rotation_axis_angles
157
+ ) && {
158
+ rotation_axis_angles = ComponentBatch::from_loggable(
159
+ _rotation_axis_angles,
160
+ Descriptor_rotation_axis_angles
161
+ )
162
+ .value_or_throw();
163
+ return std::move(*this);
164
+ }
165
+
166
+ /// Rotations via quaternion.
167
+ InstancePoses3D with_quaternions(
168
+ const Collection<rerun::components::PoseRotationQuat>& _quaternions
169
+ ) && {
170
+ quaternions = ComponentBatch::from_loggable(_quaternions, Descriptor_quaternions)
171
+ .value_or_throw();
172
+ return std::move(*this);
173
+ }
174
+
175
+ /// Scaling factors.
176
+ InstancePoses3D with_scales(const Collection<rerun::components::PoseScale3D>& _scales) && {
177
+ scales = ComponentBatch::from_loggable(_scales, Descriptor_scales).value_or_throw();
178
+ return std::move(*this);
179
+ }
180
+
181
+ /// 3x3 transformation matrices.
182
+ InstancePoses3D with_mat3x3(
183
+ const Collection<rerun::components::PoseTransformMat3x3>& _mat3x3
184
+ ) && {
185
+ mat3x3 = ComponentBatch::from_loggable(_mat3x3, Descriptor_mat3x3).value_or_throw();
186
+ return std::move(*this);
187
+ }
188
+
189
+ /// Partitions the component data into multiple sub-batches.
190
+ ///
191
+ /// Specifically, this transforms the existing `ComponentBatch` data into `ComponentColumn`s
192
+ /// instead, via `ComponentBatch::partitioned`.
193
+ ///
194
+ /// This makes it possible to use `RecordingStream::send_columns` to send columnar data directly into Rerun.
195
+ ///
196
+ /// The specified `lengths` must sum to the total length of the component batch.
197
+ Collection<ComponentColumn> columns(const Collection<uint32_t>& lengths_);
198
+
199
+ /// Partitions the component data into unit-length sub-batches.
200
+ ///
201
+ /// This is semantically similar to calling `columns` with `std::vector<uint32_t>(n, 1)`,
202
+ /// where `n` is automatically guessed.
203
+ Collection<ComponentColumn> columns();
204
+ };
205
+
206
+ } // namespace rerun::archetypes
207
+
208
+ namespace rerun {
209
+ /// \private
210
+ template <typename T>
211
+ struct AsComponents;
212
+
213
+ /// \private
214
+ template <>
215
+ struct AsComponents<archetypes::InstancePoses3D> {
216
+ /// Serialize all set component batches.
217
+ static Result<Collection<ComponentBatch>> as_batches(
218
+ const archetypes::InstancePoses3D& archetype
219
+ );
220
+ };
221
+ } // namespace rerun
@@ -0,0 +1,289 @@
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/line_strips2d.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/draw_order.hpp"
12
+ #include "../components/line_strip2d.hpp"
13
+ #include "../components/radius.hpp"
14
+ #include "../components/show_labels.hpp"
15
+ #include "../components/text.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**: 2D line strips with positions and optional colors, radii, labels, etc.
26
+ ///
27
+ /// ## Examples
28
+ ///
29
+ /// ### line_strips2d_batch:
30
+ /// ![image](https://static.rerun.io/line_strip2d_batch/c6f4062bcf510462d298a5dfe9fdbe87c754acee/full.png)
31
+ ///
32
+ /// ```cpp
33
+ /// #include <rerun.hpp>
34
+ ///
35
+ /// #include <vector>
36
+ ///
37
+ /// int main() {
38
+ /// const auto rec = rerun::RecordingStream("rerun_example_line_strip2d_batch");
39
+ /// rec.spawn().exit_on_failure();
40
+ ///
41
+ /// rerun::Collection<rerun::Vec2D> strip1 = {{0.f, 0.f}, {2.f, 1.f}, {4.f, -1.f}, {6.f, 0.f}};
42
+ /// rerun::Collection<rerun::Vec2D> strip2 =
43
+ /// {{0.f, 3.f}, {1.f, 4.f}, {2.f, 2.f}, {3.f, 4.f}, {4.f, 2.f}, {5.f, 4.f}, {6.f, 3.f}};
44
+ /// rec.log(
45
+ /// "strips",
46
+ /// rerun::LineStrips2D({strip1, strip2})
47
+ /// .with_colors({0xFF0000FF, 0x00FF00FF})
48
+ /// .with_radii({0.025f, 0.005f})
49
+ /// .with_labels({"one strip here", "and one strip there"})
50
+ /// );
51
+ ///
52
+ /// // TODO(#5520): log VisualBounds2D
53
+ /// }
54
+ /// ```
55
+ ///
56
+ /// ### Lines with scene & UI radius each
57
+ /// ```cpp
58
+ /// #include <rerun.hpp>
59
+ ///
60
+ /// int main() {
61
+ /// const auto rec = rerun::RecordingStream("rerun_example_line_strip2d_ui_radius");
62
+ /// rec.spawn().exit_on_failure();
63
+ ///
64
+ /// // A blue line with a scene unit radii of 0.01.
65
+ /// rerun::LineStrip2D linestrip_blue({{0.f, 0.f}, {0.f, 1.f}, {1.f, 0.f}, {1.f, 1.f}});
66
+ /// rec.log(
67
+ /// "scene_unit_line",
68
+ /// rerun::LineStrips2D(linestrip_blue)
69
+ /// // By default, radii are interpreted as world-space units.
70
+ /// .with_radii(0.01f)
71
+ /// .with_colors(rerun::Color(0, 0, 255))
72
+ /// );
73
+ ///
74
+ /// // A red line with a ui point radii of 5.
75
+ /// // UI points are independent of zooming in Views, but are sensitive to the application UI scaling.
76
+ /// // For 100 % ui scaling, UI points are equal to pixels.
77
+ /// rerun::LineStrip2D linestrip_red({{3.f, 0.f}, {3.f, 1.f}, {4.f, 0.f}, {4.f, 1.f}});
78
+ /// rec.log(
79
+ /// "ui_points_line",
80
+ /// rerun::LineStrips2D(linestrip_red)
81
+ /// // By default, radii are interpreted as world-space units.
82
+ /// .with_radii(rerun::Radius::ui_points(5.0f))
83
+ /// .with_colors(rerun::Color(255, 0, 0))
84
+ /// );
85
+ ///
86
+ /// // TODO(#5520): log VisualBounds2D
87
+ /// }
88
+ /// ```
89
+ struct LineStrips2D {
90
+ /// All the actual 2D line strips that make up the batch.
91
+ std::optional<ComponentBatch> strips;
92
+
93
+ /// Optional radii for the line strips.
94
+ std::optional<ComponentBatch> radii;
95
+
96
+ /// Optional colors for the line strips.
97
+ std::optional<ComponentBatch> colors;
98
+
99
+ /// Optional text labels for the line strips.
100
+ ///
101
+ /// If there's a single label present, it will be placed at the center of the entity.
102
+ /// Otherwise, each instance will have its own label.
103
+ std::optional<ComponentBatch> labels;
104
+
105
+ /// Optional choice of whether the text labels should be shown by default.
106
+ std::optional<ComponentBatch> show_labels;
107
+
108
+ /// An optional floating point value that specifies the 2D drawing order of each line strip.
109
+ ///
110
+ /// Objects with higher values are drawn on top of those with lower values.
111
+ /// Defaults to `20.0`.
112
+ std::optional<ComponentBatch> draw_order;
113
+
114
+ /// Optional `components::ClassId`s for the lines.
115
+ ///
116
+ /// The `components::ClassId` provides colors and labels if not specified explicitly.
117
+ std::optional<ComponentBatch> class_ids;
118
+
119
+ public:
120
+ static constexpr const char IndicatorComponentName[] =
121
+ "rerun.components.LineStrips2DIndicator";
122
+
123
+ /// Indicator component, used to identify the archetype when converting to a list of components.
124
+ using IndicatorComponent = rerun::components::IndicatorComponent<IndicatorComponentName>;
125
+ /// The name of the archetype as used in `ComponentDescriptor`s.
126
+ static constexpr const char ArchetypeName[] = "rerun.archetypes.LineStrips2D";
127
+
128
+ /// `ComponentDescriptor` for the `strips` field.
129
+ static constexpr auto Descriptor_strips = ComponentDescriptor(
130
+ ArchetypeName, "strips",
131
+ Loggable<rerun::components::LineStrip2D>::Descriptor.component_name
132
+ );
133
+ /// `ComponentDescriptor` for the `radii` field.
134
+ static constexpr auto Descriptor_radii = ComponentDescriptor(
135
+ ArchetypeName, "radii", Loggable<rerun::components::Radius>::Descriptor.component_name
136
+ );
137
+ /// `ComponentDescriptor` for the `colors` field.
138
+ static constexpr auto Descriptor_colors = ComponentDescriptor(
139
+ ArchetypeName, "colors", Loggable<rerun::components::Color>::Descriptor.component_name
140
+ );
141
+ /// `ComponentDescriptor` for the `labels` field.
142
+ static constexpr auto Descriptor_labels = ComponentDescriptor(
143
+ ArchetypeName, "labels", Loggable<rerun::components::Text>::Descriptor.component_name
144
+ );
145
+ /// `ComponentDescriptor` for the `show_labels` field.
146
+ static constexpr auto Descriptor_show_labels = ComponentDescriptor(
147
+ ArchetypeName, "show_labels",
148
+ Loggable<rerun::components::ShowLabels>::Descriptor.component_name
149
+ );
150
+ /// `ComponentDescriptor` for the `draw_order` field.
151
+ static constexpr auto Descriptor_draw_order = ComponentDescriptor(
152
+ ArchetypeName, "draw_order",
153
+ Loggable<rerun::components::DrawOrder>::Descriptor.component_name
154
+ );
155
+ /// `ComponentDescriptor` for the `class_ids` field.
156
+ static constexpr auto Descriptor_class_ids = ComponentDescriptor(
157
+ ArchetypeName, "class_ids",
158
+ Loggable<rerun::components::ClassId>::Descriptor.component_name
159
+ );
160
+
161
+ public:
162
+ LineStrips2D() = default;
163
+ LineStrips2D(LineStrips2D&& other) = default;
164
+ LineStrips2D(const LineStrips2D& other) = default;
165
+ LineStrips2D& operator=(const LineStrips2D& other) = default;
166
+ LineStrips2D& operator=(LineStrips2D&& other) = default;
167
+
168
+ explicit LineStrips2D(Collection<rerun::components::LineStrip2D> _strips)
169
+ : strips(ComponentBatch::from_loggable(std::move(_strips), Descriptor_strips)
170
+ .value_or_throw()) {}
171
+
172
+ /// Update only some specific fields of a `LineStrips2D`.
173
+ static LineStrips2D update_fields() {
174
+ return LineStrips2D();
175
+ }
176
+
177
+ /// Clear all the fields of a `LineStrips2D`.
178
+ static LineStrips2D clear_fields();
179
+
180
+ /// All the actual 2D line strips that make up the batch.
181
+ LineStrips2D with_strips(const Collection<rerun::components::LineStrip2D>& _strips) && {
182
+ strips = ComponentBatch::from_loggable(_strips, Descriptor_strips).value_or_throw();
183
+ return std::move(*this);
184
+ }
185
+
186
+ /// Optional radii for the line strips.
187
+ LineStrips2D with_radii(const Collection<rerun::components::Radius>& _radii) && {
188
+ radii = ComponentBatch::from_loggable(_radii, Descriptor_radii).value_or_throw();
189
+ return std::move(*this);
190
+ }
191
+
192
+ /// Optional colors for the line strips.
193
+ LineStrips2D with_colors(const Collection<rerun::components::Color>& _colors) && {
194
+ colors = ComponentBatch::from_loggable(_colors, Descriptor_colors).value_or_throw();
195
+ return std::move(*this);
196
+ }
197
+
198
+ /// Optional text labels for the line strips.
199
+ ///
200
+ /// If there's a single label present, it will be placed at the center of the entity.
201
+ /// Otherwise, each instance will have its own label.
202
+ LineStrips2D with_labels(const Collection<rerun::components::Text>& _labels) && {
203
+ labels = ComponentBatch::from_loggable(_labels, Descriptor_labels).value_or_throw();
204
+ return std::move(*this);
205
+ }
206
+
207
+ /// Optional choice of whether the text labels should be shown by default.
208
+ LineStrips2D with_show_labels(const rerun::components::ShowLabels& _show_labels) && {
209
+ show_labels = ComponentBatch::from_loggable(_show_labels, Descriptor_show_labels)
210
+ .value_or_throw();
211
+ return std::move(*this);
212
+ }
213
+
214
+ /// This method makes it possible to pack multiple `show_labels` in a single component batch.
215
+ ///
216
+ /// This only makes sense when used in conjunction with `columns`. `with_show_labels` should
217
+ /// be used when logging a single row's worth of data.
218
+ LineStrips2D with_many_show_labels(
219
+ const Collection<rerun::components::ShowLabels>& _show_labels
220
+ ) && {
221
+ show_labels = ComponentBatch::from_loggable(_show_labels, Descriptor_show_labels)
222
+ .value_or_throw();
223
+ return std::move(*this);
224
+ }
225
+
226
+ /// An optional floating point value that specifies the 2D drawing order of each line strip.
227
+ ///
228
+ /// Objects with higher values are drawn on top of those with lower values.
229
+ /// Defaults to `20.0`.
230
+ LineStrips2D with_draw_order(const rerun::components::DrawOrder& _draw_order) && {
231
+ draw_order =
232
+ ComponentBatch::from_loggable(_draw_order, Descriptor_draw_order).value_or_throw();
233
+ return std::move(*this);
234
+ }
235
+
236
+ /// This method makes it possible to pack multiple `draw_order` in a single component batch.
237
+ ///
238
+ /// This only makes sense when used in conjunction with `columns`. `with_draw_order` should
239
+ /// be used when logging a single row's worth of data.
240
+ LineStrips2D with_many_draw_order(
241
+ const Collection<rerun::components::DrawOrder>& _draw_order
242
+ ) && {
243
+ draw_order =
244
+ ComponentBatch::from_loggable(_draw_order, Descriptor_draw_order).value_or_throw();
245
+ return std::move(*this);
246
+ }
247
+
248
+ /// Optional `components::ClassId`s for the lines.
249
+ ///
250
+ /// The `components::ClassId` provides colors and labels if not specified explicitly.
251
+ LineStrips2D with_class_ids(const Collection<rerun::components::ClassId>& _class_ids) && {
252
+ class_ids =
253
+ ComponentBatch::from_loggable(_class_ids, Descriptor_class_ids).value_or_throw();
254
+ return std::move(*this);
255
+ }
256
+
257
+ /// Partitions the component data into multiple sub-batches.
258
+ ///
259
+ /// Specifically, this transforms the existing `ComponentBatch` data into `ComponentColumn`s
260
+ /// instead, via `ComponentBatch::partitioned`.
261
+ ///
262
+ /// This makes it possible to use `RecordingStream::send_columns` to send columnar data directly into Rerun.
263
+ ///
264
+ /// The specified `lengths` must sum to the total length of the component batch.
265
+ Collection<ComponentColumn> columns(const Collection<uint32_t>& lengths_);
266
+
267
+ /// Partitions the component data into unit-length sub-batches.
268
+ ///
269
+ /// This is semantically similar to calling `columns` with `std::vector<uint32_t>(n, 1)`,
270
+ /// where `n` is automatically guessed.
271
+ Collection<ComponentColumn> columns();
272
+ };
273
+
274
+ } // namespace rerun::archetypes
275
+
276
+ namespace rerun {
277
+ /// \private
278
+ template <typename T>
279
+ struct AsComponents;
280
+
281
+ /// \private
282
+ template <>
283
+ struct AsComponents<archetypes::LineStrips2D> {
284
+ /// Serialize all set component batches.
285
+ static Result<Collection<ComponentBatch>> as_batches(
286
+ const archetypes::LineStrips2D& archetype
287
+ );
288
+ };
289
+ } // namespace rerun