pymomentum-cpu 0.1.77.post26__cp313-cp313-macosx_15_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 +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/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-313-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-313-darwin.so +0 -0
- pymomentum/marker_tracking.cpython-313-darwin.so +0 -0
- pymomentum/quaternion.py +740 -0
- pymomentum/skel_state.py +514 -0
- pymomentum/solver.cpython-313-darwin.so +0 -0
- pymomentum/solver2.cpython-313-darwin.so +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.77.post26.dist-info/METADATA +208 -0
- pymomentum_cpu-0.1.77.post26.dist-info/RECORD +512 -0
- pymomentum_cpu-0.1.77.post26.dist-info/WHEEL +5 -0
- pymomentum_cpu-0.1.77.post26.dist-info/licenses/LICENSE +21 -0
|
@@ -0,0 +1,385 @@
|
|
|
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/pinhole.fbs".
|
|
3
|
+
|
|
4
|
+
#pragma once
|
|
5
|
+
|
|
6
|
+
#include "../collection.hpp"
|
|
7
|
+
#include "../component_batch.hpp"
|
|
8
|
+
#include "../component_column.hpp"
|
|
9
|
+
#include "../components/image_plane_distance.hpp"
|
|
10
|
+
#include "../components/pinhole_projection.hpp"
|
|
11
|
+
#include "../components/resolution.hpp"
|
|
12
|
+
#include "../components/view_coordinates.hpp"
|
|
13
|
+
#include "../indicator_component.hpp"
|
|
14
|
+
#include "../result.hpp"
|
|
15
|
+
|
|
16
|
+
#include <cmath>
|
|
17
|
+
#include <cstdint>
|
|
18
|
+
#include <limits>
|
|
19
|
+
#include <optional>
|
|
20
|
+
#include <utility>
|
|
21
|
+
#include <vector>
|
|
22
|
+
|
|
23
|
+
namespace rerun::archetypes {
|
|
24
|
+
/// **Archetype**: Camera perspective projection (a.k.a. intrinsics).
|
|
25
|
+
///
|
|
26
|
+
/// ## Examples
|
|
27
|
+
///
|
|
28
|
+
/// ### Simple pinhole camera
|
|
29
|
+
/// 
|
|
30
|
+
///
|
|
31
|
+
/// ```cpp
|
|
32
|
+
/// #include <rerun.hpp>
|
|
33
|
+
///
|
|
34
|
+
/// #include <algorithm> // std::generate
|
|
35
|
+
/// #include <cstdlib> // std::rand
|
|
36
|
+
/// #include <vector>
|
|
37
|
+
///
|
|
38
|
+
/// int main() {
|
|
39
|
+
/// const auto rec = rerun::RecordingStream("rerun_example_pinhole");
|
|
40
|
+
/// rec.spawn().exit_on_failure();
|
|
41
|
+
///
|
|
42
|
+
/// rec.log("world/image", rerun::Pinhole::from_focal_length_and_resolution(3.0f, {3.0f, 3.0f}));
|
|
43
|
+
///
|
|
44
|
+
/// std::vector<uint8_t> random_data(3 * 3 * 3);
|
|
45
|
+
/// std::generate(random_data.begin(), random_data.end(), [] {
|
|
46
|
+
/// return static_cast<uint8_t>(std::rand());
|
|
47
|
+
/// });
|
|
48
|
+
///
|
|
49
|
+
/// rec.log("world/image", rerun::Image::from_rgb24(random_data, {3, 3}));
|
|
50
|
+
/// }
|
|
51
|
+
/// ```
|
|
52
|
+
///
|
|
53
|
+
/// ### Perspective pinhole camera
|
|
54
|
+
/// 
|
|
55
|
+
///
|
|
56
|
+
/// ```cpp
|
|
57
|
+
/// #include <rerun.hpp>
|
|
58
|
+
///
|
|
59
|
+
/// int main() {
|
|
60
|
+
/// const auto rec = rerun::RecordingStream("rerun_example_pinhole_perspective");
|
|
61
|
+
/// rec.spawn().exit_on_failure();
|
|
62
|
+
///
|
|
63
|
+
/// const float fov_y = 0.7853982f;
|
|
64
|
+
/// const float aspect_ratio = 1.7777778f;
|
|
65
|
+
/// rec.log(
|
|
66
|
+
/// "world/cam",
|
|
67
|
+
/// rerun::Pinhole::from_fov_and_aspect_ratio(fov_y, aspect_ratio)
|
|
68
|
+
/// .with_camera_xyz(rerun::components::ViewCoordinates::RUB)
|
|
69
|
+
/// .with_image_plane_distance(0.1f)
|
|
70
|
+
/// );
|
|
71
|
+
///
|
|
72
|
+
/// rec.log(
|
|
73
|
+
/// "world/points",
|
|
74
|
+
/// rerun::Points3D({{0.0f, 0.0f, -0.5f}, {0.1f, 0.1f, -0.5f}, {-0.1f, -0.1f, -0.5f}}
|
|
75
|
+
/// ).with_radii({0.025f})
|
|
76
|
+
/// );
|
|
77
|
+
/// }
|
|
78
|
+
/// ```
|
|
79
|
+
///
|
|
80
|
+
/// ⚠ **This type is _unstable_ and may change significantly in a way that the data won't be backwards compatible.**
|
|
81
|
+
///
|
|
82
|
+
struct Pinhole {
|
|
83
|
+
/// Camera projection, from image coordinates to view coordinates.
|
|
84
|
+
std::optional<ComponentBatch> image_from_camera;
|
|
85
|
+
|
|
86
|
+
/// Pixel resolution (usually integers) of child image space. Width and height.
|
|
87
|
+
///
|
|
88
|
+
/// Example:
|
|
89
|
+
/// ```text
|
|
90
|
+
/// [1920.0, 1440.0]
|
|
91
|
+
/// ```
|
|
92
|
+
///
|
|
93
|
+
/// `image_from_camera` project onto the space spanned by `(0,0)` and `resolution - 1`.
|
|
94
|
+
std::optional<ComponentBatch> resolution;
|
|
95
|
+
|
|
96
|
+
/// Sets the view coordinates for the camera.
|
|
97
|
+
///
|
|
98
|
+
/// All common values are available as constants on the `components::ViewCoordinates` class.
|
|
99
|
+
///
|
|
100
|
+
/// The default is `ViewCoordinates::RDF`, i.e. X=Right, Y=Down, Z=Forward, and this is also the recommended setting.
|
|
101
|
+
/// This means that the camera frustum will point along the positive Z axis of the parent space,
|
|
102
|
+
/// and the cameras "up" direction will be along the negative Y axis of the parent space.
|
|
103
|
+
///
|
|
104
|
+
/// The camera frustum will point whichever axis is set to `F` (or the opposite of `B`).
|
|
105
|
+
/// When logging a depth image under this entity, this is the direction the point cloud will be projected.
|
|
106
|
+
/// With `RDF`, the default forward is +Z.
|
|
107
|
+
///
|
|
108
|
+
/// The frustum's "up" direction will be whichever axis is set to `U` (or the opposite of `D`).
|
|
109
|
+
/// This will match the negative Y direction of pixel space (all images are assumed to have xyz=RDF).
|
|
110
|
+
/// With `RDF`, the default is up is -Y.
|
|
111
|
+
///
|
|
112
|
+
/// The frustum's "right" direction will be whichever axis is set to `R` (or the opposite of `L`).
|
|
113
|
+
/// This will match the positive X direction of pixel space (all images are assumed to have xyz=RDF).
|
|
114
|
+
/// With `RDF`, the default right is +x.
|
|
115
|
+
///
|
|
116
|
+
/// Other common formats are `RUB` (X=Right, Y=Up, Z=Back) and `FLU` (X=Forward, Y=Left, Z=Up).
|
|
117
|
+
///
|
|
118
|
+
/// NOTE: setting this to something else than `RDF` (the default) will change the orientation of the camera frustum,
|
|
119
|
+
/// and make the pinhole matrix not match up with the coordinate system of the pinhole entity.
|
|
120
|
+
///
|
|
121
|
+
/// The pinhole matrix (the `image_from_camera` argument) always project along the third (Z) axis,
|
|
122
|
+
/// but will be re-oriented to project along the forward axis of the `camera_xyz` argument.
|
|
123
|
+
std::optional<ComponentBatch> camera_xyz;
|
|
124
|
+
|
|
125
|
+
/// The distance from the camera origin to the image plane when the projection is shown in a 3D viewer.
|
|
126
|
+
///
|
|
127
|
+
/// This is only used for visualization purposes, and does not affect the projection itself.
|
|
128
|
+
std::optional<ComponentBatch> image_plane_distance;
|
|
129
|
+
|
|
130
|
+
public:
|
|
131
|
+
static constexpr const char IndicatorComponentName[] = "rerun.components.PinholeIndicator";
|
|
132
|
+
|
|
133
|
+
/// Indicator component, used to identify the archetype when converting to a list of components.
|
|
134
|
+
using IndicatorComponent = rerun::components::IndicatorComponent<IndicatorComponentName>;
|
|
135
|
+
/// The name of the archetype as used in `ComponentDescriptor`s.
|
|
136
|
+
static constexpr const char ArchetypeName[] = "rerun.archetypes.Pinhole";
|
|
137
|
+
|
|
138
|
+
/// `ComponentDescriptor` for the `image_from_camera` field.
|
|
139
|
+
static constexpr auto Descriptor_image_from_camera = ComponentDescriptor(
|
|
140
|
+
ArchetypeName, "image_from_camera",
|
|
141
|
+
Loggable<rerun::components::PinholeProjection>::Descriptor.component_name
|
|
142
|
+
);
|
|
143
|
+
/// `ComponentDescriptor` for the `resolution` field.
|
|
144
|
+
static constexpr auto Descriptor_resolution = ComponentDescriptor(
|
|
145
|
+
ArchetypeName, "resolution",
|
|
146
|
+
Loggable<rerun::components::Resolution>::Descriptor.component_name
|
|
147
|
+
);
|
|
148
|
+
/// `ComponentDescriptor` for the `camera_xyz` field.
|
|
149
|
+
static constexpr auto Descriptor_camera_xyz = ComponentDescriptor(
|
|
150
|
+
ArchetypeName, "camera_xyz",
|
|
151
|
+
Loggable<rerun::components::ViewCoordinates>::Descriptor.component_name
|
|
152
|
+
);
|
|
153
|
+
/// `ComponentDescriptor` for the `image_plane_distance` field.
|
|
154
|
+
static constexpr auto Descriptor_image_plane_distance = ComponentDescriptor(
|
|
155
|
+
ArchetypeName, "image_plane_distance",
|
|
156
|
+
Loggable<rerun::components::ImagePlaneDistance>::Descriptor.component_name
|
|
157
|
+
);
|
|
158
|
+
|
|
159
|
+
public: // START of extensions from pinhole_ext.cpp:
|
|
160
|
+
/// Creates a pinhole from the camera focal length and resolution, both specified in pixels.
|
|
161
|
+
///
|
|
162
|
+
/// The focal length is the diagonal of the projection matrix.
|
|
163
|
+
/// Set the same value for x & y value for symmetric cameras, or two values for anamorphic
|
|
164
|
+
/// cameras.
|
|
165
|
+
///
|
|
166
|
+
/// Assumes the principal point to be in the middle of the sensor.
|
|
167
|
+
static Pinhole from_focal_length_and_resolution(
|
|
168
|
+
const datatypes::Vec2D& focal_length, const datatypes::Vec2D& resolution
|
|
169
|
+
);
|
|
170
|
+
|
|
171
|
+
/// Creates a symmetric pinhole from the camera focal length and resolution, both specified
|
|
172
|
+
/// in pixels.
|
|
173
|
+
///
|
|
174
|
+
/// The focal length is the diagonal of the projection matrix.
|
|
175
|
+
///
|
|
176
|
+
/// Assumes the principal point to be in the middle of the sensor.
|
|
177
|
+
static Pinhole from_focal_length_and_resolution(
|
|
178
|
+
float focal_length, const datatypes::Vec2D& resolution
|
|
179
|
+
) {
|
|
180
|
+
return from_focal_length_and_resolution({focal_length, focal_length}, resolution);
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
/// Creates a pinhole from the camera vertical field of view (in radians) and aspect ratio (width/height).
|
|
184
|
+
///
|
|
185
|
+
/// Assumes the principal point to be in the middle of the sensor.
|
|
186
|
+
static Pinhole from_fov_and_aspect_ratio(float fov_y, float aspect_ratio) {
|
|
187
|
+
const float EPSILON = std::numeric_limits<float>::epsilon();
|
|
188
|
+
// `max` has explicit template args to avoid preprocessor replacement when <windows.h> is included without NOMINMAX.
|
|
189
|
+
const float focal_length_y = 0.5f / std::tan(std::max<float>(fov_y * 0.5f, EPSILON));
|
|
190
|
+
return from_focal_length_and_resolution(
|
|
191
|
+
{focal_length_y, focal_length_y},
|
|
192
|
+
{aspect_ratio, 1.0}
|
|
193
|
+
);
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
/// Pixel resolution (usually integers) of child image space. Width and height.
|
|
197
|
+
///
|
|
198
|
+
/// `image_from_camera` project onto the space spanned by `(0,0)` and `resolution - 1`.
|
|
199
|
+
Pinhole with_resolution(float width, float height) && {
|
|
200
|
+
return std::move(*this).with_resolution(rerun::components::Resolution(width, height));
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
/// Pixel resolution (usually integers) of child image space. Width and height.
|
|
204
|
+
///
|
|
205
|
+
/// `image_from_camera` project onto the space spanned by `(0,0)` and `resolution - 1`.
|
|
206
|
+
Pinhole with_resolution(int width, int height) && {
|
|
207
|
+
return std::move(*this).with_resolution(rerun::components::Resolution(width, height));
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
// END of extensions from pinhole_ext.cpp, start of generated code:
|
|
211
|
+
|
|
212
|
+
public:
|
|
213
|
+
Pinhole() = default;
|
|
214
|
+
Pinhole(Pinhole&& other) = default;
|
|
215
|
+
Pinhole(const Pinhole& other) = default;
|
|
216
|
+
Pinhole& operator=(const Pinhole& other) = default;
|
|
217
|
+
Pinhole& operator=(Pinhole&& other) = default;
|
|
218
|
+
|
|
219
|
+
explicit Pinhole(rerun::components::PinholeProjection _image_from_camera)
|
|
220
|
+
: image_from_camera(ComponentBatch::from_loggable(
|
|
221
|
+
std::move(_image_from_camera), Descriptor_image_from_camera
|
|
222
|
+
)
|
|
223
|
+
.value_or_throw()) {}
|
|
224
|
+
|
|
225
|
+
/// Update only some specific fields of a `Pinhole`.
|
|
226
|
+
static Pinhole update_fields() {
|
|
227
|
+
return Pinhole();
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
/// Clear all the fields of a `Pinhole`.
|
|
231
|
+
static Pinhole clear_fields();
|
|
232
|
+
|
|
233
|
+
/// Camera projection, from image coordinates to view coordinates.
|
|
234
|
+
Pinhole with_image_from_camera(
|
|
235
|
+
const rerun::components::PinholeProjection& _image_from_camera
|
|
236
|
+
) && {
|
|
237
|
+
image_from_camera =
|
|
238
|
+
ComponentBatch::from_loggable(_image_from_camera, Descriptor_image_from_camera)
|
|
239
|
+
.value_or_throw();
|
|
240
|
+
return std::move(*this);
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
/// This method makes it possible to pack multiple `image_from_camera` in a single component batch.
|
|
244
|
+
///
|
|
245
|
+
/// This only makes sense when used in conjunction with `columns`. `with_image_from_camera` should
|
|
246
|
+
/// be used when logging a single row's worth of data.
|
|
247
|
+
Pinhole with_many_image_from_camera(
|
|
248
|
+
const Collection<rerun::components::PinholeProjection>& _image_from_camera
|
|
249
|
+
) && {
|
|
250
|
+
image_from_camera =
|
|
251
|
+
ComponentBatch::from_loggable(_image_from_camera, Descriptor_image_from_camera)
|
|
252
|
+
.value_or_throw();
|
|
253
|
+
return std::move(*this);
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
/// Pixel resolution (usually integers) of child image space. Width and height.
|
|
257
|
+
///
|
|
258
|
+
/// Example:
|
|
259
|
+
/// ```text
|
|
260
|
+
/// [1920.0, 1440.0]
|
|
261
|
+
/// ```
|
|
262
|
+
///
|
|
263
|
+
/// `image_from_camera` project onto the space spanned by `(0,0)` and `resolution - 1`.
|
|
264
|
+
Pinhole with_resolution(const rerun::components::Resolution& _resolution) && {
|
|
265
|
+
resolution =
|
|
266
|
+
ComponentBatch::from_loggable(_resolution, Descriptor_resolution).value_or_throw();
|
|
267
|
+
return std::move(*this);
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
/// This method makes it possible to pack multiple `resolution` in a single component batch.
|
|
271
|
+
///
|
|
272
|
+
/// This only makes sense when used in conjunction with `columns`. `with_resolution` should
|
|
273
|
+
/// be used when logging a single row's worth of data.
|
|
274
|
+
Pinhole with_many_resolution(const Collection<rerun::components::Resolution>& _resolution
|
|
275
|
+
) && {
|
|
276
|
+
resolution =
|
|
277
|
+
ComponentBatch::from_loggable(_resolution, Descriptor_resolution).value_or_throw();
|
|
278
|
+
return std::move(*this);
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
/// Sets the view coordinates for the camera.
|
|
282
|
+
///
|
|
283
|
+
/// All common values are available as constants on the `components::ViewCoordinates` class.
|
|
284
|
+
///
|
|
285
|
+
/// The default is `ViewCoordinates::RDF`, i.e. X=Right, Y=Down, Z=Forward, and this is also the recommended setting.
|
|
286
|
+
/// This means that the camera frustum will point along the positive Z axis of the parent space,
|
|
287
|
+
/// and the cameras "up" direction will be along the negative Y axis of the parent space.
|
|
288
|
+
///
|
|
289
|
+
/// The camera frustum will point whichever axis is set to `F` (or the opposite of `B`).
|
|
290
|
+
/// When logging a depth image under this entity, this is the direction the point cloud will be projected.
|
|
291
|
+
/// With `RDF`, the default forward is +Z.
|
|
292
|
+
///
|
|
293
|
+
/// The frustum's "up" direction will be whichever axis is set to `U` (or the opposite of `D`).
|
|
294
|
+
/// This will match the negative Y direction of pixel space (all images are assumed to have xyz=RDF).
|
|
295
|
+
/// With `RDF`, the default is up is -Y.
|
|
296
|
+
///
|
|
297
|
+
/// The frustum's "right" direction will be whichever axis is set to `R` (or the opposite of `L`).
|
|
298
|
+
/// This will match the positive X direction of pixel space (all images are assumed to have xyz=RDF).
|
|
299
|
+
/// With `RDF`, the default right is +x.
|
|
300
|
+
///
|
|
301
|
+
/// Other common formats are `RUB` (X=Right, Y=Up, Z=Back) and `FLU` (X=Forward, Y=Left, Z=Up).
|
|
302
|
+
///
|
|
303
|
+
/// NOTE: setting this to something else than `RDF` (the default) will change the orientation of the camera frustum,
|
|
304
|
+
/// and make the pinhole matrix not match up with the coordinate system of the pinhole entity.
|
|
305
|
+
///
|
|
306
|
+
/// The pinhole matrix (the `image_from_camera` argument) always project along the third (Z) axis,
|
|
307
|
+
/// but will be re-oriented to project along the forward axis of the `camera_xyz` argument.
|
|
308
|
+
Pinhole with_camera_xyz(const rerun::components::ViewCoordinates& _camera_xyz) && {
|
|
309
|
+
camera_xyz =
|
|
310
|
+
ComponentBatch::from_loggable(_camera_xyz, Descriptor_camera_xyz).value_or_throw();
|
|
311
|
+
return std::move(*this);
|
|
312
|
+
}
|
|
313
|
+
|
|
314
|
+
/// This method makes it possible to pack multiple `camera_xyz` in a single component batch.
|
|
315
|
+
///
|
|
316
|
+
/// This only makes sense when used in conjunction with `columns`. `with_camera_xyz` should
|
|
317
|
+
/// be used when logging a single row's worth of data.
|
|
318
|
+
Pinhole with_many_camera_xyz(
|
|
319
|
+
const Collection<rerun::components::ViewCoordinates>& _camera_xyz
|
|
320
|
+
) && {
|
|
321
|
+
camera_xyz =
|
|
322
|
+
ComponentBatch::from_loggable(_camera_xyz, Descriptor_camera_xyz).value_or_throw();
|
|
323
|
+
return std::move(*this);
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
/// The distance from the camera origin to the image plane when the projection is shown in a 3D viewer.
|
|
327
|
+
///
|
|
328
|
+
/// This is only used for visualization purposes, and does not affect the projection itself.
|
|
329
|
+
Pinhole with_image_plane_distance(
|
|
330
|
+
const rerun::components::ImagePlaneDistance& _image_plane_distance
|
|
331
|
+
) && {
|
|
332
|
+
image_plane_distance = ComponentBatch::from_loggable(
|
|
333
|
+
_image_plane_distance,
|
|
334
|
+
Descriptor_image_plane_distance
|
|
335
|
+
)
|
|
336
|
+
.value_or_throw();
|
|
337
|
+
return std::move(*this);
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
/// This method makes it possible to pack multiple `image_plane_distance` in a single component batch.
|
|
341
|
+
///
|
|
342
|
+
/// This only makes sense when used in conjunction with `columns`. `with_image_plane_distance` should
|
|
343
|
+
/// be used when logging a single row's worth of data.
|
|
344
|
+
Pinhole with_many_image_plane_distance(
|
|
345
|
+
const Collection<rerun::components::ImagePlaneDistance>& _image_plane_distance
|
|
346
|
+
) && {
|
|
347
|
+
image_plane_distance = ComponentBatch::from_loggable(
|
|
348
|
+
_image_plane_distance,
|
|
349
|
+
Descriptor_image_plane_distance
|
|
350
|
+
)
|
|
351
|
+
.value_or_throw();
|
|
352
|
+
return std::move(*this);
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
/// Partitions the component data into multiple sub-batches.
|
|
356
|
+
///
|
|
357
|
+
/// Specifically, this transforms the existing `ComponentBatch` data into `ComponentColumn`s
|
|
358
|
+
/// instead, via `ComponentBatch::partitioned`.
|
|
359
|
+
///
|
|
360
|
+
/// This makes it possible to use `RecordingStream::send_columns` to send columnar data directly into Rerun.
|
|
361
|
+
///
|
|
362
|
+
/// The specified `lengths` must sum to the total length of the component batch.
|
|
363
|
+
Collection<ComponentColumn> columns(const Collection<uint32_t>& lengths_);
|
|
364
|
+
|
|
365
|
+
/// Partitions the component data into unit-length sub-batches.
|
|
366
|
+
///
|
|
367
|
+
/// This is semantically similar to calling `columns` with `std::vector<uint32_t>(n, 1)`,
|
|
368
|
+
/// where `n` is automatically guessed.
|
|
369
|
+
Collection<ComponentColumn> columns();
|
|
370
|
+
};
|
|
371
|
+
|
|
372
|
+
} // namespace rerun::archetypes
|
|
373
|
+
|
|
374
|
+
namespace rerun {
|
|
375
|
+
/// \private
|
|
376
|
+
template <typename T>
|
|
377
|
+
struct AsComponents;
|
|
378
|
+
|
|
379
|
+
/// \private
|
|
380
|
+
template <>
|
|
381
|
+
struct AsComponents<archetypes::Pinhole> {
|
|
382
|
+
/// Serialize all set component batches.
|
|
383
|
+
static Result<Collection<ComponentBatch>> as_batches(const archetypes::Pinhole& archetype);
|
|
384
|
+
};
|
|
385
|
+
} // namespace rerun
|