pymomentum-cpu 0.1.82.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.
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 +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 +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 +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 +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 +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 +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/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/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 +614 -0
- pymomentum/backend/trs_backend.py +871 -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 +856 -0
- pymomentum/torch/parameter_limits.py +494 -0
- pymomentum/torch/utility.py +20 -0
- pymomentum/trs.py +535 -0
- pymomentum_cpu-0.1.82.post0.dist-info/METADATA +121 -0
- pymomentum_cpu-0.1.82.post0.dist-info/RECORD +512 -0
- pymomentum_cpu-0.1.82.post0.dist-info/WHEEL +5 -0
- pymomentum_cpu-0.1.82.post0.dist-info/licenses/LICENSE +21 -0
|
@@ -0,0 +1,274 @@
|
|
|
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/series_line.fbs".
|
|
3
|
+
|
|
4
|
+
#pragma once
|
|
5
|
+
|
|
6
|
+
#include "../collection.hpp"
|
|
7
|
+
#include "../compiler_utils.hpp"
|
|
8
|
+
#include "../component_batch.hpp"
|
|
9
|
+
#include "../component_column.hpp"
|
|
10
|
+
#include "../components/aggregation_policy.hpp"
|
|
11
|
+
#include "../components/color.hpp"
|
|
12
|
+
#include "../components/name.hpp"
|
|
13
|
+
#include "../components/series_visible.hpp"
|
|
14
|
+
#include "../components/stroke_width.hpp"
|
|
15
|
+
#include "../indicator_component.hpp"
|
|
16
|
+
#include "../result.hpp"
|
|
17
|
+
|
|
18
|
+
#include <cstdint>
|
|
19
|
+
#include <optional>
|
|
20
|
+
#include <utility>
|
|
21
|
+
#include <vector>
|
|
22
|
+
|
|
23
|
+
RR_PUSH_WARNINGS
|
|
24
|
+
RR_DISABLE_DEPRECATION_WARNING
|
|
25
|
+
|
|
26
|
+
namespace rerun::archetypes {
|
|
27
|
+
/// **Archetype**: Define the style properties for a line series in a chart.
|
|
28
|
+
///
|
|
29
|
+
/// This archetype only provides styling information and should be logged as static
|
|
30
|
+
/// when possible. The underlying data needs to be logged to the same entity-path using
|
|
31
|
+
/// `archetypes::Scalars`.
|
|
32
|
+
///
|
|
33
|
+
/// ## Example
|
|
34
|
+
///
|
|
35
|
+
/// ### Line series
|
|
36
|
+
/// 
|
|
37
|
+
///
|
|
38
|
+
/// ```cpp
|
|
39
|
+
/// #include <rerun.hpp>
|
|
40
|
+
///
|
|
41
|
+
/// #include <cmath>
|
|
42
|
+
///
|
|
43
|
+
/// constexpr float TAU = 6.28318530717958647692528676655900577f;
|
|
44
|
+
///
|
|
45
|
+
/// int main() {
|
|
46
|
+
/// const auto rec = rerun::RecordingStream("rerun_example_series_line_style");
|
|
47
|
+
/// rec.spawn().exit_on_failure();
|
|
48
|
+
///
|
|
49
|
+
/// // Set up plot styling:
|
|
50
|
+
/// // They are logged static as they don't change over time and apply to all timelines.
|
|
51
|
+
/// // Log two lines series under a shared root so that they show in the same plot by default.
|
|
52
|
+
/// rec.log_static(
|
|
53
|
+
/// "trig/sin",
|
|
54
|
+
/// rerun::SeriesLines()
|
|
55
|
+
/// .with_colors(rerun::Rgba32{255, 0, 0})
|
|
56
|
+
/// .with_names("sin(0.01t)")
|
|
57
|
+
/// .with_widths(2.0f)
|
|
58
|
+
/// );
|
|
59
|
+
/// rec.log_static(
|
|
60
|
+
/// "trig/cos",
|
|
61
|
+
/// rerun::SeriesLines()
|
|
62
|
+
/// .with_colors(rerun::Rgba32{0, 255, 0})
|
|
63
|
+
/// .with_names("cos(0.01t)")
|
|
64
|
+
/// .with_widths(4.0f)
|
|
65
|
+
/// );
|
|
66
|
+
///
|
|
67
|
+
/// // Log the data on a timeline called "step".
|
|
68
|
+
/// for (int t = 0; t <static_cast<int>(TAU * 2.0 * 100.0); ++t) {
|
|
69
|
+
/// rec.set_time_sequence("step", t);
|
|
70
|
+
///
|
|
71
|
+
/// rec.log("trig/sin", rerun::Scalars(sin(static_cast<double>(t) / 100.0)));
|
|
72
|
+
/// rec.log("trig/cos", rerun::Scalars(cos(static_cast<double>(t) / 100.0)));
|
|
73
|
+
/// }
|
|
74
|
+
/// }
|
|
75
|
+
/// ```
|
|
76
|
+
///
|
|
77
|
+
/// ⚠ **Deprecated since 0.23.0**: Use `SeriesLines` instead.
|
|
78
|
+
///
|
|
79
|
+
struct [[deprecated("since 0.23.0: Use `SeriesLines` instead.")]] SeriesLine {
|
|
80
|
+
/// Color for the corresponding series.
|
|
81
|
+
std::optional<ComponentBatch> color;
|
|
82
|
+
|
|
83
|
+
/// Stroke width for the corresponding series.
|
|
84
|
+
std::optional<ComponentBatch> width;
|
|
85
|
+
|
|
86
|
+
/// Display name of the series.
|
|
87
|
+
///
|
|
88
|
+
/// Used in the legend.
|
|
89
|
+
std::optional<ComponentBatch> name;
|
|
90
|
+
|
|
91
|
+
/// Which lines are visible.
|
|
92
|
+
///
|
|
93
|
+
/// If not set, all line series on this entity are visible.
|
|
94
|
+
/// Unlike with the regular visibility property of the entire entity, any series that is hidden
|
|
95
|
+
/// via this property will still be visible in the legend.
|
|
96
|
+
std::optional<ComponentBatch> visible_series;
|
|
97
|
+
|
|
98
|
+
/// Configures the zoom-dependent scalar aggregation.
|
|
99
|
+
///
|
|
100
|
+
/// This is done only if steps on the X axis go below a single pixel,
|
|
101
|
+
/// i.e. a single pixel covers more than one tick worth of data. It can greatly improve performance
|
|
102
|
+
/// (and readability) in such situations as it prevents overdraw.
|
|
103
|
+
std::optional<ComponentBatch> aggregation_policy;
|
|
104
|
+
|
|
105
|
+
public:
|
|
106
|
+
static constexpr const char IndicatorComponentName[] =
|
|
107
|
+
"rerun.components.SeriesLineIndicator";
|
|
108
|
+
|
|
109
|
+
/// Indicator component, used to identify the archetype when converting to a list of components.
|
|
110
|
+
using IndicatorComponent = rerun::components::IndicatorComponent<IndicatorComponentName>;
|
|
111
|
+
/// The name of the archetype as used in `ComponentDescriptor`s.
|
|
112
|
+
static constexpr const char ArchetypeName[] = "rerun.archetypes.SeriesLine";
|
|
113
|
+
|
|
114
|
+
/// `ComponentDescriptor` for the `color` field.
|
|
115
|
+
static constexpr auto Descriptor_color = ComponentDescriptor(
|
|
116
|
+
ArchetypeName, "color", Loggable<rerun::components::Color>::Descriptor.component_name
|
|
117
|
+
);
|
|
118
|
+
/// `ComponentDescriptor` for the `width` field.
|
|
119
|
+
static constexpr auto Descriptor_width = ComponentDescriptor(
|
|
120
|
+
ArchetypeName, "width",
|
|
121
|
+
Loggable<rerun::components::StrokeWidth>::Descriptor.component_name
|
|
122
|
+
);
|
|
123
|
+
/// `ComponentDescriptor` for the `name` field.
|
|
124
|
+
static constexpr auto Descriptor_name = ComponentDescriptor(
|
|
125
|
+
ArchetypeName, "name", Loggable<rerun::components::Name>::Descriptor.component_name
|
|
126
|
+
);
|
|
127
|
+
/// `ComponentDescriptor` for the `visible_series` field.
|
|
128
|
+
static constexpr auto Descriptor_visible_series = ComponentDescriptor(
|
|
129
|
+
ArchetypeName, "visible_series",
|
|
130
|
+
Loggable<rerun::components::SeriesVisible>::Descriptor.component_name
|
|
131
|
+
);
|
|
132
|
+
/// `ComponentDescriptor` for the `aggregation_policy` field.
|
|
133
|
+
static constexpr auto Descriptor_aggregation_policy = ComponentDescriptor(
|
|
134
|
+
ArchetypeName, "aggregation_policy",
|
|
135
|
+
Loggable<rerun::components::AggregationPolicy>::Descriptor.component_name
|
|
136
|
+
);
|
|
137
|
+
|
|
138
|
+
public:
|
|
139
|
+
SeriesLine() = default;
|
|
140
|
+
SeriesLine(SeriesLine&& other) = default;
|
|
141
|
+
SeriesLine(const SeriesLine& other) = default;
|
|
142
|
+
SeriesLine& operator=(const SeriesLine& other) = default;
|
|
143
|
+
SeriesLine& operator=(SeriesLine&& other) = default;
|
|
144
|
+
|
|
145
|
+
/// Update only some specific fields of a `SeriesLine`.
|
|
146
|
+
static SeriesLine update_fields() {
|
|
147
|
+
return SeriesLine();
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
/// Clear all the fields of a `SeriesLine`.
|
|
151
|
+
static SeriesLine clear_fields();
|
|
152
|
+
|
|
153
|
+
/// Color for the corresponding series.
|
|
154
|
+
SeriesLine with_color(const rerun::components::Color& _color) && {
|
|
155
|
+
color = ComponentBatch::from_loggable(_color, Descriptor_color).value_or_throw();
|
|
156
|
+
return std::move(*this);
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
/// This method makes it possible to pack multiple `color` in a single component batch.
|
|
160
|
+
///
|
|
161
|
+
/// This only makes sense when used in conjunction with `columns`. `with_color` should
|
|
162
|
+
/// be used when logging a single row's worth of data.
|
|
163
|
+
SeriesLine with_many_color(const Collection<rerun::components::Color>& _color) && {
|
|
164
|
+
color = ComponentBatch::from_loggable(_color, Descriptor_color).value_or_throw();
|
|
165
|
+
return std::move(*this);
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
/// Stroke width for the corresponding series.
|
|
169
|
+
SeriesLine with_width(const rerun::components::StrokeWidth& _width) && {
|
|
170
|
+
width = ComponentBatch::from_loggable(_width, Descriptor_width).value_or_throw();
|
|
171
|
+
return std::move(*this);
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
/// This method makes it possible to pack multiple `width` in a single component batch.
|
|
175
|
+
///
|
|
176
|
+
/// This only makes sense when used in conjunction with `columns`. `with_width` should
|
|
177
|
+
/// be used when logging a single row's worth of data.
|
|
178
|
+
SeriesLine with_many_width(const Collection<rerun::components::StrokeWidth>& _width) && {
|
|
179
|
+
width = ComponentBatch::from_loggable(_width, Descriptor_width).value_or_throw();
|
|
180
|
+
return std::move(*this);
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
/// Display name of the series.
|
|
184
|
+
///
|
|
185
|
+
/// Used in the legend.
|
|
186
|
+
SeriesLine with_name(const rerun::components::Name& _name) && {
|
|
187
|
+
name = ComponentBatch::from_loggable(_name, Descriptor_name).value_or_throw();
|
|
188
|
+
return std::move(*this);
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
/// This method makes it possible to pack multiple `name` in a single component batch.
|
|
192
|
+
///
|
|
193
|
+
/// This only makes sense when used in conjunction with `columns`. `with_name` should
|
|
194
|
+
/// be used when logging a single row's worth of data.
|
|
195
|
+
SeriesLine with_many_name(const Collection<rerun::components::Name>& _name) && {
|
|
196
|
+
name = ComponentBatch::from_loggable(_name, Descriptor_name).value_or_throw();
|
|
197
|
+
return std::move(*this);
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
/// Which lines are visible.
|
|
201
|
+
///
|
|
202
|
+
/// If not set, all line series on this entity are visible.
|
|
203
|
+
/// Unlike with the regular visibility property of the entire entity, any series that is hidden
|
|
204
|
+
/// via this property will still be visible in the legend.
|
|
205
|
+
SeriesLine with_visible_series(
|
|
206
|
+
const Collection<rerun::components::SeriesVisible>& _visible_series
|
|
207
|
+
) && {
|
|
208
|
+
visible_series =
|
|
209
|
+
ComponentBatch::from_loggable(_visible_series, Descriptor_visible_series)
|
|
210
|
+
.value_or_throw();
|
|
211
|
+
return std::move(*this);
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
/// Configures the zoom-dependent scalar aggregation.
|
|
215
|
+
///
|
|
216
|
+
/// This is done only if steps on the X axis go below a single pixel,
|
|
217
|
+
/// i.e. a single pixel covers more than one tick worth of data. It can greatly improve performance
|
|
218
|
+
/// (and readability) in such situations as it prevents overdraw.
|
|
219
|
+
SeriesLine with_aggregation_policy(
|
|
220
|
+
const rerun::components::AggregationPolicy& _aggregation_policy
|
|
221
|
+
) && {
|
|
222
|
+
aggregation_policy =
|
|
223
|
+
ComponentBatch::from_loggable(_aggregation_policy, Descriptor_aggregation_policy)
|
|
224
|
+
.value_or_throw();
|
|
225
|
+
return std::move(*this);
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
/// This method makes it possible to pack multiple `aggregation_policy` in a single component batch.
|
|
229
|
+
///
|
|
230
|
+
/// This only makes sense when used in conjunction with `columns`. `with_aggregation_policy` should
|
|
231
|
+
/// be used when logging a single row's worth of data.
|
|
232
|
+
SeriesLine with_many_aggregation_policy(
|
|
233
|
+
const Collection<rerun::components::AggregationPolicy>& _aggregation_policy
|
|
234
|
+
) && {
|
|
235
|
+
aggregation_policy =
|
|
236
|
+
ComponentBatch::from_loggable(_aggregation_policy, Descriptor_aggregation_policy)
|
|
237
|
+
.value_or_throw();
|
|
238
|
+
return std::move(*this);
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
/// Partitions the component data into multiple sub-batches.
|
|
242
|
+
///
|
|
243
|
+
/// Specifically, this transforms the existing `ComponentBatch` data into `ComponentColumn`s
|
|
244
|
+
/// instead, via `ComponentBatch::partitioned`.
|
|
245
|
+
///
|
|
246
|
+
/// This makes it possible to use `RecordingStream::send_columns` to send columnar data directly into Rerun.
|
|
247
|
+
///
|
|
248
|
+
/// The specified `lengths` must sum to the total length of the component batch.
|
|
249
|
+
Collection<ComponentColumn> columns(const Collection<uint32_t>& lengths_);
|
|
250
|
+
|
|
251
|
+
/// Partitions the component data into unit-length sub-batches.
|
|
252
|
+
///
|
|
253
|
+
/// This is semantically similar to calling `columns` with `std::vector<uint32_t>(n, 1)`,
|
|
254
|
+
/// where `n` is automatically guessed.
|
|
255
|
+
Collection<ComponentColumn> columns();
|
|
256
|
+
};
|
|
257
|
+
|
|
258
|
+
} // namespace rerun::archetypes
|
|
259
|
+
|
|
260
|
+
namespace rerun {
|
|
261
|
+
/// \private
|
|
262
|
+
template <typename T>
|
|
263
|
+
struct AsComponents;
|
|
264
|
+
|
|
265
|
+
/// \private
|
|
266
|
+
template <>
|
|
267
|
+
struct AsComponents<archetypes::SeriesLine> {
|
|
268
|
+
/// Serialize all set component batches.
|
|
269
|
+
static Result<Collection<ComponentBatch>> as_batches(const archetypes::SeriesLine& archetype
|
|
270
|
+
);
|
|
271
|
+
};
|
|
272
|
+
} // namespace rerun
|
|
273
|
+
|
|
274
|
+
RR_POP_WARNINGS
|
|
@@ -0,0 +1,271 @@
|
|
|
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/series_lines.fbs".
|
|
3
|
+
|
|
4
|
+
#pragma once
|
|
5
|
+
|
|
6
|
+
#include "../collection.hpp"
|
|
7
|
+
#include "../component_batch.hpp"
|
|
8
|
+
#include "../component_column.hpp"
|
|
9
|
+
#include "../components/aggregation_policy.hpp"
|
|
10
|
+
#include "../components/color.hpp"
|
|
11
|
+
#include "../components/name.hpp"
|
|
12
|
+
#include "../components/series_visible.hpp"
|
|
13
|
+
#include "../components/stroke_width.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**: Define the style properties for one or more line series in a chart.
|
|
24
|
+
///
|
|
25
|
+
/// This archetype only provides styling information.
|
|
26
|
+
/// Changes over time are supported for most but not all its fields (see respective fields for details),
|
|
27
|
+
/// it's generally recommended to log this type as static.
|
|
28
|
+
///
|
|
29
|
+
/// The underlying data needs to be logged to the same entity-path using `archetypes::Scalars`.
|
|
30
|
+
/// Dimensionality of the scalar arrays logged at each time point is assumed to be the same over time.
|
|
31
|
+
///
|
|
32
|
+
/// ## Example
|
|
33
|
+
///
|
|
34
|
+
/// ### Line series
|
|
35
|
+
/// 
|
|
36
|
+
///
|
|
37
|
+
/// ```cpp
|
|
38
|
+
/// #include <rerun.hpp>
|
|
39
|
+
///
|
|
40
|
+
/// #include <cmath>
|
|
41
|
+
///
|
|
42
|
+
/// constexpr float TAU = 6.28318530717958647692528676655900577f;
|
|
43
|
+
///
|
|
44
|
+
/// int main() {
|
|
45
|
+
/// const auto rec = rerun::RecordingStream("rerun_example_series_line_style");
|
|
46
|
+
/// rec.spawn().exit_on_failure();
|
|
47
|
+
///
|
|
48
|
+
/// // Set up plot styling:
|
|
49
|
+
/// // They are logged static as they don't change over time and apply to all timelines.
|
|
50
|
+
/// // Log two lines series under a shared root so that they show in the same plot by default.
|
|
51
|
+
/// rec.log_static(
|
|
52
|
+
/// "trig/sin",
|
|
53
|
+
/// rerun::SeriesLines()
|
|
54
|
+
/// .with_colors(rerun::Rgba32{255, 0, 0})
|
|
55
|
+
/// .with_names("sin(0.01t)")
|
|
56
|
+
/// .with_widths(2.0f)
|
|
57
|
+
/// );
|
|
58
|
+
/// rec.log_static(
|
|
59
|
+
/// "trig/cos",
|
|
60
|
+
/// rerun::SeriesLines()
|
|
61
|
+
/// .with_colors(rerun::Rgba32{0, 255, 0})
|
|
62
|
+
/// .with_names("cos(0.01t)")
|
|
63
|
+
/// .with_widths(4.0f)
|
|
64
|
+
/// );
|
|
65
|
+
///
|
|
66
|
+
/// // Log the data on a timeline called "step".
|
|
67
|
+
/// for (int t = 0; t <static_cast<int>(TAU * 2.0 * 100.0); ++t) {
|
|
68
|
+
/// rec.set_time_sequence("step", t);
|
|
69
|
+
///
|
|
70
|
+
/// rec.log("trig/sin", rerun::Scalars(sin(static_cast<double>(t) / 100.0)));
|
|
71
|
+
/// rec.log("trig/cos", rerun::Scalars(cos(static_cast<double>(t) / 100.0)));
|
|
72
|
+
/// }
|
|
73
|
+
/// }
|
|
74
|
+
/// ```
|
|
75
|
+
struct SeriesLines {
|
|
76
|
+
/// Color for the corresponding series.
|
|
77
|
+
///
|
|
78
|
+
/// May change over time, but can cause discontinuities in the line.
|
|
79
|
+
std::optional<ComponentBatch> colors;
|
|
80
|
+
|
|
81
|
+
/// Stroke width for the corresponding series.
|
|
82
|
+
///
|
|
83
|
+
/// May change over time, but can cause discontinuities in the line.
|
|
84
|
+
std::optional<ComponentBatch> widths;
|
|
85
|
+
|
|
86
|
+
/// Display name of the series.
|
|
87
|
+
///
|
|
88
|
+
/// Used in the legend. Expected to be unchanging over time.
|
|
89
|
+
std::optional<ComponentBatch> names;
|
|
90
|
+
|
|
91
|
+
/// Which lines are visible.
|
|
92
|
+
///
|
|
93
|
+
/// If not set, all line series on this entity are visible.
|
|
94
|
+
/// Unlike with the regular visibility property of the entire entity, any series that is hidden
|
|
95
|
+
/// via this property will still be visible in the legend.
|
|
96
|
+
///
|
|
97
|
+
/// May change over time, but can cause discontinuities in the line.
|
|
98
|
+
std::optional<ComponentBatch> visible_series;
|
|
99
|
+
|
|
100
|
+
/// Configures the zoom-dependent scalar aggregation.
|
|
101
|
+
///
|
|
102
|
+
/// This is done only if steps on the X axis go below a single pixel,
|
|
103
|
+
/// i.e. a single pixel covers more than one tick worth of data. It can greatly improve performance
|
|
104
|
+
/// (and readability) in such situations as it prevents overdraw.
|
|
105
|
+
///
|
|
106
|
+
/// Expected to be unchanging over time.
|
|
107
|
+
std::optional<ComponentBatch> aggregation_policy;
|
|
108
|
+
|
|
109
|
+
public:
|
|
110
|
+
static constexpr const char IndicatorComponentName[] =
|
|
111
|
+
"rerun.components.SeriesLinesIndicator";
|
|
112
|
+
|
|
113
|
+
/// Indicator component, used to identify the archetype when converting to a list of components.
|
|
114
|
+
using IndicatorComponent = rerun::components::IndicatorComponent<IndicatorComponentName>;
|
|
115
|
+
/// The name of the archetype as used in `ComponentDescriptor`s.
|
|
116
|
+
static constexpr const char ArchetypeName[] = "rerun.archetypes.SeriesLines";
|
|
117
|
+
|
|
118
|
+
/// `ComponentDescriptor` for the `colors` field.
|
|
119
|
+
static constexpr auto Descriptor_colors = ComponentDescriptor(
|
|
120
|
+
ArchetypeName, "colors", Loggable<rerun::components::Color>::Descriptor.component_name
|
|
121
|
+
);
|
|
122
|
+
/// `ComponentDescriptor` for the `widths` field.
|
|
123
|
+
static constexpr auto Descriptor_widths = ComponentDescriptor(
|
|
124
|
+
ArchetypeName, "widths",
|
|
125
|
+
Loggable<rerun::components::StrokeWidth>::Descriptor.component_name
|
|
126
|
+
);
|
|
127
|
+
/// `ComponentDescriptor` for the `names` field.
|
|
128
|
+
static constexpr auto Descriptor_names = ComponentDescriptor(
|
|
129
|
+
ArchetypeName, "names", Loggable<rerun::components::Name>::Descriptor.component_name
|
|
130
|
+
);
|
|
131
|
+
/// `ComponentDescriptor` for the `visible_series` field.
|
|
132
|
+
static constexpr auto Descriptor_visible_series = ComponentDescriptor(
|
|
133
|
+
ArchetypeName, "visible_series",
|
|
134
|
+
Loggable<rerun::components::SeriesVisible>::Descriptor.component_name
|
|
135
|
+
);
|
|
136
|
+
/// `ComponentDescriptor` for the `aggregation_policy` field.
|
|
137
|
+
static constexpr auto Descriptor_aggregation_policy = ComponentDescriptor(
|
|
138
|
+
ArchetypeName, "aggregation_policy",
|
|
139
|
+
Loggable<rerun::components::AggregationPolicy>::Descriptor.component_name
|
|
140
|
+
);
|
|
141
|
+
|
|
142
|
+
public: // START of extensions from series_lines_ext.cpp:
|
|
143
|
+
// Overload needed to avoid confusion with passing single strings.
|
|
144
|
+
/// Display name of the series.
|
|
145
|
+
///
|
|
146
|
+
/// Used in the legend. Expected to be unchanging over time.
|
|
147
|
+
SeriesLines with_names(const char* _name) && {
|
|
148
|
+
names = ComponentBatch::from_loggable(rerun::components::Name(_name), Descriptor_names)
|
|
149
|
+
.value_or_throw();
|
|
150
|
+
return std::move(*this);
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
// END of extensions from series_lines_ext.cpp, start of generated code:
|
|
154
|
+
|
|
155
|
+
public:
|
|
156
|
+
SeriesLines() = default;
|
|
157
|
+
SeriesLines(SeriesLines&& other) = default;
|
|
158
|
+
SeriesLines(const SeriesLines& other) = default;
|
|
159
|
+
SeriesLines& operator=(const SeriesLines& other) = default;
|
|
160
|
+
SeriesLines& operator=(SeriesLines&& other) = default;
|
|
161
|
+
|
|
162
|
+
/// Update only some specific fields of a `SeriesLines`.
|
|
163
|
+
static SeriesLines update_fields() {
|
|
164
|
+
return SeriesLines();
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
/// Clear all the fields of a `SeriesLines`.
|
|
168
|
+
static SeriesLines clear_fields();
|
|
169
|
+
|
|
170
|
+
/// Color for the corresponding series.
|
|
171
|
+
///
|
|
172
|
+
/// May change over time, but can cause discontinuities in the line.
|
|
173
|
+
SeriesLines with_colors(const Collection<rerun::components::Color>& _colors) && {
|
|
174
|
+
colors = ComponentBatch::from_loggable(_colors, Descriptor_colors).value_or_throw();
|
|
175
|
+
return std::move(*this);
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
/// Stroke width for the corresponding series.
|
|
179
|
+
///
|
|
180
|
+
/// May change over time, but can cause discontinuities in the line.
|
|
181
|
+
SeriesLines with_widths(const Collection<rerun::components::StrokeWidth>& _widths) && {
|
|
182
|
+
widths = ComponentBatch::from_loggable(_widths, Descriptor_widths).value_or_throw();
|
|
183
|
+
return std::move(*this);
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
/// Display name of the series.
|
|
187
|
+
///
|
|
188
|
+
/// Used in the legend. Expected to be unchanging over time.
|
|
189
|
+
SeriesLines with_names(const Collection<rerun::components::Name>& _names) && {
|
|
190
|
+
names = ComponentBatch::from_loggable(_names, Descriptor_names).value_or_throw();
|
|
191
|
+
return std::move(*this);
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
/// Which lines are visible.
|
|
195
|
+
///
|
|
196
|
+
/// If not set, all line series on this entity are visible.
|
|
197
|
+
/// Unlike with the regular visibility property of the entire entity, any series that is hidden
|
|
198
|
+
/// via this property will still be visible in the legend.
|
|
199
|
+
///
|
|
200
|
+
/// May change over time, but can cause discontinuities in the line.
|
|
201
|
+
SeriesLines with_visible_series(
|
|
202
|
+
const Collection<rerun::components::SeriesVisible>& _visible_series
|
|
203
|
+
) && {
|
|
204
|
+
visible_series =
|
|
205
|
+
ComponentBatch::from_loggable(_visible_series, Descriptor_visible_series)
|
|
206
|
+
.value_or_throw();
|
|
207
|
+
return std::move(*this);
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
/// Configures the zoom-dependent scalar aggregation.
|
|
211
|
+
///
|
|
212
|
+
/// This is done only if steps on the X axis go below a single pixel,
|
|
213
|
+
/// i.e. a single pixel covers more than one tick worth of data. It can greatly improve performance
|
|
214
|
+
/// (and readability) in such situations as it prevents overdraw.
|
|
215
|
+
///
|
|
216
|
+
/// Expected to be unchanging over time.
|
|
217
|
+
SeriesLines with_aggregation_policy(
|
|
218
|
+
const rerun::components::AggregationPolicy& _aggregation_policy
|
|
219
|
+
) && {
|
|
220
|
+
aggregation_policy =
|
|
221
|
+
ComponentBatch::from_loggable(_aggregation_policy, Descriptor_aggregation_policy)
|
|
222
|
+
.value_or_throw();
|
|
223
|
+
return std::move(*this);
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
/// This method makes it possible to pack multiple `aggregation_policy` in a single component batch.
|
|
227
|
+
///
|
|
228
|
+
/// This only makes sense when used in conjunction with `columns`. `with_aggregation_policy` should
|
|
229
|
+
/// be used when logging a single row's worth of data.
|
|
230
|
+
SeriesLines with_many_aggregation_policy(
|
|
231
|
+
const Collection<rerun::components::AggregationPolicy>& _aggregation_policy
|
|
232
|
+
) && {
|
|
233
|
+
aggregation_policy =
|
|
234
|
+
ComponentBatch::from_loggable(_aggregation_policy, Descriptor_aggregation_policy)
|
|
235
|
+
.value_or_throw();
|
|
236
|
+
return std::move(*this);
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
/// Partitions the component data into multiple sub-batches.
|
|
240
|
+
///
|
|
241
|
+
/// Specifically, this transforms the existing `ComponentBatch` data into `ComponentColumn`s
|
|
242
|
+
/// instead, via `ComponentBatch::partitioned`.
|
|
243
|
+
///
|
|
244
|
+
/// This makes it possible to use `RecordingStream::send_columns` to send columnar data directly into Rerun.
|
|
245
|
+
///
|
|
246
|
+
/// The specified `lengths` must sum to the total length of the component batch.
|
|
247
|
+
Collection<ComponentColumn> columns(const Collection<uint32_t>& lengths_);
|
|
248
|
+
|
|
249
|
+
/// Partitions the component data into unit-length sub-batches.
|
|
250
|
+
///
|
|
251
|
+
/// This is semantically similar to calling `columns` with `std::vector<uint32_t>(n, 1)`,
|
|
252
|
+
/// where `n` is automatically guessed.
|
|
253
|
+
Collection<ComponentColumn> columns();
|
|
254
|
+
};
|
|
255
|
+
|
|
256
|
+
} // namespace rerun::archetypes
|
|
257
|
+
|
|
258
|
+
namespace rerun {
|
|
259
|
+
/// \private
|
|
260
|
+
template <typename T>
|
|
261
|
+
struct AsComponents;
|
|
262
|
+
|
|
263
|
+
/// \private
|
|
264
|
+
template <>
|
|
265
|
+
struct AsComponents<archetypes::SeriesLines> {
|
|
266
|
+
/// Serialize all set component batches.
|
|
267
|
+
static Result<Collection<ComponentBatch>> as_batches(
|
|
268
|
+
const archetypes::SeriesLines& archetype
|
|
269
|
+
);
|
|
270
|
+
};
|
|
271
|
+
} // namespace rerun
|