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.
- include/axel/BoundingBox.h +58 -0
- include/axel/Bvh.h +708 -0
- include/axel/BvhBase.h +75 -0
- include/axel/BvhCommon.h +43 -0
- include/axel/BvhEmbree.h +86 -0
- include/axel/BvhFactory.h +34 -0
- include/axel/Checks.h +21 -0
- include/axel/DualContouring.h +79 -0
- include/axel/KdTree.h +199 -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 +91 -0
- include/momentum/character/blend_shape_base.h +70 -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 +82 -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 +250 -0
- include/momentum/character/pose_shape.h +65 -0
- include/momentum/character/skeleton.h +85 -0
- include/momentum/character/skeleton_state.h +181 -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 +144 -0
- include/momentum/character_sequence_solver/sequence_solver_function.h +134 -0
- include/momentum/character_sequence_solver/state_sequence_error_function.h +109 -0
- include/momentum/character_sequence_solver/vertex_sequence_error_function.h +128 -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 +924 -0
- include/momentum/character_solver/gauss_newton_solver_qr.h +64 -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 +94 -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 +126 -0
- include/momentum/character_solver/vertex_vertex_distance_error_function.h +151 -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 +56 -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 +109 -0
- include/momentum/io/fbx/fbx_memory_stream.h +66 -0
- include/momentum/io/fbx/openfbx_loader.h +49 -0
- include/momentum/io/fbx/polygon_data.h +60 -0
- include/momentum/io/gltf/gltf_builder.h +132 -0
- include/momentum/io/gltf/gltf_file_format.h +19 -0
- include/momentum/io/gltf/gltf_io.h +148 -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 +29 -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 +54 -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 +70 -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 +25 -0
- include/momentum/io/skeleton/parameter_transform_io.h +41 -0
- include/momentum/io/skeleton/parameters_io.h +20 -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 +62 -0
- include/momentum/marker_tracking/marker_tracker.h +213 -0
- include/momentum/marker_tracking/process_markers.h +58 -0
- include/momentum/marker_tracking/tracker_utils.h +90 -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 +251 -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/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/arrow_bundled_dependencies.lib +0 -0
- lib/arrow_static.lib +0 -0
- lib/axel.lib +0 -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/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 +377 -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/momentum_app_utils.lib +0 -0
- lib/momentum_character.lib +0 -0
- lib/momentum_character_sequence_solver.lib +0 -0
- lib/momentum_character_solver.lib +0 -0
- lib/momentum_common.lib +0 -0
- lib/momentum_diff_ik.lib +0 -0
- lib/momentum_io.lib +0 -0
- lib/momentum_io_common.lib +0 -0
- lib/momentum_io_fbx.lib +0 -0
- lib/momentum_io_gltf.lib +0 -0
- lib/momentum_io_legacy_json.lib +0 -0
- lib/momentum_io_marker.lib +0 -0
- lib/momentum_io_motion.lib +0 -0
- lib/momentum_io_shape.lib +0 -0
- lib/momentum_io_skeleton.lib +0 -0
- lib/momentum_io_urdf.lib +0 -0
- lib/momentum_marker_tracker.lib +0 -0
- lib/momentum_math.lib +0 -0
- lib/momentum_online_qr.lib +0 -0
- lib/momentum_process_markers.lib +0 -0
- lib/momentum_rerun.lib +0 -0
- lib/momentum_simd_constraints.lib +0 -0
- lib/momentum_simd_generalized_loss.lib +0 -0
- lib/momentum_skeleton.lib +0 -0
- lib/momentum_solver.lib +0 -0
- lib/rerun_c__win_x64.lib +0 -0
- lib/rerun_sdk.lib +0 -0
- pymomentum/axel.cp313-win_amd64.pyd +0 -0
- pymomentum/backend/__init__.py +16 -0
- pymomentum/backend/skel_state_backend.py +614 -0
- pymomentum/backend/trs_backend.py +871 -0
- pymomentum/backend/utils.py +224 -0
- pymomentum/geometry.cp313-win_amd64.pyd +0 -0
- pymomentum/marker_tracking.cp313-win_amd64.pyd +0 -0
- pymomentum/quaternion.py +740 -0
- pymomentum/skel_state.py +514 -0
- pymomentum/solver.cp313-win_amd64.pyd +0 -0
- pymomentum/solver2.cp313-win_amd64.pyd +0 -0
- pymomentum/torch/character.py +809 -0
- pymomentum/torch/parameter_limits.py +494 -0
- pymomentum/torch/utility.py +20 -0
- pymomentum/trs.py +535 -0
- pymomentum_cpu-0.1.78.post11.dist-info/METADATA +121 -0
- pymomentum_cpu-0.1.78.post11.dist-info/RECORD +512 -0
- pymomentum_cpu-0.1.78.post11.dist-info/WHEEL +5 -0
- 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
|
+
/// 
|
|
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
|
+
/// 
|
|
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
|