From 6b00c77ceb36d549fedba1efc9319b20e65b74f5 Mon Sep 17 00:00:00 2001
From: Antoine Beyeler <49431240+abey79@users.noreply.github.com>
Date: Tue, 17 Dec 2024 12:27:28 +0100
Subject: [PATCH] Improve the tooltip of the `Force*` graph view properties
(#8501)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
### Related
- fixes #8456
### What
☝🏻
---
.../blueprint/archetypes/force_center.fbs | 4 ++-
.../archetypes/force_collision_radius.fbs | 6 +++--
.../rerun/blueprint/archetypes/force_link.fbs | 4 ++-
.../blueprint/archetypes/force_many_body.fbs | 5 +++-
.../blueprint/archetypes/force_position.fbs | 4 ++-
.../src/blueprint/archetypes/force_center.rs | 8 ++++--
.../archetypes/force_collision_radius.rs | 10 +++++---
.../src/blueprint/archetypes/force_link.rs | 8 ++++--
.../blueprint/archetypes/force_many_body.rs | 10 ++++++--
.../blueprint/archetypes/force_position.rs | 8 ++++--
crates/store/re_types/src/reflection/mod.rs | 25 +++++++++++--------
.../reference/types/views/graph_view.md | 10 ++++----
.../blueprint/archetypes/force_center.hpp | 8 ++++--
.../archetypes/force_collision_radius.hpp | 10 +++++---
.../rerun/blueprint/archetypes/force_link.hpp | 8 ++++--
.../blueprint/archetypes/force_many_body.hpp | 10 ++++++--
.../blueprint/archetypes/force_position.hpp | 8 ++++--
.../blueprint/archetypes/force_center.py | 8 ++++--
.../archetypes/force_collision_radius.py | 10 +++++---
.../rerun/blueprint/archetypes/force_link.py | 8 ++++--
.../blueprint/archetypes/force_many_body.py | 10 ++++++--
.../blueprint/archetypes/force_position.py | 8 ++++--
22 files changed, 136 insertions(+), 54 deletions(-)
diff --git a/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_center.fbs b/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_center.fbs
index c3b477bf49d0..a574b9c696c0 100644
--- a/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_center.fbs
+++ b/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_center.fbs
@@ -4,7 +4,9 @@ namespace rerun.blueprint.archetypes;
struct ForceCenter (
"attr.rerun.scope": "blueprint"
) {
- /// Whether the force is enabled.
+ /// Whether the center force is enabled.
+ ///
+ /// The center force tries to move the center of mass of the graph towards the origin.
enabled: rerun.blueprint.components.Enabled ("attr.rerun.component_optional", nullable, order: 100);
/// The strength of the force.
diff --git a/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_collision_radius.fbs b/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_collision_radius.fbs
index 9ffcf43376ff..f4a4e760b59a 100644
--- a/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_collision_radius.fbs
+++ b/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_collision_radius.fbs
@@ -1,10 +1,12 @@
namespace rerun.blueprint.archetypes;
-/// Resolves collisions between the bounding spheres, according to the radius of the nodes.
+/// Resolves collisions between the bounding circles, according to the radius of the nodes.
struct ForceCollisionRadius (
"attr.rerun.scope": "blueprint"
) {
- /// Whether the force is enabled.
+ /// Whether the collision force is enabled.
+ ///
+ /// The collision force resolves collisions between nodes based on the bounding circle defined by their radius.
enabled: rerun.blueprint.components.Enabled ("attr.rerun.component_optional", nullable, order: 100);
/// The strength of the force.
diff --git a/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_link.fbs b/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_link.fbs
index fc963b757cf3..2d34b1c936ae 100644
--- a/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_link.fbs
+++ b/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_link.fbs
@@ -4,7 +4,9 @@ namespace rerun.blueprint.archetypes;
struct ForceLink (
"attr.rerun.scope": "blueprint"
) {
- /// Whether the force is enabled.
+ /// Whether the link force is enabled.
+ ///
+ /// The link force aims to achieve a target distance between two nodes that are connected by one ore more edges.
enabled: rerun.blueprint.components.Enabled ("attr.rerun.component_optional", nullable, order: 100);
/// The target distance between two nodes.
diff --git a/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_many_body.fbs b/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_many_body.fbs
index edafce01c777..abc576912fca 100644
--- a/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_many_body.fbs
+++ b/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_many_body.fbs
@@ -6,7 +6,10 @@ namespace rerun.blueprint.archetypes;
struct ForceManyBody (
"attr.rerun.scope": "blueprint"
) {
- /// Whether the force is enabled.
+ /// Whether the many body force is enabled.
+ ///
+ /// The many body force is applied on each pair of nodes in a way that ressembles an electrical charge. If the
+ /// strength is smaller than 0, it pushes nodes apart; if it is larger than 0, it pulls them together.
enabled: rerun.blueprint.components.Enabled ("attr.rerun.component_optional", nullable, order: 100);
/// The strength of the force.
diff --git a/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_position.fbs b/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_position.fbs
index 7ff9fd24d340..6689b95b48d7 100644
--- a/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_position.fbs
+++ b/crates/store/re_types/definitions/rerun/blueprint/archetypes/force_position.fbs
@@ -4,7 +4,9 @@ namespace rerun.blueprint.archetypes;
struct ForcePosition (
"attr.rerun.scope": "blueprint"
) {
- /// Whether the force is enabled.
+ /// Whether the position force is enabled.
+ ///
+ /// The position force pulls nodes towards a specific position, similar to gravity.
enabled: rerun.blueprint.components.Enabled ("attr.rerun.component_optional", nullable, order: 100);
/// The strength of the force.
diff --git a/crates/store/re_types/src/blueprint/archetypes/force_center.rs b/crates/store/re_types/src/blueprint/archetypes/force_center.rs
index 9cb1870a5af5..5f12962b42dc 100644
--- a/crates/store/re_types/src/blueprint/archetypes/force_center.rs
+++ b/crates/store/re_types/src/blueprint/archetypes/force_center.rs
@@ -21,7 +21,9 @@ use ::re_types_core::{DeserializationError, DeserializationResult};
/// **Archetype**: Tries to move the center of mass of the graph to the origin.
#[derive(Clone, Debug)]
pub struct ForceCenter {
- /// Whether the force is enabled.
+ /// Whether the center force is enabled.
+ ///
+ /// The center force tries to move the center of mass of the graph towards the origin.
pub enabled: Option,
/// The strength of the force.
@@ -207,7 +209,9 @@ impl ForceCenter {
}
}
- /// Whether the force is enabled.
+ /// Whether the center force is enabled.
+ ///
+ /// The center force tries to move the center of mass of the graph towards the origin.
#[inline]
pub fn with_enabled(
mut self,
diff --git a/crates/store/re_types/src/blueprint/archetypes/force_collision_radius.rs b/crates/store/re_types/src/blueprint/archetypes/force_collision_radius.rs
index 71055ab49f0f..9f4536a2b750 100644
--- a/crates/store/re_types/src/blueprint/archetypes/force_collision_radius.rs
+++ b/crates/store/re_types/src/blueprint/archetypes/force_collision_radius.rs
@@ -18,10 +18,12 @@ use ::re_types_core::{ComponentBatch, ComponentBatchCowWithDescriptor};
use ::re_types_core::{ComponentDescriptor, ComponentName};
use ::re_types_core::{DeserializationError, DeserializationResult};
-/// **Archetype**: Resolves collisions between the bounding spheres, according to the radius of the nodes.
+/// **Archetype**: Resolves collisions between the bounding circles, according to the radius of the nodes.
#[derive(Clone, Debug)]
pub struct ForceCollisionRadius {
- /// Whether the force is enabled.
+ /// Whether the collision force is enabled.
+ ///
+ /// The collision force resolves collisions between nodes based on the bounding circle defined by their radius.
pub enabled: Option,
/// The strength of the force.
@@ -250,7 +252,9 @@ impl ForceCollisionRadius {
}
}
- /// Whether the force is enabled.
+ /// Whether the collision force is enabled.
+ ///
+ /// The collision force resolves collisions between nodes based on the bounding circle defined by their radius.
#[inline]
pub fn with_enabled(
mut self,
diff --git a/crates/store/re_types/src/blueprint/archetypes/force_link.rs b/crates/store/re_types/src/blueprint/archetypes/force_link.rs
index 9c6fe8aa11d2..f294b0eb9818 100644
--- a/crates/store/re_types/src/blueprint/archetypes/force_link.rs
+++ b/crates/store/re_types/src/blueprint/archetypes/force_link.rs
@@ -21,7 +21,9 @@ use ::re_types_core::{DeserializationError, DeserializationResult};
/// **Archetype**: Aims to achieve a target distance between two nodes that are connected by an edge.
#[derive(Clone, Debug)]
pub struct ForceLink {
- /// Whether the force is enabled.
+ /// Whether the link force is enabled.
+ ///
+ /// The link force aims to achieve a target distance between two nodes that are connected by one ore more edges.
pub enabled: Option,
/// The target distance between two nodes.
@@ -249,7 +251,9 @@ impl ForceLink {
}
}
- /// Whether the force is enabled.
+ /// Whether the link force is enabled.
+ ///
+ /// The link force aims to achieve a target distance between two nodes that are connected by one ore more edges.
#[inline]
pub fn with_enabled(
mut self,
diff --git a/crates/store/re_types/src/blueprint/archetypes/force_many_body.rs b/crates/store/re_types/src/blueprint/archetypes/force_many_body.rs
index 9720ff5a4f17..026e249436d4 100644
--- a/crates/store/re_types/src/blueprint/archetypes/force_many_body.rs
+++ b/crates/store/re_types/src/blueprint/archetypes/force_many_body.rs
@@ -23,7 +23,10 @@ use ::re_types_core::{DeserializationError, DeserializationResult};
/// If `strength` is smaller than 0, it pushes nodes apart, if it is larger than 0 it pulls them together.
#[derive(Clone, Debug)]
pub struct ForceManyBody {
- /// Whether the force is enabled.
+ /// Whether the many body force is enabled.
+ ///
+ /// The many body force is applied on each pair of nodes in a way that ressembles an electrical charge. If the
+ /// strength is smaller than 0, it pushes nodes apart; if it is larger than 0, it pulls them together.
pub enabled: Option,
/// The strength of the force.
@@ -211,7 +214,10 @@ impl ForceManyBody {
}
}
- /// Whether the force is enabled.
+ /// Whether the many body force is enabled.
+ ///
+ /// The many body force is applied on each pair of nodes in a way that ressembles an electrical charge. If the
+ /// strength is smaller than 0, it pushes nodes apart; if it is larger than 0, it pulls them together.
#[inline]
pub fn with_enabled(
mut self,
diff --git a/crates/store/re_types/src/blueprint/archetypes/force_position.rs b/crates/store/re_types/src/blueprint/archetypes/force_position.rs
index e106a452c2a2..cc74aa2aabf4 100644
--- a/crates/store/re_types/src/blueprint/archetypes/force_position.rs
+++ b/crates/store/re_types/src/blueprint/archetypes/force_position.rs
@@ -21,7 +21,9 @@ use ::re_types_core::{DeserializationError, DeserializationResult};
/// **Archetype**: Similar to gravity, this force pulls nodes towards a specific position.
#[derive(Clone, Debug)]
pub struct ForcePosition {
- /// Whether the force is enabled.
+ /// Whether the position force is enabled.
+ ///
+ /// The position force pulls nodes towards a specific position, similar to gravity.
pub enabled: Option,
/// The strength of the force.
@@ -246,7 +248,9 @@ impl ForcePosition {
}
}
- /// Whether the force is enabled.
+ /// Whether the position force is enabled.
+ ///
+ /// The position force pulls nodes towards a specific position, similar to gravity.
#[inline]
pub fn with_enabled(
mut self,
diff --git a/crates/store/re_types/src/reflection/mod.rs b/crates/store/re_types/src/reflection/mod.rs
index 2deab0ebfb3c..05839fe7c80e 100644
--- a/crates/store/re_types/src/reflection/mod.rs
+++ b/crates/store/re_types/src/reflection/mod.rs
@@ -2040,8 +2040,9 @@ fn generate_archetype_reflection() -> ArchetypeReflectionMap {
fields: vec![
ArchetypeFieldReflection { name : "enabled", display_name :
"Enabled", component_name : "rerun.blueprint.components.Enabled"
- .into(), docstring_md : "Whether the force is enabled.", is_required
- : false, }, ArchetypeFieldReflection { name : "strength",
+ .into(), docstring_md :
+ "Whether the center force is enabled.\n\nThe center force tries to move the center of mass of the graph towards the origin.",
+ is_required : false, }, ArchetypeFieldReflection { name : "strength",
display_name : "Strength", component_name :
"rerun.blueprint.components.ForceStrength".into(), docstring_md :
"The strength of the force.", is_required : false, },
@@ -2057,8 +2058,9 @@ fn generate_archetype_reflection() -> ArchetypeReflectionMap {
fields: vec![
ArchetypeFieldReflection { name : "enabled", display_name :
"Enabled", component_name : "rerun.blueprint.components.Enabled"
- .into(), docstring_md : "Whether the force is enabled.", is_required
- : false, }, ArchetypeFieldReflection { name : "strength",
+ .into(), docstring_md :
+ "Whether the collision force is enabled.\n\nThe collision force resolves collisions between nodes based on the bounding circle defined by their radius.",
+ is_required : false, }, ArchetypeFieldReflection { name : "strength",
display_name : "Strength", component_name :
"rerun.blueprint.components.ForceStrength".into(), docstring_md :
"The strength of the force.", is_required : false, },
@@ -2079,8 +2081,9 @@ fn generate_archetype_reflection() -> ArchetypeReflectionMap {
fields: vec![
ArchetypeFieldReflection { name : "enabled", display_name :
"Enabled", component_name : "rerun.blueprint.components.Enabled"
- .into(), docstring_md : "Whether the force is enabled.", is_required
- : false, }, ArchetypeFieldReflection { name : "distance",
+ .into(), docstring_md :
+ "Whether the link force is enabled.\n\nThe link force aims to achieve a target distance between two nodes that are connected by one ore more edges.",
+ is_required : false, }, ArchetypeFieldReflection { name : "distance",
display_name : "Distance", component_name :
"rerun.blueprint.components.ForceDistance".into(), docstring_md :
"The target distance between two nodes.", is_required : false, },
@@ -2101,8 +2104,9 @@ fn generate_archetype_reflection() -> ArchetypeReflectionMap {
fields: vec![
ArchetypeFieldReflection { name : "enabled", display_name :
"Enabled", component_name : "rerun.blueprint.components.Enabled"
- .into(), docstring_md : "Whether the force is enabled.", is_required
- : false, }, ArchetypeFieldReflection { name : "strength",
+ .into(), docstring_md :
+ "Whether the many body force is enabled.\n\nThe many body force is applied on each pair of nodes in a way that ressembles an electrical charge. If the\nstrength is smaller than 0, it pushes nodes apart; if it is larger than 0, it pulls them together.",
+ is_required : false, }, ArchetypeFieldReflection { name : "strength",
display_name : "Strength", component_name :
"rerun.blueprint.components.ForceStrength".into(), docstring_md :
"The strength of the force.\n\nIf `strength` is smaller than 0, it pushes nodes apart, if it is larger than 0 it pulls them together.",
@@ -2119,8 +2123,9 @@ fn generate_archetype_reflection() -> ArchetypeReflectionMap {
fields: vec![
ArchetypeFieldReflection { name : "enabled", display_name :
"Enabled", component_name : "rerun.blueprint.components.Enabled"
- .into(), docstring_md : "Whether the force is enabled.", is_required
- : false, }, ArchetypeFieldReflection { name : "strength",
+ .into(), docstring_md :
+ "Whether the position force is enabled.\n\nThe position force pulls nodes towards a specific position, similar to gravity.",
+ is_required : false, }, ArchetypeFieldReflection { name : "strength",
display_name : "Strength", component_name :
"rerun.blueprint.components.ForceStrength".into(), docstring_md :
"The strength of the force.", is_required : false, },
diff --git a/docs/content/reference/types/views/graph_view.md b/docs/content/reference/types/views/graph_view.md
index 7e39cfc769e4..e222d74616b7 100644
--- a/docs/content/reference/types/views/graph_view.md
+++ b/docs/content/reference/types/views/graph_view.md
@@ -14,30 +14,30 @@ Somethings outside of these bounds may also be visible due to letterboxing.
### `force_link`
Allows to control the interaction between two nodes connected by an edge.
-* `enabled`: Whether the force is enabled.
+* `enabled`: Whether the link force is enabled.
* `distance`: The target distance between two nodes.
* `iterations`: Specifies how often this force should be applied per iteration.
### `force_many_body`
A force between each pair of nodes that ressembles an electrical charge.
-* `enabled`: Whether the force is enabled.
+* `enabled`: Whether the many body force is enabled.
* `strength`: The strength of the force.
### `force_position`
Similar to gravity, this force pulls nodes towards a specific position.
-* `enabled`: Whether the force is enabled.
+* `enabled`: Whether the position force is enabled.
* `strength`: The strength of the force.
* `position`: The position where the nodes should be pulled towards.
### `force_collision_radius`
Resolves collisions between the bounding spheres, according to the radius of the nodes.
-* `enabled`: Whether the force is enabled.
+* `enabled`: Whether the collision force is enabled.
* `strength`: The strength of the force.
* `iterations`: Specifies how often this force should be applied per iteration.
### `force_center`
Tries to move the center of mass of the graph to the origin.
-* `enabled`: Whether the force is enabled.
+* `enabled`: Whether the center force is enabled.
* `strength`: The strength of the force.
## API reference links
diff --git a/rerun_cpp/src/rerun/blueprint/archetypes/force_center.hpp b/rerun_cpp/src/rerun/blueprint/archetypes/force_center.hpp
index 8c3854765b91..4a76fb9c2ff7 100644
--- a/rerun_cpp/src/rerun/blueprint/archetypes/force_center.hpp
+++ b/rerun_cpp/src/rerun/blueprint/archetypes/force_center.hpp
@@ -19,7 +19,9 @@
namespace rerun::blueprint::archetypes {
/// **Archetype**: Tries to move the center of mass of the graph to the origin.
struct ForceCenter {
- /// Whether the force is enabled.
+ /// Whether the center force is enabled.
+ ///
+ /// The center force tries to move the center of mass of the graph towards the origin.
std::optional enabled;
/// The strength of the force.
@@ -36,7 +38,9 @@ namespace rerun::blueprint::archetypes {
ForceCenter() = default;
ForceCenter(ForceCenter&& other) = default;
- /// Whether the force is enabled.
+ /// Whether the center force is enabled.
+ ///
+ /// The center force tries to move the center of mass of the graph towards the origin.
ForceCenter with_enabled(rerun::blueprint::components::Enabled _enabled) && {
enabled = std::move(_enabled);
// See: https://github.com/rerun-io/rerun/issues/4027
diff --git a/rerun_cpp/src/rerun/blueprint/archetypes/force_collision_radius.hpp b/rerun_cpp/src/rerun/blueprint/archetypes/force_collision_radius.hpp
index 5b8ff3d1d511..f51201ee8bd0 100644
--- a/rerun_cpp/src/rerun/blueprint/archetypes/force_collision_radius.hpp
+++ b/rerun_cpp/src/rerun/blueprint/archetypes/force_collision_radius.hpp
@@ -18,9 +18,11 @@
#include
namespace rerun::blueprint::archetypes {
- /// **Archetype**: Resolves collisions between the bounding spheres, according to the radius of the nodes.
+ /// **Archetype**: Resolves collisions between the bounding circles, according to the radius of the nodes.
struct ForceCollisionRadius {
- /// Whether the force is enabled.
+ /// Whether the collision force is enabled.
+ ///
+ /// The collision force resolves collisions between nodes based on the bounding circle defined by their radius.
std::optional enabled;
/// The strength of the force.
@@ -42,7 +44,9 @@ namespace rerun::blueprint::archetypes {
ForceCollisionRadius() = default;
ForceCollisionRadius(ForceCollisionRadius&& other) = default;
- /// Whether the force is enabled.
+ /// Whether the collision force is enabled.
+ ///
+ /// The collision force resolves collisions between nodes based on the bounding circle defined by their radius.
ForceCollisionRadius with_enabled(rerun::blueprint::components::Enabled _enabled) && {
enabled = std::move(_enabled);
// See: https://github.com/rerun-io/rerun/issues/4027
diff --git a/rerun_cpp/src/rerun/blueprint/archetypes/force_link.hpp b/rerun_cpp/src/rerun/blueprint/archetypes/force_link.hpp
index 0d88538bc59b..b543152710b4 100644
--- a/rerun_cpp/src/rerun/blueprint/archetypes/force_link.hpp
+++ b/rerun_cpp/src/rerun/blueprint/archetypes/force_link.hpp
@@ -20,7 +20,9 @@
namespace rerun::blueprint::archetypes {
/// **Archetype**: Aims to achieve a target distance between two nodes that are connected by an edge.
struct ForceLink {
- /// Whether the force is enabled.
+ /// Whether the link force is enabled.
+ ///
+ /// The link force aims to achieve a target distance between two nodes that are connected by one ore more edges.
std::optional enabled;
/// The target distance between two nodes.
@@ -42,7 +44,9 @@ namespace rerun::blueprint::archetypes {
ForceLink() = default;
ForceLink(ForceLink&& other) = default;
- /// Whether the force is enabled.
+ /// Whether the link force is enabled.
+ ///
+ /// The link force aims to achieve a target distance between two nodes that are connected by one ore more edges.
ForceLink with_enabled(rerun::blueprint::components::Enabled _enabled) && {
enabled = std::move(_enabled);
// See: https://github.com/rerun-io/rerun/issues/4027
diff --git a/rerun_cpp/src/rerun/blueprint/archetypes/force_many_body.hpp b/rerun_cpp/src/rerun/blueprint/archetypes/force_many_body.hpp
index c5267b3cf692..9b0e2686745d 100644
--- a/rerun_cpp/src/rerun/blueprint/archetypes/force_many_body.hpp
+++ b/rerun_cpp/src/rerun/blueprint/archetypes/force_many_body.hpp
@@ -21,7 +21,10 @@ namespace rerun::blueprint::archetypes {
///
/// If `strength` is smaller than 0, it pushes nodes apart, if it is larger than 0 it pulls them together.
struct ForceManyBody {
- /// Whether the force is enabled.
+ /// Whether the many body force is enabled.
+ ///
+ /// The many body force is applied on each pair of nodes in a way that ressembles an electrical charge. If the
+ /// strength is smaller than 0, it pushes nodes apart; if it is larger than 0, it pulls them together.
std::optional enabled;
/// The strength of the force.
@@ -40,7 +43,10 @@ namespace rerun::blueprint::archetypes {
ForceManyBody() = default;
ForceManyBody(ForceManyBody&& other) = default;
- /// Whether the force is enabled.
+ /// Whether the many body force is enabled.
+ ///
+ /// The many body force is applied on each pair of nodes in a way that ressembles an electrical charge. If the
+ /// strength is smaller than 0, it pushes nodes apart; if it is larger than 0, it pulls them together.
ForceManyBody with_enabled(rerun::blueprint::components::Enabled _enabled) && {
enabled = std::move(_enabled);
// See: https://github.com/rerun-io/rerun/issues/4027
diff --git a/rerun_cpp/src/rerun/blueprint/archetypes/force_position.hpp b/rerun_cpp/src/rerun/blueprint/archetypes/force_position.hpp
index 36d740ce7393..3c6fbf9d266b 100644
--- a/rerun_cpp/src/rerun/blueprint/archetypes/force_position.hpp
+++ b/rerun_cpp/src/rerun/blueprint/archetypes/force_position.hpp
@@ -20,7 +20,9 @@
namespace rerun::blueprint::archetypes {
/// **Archetype**: Similar to gravity, this force pulls nodes towards a specific position.
struct ForcePosition {
- /// Whether the force is enabled.
+ /// Whether the position force is enabled.
+ ///
+ /// The position force pulls nodes towards a specific position, similar to gravity.
std::optional enabled;
/// The strength of the force.
@@ -40,7 +42,9 @@ namespace rerun::blueprint::archetypes {
ForcePosition() = default;
ForcePosition(ForcePosition&& other) = default;
- /// Whether the force is enabled.
+ /// Whether the position force is enabled.
+ ///
+ /// The position force pulls nodes towards a specific position, similar to gravity.
ForcePosition with_enabled(rerun::blueprint::components::Enabled _enabled) && {
enabled = std::move(_enabled);
// See: https://github.com/rerun-io/rerun/issues/4027
diff --git a/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_center.py b/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_center.py
index 7d026c887d70..5804b3c0db7f 100644
--- a/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_center.py
+++ b/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_center.py
@@ -32,7 +32,9 @@ def __init__(
Parameters
----------
enabled:
- Whether the force is enabled.
+ Whether the center force is enabled.
+
+ The center force tries to move the center of mass of the graph towards the origin.
strength:
The strength of the force.
@@ -63,7 +65,9 @@ def _clear(cls) -> ForceCenter:
default=None,
converter=blueprint_components.EnabledBatch._optional, # type: ignore[misc]
)
- # Whether the force is enabled.
+ # Whether the center force is enabled.
+ #
+ # The center force tries to move the center of mass of the graph towards the origin.
#
# (Docstring intentionally commented out to hide this field from the docs)
diff --git a/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_collision_radius.py b/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_collision_radius.py
index 80464759b93f..169c8f5e7ba0 100644
--- a/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_collision_radius.py
+++ b/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_collision_radius.py
@@ -21,7 +21,7 @@
@define(str=False, repr=False, init=False)
class ForceCollisionRadius(Archetype):
- """**Archetype**: Resolves collisions between the bounding spheres, according to the radius of the nodes."""
+ """**Archetype**: Resolves collisions between the bounding circles, according to the radius of the nodes."""
def __init__(
self: Any,
@@ -36,7 +36,9 @@ def __init__(
Parameters
----------
enabled:
- Whether the force is enabled.
+ Whether the collision force is enabled.
+
+ The collision force resolves collisions between nodes based on the bounding circle defined by their radius.
strength:
The strength of the force.
iterations:
@@ -72,7 +74,9 @@ def _clear(cls) -> ForceCollisionRadius:
default=None,
converter=blueprint_components.EnabledBatch._optional, # type: ignore[misc]
)
- # Whether the force is enabled.
+ # Whether the collision force is enabled.
+ #
+ # The collision force resolves collisions between nodes based on the bounding circle defined by their radius.
#
# (Docstring intentionally commented out to hide this field from the docs)
diff --git a/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_link.py b/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_link.py
index bf24c7265d63..f3c179715a0a 100644
--- a/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_link.py
+++ b/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_link.py
@@ -36,7 +36,9 @@ def __init__(
Parameters
----------
enabled:
- Whether the force is enabled.
+ Whether the link force is enabled.
+
+ The link force aims to achieve a target distance between two nodes that are connected by one ore more edges.
distance:
The target distance between two nodes.
iterations:
@@ -72,7 +74,9 @@ def _clear(cls) -> ForceLink:
default=None,
converter=blueprint_components.EnabledBatch._optional, # type: ignore[misc]
)
- # Whether the force is enabled.
+ # Whether the link force is enabled.
+ #
+ # The link force aims to achieve a target distance between two nodes that are connected by one ore more edges.
#
# (Docstring intentionally commented out to hide this field from the docs)
diff --git a/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_many_body.py b/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_many_body.py
index 4750ac834505..1881af385409 100644
--- a/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_many_body.py
+++ b/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_many_body.py
@@ -36,7 +36,10 @@ def __init__(
Parameters
----------
enabled:
- Whether the force is enabled.
+ Whether the many body force is enabled.
+
+ The many body force is applied on each pair of nodes in a way that ressembles an electrical charge. If the
+ strength is smaller than 0, it pushes nodes apart; if it is larger than 0, it pulls them together.
strength:
The strength of the force.
@@ -69,7 +72,10 @@ def _clear(cls) -> ForceManyBody:
default=None,
converter=blueprint_components.EnabledBatch._optional, # type: ignore[misc]
)
- # Whether the force is enabled.
+ # Whether the many body force is enabled.
+ #
+ # The many body force is applied on each pair of nodes in a way that ressembles an electrical charge. If the
+ # strength is smaller than 0, it pushes nodes apart; if it is larger than 0, it pulls them together.
#
# (Docstring intentionally commented out to hide this field from the docs)
diff --git a/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_position.py b/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_position.py
index 61e63623c9c2..aa83eb92516d 100644
--- a/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_position.py
+++ b/rerun_py/rerun_sdk/rerun/blueprint/archetypes/force_position.py
@@ -36,7 +36,9 @@ def __init__(
Parameters
----------
enabled:
- Whether the force is enabled.
+ Whether the position force is enabled.
+
+ The position force pulls nodes towards a specific position, similar to gravity.
strength:
The strength of the force.
position:
@@ -70,7 +72,9 @@ def _clear(cls) -> ForcePosition:
default=None,
converter=blueprint_components.EnabledBatch._optional, # type: ignore[misc]
)
- # Whether the force is enabled.
+ # Whether the position force is enabled.
+ #
+ # The position force pulls nodes towards a specific position, similar to gravity.
#
# (Docstring intentionally commented out to hide this field from the docs)