pymomentum-cpu 0.1.93.post0__cp312-cp312-macosx_14_0_arm64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- include/axel/BoundingBox.h +59 -0
- include/axel/Bvh.h +708 -0
- include/axel/BvhBase.h +75 -0
- include/axel/BvhCommon.h +43 -0
- include/axel/BvhEmbree.h +87 -0
- include/axel/BvhFactory.h +34 -0
- include/axel/Checks.h +21 -0
- include/axel/DualContouring.h +79 -0
- include/axel/KdTree.h +208 -0
- include/axel/Log.h +22 -0
- include/axel/MeshToSdf.h +123 -0
- include/axel/Profile.h +64 -0
- include/axel/Ray.h +45 -0
- include/axel/SignedDistanceField.h +248 -0
- include/axel/SimdKdTree.h +515 -0
- include/axel/TriBvh.h +157 -0
- include/axel/TriBvhEmbree.h +57 -0
- include/axel/common/Constants.h +27 -0
- include/axel/common/Types.h +21 -0
- include/axel/common/VectorizationTypes.h +58 -0
- include/axel/math/BoundingBoxUtils.h +54 -0
- include/axel/math/ContinuousCollisionDetection.h +48 -0
- include/axel/math/CoplanarityCheck.h +30 -0
- include/axel/math/EdgeEdgeDistance.h +31 -0
- include/axel/math/MeshHoleFilling.h +117 -0
- include/axel/math/PointTriangleProjection.h +34 -0
- include/axel/math/PointTriangleProjectionDefinitions.h +209 -0
- include/axel/math/RayTriangleIntersection.h +36 -0
- include/momentum/character/blend_shape.h +97 -0
- include/momentum/character/blend_shape_base.h +86 -0
- include/momentum/character/blend_shape_skinning.h +96 -0
- include/momentum/character/character.h +272 -0
- include/momentum/character/character_state.h +108 -0
- include/momentum/character/character_utility.h +128 -0
- include/momentum/character/collision_geometry.h +80 -0
- include/momentum/character/collision_geometry_state.h +130 -0
- include/momentum/character/fwd.h +262 -0
- include/momentum/character/inverse_parameter_transform.h +58 -0
- include/momentum/character/joint.h +82 -0
- include/momentum/character/joint_state.h +241 -0
- include/momentum/character/linear_skinning.h +139 -0
- include/momentum/character/locator.h +94 -0
- include/momentum/character/locator_state.h +43 -0
- include/momentum/character/marker.h +48 -0
- include/momentum/character/mesh_state.h +71 -0
- include/momentum/character/parameter_limits.h +144 -0
- include/momentum/character/parameter_transform.h +207 -0
- include/momentum/character/pose_shape.h +65 -0
- include/momentum/character/skeleton.h +85 -0
- include/momentum/character/skeleton_state.h +227 -0
- include/momentum/character/skeleton_utility.h +38 -0
- include/momentum/character/skin_weights.h +67 -0
- include/momentum/character/skinned_locator.h +80 -0
- include/momentum/character/types.h +202 -0
- include/momentum/character_sequence_solver/fwd.h +200 -0
- include/momentum/character_sequence_solver/model_parameters_sequence_error_function.h +65 -0
- include/momentum/character_sequence_solver/multipose_solver.h +65 -0
- include/momentum/character_sequence_solver/multipose_solver_function.h +82 -0
- include/momentum/character_sequence_solver/sequence_error_function.h +104 -0
- include/momentum/character_sequence_solver/sequence_solver.h +155 -0
- include/momentum/character_sequence_solver/sequence_solver_function.h +158 -0
- include/momentum/character_sequence_solver/state_sequence_error_function.h +117 -0
- include/momentum/character_sequence_solver/vertex_sequence_error_function.h +123 -0
- include/momentum/character_solver/aim_error_function.h +112 -0
- include/momentum/character_solver/collision_error_function.h +92 -0
- include/momentum/character_solver/collision_error_function_stateless.h +75 -0
- include/momentum/character_solver/constraint_error_function-inl.h +324 -0
- include/momentum/character_solver/constraint_error_function.h +248 -0
- include/momentum/character_solver/distance_error_function.h +77 -0
- include/momentum/character_solver/error_function_utils.h +60 -0
- include/momentum/character_solver/fixed_axis_error_function.h +139 -0
- include/momentum/character_solver/fwd.h +943 -0
- include/momentum/character_solver/gauss_newton_solver_qr.h +64 -0
- include/momentum/character_solver/height_error_function.h +176 -0
- include/momentum/character_solver/joint_to_joint_distance_error_function.h +111 -0
- include/momentum/character_solver/limit_error_function.h +57 -0
- include/momentum/character_solver/model_parameters_error_function.h +64 -0
- include/momentum/character_solver/normal_error_function.h +73 -0
- include/momentum/character_solver/orientation_error_function.h +74 -0
- include/momentum/character_solver/plane_error_function.h +102 -0
- include/momentum/character_solver/point_triangle_vertex_error_function.h +141 -0
- include/momentum/character_solver/pose_prior_error_function.h +80 -0
- include/momentum/character_solver/position_error_function.h +75 -0
- include/momentum/character_solver/projection_error_function.h +93 -0
- include/momentum/character_solver/simd_collision_error_function.h +99 -0
- include/momentum/character_solver/simd_normal_error_function.h +157 -0
- include/momentum/character_solver/simd_plane_error_function.h +164 -0
- include/momentum/character_solver/simd_position_error_function.h +165 -0
- include/momentum/character_solver/skeleton_error_function.h +151 -0
- include/momentum/character_solver/skeleton_solver_function.h +94 -0
- include/momentum/character_solver/skinned_locator_error_function.h +166 -0
- include/momentum/character_solver/skinned_locator_triangle_error_function.h +146 -0
- include/momentum/character_solver/skinning_weight_iterator.h +80 -0
- include/momentum/character_solver/state_error_function.h +119 -0
- include/momentum/character_solver/transform_pose.h +80 -0
- include/momentum/character_solver/trust_region_qr.h +80 -0
- include/momentum/character_solver/vertex_error_function.h +155 -0
- include/momentum/character_solver/vertex_projection_error_function.h +117 -0
- include/momentum/character_solver/vertex_vertex_distance_error_function.h +147 -0
- include/momentum/common/aligned.h +155 -0
- include/momentum/common/checks.h +27 -0
- include/momentum/common/exception.h +70 -0
- include/momentum/common/filesystem.h +20 -0
- include/momentum/common/fwd.h +27 -0
- include/momentum/common/log.h +173 -0
- include/momentum/common/log_channel.h +17 -0
- include/momentum/common/memory.h +71 -0
- include/momentum/common/profile.h +79 -0
- include/momentum/common/progress_bar.h +37 -0
- include/momentum/common/string.h +52 -0
- include/momentum/diff_ik/ceres_utility.h +73 -0
- include/momentum/diff_ik/fully_differentiable_body_ik.h +58 -0
- include/momentum/diff_ik/fully_differentiable_distance_error_function.h +69 -0
- include/momentum/diff_ik/fully_differentiable_motion_error_function.h +46 -0
- include/momentum/diff_ik/fully_differentiable_orientation_error_function.h +114 -0
- include/momentum/diff_ik/fully_differentiable_pose_prior_error_function.h +76 -0
- include/momentum/diff_ik/fully_differentiable_position_error_function.h +138 -0
- include/momentum/diff_ik/fully_differentiable_projection_error_function.h +65 -0
- include/momentum/diff_ik/fully_differentiable_skeleton_error_function.h +160 -0
- include/momentum/diff_ik/fully_differentiable_state_error_function.h +54 -0
- include/momentum/diff_ik/fwd.h +385 -0
- include/momentum/diff_ik/union_error_function.h +67 -0
- include/momentum/gui/rerun/eigen_adapters.h +70 -0
- include/momentum/gui/rerun/logger.h +102 -0
- include/momentum/gui/rerun/logging_redirect.h +27 -0
- include/momentum/io/character_io.h +98 -0
- include/momentum/io/common/gsl_utils.h +50 -0
- include/momentum/io/common/stream_utils.h +65 -0
- include/momentum/io/fbx/fbx_io.h +135 -0
- include/momentum/io/fbx/fbx_memory_stream.h +70 -0
- include/momentum/io/fbx/openfbx_loader.h +62 -0
- include/momentum/io/fbx/polygon_data.h +60 -0
- include/momentum/io/file_save_options.h +107 -0
- include/momentum/io/gltf/gltf_builder.h +141 -0
- include/momentum/io/gltf/gltf_io.h +149 -0
- include/momentum/io/gltf/utils/accessor_utils.h +299 -0
- include/momentum/io/gltf/utils/coordinate_utils.h +60 -0
- include/momentum/io/gltf/utils/json_utils.h +102 -0
- include/momentum/io/legacy_json/legacy_json_io.h +70 -0
- include/momentum/io/marker/c3d_io.h +30 -0
- include/momentum/io/marker/conversions.h +57 -0
- include/momentum/io/marker/coordinate_system.h +30 -0
- include/momentum/io/marker/marker_io.h +56 -0
- include/momentum/io/marker/trc_io.h +27 -0
- include/momentum/io/motion/mmo_io.h +97 -0
- include/momentum/io/shape/blend_shape_io.h +82 -0
- include/momentum/io/shape/pose_shape_io.h +21 -0
- include/momentum/io/skeleton/locator_io.h +41 -0
- include/momentum/io/skeleton/mppca_io.h +26 -0
- include/momentum/io/skeleton/parameter_limits_io.h +38 -0
- include/momentum/io/skeleton/parameter_transform_io.h +80 -0
- include/momentum/io/skeleton/parameters_io.h +20 -0
- include/momentum/io/skeleton/utility.h +67 -0
- include/momentum/io/urdf/urdf_io.h +26 -0
- include/momentum/io/usd/usd_io.h +36 -0
- include/momentum/marker_tracking/app_utils.h +64 -0
- include/momentum/marker_tracking/marker_tracker.h +221 -0
- include/momentum/marker_tracking/process_markers.h +58 -0
- include/momentum/marker_tracking/tracker_utils.h +99 -0
- include/momentum/math/constants.h +82 -0
- include/momentum/math/covariance_matrix.h +84 -0
- include/momentum/math/fmt_eigen.h +23 -0
- include/momentum/math/fwd.h +132 -0
- include/momentum/math/generalized_loss.h +61 -0
- include/momentum/math/intersection.h +32 -0
- include/momentum/math/mesh.h +84 -0
- include/momentum/math/mppca.h +67 -0
- include/momentum/math/online_householder_qr.h +516 -0
- include/momentum/math/random-inl.h +404 -0
- include/momentum/math/random.h +310 -0
- include/momentum/math/simd_generalized_loss.h +40 -0
- include/momentum/math/transform.h +229 -0
- include/momentum/math/types.h +461 -0
- include/momentum/math/utility.h +324 -0
- include/momentum/rasterizer/camera.h +453 -0
- include/momentum/rasterizer/fwd.h +102 -0
- include/momentum/rasterizer/geometry.h +83 -0
- include/momentum/rasterizer/image.h +18 -0
- include/momentum/rasterizer/rasterizer.h +583 -0
- include/momentum/rasterizer/tensor.h +140 -0
- include/momentum/rasterizer/text_rasterizer.h +89 -0
- include/momentum/rasterizer/utility.h +268 -0
- include/momentum/simd/simd.h +221 -0
- include/momentum/solver/fwd.h +131 -0
- include/momentum/solver/gauss_newton_solver.h +136 -0
- include/momentum/solver/gradient_descent_solver.h +65 -0
- include/momentum/solver/solver.h +155 -0
- include/momentum/solver/solver_function.h +126 -0
- include/momentum/solver/subset_gauss_newton_solver.h +109 -0
- include/rerun/archetypes/annotation_context.hpp +157 -0
- include/rerun/archetypes/arrows2d.hpp +271 -0
- include/rerun/archetypes/arrows3d.hpp +257 -0
- include/rerun/archetypes/asset3d.hpp +262 -0
- include/rerun/archetypes/asset_video.hpp +275 -0
- include/rerun/archetypes/bar_chart.hpp +261 -0
- include/rerun/archetypes/boxes2d.hpp +293 -0
- include/rerun/archetypes/boxes3d.hpp +369 -0
- include/rerun/archetypes/capsules3d.hpp +333 -0
- include/rerun/archetypes/clear.hpp +180 -0
- include/rerun/archetypes/depth_image.hpp +425 -0
- include/rerun/archetypes/ellipsoids3d.hpp +384 -0
- include/rerun/archetypes/encoded_image.hpp +250 -0
- include/rerun/archetypes/geo_line_strings.hpp +166 -0
- include/rerun/archetypes/geo_points.hpp +177 -0
- include/rerun/archetypes/graph_edges.hpp +152 -0
- include/rerun/archetypes/graph_nodes.hpp +206 -0
- include/rerun/archetypes/image.hpp +434 -0
- include/rerun/archetypes/instance_poses3d.hpp +221 -0
- include/rerun/archetypes/line_strips2d.hpp +289 -0
- include/rerun/archetypes/line_strips3d.hpp +270 -0
- include/rerun/archetypes/mesh3d.hpp +387 -0
- include/rerun/archetypes/pinhole.hpp +385 -0
- include/rerun/archetypes/points2d.hpp +333 -0
- include/rerun/archetypes/points3d.hpp +369 -0
- include/rerun/archetypes/recording_properties.hpp +132 -0
- include/rerun/archetypes/scalar.hpp +170 -0
- include/rerun/archetypes/scalars.hpp +153 -0
- include/rerun/archetypes/segmentation_image.hpp +305 -0
- include/rerun/archetypes/series_line.hpp +274 -0
- include/rerun/archetypes/series_lines.hpp +271 -0
- include/rerun/archetypes/series_point.hpp +265 -0
- include/rerun/archetypes/series_points.hpp +251 -0
- include/rerun/archetypes/tensor.hpp +213 -0
- include/rerun/archetypes/text_document.hpp +200 -0
- include/rerun/archetypes/text_log.hpp +211 -0
- include/rerun/archetypes/transform3d.hpp +925 -0
- include/rerun/archetypes/video_frame_reference.hpp +295 -0
- include/rerun/archetypes/view_coordinates.hpp +393 -0
- include/rerun/archetypes.hpp +43 -0
- include/rerun/arrow_utils.hpp +32 -0
- include/rerun/as_components.hpp +90 -0
- include/rerun/blueprint/archetypes/background.hpp +113 -0
- include/rerun/blueprint/archetypes/container_blueprint.hpp +259 -0
- include/rerun/blueprint/archetypes/dataframe_query.hpp +178 -0
- include/rerun/blueprint/archetypes/entity_behavior.hpp +130 -0
- include/rerun/blueprint/archetypes/force_center.hpp +115 -0
- include/rerun/blueprint/archetypes/force_collision_radius.hpp +141 -0
- include/rerun/blueprint/archetypes/force_link.hpp +136 -0
- include/rerun/blueprint/archetypes/force_many_body.hpp +124 -0
- include/rerun/blueprint/archetypes/force_position.hpp +132 -0
- include/rerun/blueprint/archetypes/line_grid3d.hpp +178 -0
- include/rerun/blueprint/archetypes/map_background.hpp +104 -0
- include/rerun/blueprint/archetypes/map_zoom.hpp +103 -0
- include/rerun/blueprint/archetypes/near_clip_plane.hpp +109 -0
- include/rerun/blueprint/archetypes/panel_blueprint.hpp +95 -0
- include/rerun/blueprint/archetypes/plot_legend.hpp +118 -0
- include/rerun/blueprint/archetypes/scalar_axis.hpp +116 -0
- include/rerun/blueprint/archetypes/tensor_scalar_mapping.hpp +146 -0
- include/rerun/blueprint/archetypes/tensor_slice_selection.hpp +167 -0
- include/rerun/blueprint/archetypes/tensor_view_fit.hpp +95 -0
- include/rerun/blueprint/archetypes/view_blueprint.hpp +170 -0
- include/rerun/blueprint/archetypes/view_contents.hpp +142 -0
- include/rerun/blueprint/archetypes/viewport_blueprint.hpp +200 -0
- include/rerun/blueprint/archetypes/visible_time_ranges.hpp +116 -0
- include/rerun/blueprint/archetypes/visual_bounds2d.hpp +109 -0
- include/rerun/blueprint/archetypes/visualizer_overrides.hpp +113 -0
- include/rerun/blueprint/archetypes.hpp +29 -0
- include/rerun/blueprint/components/active_tab.hpp +82 -0
- include/rerun/blueprint/components/apply_latest_at.hpp +79 -0
- include/rerun/blueprint/components/auto_layout.hpp +77 -0
- include/rerun/blueprint/components/auto_views.hpp +77 -0
- include/rerun/blueprint/components/background_kind.hpp +66 -0
- include/rerun/blueprint/components/column_share.hpp +78 -0
- include/rerun/blueprint/components/component_column_selector.hpp +81 -0
- include/rerun/blueprint/components/container_kind.hpp +65 -0
- include/rerun/blueprint/components/corner2d.hpp +64 -0
- include/rerun/blueprint/components/enabled.hpp +77 -0
- include/rerun/blueprint/components/filter_by_range.hpp +74 -0
- include/rerun/blueprint/components/filter_is_not_null.hpp +77 -0
- include/rerun/blueprint/components/force_distance.hpp +82 -0
- include/rerun/blueprint/components/force_iterations.hpp +82 -0
- include/rerun/blueprint/components/force_strength.hpp +82 -0
- include/rerun/blueprint/components/grid_columns.hpp +78 -0
- include/rerun/blueprint/components/grid_spacing.hpp +78 -0
- include/rerun/blueprint/components/included_content.hpp +86 -0
- include/rerun/blueprint/components/lock_range_during_zoom.hpp +82 -0
- include/rerun/blueprint/components/map_provider.hpp +64 -0
- include/rerun/blueprint/components/near_clip_plane.hpp +82 -0
- include/rerun/blueprint/components/panel_state.hpp +61 -0
- include/rerun/blueprint/components/query_expression.hpp +89 -0
- include/rerun/blueprint/components/root_container.hpp +77 -0
- include/rerun/blueprint/components/row_share.hpp +78 -0
- include/rerun/blueprint/components/selected_columns.hpp +76 -0
- include/rerun/blueprint/components/tensor_dimension_index_slider.hpp +90 -0
- include/rerun/blueprint/components/timeline_name.hpp +76 -0
- include/rerun/blueprint/components/view_class.hpp +76 -0
- include/rerun/blueprint/components/view_fit.hpp +61 -0
- include/rerun/blueprint/components/view_maximized.hpp +79 -0
- include/rerun/blueprint/components/view_origin.hpp +81 -0
- include/rerun/blueprint/components/viewer_recommendation_hash.hpp +82 -0
- include/rerun/blueprint/components/visible_time_range.hpp +77 -0
- include/rerun/blueprint/components/visual_bounds2d.hpp +74 -0
- include/rerun/blueprint/components/visualizer_override.hpp +86 -0
- include/rerun/blueprint/components/zoom_level.hpp +78 -0
- include/rerun/blueprint/components.hpp +41 -0
- include/rerun/blueprint/datatypes/component_column_selector.hpp +61 -0
- include/rerun/blueprint/datatypes/filter_by_range.hpp +59 -0
- include/rerun/blueprint/datatypes/filter_is_not_null.hpp +61 -0
- include/rerun/blueprint/datatypes/selected_columns.hpp +62 -0
- include/rerun/blueprint/datatypes/tensor_dimension_index_slider.hpp +63 -0
- include/rerun/blueprint/datatypes.hpp +9 -0
- include/rerun/c/arrow_c_data_interface.h +111 -0
- include/rerun/c/compiler_utils.h +10 -0
- include/rerun/c/rerun.h +627 -0
- include/rerun/c/sdk_info.h +28 -0
- include/rerun/collection.hpp +496 -0
- include/rerun/collection_adapter.hpp +43 -0
- include/rerun/collection_adapter_builtins.hpp +138 -0
- include/rerun/compiler_utils.hpp +61 -0
- include/rerun/component_batch.hpp +163 -0
- include/rerun/component_column.hpp +111 -0
- include/rerun/component_descriptor.hpp +142 -0
- include/rerun/component_type.hpp +35 -0
- include/rerun/components/aggregation_policy.hpp +76 -0
- include/rerun/components/albedo_factor.hpp +74 -0
- include/rerun/components/annotation_context.hpp +102 -0
- include/rerun/components/axis_length.hpp +74 -0
- include/rerun/components/blob.hpp +73 -0
- include/rerun/components/class_id.hpp +71 -0
- include/rerun/components/clear_is_recursive.hpp +75 -0
- include/rerun/components/color.hpp +99 -0
- include/rerun/components/colormap.hpp +99 -0
- include/rerun/components/depth_meter.hpp +84 -0
- include/rerun/components/draw_order.hpp +79 -0
- include/rerun/components/entity_path.hpp +83 -0
- include/rerun/components/fill_mode.hpp +72 -0
- include/rerun/components/fill_ratio.hpp +79 -0
- include/rerun/components/gamma_correction.hpp +80 -0
- include/rerun/components/geo_line_string.hpp +63 -0
- include/rerun/components/graph_edge.hpp +75 -0
- include/rerun/components/graph_node.hpp +79 -0
- include/rerun/components/graph_type.hpp +57 -0
- include/rerun/components/half_size2d.hpp +91 -0
- include/rerun/components/half_size3d.hpp +95 -0
- include/rerun/components/image_buffer.hpp +86 -0
- include/rerun/components/image_format.hpp +84 -0
- include/rerun/components/image_plane_distance.hpp +77 -0
- include/rerun/components/interactive.hpp +76 -0
- include/rerun/components/keypoint_id.hpp +74 -0
- include/rerun/components/lat_lon.hpp +89 -0
- include/rerun/components/length.hpp +77 -0
- include/rerun/components/line_strip2d.hpp +73 -0
- include/rerun/components/line_strip3d.hpp +73 -0
- include/rerun/components/magnification_filter.hpp +63 -0
- include/rerun/components/marker_shape.hpp +82 -0
- include/rerun/components/marker_size.hpp +74 -0
- include/rerun/components/media_type.hpp +157 -0
- include/rerun/components/name.hpp +83 -0
- include/rerun/components/opacity.hpp +77 -0
- include/rerun/components/pinhole_projection.hpp +94 -0
- include/rerun/components/plane3d.hpp +75 -0
- include/rerun/components/pose_rotation_axis_angle.hpp +73 -0
- include/rerun/components/pose_rotation_quat.hpp +71 -0
- include/rerun/components/pose_scale3d.hpp +102 -0
- include/rerun/components/pose_transform_mat3x3.hpp +87 -0
- include/rerun/components/pose_translation3d.hpp +96 -0
- include/rerun/components/position2d.hpp +86 -0
- include/rerun/components/position3d.hpp +90 -0
- include/rerun/components/radius.hpp +98 -0
- include/rerun/components/range1d.hpp +75 -0
- include/rerun/components/resolution.hpp +88 -0
- include/rerun/components/rotation_axis_angle.hpp +72 -0
- include/rerun/components/rotation_quat.hpp +71 -0
- include/rerun/components/scalar.hpp +76 -0
- include/rerun/components/scale3d.hpp +102 -0
- include/rerun/components/series_visible.hpp +76 -0
- include/rerun/components/show_labels.hpp +79 -0
- include/rerun/components/stroke_width.hpp +74 -0
- include/rerun/components/tensor_data.hpp +94 -0
- include/rerun/components/tensor_dimension_index_selection.hpp +77 -0
- include/rerun/components/tensor_height_dimension.hpp +71 -0
- include/rerun/components/tensor_width_dimension.hpp +71 -0
- include/rerun/components/texcoord2d.hpp +101 -0
- include/rerun/components/text.hpp +83 -0
- include/rerun/components/text_log_level.hpp +110 -0
- include/rerun/components/timestamp.hpp +76 -0
- include/rerun/components/transform_mat3x3.hpp +92 -0
- include/rerun/components/transform_relation.hpp +66 -0
- include/rerun/components/translation3d.hpp +96 -0
- include/rerun/components/triangle_indices.hpp +85 -0
- include/rerun/components/value_range.hpp +78 -0
- include/rerun/components/vector2d.hpp +92 -0
- include/rerun/components/vector3d.hpp +96 -0
- include/rerun/components/video_timestamp.hpp +120 -0
- include/rerun/components/view_coordinates.hpp +346 -0
- include/rerun/components/visible.hpp +74 -0
- include/rerun/components.hpp +77 -0
- include/rerun/config.hpp +52 -0
- include/rerun/datatypes/angle.hpp +76 -0
- include/rerun/datatypes/annotation_info.hpp +76 -0
- include/rerun/datatypes/blob.hpp +67 -0
- include/rerun/datatypes/bool.hpp +57 -0
- include/rerun/datatypes/channel_datatype.hpp +87 -0
- include/rerun/datatypes/class_description.hpp +92 -0
- include/rerun/datatypes/class_description_map_elem.hpp +69 -0
- include/rerun/datatypes/class_id.hpp +62 -0
- include/rerun/datatypes/color_model.hpp +68 -0
- include/rerun/datatypes/dvec2d.hpp +76 -0
- include/rerun/datatypes/entity_path.hpp +60 -0
- include/rerun/datatypes/float32.hpp +62 -0
- include/rerun/datatypes/float64.hpp +62 -0
- include/rerun/datatypes/image_format.hpp +107 -0
- include/rerun/datatypes/keypoint_id.hpp +63 -0
- include/rerun/datatypes/keypoint_pair.hpp +65 -0
- include/rerun/datatypes/mat3x3.hpp +105 -0
- include/rerun/datatypes/mat4x4.hpp +119 -0
- include/rerun/datatypes/pixel_format.hpp +142 -0
- include/rerun/datatypes/plane3d.hpp +60 -0
- include/rerun/datatypes/quaternion.hpp +110 -0
- include/rerun/datatypes/range1d.hpp +59 -0
- include/rerun/datatypes/range2d.hpp +55 -0
- include/rerun/datatypes/rgba32.hpp +94 -0
- include/rerun/datatypes/rotation_axis_angle.hpp +67 -0
- include/rerun/datatypes/tensor_buffer.hpp +529 -0
- include/rerun/datatypes/tensor_data.hpp +100 -0
- include/rerun/datatypes/tensor_dimension_index_selection.hpp +58 -0
- include/rerun/datatypes/tensor_dimension_selection.hpp +56 -0
- include/rerun/datatypes/time_int.hpp +62 -0
- include/rerun/datatypes/time_range.hpp +55 -0
- include/rerun/datatypes/time_range_boundary.hpp +175 -0
- include/rerun/datatypes/uint16.hpp +62 -0
- include/rerun/datatypes/uint32.hpp +62 -0
- include/rerun/datatypes/uint64.hpp +62 -0
- include/rerun/datatypes/utf8.hpp +76 -0
- include/rerun/datatypes/utf8pair.hpp +62 -0
- include/rerun/datatypes/uuid.hpp +60 -0
- include/rerun/datatypes/uvec2d.hpp +76 -0
- include/rerun/datatypes/uvec3d.hpp +80 -0
- include/rerun/datatypes/uvec4d.hpp +59 -0
- include/rerun/datatypes/vec2d.hpp +76 -0
- include/rerun/datatypes/vec3d.hpp +80 -0
- include/rerun/datatypes/vec4d.hpp +84 -0
- include/rerun/datatypes/video_timestamp.hpp +67 -0
- include/rerun/datatypes/view_coordinates.hpp +87 -0
- include/rerun/datatypes/visible_time_range.hpp +57 -0
- include/rerun/datatypes.hpp +51 -0
- include/rerun/demo_utils.hpp +75 -0
- include/rerun/entity_path.hpp +20 -0
- include/rerun/error.hpp +180 -0
- include/rerun/half.hpp +10 -0
- include/rerun/image_utils.hpp +187 -0
- include/rerun/indicator_component.hpp +59 -0
- include/rerun/loggable.hpp +54 -0
- include/rerun/recording_stream.hpp +960 -0
- include/rerun/rerun_sdk_export.hpp +25 -0
- include/rerun/result.hpp +86 -0
- include/rerun/rotation3d.hpp +33 -0
- include/rerun/sdk_info.hpp +20 -0
- include/rerun/spawn.hpp +21 -0
- include/rerun/spawn_options.hpp +57 -0
- include/rerun/string_utils.hpp +16 -0
- include/rerun/third_party/cxxopts.hpp +2198 -0
- include/rerun/time_column.hpp +288 -0
- include/rerun/timeline.hpp +38 -0
- include/rerun/type_traits.hpp +40 -0
- include/rerun.hpp +86 -0
- lib/cmake/axel/axel-config.cmake +45 -0
- lib/cmake/axel/axelTargets-release.cmake +19 -0
- lib/cmake/axel/axelTargets.cmake +108 -0
- lib/cmake/momentum/FindFbxSdk.cmake +115 -0
- lib/cmake/momentum/Findre2.cmake +52 -0
- lib/cmake/momentum/momentum-config.cmake +67 -0
- lib/cmake/momentum/momentumTargets-release.cmake +259 -0
- lib/cmake/momentum/momentumTargets.cmake +385 -0
- lib/cmake/rerun_sdk/rerun_sdkConfig.cmake +70 -0
- lib/cmake/rerun_sdk/rerun_sdkConfigVersion.cmake +83 -0
- lib/cmake/rerun_sdk/rerun_sdkTargets-release.cmake +19 -0
- lib/cmake/rerun_sdk/rerun_sdkTargets.cmake +108 -0
- lib/libarrow.a +0 -0
- lib/libarrow_bundled_dependencies.a +0 -0
- lib/libaxel.a +0 -0
- lib/libmomentum_app_utils.a +0 -0
- lib/libmomentum_character.a +0 -0
- lib/libmomentum_character_sequence_solver.a +0 -0
- lib/libmomentum_character_solver.a +0 -0
- lib/libmomentum_common.a +0 -0
- lib/libmomentum_diff_ik.a +0 -0
- lib/libmomentum_io.a +0 -0
- lib/libmomentum_io_common.a +0 -0
- lib/libmomentum_io_fbx.a +0 -0
- lib/libmomentum_io_gltf.a +0 -0
- lib/libmomentum_io_legacy_json.a +0 -0
- lib/libmomentum_io_marker.a +0 -0
- lib/libmomentum_io_motion.a +0 -0
- lib/libmomentum_io_shape.a +0 -0
- lib/libmomentum_io_skeleton.a +0 -0
- lib/libmomentum_io_urdf.a +0 -0
- lib/libmomentum_marker_tracker.a +0 -0
- lib/libmomentum_math.a +0 -0
- lib/libmomentum_online_qr.a +0 -0
- lib/libmomentum_process_markers.a +0 -0
- lib/libmomentum_rerun.a +0 -0
- lib/libmomentum_simd_constraints.a +0 -0
- lib/libmomentum_simd_generalized_loss.a +0 -0
- lib/libmomentum_skeleton.a +0 -0
- lib/libmomentum_solver.a +0 -0
- lib/librerun_c__macos_arm64.a +0 -0
- lib/librerun_sdk.a +0 -0
- pymomentum/axel.cpython-312-darwin.so +0 -0
- pymomentum/backend/__init__.py +16 -0
- pymomentum/backend/skel_state_backend.py +631 -0
- pymomentum/backend/trs_backend.py +889 -0
- pymomentum/backend/utils.py +224 -0
- pymomentum/geometry.cpython-312-darwin.so +0 -0
- pymomentum/marker_tracking.cpython-312-darwin.so +0 -0
- pymomentum/quaternion.py +740 -0
- pymomentum/skel_state.py +514 -0
- pymomentum/solver.cpython-312-darwin.so +0 -0
- pymomentum/solver2.cpython-312-darwin.so +0 -0
- pymomentum/torch/character.py +868 -0
- pymomentum/torch/parameter_limits.py +494 -0
- pymomentum/torch/utility.py +20 -0
- pymomentum/trs.py +535 -0
- pymomentum_cpu-0.1.93.post0.dist-info/METADATA +126 -0
- pymomentum_cpu-0.1.93.post0.dist-info/RECORD +517 -0
- pymomentum_cpu-0.1.93.post0.dist-info/WHEEL +5 -0
- pymomentum_cpu-0.1.93.post0.dist-info/licenses/LICENSE +21 -0
|
@@ -0,0 +1,261 @@
|
|
|
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/bar_chart.fbs".
|
|
3
|
+
|
|
4
|
+
#pragma once
|
|
5
|
+
|
|
6
|
+
#include "../collection.hpp"
|
|
7
|
+
#include "../component_batch.hpp"
|
|
8
|
+
#include "../component_column.hpp"
|
|
9
|
+
#include "../components/color.hpp"
|
|
10
|
+
#include "../components/tensor_data.hpp"
|
|
11
|
+
#include "../indicator_component.hpp"
|
|
12
|
+
#include "../result.hpp"
|
|
13
|
+
|
|
14
|
+
#include <cstdint>
|
|
15
|
+
#include <optional>
|
|
16
|
+
#include <utility>
|
|
17
|
+
#include <vector>
|
|
18
|
+
|
|
19
|
+
namespace rerun::archetypes {
|
|
20
|
+
/// **Archetype**: A bar chart.
|
|
21
|
+
///
|
|
22
|
+
/// The x values will be the indices of the array, and the bar heights will be the provided values.
|
|
23
|
+
///
|
|
24
|
+
/// ## Example
|
|
25
|
+
///
|
|
26
|
+
/// ### Simple bar chart
|
|
27
|
+
/// 
|
|
28
|
+
///
|
|
29
|
+
/// ```cpp
|
|
30
|
+
/// #include <rerun.hpp>
|
|
31
|
+
///
|
|
32
|
+
/// int main() {
|
|
33
|
+
/// const auto rec = rerun::RecordingStream("rerun_example_bar_chart");
|
|
34
|
+
/// rec.spawn().exit_on_failure();
|
|
35
|
+
///
|
|
36
|
+
/// rec.log("bar_chart", rerun::BarChart::i64({8, 4, 0, 9, 1, 4, 1, 6, 9, 0}));
|
|
37
|
+
/// }
|
|
38
|
+
/// ```
|
|
39
|
+
struct BarChart {
|
|
40
|
+
/// The values. Should always be a 1-dimensional tensor (i.e. a vector).
|
|
41
|
+
std::optional<ComponentBatch> values;
|
|
42
|
+
|
|
43
|
+
/// The color of the bar chart
|
|
44
|
+
std::optional<ComponentBatch> color;
|
|
45
|
+
|
|
46
|
+
public:
|
|
47
|
+
static constexpr const char IndicatorComponentName[] = "rerun.components.BarChartIndicator";
|
|
48
|
+
|
|
49
|
+
/// Indicator component, used to identify the archetype when converting to a list of components.
|
|
50
|
+
using IndicatorComponent = rerun::components::IndicatorComponent<IndicatorComponentName>;
|
|
51
|
+
/// The name of the archetype as used in `ComponentDescriptor`s.
|
|
52
|
+
static constexpr const char ArchetypeName[] = "rerun.archetypes.BarChart";
|
|
53
|
+
|
|
54
|
+
/// `ComponentDescriptor` for the `values` field.
|
|
55
|
+
static constexpr auto Descriptor_values = ComponentDescriptor(
|
|
56
|
+
ArchetypeName, "values",
|
|
57
|
+
Loggable<rerun::components::TensorData>::Descriptor.component_name
|
|
58
|
+
);
|
|
59
|
+
/// `ComponentDescriptor` for the `color` field.
|
|
60
|
+
static constexpr auto Descriptor_color = ComponentDescriptor(
|
|
61
|
+
ArchetypeName, "color", Loggable<rerun::components::Color>::Descriptor.component_name
|
|
62
|
+
);
|
|
63
|
+
|
|
64
|
+
public: // START of extensions from bar_chart_ext.cpp:
|
|
65
|
+
BarChart(rerun::datatypes::TensorBuffer buffer) {
|
|
66
|
+
// Forwarding like this can spuriously fail, since the move might be evaluated before `num_elems`:
|
|
67
|
+
//BarChart(rerun::components::TensorData({buffer.num_elems()}, std::move(buffer)));
|
|
68
|
+
|
|
69
|
+
auto num_elems = buffer.num_elems();
|
|
70
|
+
*this = std::move(*this).with_values(
|
|
71
|
+
rerun::components::TensorData({num_elems}, std::move(buffer))
|
|
72
|
+
);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
// --------------------------------------------------------------------
|
|
76
|
+
// Implicit constructors:
|
|
77
|
+
|
|
78
|
+
/// Construct a `BarChart` from a `Collection<uint8_t>`.
|
|
79
|
+
BarChart(Collection<uint8_t> u8)
|
|
80
|
+
: BarChart(rerun::datatypes::TensorBuffer::u8(std::move(u8))) {}
|
|
81
|
+
|
|
82
|
+
/// Construct a `BarChart` from a `Collection<uint16_t>`.
|
|
83
|
+
BarChart(Collection<uint16_t> u16)
|
|
84
|
+
: BarChart(rerun::datatypes::TensorBuffer::u16(std::move(u16))) {}
|
|
85
|
+
|
|
86
|
+
/// Construct a `BarChart` from a `Collection<uint32_t>`.
|
|
87
|
+
BarChart(Collection<uint32_t> u32)
|
|
88
|
+
: BarChart(rerun::datatypes::TensorBuffer::u32(std::move(u32))) {}
|
|
89
|
+
|
|
90
|
+
/// Construct a `BarChart` from a `Collection<uint64_t>`.
|
|
91
|
+
BarChart(Collection<uint64_t> u64)
|
|
92
|
+
: BarChart(rerun::datatypes::TensorBuffer::u64(std::move(u64))) {}
|
|
93
|
+
|
|
94
|
+
/// Construct a `BarChart` from a `Collection<int8_t>`.
|
|
95
|
+
BarChart(Collection<int8_t> i8)
|
|
96
|
+
: BarChart(rerun::datatypes::TensorBuffer::i8(std::move(i8))) {}
|
|
97
|
+
|
|
98
|
+
/// Construct a `BarChart` from a `Collection<int16_t>`.
|
|
99
|
+
BarChart(Collection<int16_t> i16)
|
|
100
|
+
: BarChart(rerun::datatypes::TensorBuffer::i16(std::move(i16))) {}
|
|
101
|
+
|
|
102
|
+
/// Construct a `BarChart` from a `Collection<int32_t>`.
|
|
103
|
+
BarChart(Collection<int32_t> i32)
|
|
104
|
+
: BarChart(rerun::datatypes::TensorBuffer::i32(std::move(i32))) {}
|
|
105
|
+
|
|
106
|
+
/// Construct a `BarChart` from a `Collection<int64_t>`.
|
|
107
|
+
BarChart(Collection<int64_t> i64)
|
|
108
|
+
: BarChart(rerun::datatypes::TensorBuffer::i64(std::move(i64))) {}
|
|
109
|
+
|
|
110
|
+
/// Construct aBarChart` from a `Collection<half>`.
|
|
111
|
+
BarChart(Collection<rerun::half> f16)
|
|
112
|
+
: BarChart(rerun::datatypes::TensorBuffer::f16(std::move(f16))) {}
|
|
113
|
+
|
|
114
|
+
/// Construct a `BarChart` from a `Collection<float>`.
|
|
115
|
+
BarChart(Collection<float> f32)
|
|
116
|
+
: BarChart(rerun::datatypes::TensorBuffer::f32(std::move(f32))) {}
|
|
117
|
+
|
|
118
|
+
/// Construct a `BarChart` from a `Collection<double>`.
|
|
119
|
+
BarChart(Collection<double> f64)
|
|
120
|
+
: BarChart(rerun::datatypes::TensorBuffer::f64(std::move(f64))) {}
|
|
121
|
+
|
|
122
|
+
// --------------------------------------------------------------------
|
|
123
|
+
// Explicit static constructors:
|
|
124
|
+
|
|
125
|
+
/// Construct a `BarChart` from a `Collection<uint8_t>`.
|
|
126
|
+
static BarChart u8(Collection<uint8_t> u8) {
|
|
127
|
+
return BarChart(std::move(u8));
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
/// Construct a `BarChart` from a `Collection<uint16_t>`.
|
|
131
|
+
static BarChart u16(Collection<uint16_t> u16) {
|
|
132
|
+
return BarChart(std::move(u16));
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
/// Construct a `BarChart` from a `Collection<uint32_t>`.
|
|
136
|
+
static BarChart u32(Collection<uint32_t> u32) {
|
|
137
|
+
return BarChart(std::move(u32));
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
/// Construct a `BarChart` from a `Collection<uint64_t>`.
|
|
141
|
+
static BarChart u64(Collection<uint64_t> u64) {
|
|
142
|
+
return BarChart(std::move(u64));
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
/// Construct a `BarChart` from a `Collection<int8_t>`.
|
|
146
|
+
static BarChart i8(Collection<int8_t> i8) {
|
|
147
|
+
return BarChart(std::move(i8));
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
/// Construct a `BarChart` from a `Collection<int16_t>`.
|
|
151
|
+
static BarChart i16(Collection<int16_t> i16) {
|
|
152
|
+
return BarChart(std::move(i16));
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
/// Construct a `BarChart` from a `Collection<int32_t>`.
|
|
156
|
+
static BarChart i32(Collection<int32_t> i32) {
|
|
157
|
+
return BarChart(std::move(i32));
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
/// Construct a `BarChart` from a `Collection<int64_t>`.
|
|
161
|
+
static BarChart i64(Collection<int64_t> i64) {
|
|
162
|
+
return BarChart(std::move(i64));
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
/// Construct a `BarChart` from a `Collection<half>`.
|
|
166
|
+
static BarChart f16(Collection<rerun::half> f16) {
|
|
167
|
+
return BarChart(std::move(f16));
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
/// Construct a `BarChart` from a `Collection<float>`.
|
|
171
|
+
static BarChart f32(Collection<float> f32) {
|
|
172
|
+
return BarChart(std::move(f32));
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
/// Construct a `BarChart` from a `Collection<double>`.
|
|
176
|
+
static BarChart f64(Collection<double> f64) {
|
|
177
|
+
return BarChart(std::move(f64));
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
// END of extensions from bar_chart_ext.cpp, start of generated code:
|
|
181
|
+
|
|
182
|
+
public:
|
|
183
|
+
BarChart() = default;
|
|
184
|
+
BarChart(BarChart&& other) = default;
|
|
185
|
+
BarChart(const BarChart& other) = default;
|
|
186
|
+
BarChart& operator=(const BarChart& other) = default;
|
|
187
|
+
BarChart& operator=(BarChart&& other) = default;
|
|
188
|
+
|
|
189
|
+
explicit BarChart(rerun::components::TensorData _values)
|
|
190
|
+
: values(ComponentBatch::from_loggable(std::move(_values), Descriptor_values)
|
|
191
|
+
.value_or_throw()) {}
|
|
192
|
+
|
|
193
|
+
/// Update only some specific fields of a `BarChart`.
|
|
194
|
+
static BarChart update_fields() {
|
|
195
|
+
return BarChart();
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
/// Clear all the fields of a `BarChart`.
|
|
199
|
+
static BarChart clear_fields();
|
|
200
|
+
|
|
201
|
+
/// The values. Should always be a 1-dimensional tensor (i.e. a vector).
|
|
202
|
+
BarChart with_values(const rerun::components::TensorData& _values) && {
|
|
203
|
+
values = ComponentBatch::from_loggable(_values, Descriptor_values).value_or_throw();
|
|
204
|
+
return std::move(*this);
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
/// This method makes it possible to pack multiple `values` in a single component batch.
|
|
208
|
+
///
|
|
209
|
+
/// This only makes sense when used in conjunction with `columns`. `with_values` should
|
|
210
|
+
/// be used when logging a single row's worth of data.
|
|
211
|
+
BarChart with_many_values(const Collection<rerun::components::TensorData>& _values) && {
|
|
212
|
+
values = ComponentBatch::from_loggable(_values, Descriptor_values).value_or_throw();
|
|
213
|
+
return std::move(*this);
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
/// The color of the bar chart
|
|
217
|
+
BarChart with_color(const rerun::components::Color& _color) && {
|
|
218
|
+
color = ComponentBatch::from_loggable(_color, Descriptor_color).value_or_throw();
|
|
219
|
+
return std::move(*this);
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
/// This method makes it possible to pack multiple `color` in a single component batch.
|
|
223
|
+
///
|
|
224
|
+
/// This only makes sense when used in conjunction with `columns`. `with_color` should
|
|
225
|
+
/// be used when logging a single row's worth of data.
|
|
226
|
+
BarChart with_many_color(const Collection<rerun::components::Color>& _color) && {
|
|
227
|
+
color = ComponentBatch::from_loggable(_color, Descriptor_color).value_or_throw();
|
|
228
|
+
return std::move(*this);
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
/// Partitions the component data into multiple sub-batches.
|
|
232
|
+
///
|
|
233
|
+
/// Specifically, this transforms the existing `ComponentBatch` data into `ComponentColumn`s
|
|
234
|
+
/// instead, via `ComponentBatch::partitioned`.
|
|
235
|
+
///
|
|
236
|
+
/// This makes it possible to use `RecordingStream::send_columns` to send columnar data directly into Rerun.
|
|
237
|
+
///
|
|
238
|
+
/// The specified `lengths` must sum to the total length of the component batch.
|
|
239
|
+
Collection<ComponentColumn> columns(const Collection<uint32_t>& lengths_);
|
|
240
|
+
|
|
241
|
+
/// Partitions the component data into unit-length sub-batches.
|
|
242
|
+
///
|
|
243
|
+
/// This is semantically similar to calling `columns` with `std::vector<uint32_t>(n, 1)`,
|
|
244
|
+
/// where `n` is automatically guessed.
|
|
245
|
+
Collection<ComponentColumn> columns();
|
|
246
|
+
};
|
|
247
|
+
|
|
248
|
+
} // namespace rerun::archetypes
|
|
249
|
+
|
|
250
|
+
namespace rerun {
|
|
251
|
+
/// \private
|
|
252
|
+
template <typename T>
|
|
253
|
+
struct AsComponents;
|
|
254
|
+
|
|
255
|
+
/// \private
|
|
256
|
+
template <>
|
|
257
|
+
struct AsComponents<archetypes::BarChart> {
|
|
258
|
+
/// Serialize all set component batches.
|
|
259
|
+
static Result<Collection<ComponentBatch>> as_batches(const archetypes::BarChart& archetype);
|
|
260
|
+
};
|
|
261
|
+
} // namespace rerun
|
|
@@ -0,0 +1,293 @@
|
|
|
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/boxes2d.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/half_size2d.hpp"
|
|
13
|
+
#include "../components/position2d.hpp"
|
|
14
|
+
#include "../components/radius.hpp"
|
|
15
|
+
#include "../components/show_labels.hpp"
|
|
16
|
+
#include "../components/text.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**: 2D boxes with half-extents and optional center, colors etc.
|
|
27
|
+
///
|
|
28
|
+
/// ## Example
|
|
29
|
+
///
|
|
30
|
+
/// ### Simple 2D boxes
|
|
31
|
+
/// 
|
|
32
|
+
///
|
|
33
|
+
/// ```cpp
|
|
34
|
+
/// #include <rerun.hpp>
|
|
35
|
+
///
|
|
36
|
+
/// int main() {
|
|
37
|
+
/// const auto rec = rerun::RecordingStream("rerun_example_box2d");
|
|
38
|
+
/// rec.spawn().exit_on_failure();
|
|
39
|
+
///
|
|
40
|
+
/// rec.log("simple", rerun::Boxes2D::from_mins_and_sizes({{-1.f, -1.f}}, {{2.f, 2.f}}));
|
|
41
|
+
/// }
|
|
42
|
+
/// ```
|
|
43
|
+
struct Boxes2D {
|
|
44
|
+
/// All half-extents that make up the batch of boxes.
|
|
45
|
+
std::optional<ComponentBatch> half_sizes;
|
|
46
|
+
|
|
47
|
+
/// Optional center positions of the boxes.
|
|
48
|
+
std::optional<ComponentBatch> centers;
|
|
49
|
+
|
|
50
|
+
/// Optional colors for the boxes.
|
|
51
|
+
std::optional<ComponentBatch> colors;
|
|
52
|
+
|
|
53
|
+
/// Optional radii for the lines that make up the boxes.
|
|
54
|
+
std::optional<ComponentBatch> radii;
|
|
55
|
+
|
|
56
|
+
/// Optional text labels for the boxes.
|
|
57
|
+
///
|
|
58
|
+
/// If there's a single label present, it will be placed at the center of the entity.
|
|
59
|
+
/// Otherwise, each instance will have its own label.
|
|
60
|
+
std::optional<ComponentBatch> labels;
|
|
61
|
+
|
|
62
|
+
/// Optional choice of whether the text labels should be shown by default.
|
|
63
|
+
std::optional<ComponentBatch> show_labels;
|
|
64
|
+
|
|
65
|
+
/// An optional floating point value that specifies the 2D drawing order.
|
|
66
|
+
///
|
|
67
|
+
/// Objects with higher values are drawn on top of those with lower values.
|
|
68
|
+
/// Defaults to `10.0`.
|
|
69
|
+
std::optional<ComponentBatch> draw_order;
|
|
70
|
+
|
|
71
|
+
/// Optional `components::ClassId`s for the boxes.
|
|
72
|
+
///
|
|
73
|
+
/// The `components::ClassId` provides colors and labels if not specified explicitly.
|
|
74
|
+
std::optional<ComponentBatch> class_ids;
|
|
75
|
+
|
|
76
|
+
public:
|
|
77
|
+
static constexpr const char IndicatorComponentName[] = "rerun.components.Boxes2DIndicator";
|
|
78
|
+
|
|
79
|
+
/// Indicator component, used to identify the archetype when converting to a list of components.
|
|
80
|
+
using IndicatorComponent = rerun::components::IndicatorComponent<IndicatorComponentName>;
|
|
81
|
+
/// The name of the archetype as used in `ComponentDescriptor`s.
|
|
82
|
+
static constexpr const char ArchetypeName[] = "rerun.archetypes.Boxes2D";
|
|
83
|
+
|
|
84
|
+
/// `ComponentDescriptor` for the `half_sizes` field.
|
|
85
|
+
static constexpr auto Descriptor_half_sizes = ComponentDescriptor(
|
|
86
|
+
ArchetypeName, "half_sizes",
|
|
87
|
+
Loggable<rerun::components::HalfSize2D>::Descriptor.component_name
|
|
88
|
+
);
|
|
89
|
+
/// `ComponentDescriptor` for the `centers` field.
|
|
90
|
+
static constexpr auto Descriptor_centers = ComponentDescriptor(
|
|
91
|
+
ArchetypeName, "centers",
|
|
92
|
+
Loggable<rerun::components::Position2D>::Descriptor.component_name
|
|
93
|
+
);
|
|
94
|
+
/// `ComponentDescriptor` for the `colors` field.
|
|
95
|
+
static constexpr auto Descriptor_colors = ComponentDescriptor(
|
|
96
|
+
ArchetypeName, "colors", Loggable<rerun::components::Color>::Descriptor.component_name
|
|
97
|
+
);
|
|
98
|
+
/// `ComponentDescriptor` for the `radii` field.
|
|
99
|
+
static constexpr auto Descriptor_radii = ComponentDescriptor(
|
|
100
|
+
ArchetypeName, "radii", Loggable<rerun::components::Radius>::Descriptor.component_name
|
|
101
|
+
);
|
|
102
|
+
/// `ComponentDescriptor` for the `labels` field.
|
|
103
|
+
static constexpr auto Descriptor_labels = ComponentDescriptor(
|
|
104
|
+
ArchetypeName, "labels", Loggable<rerun::components::Text>::Descriptor.component_name
|
|
105
|
+
);
|
|
106
|
+
/// `ComponentDescriptor` for the `show_labels` field.
|
|
107
|
+
static constexpr auto Descriptor_show_labels = ComponentDescriptor(
|
|
108
|
+
ArchetypeName, "show_labels",
|
|
109
|
+
Loggable<rerun::components::ShowLabels>::Descriptor.component_name
|
|
110
|
+
);
|
|
111
|
+
/// `ComponentDescriptor` for the `draw_order` field.
|
|
112
|
+
static constexpr auto Descriptor_draw_order = ComponentDescriptor(
|
|
113
|
+
ArchetypeName, "draw_order",
|
|
114
|
+
Loggable<rerun::components::DrawOrder>::Descriptor.component_name
|
|
115
|
+
);
|
|
116
|
+
/// `ComponentDescriptor` for the `class_ids` field.
|
|
117
|
+
static constexpr auto Descriptor_class_ids = ComponentDescriptor(
|
|
118
|
+
ArchetypeName, "class_ids",
|
|
119
|
+
Loggable<rerun::components::ClassId>::Descriptor.component_name
|
|
120
|
+
);
|
|
121
|
+
|
|
122
|
+
public: // START of extensions from boxes2d_ext.cpp:
|
|
123
|
+
/// Creates new `Boxes2D` with `half_sizes` centered around the local origin.
|
|
124
|
+
static Boxes2D from_half_sizes(Collection<components::HalfSize2D> half_sizes) {
|
|
125
|
+
return Boxes2D().with_half_sizes(std::move(half_sizes));
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
/// Creates new `Boxes2D` with `centers` and `half_sizes`.
|
|
129
|
+
static Boxes2D from_centers_and_half_sizes(
|
|
130
|
+
Collection<components::Position2D> centers,
|
|
131
|
+
Collection<components::HalfSize2D> half_sizes
|
|
132
|
+
) {
|
|
133
|
+
return Boxes2D()
|
|
134
|
+
.with_half_sizes(std::move(half_sizes))
|
|
135
|
+
.with_centers(std::move(centers));
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
/// Creates new `Boxes2D` with `half_sizes` created from (full) sizes.
|
|
139
|
+
///
|
|
140
|
+
/// TODO(#3285): Does *not* preserve data as-is and instead creates half-sizes from the
|
|
141
|
+
/// input data.
|
|
142
|
+
static Boxes2D from_sizes(const std::vector<datatypes::Vec2D>& sizes);
|
|
143
|
+
|
|
144
|
+
/// Creates new `Boxes2D` with `centers` and `half_sizes` created from centers and (full)
|
|
145
|
+
/// sizes.
|
|
146
|
+
///
|
|
147
|
+
/// TODO(#3285): Does *not* preserve data as-is and instead creates centers and half-sizes
|
|
148
|
+
/// from the input data.
|
|
149
|
+
static Boxes2D from_centers_and_sizes(
|
|
150
|
+
Collection<components::Position2D> centers, const std::vector<datatypes::Vec2D>& sizes
|
|
151
|
+
) {
|
|
152
|
+
return from_sizes(std::move(sizes)).with_centers(std::move(centers));
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
/// Creates new `Boxes2D` with `half_sizes` and `centers` created from minimums and (full)
|
|
156
|
+
/// sizes.
|
|
157
|
+
///
|
|
158
|
+
/// TODO(#3285): Does *not* preserve data as-is and instead creates centers and half-sizes
|
|
159
|
+
/// from the input data.
|
|
160
|
+
static Boxes2D from_mins_and_sizes(
|
|
161
|
+
const std::vector<datatypes::Vec2D>& mins, const std::vector<datatypes::Vec2D>& sizes
|
|
162
|
+
);
|
|
163
|
+
|
|
164
|
+
// END of extensions from boxes2d_ext.cpp, start of generated code:
|
|
165
|
+
|
|
166
|
+
public:
|
|
167
|
+
Boxes2D() = default;
|
|
168
|
+
Boxes2D(Boxes2D&& other) = default;
|
|
169
|
+
Boxes2D(const Boxes2D& other) = default;
|
|
170
|
+
Boxes2D& operator=(const Boxes2D& other) = default;
|
|
171
|
+
Boxes2D& operator=(Boxes2D&& other) = default;
|
|
172
|
+
|
|
173
|
+
/// Update only some specific fields of a `Boxes2D`.
|
|
174
|
+
static Boxes2D update_fields() {
|
|
175
|
+
return Boxes2D();
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
/// Clear all the fields of a `Boxes2D`.
|
|
179
|
+
static Boxes2D clear_fields();
|
|
180
|
+
|
|
181
|
+
/// All half-extents that make up the batch of boxes.
|
|
182
|
+
Boxes2D with_half_sizes(const Collection<rerun::components::HalfSize2D>& _half_sizes) && {
|
|
183
|
+
half_sizes =
|
|
184
|
+
ComponentBatch::from_loggable(_half_sizes, Descriptor_half_sizes).value_or_throw();
|
|
185
|
+
return std::move(*this);
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
/// Optional center positions of the boxes.
|
|
189
|
+
Boxes2D with_centers(const Collection<rerun::components::Position2D>& _centers) && {
|
|
190
|
+
centers = ComponentBatch::from_loggable(_centers, Descriptor_centers).value_or_throw();
|
|
191
|
+
return std::move(*this);
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
/// Optional colors for the boxes.
|
|
195
|
+
Boxes2D with_colors(const Collection<rerun::components::Color>& _colors) && {
|
|
196
|
+
colors = ComponentBatch::from_loggable(_colors, Descriptor_colors).value_or_throw();
|
|
197
|
+
return std::move(*this);
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
/// Optional radii for the lines that make up the boxes.
|
|
201
|
+
Boxes2D with_radii(const Collection<rerun::components::Radius>& _radii) && {
|
|
202
|
+
radii = ComponentBatch::from_loggable(_radii, Descriptor_radii).value_or_throw();
|
|
203
|
+
return std::move(*this);
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
/// Optional text labels for the boxes.
|
|
207
|
+
///
|
|
208
|
+
/// If there's a single label present, it will be placed at the center of the entity.
|
|
209
|
+
/// Otherwise, each instance will have its own label.
|
|
210
|
+
Boxes2D with_labels(const Collection<rerun::components::Text>& _labels) && {
|
|
211
|
+
labels = ComponentBatch::from_loggable(_labels, Descriptor_labels).value_or_throw();
|
|
212
|
+
return std::move(*this);
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
/// Optional choice of whether the text labels should be shown by default.
|
|
216
|
+
Boxes2D with_show_labels(const rerun::components::ShowLabels& _show_labels) && {
|
|
217
|
+
show_labels = ComponentBatch::from_loggable(_show_labels, Descriptor_show_labels)
|
|
218
|
+
.value_or_throw();
|
|
219
|
+
return std::move(*this);
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
/// This method makes it possible to pack multiple `show_labels` in a single component batch.
|
|
223
|
+
///
|
|
224
|
+
/// This only makes sense when used in conjunction with `columns`. `with_show_labels` should
|
|
225
|
+
/// be used when logging a single row's worth of data.
|
|
226
|
+
Boxes2D with_many_show_labels(const Collection<rerun::components::ShowLabels>& _show_labels
|
|
227
|
+
) && {
|
|
228
|
+
show_labels = ComponentBatch::from_loggable(_show_labels, Descriptor_show_labels)
|
|
229
|
+
.value_or_throw();
|
|
230
|
+
return std::move(*this);
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
/// An optional floating point value that specifies the 2D drawing order.
|
|
234
|
+
///
|
|
235
|
+
/// Objects with higher values are drawn on top of those with lower values.
|
|
236
|
+
/// Defaults to `10.0`.
|
|
237
|
+
Boxes2D with_draw_order(const rerun::components::DrawOrder& _draw_order) && {
|
|
238
|
+
draw_order =
|
|
239
|
+
ComponentBatch::from_loggable(_draw_order, Descriptor_draw_order).value_or_throw();
|
|
240
|
+
return std::move(*this);
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
/// This method makes it possible to pack multiple `draw_order` in a single component batch.
|
|
244
|
+
///
|
|
245
|
+
/// This only makes sense when used in conjunction with `columns`. `with_draw_order` should
|
|
246
|
+
/// be used when logging a single row's worth of data.
|
|
247
|
+
Boxes2D with_many_draw_order(const Collection<rerun::components::DrawOrder>& _draw_order
|
|
248
|
+
) && {
|
|
249
|
+
draw_order =
|
|
250
|
+
ComponentBatch::from_loggable(_draw_order, Descriptor_draw_order).value_or_throw();
|
|
251
|
+
return std::move(*this);
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
/// Optional `components::ClassId`s for the boxes.
|
|
255
|
+
///
|
|
256
|
+
/// The `components::ClassId` provides colors and labels if not specified explicitly.
|
|
257
|
+
Boxes2D with_class_ids(const Collection<rerun::components::ClassId>& _class_ids) && {
|
|
258
|
+
class_ids =
|
|
259
|
+
ComponentBatch::from_loggable(_class_ids, Descriptor_class_ids).value_or_throw();
|
|
260
|
+
return std::move(*this);
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
/// Partitions the component data into multiple sub-batches.
|
|
264
|
+
///
|
|
265
|
+
/// Specifically, this transforms the existing `ComponentBatch` data into `ComponentColumn`s
|
|
266
|
+
/// instead, via `ComponentBatch::partitioned`.
|
|
267
|
+
///
|
|
268
|
+
/// This makes it possible to use `RecordingStream::send_columns` to send columnar data directly into Rerun.
|
|
269
|
+
///
|
|
270
|
+
/// The specified `lengths` must sum to the total length of the component batch.
|
|
271
|
+
Collection<ComponentColumn> columns(const Collection<uint32_t>& lengths_);
|
|
272
|
+
|
|
273
|
+
/// Partitions the component data into unit-length sub-batches.
|
|
274
|
+
///
|
|
275
|
+
/// This is semantically similar to calling `columns` with `std::vector<uint32_t>(n, 1)`,
|
|
276
|
+
/// where `n` is automatically guessed.
|
|
277
|
+
Collection<ComponentColumn> columns();
|
|
278
|
+
};
|
|
279
|
+
|
|
280
|
+
} // namespace rerun::archetypes
|
|
281
|
+
|
|
282
|
+
namespace rerun {
|
|
283
|
+
/// \private
|
|
284
|
+
template <typename T>
|
|
285
|
+
struct AsComponents;
|
|
286
|
+
|
|
287
|
+
/// \private
|
|
288
|
+
template <>
|
|
289
|
+
struct AsComponents<archetypes::Boxes2D> {
|
|
290
|
+
/// Serialize all set component batches.
|
|
291
|
+
static Result<Collection<ComponentBatch>> as_batches(const archetypes::Boxes2D& archetype);
|
|
292
|
+
};
|
|
293
|
+
} // namespace rerun
|