Skip to content

Commit 009e9e0

Browse files
committed
code readability improvements
1 parent f17bedb commit 009e9e0

File tree

1 file changed

+33
-24
lines changed

1 file changed

+33
-24
lines changed

crates/viewer/re_view_spatial/src/contexts/transform_tree_context.rs

Lines changed: 33 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -228,31 +228,22 @@ impl ViewContextSystem for TransformTreeContext {
228228
tree_transforms_per_frame
229229
.into_iter()
230230
.filter_map(|(transform_frame_id_hash, tree_transform)| {
231-
self.entity_transform_id_mapping
231+
let entity_paths_for_frame = self
232+
.entity_transform_id_mapping
232233
.transform_frame_id_to_entity_path
233-
.get(&transform_frame_id_hash)
234-
.map(|entity_paths| {
235-
entity_paths.iter().map(move |entity_path_hash| {
236-
let transform_info = tree_transform
237-
.as_ref()
238-
.map(|tree_transform| {
239-
let poses = transforms
240-
.pose_transforms(*entity_path_hash)
241-
.map(|pose_transforms| {
242-
pose_transforms.latest_at_instance_poses(
243-
ctx.recording(),
244-
latest_at_query,
245-
)
246-
})
247-
.unwrap_or_default();
248-
249-
TransformInfo::new(tree_transform, poses)
250-
})
251-
.map_err(|err| err.clone());
252-
253-
(*entity_path_hash, transform_info)
254-
})
255-
})
234+
.get(&transform_frame_id_hash)?;
235+
let transform_infos = entity_paths.iter().map(move |entity_path_hash| {
236+
let transform_info = map_tree_transform_to_transform_info(
237+
ctx,
238+
tree_transform,
239+
transforms,
240+
latest_at_query,
241+
entity_path_hash,
242+
);
243+
(*entity_path_hash, transform_info)
244+
});
245+
246+
Some(transform_infos)
256247
})
257248
.flatten()
258249
.collect()
@@ -273,6 +264,24 @@ impl ViewContextSystem for TransformTreeContext {
273264
}
274265
}
275266

267+
fn map_tree_transform_to_transform_info(
268+
ctx: &ViewContext<'_>,
269+
tree_transform: Result<TreeTransform, re_tf::TransformFromToError>,
270+
transforms: &re_tf::CachedTransformsForTimeline,
271+
latest_at_query: &LatestAtQuery,
272+
entity_path_hash: &EntityPathHash,
273+
) -> Result<TransformInfo, re_tf::TransformFromToError> {
274+
let tree_transform = tree_transform.as_ref().map_err(|err| err.clone())?;
275+
let poses = transforms
276+
.pose_transforms(*entity_path_hash)
277+
.map(|pose_transforms| {
278+
pose_transforms.latest_at_instance_poses(ctx.recording(), latest_at_query)
279+
})
280+
.unwrap_or_default();
281+
282+
Ok(TransformInfo::new(tree_transform, poses))
283+
}
284+
276285
impl TransformTreeContext {
277286
/// Returns a transform info describing how to get to the view's target frame for the given entity.
278287
#[inline]

0 commit comments

Comments
 (0)