Skip to content

HierarchicalRadialLayout

ClassAssetInventoryAssetInventory.Editor
public class HierarchicalRadialLayout

Hierarchical radial layout algorithm for dependency graphs. Positions the root at center with dependencies arranged in expanding rings, clustered angularly near their parents to show the hierarchical structure clearly.

Key Features:

  • Radial depth-based positioning (root at center, dependencies in expanding rings)
  • Dynamic radius calculation (expands crowded rings automatically to prevent overlap)
  • Angular clustering (children positioned near their parents)
  • Within-package edge optimization (eliminates edge crossings inside packages)
  • Collision avoidance (nodes pushed to empty spaces while preserving hierarchy)
  • Cross-package edge optimization (minimizes overlaps and edge crossings)
  • Package-aware spacing (ensures package boundaries don’t overlap)
  • Auto-tuning (adapts parameters based on graph size and complexity)

public float BaseRadiusPerLevel { get; set; }

No description is available for this member.

Returns

System.Single — No return description is available.

public float MinNodeSeparation { get; set; }

No description is available for this member.

Returns

System.Single — No return description is available.

public float AngularClusteringStrength { get; set; }

No description is available for this member.

Returns

System.Single — No return description is available.

public float CollisionAvoidanceStrength { get; set; }

No description is available for this member.

Returns

System.Single — No return description is available.

public int CollisionIterations { get; set; }

No description is available for this member.

Returns

System.Int32 — No return description is available.

public float CrossPackageEdgeWeight { get; set; }

No description is available for this member.

Returns

System.Single — No return description is available.

public bool IsStable { get; }

No description is available for this member.

Returns

System.Boolean — No return description is available.

InitializeHierarchicalPositions(DependencyGraphData)

Section titled “InitializeHierarchicalPositions(DependencyGraphData)”
public void InitializeHierarchicalPositions(DependencyGraphData graphData)

Initialize hierarchical positions for all nodes based on their depth and parent relationships

Parameters

Name Type Description
graphData AssetInventory.DependencyGraphData

UpdatePackagePositions(DependencyGraphData)

Section titled “UpdatePackagePositions(DependencyGraphData)”
public void UpdatePackagePositions(DependencyGraphData graphData)

Update package positions and bounds after node layout

Parameters

Name Type Description
graphData AssetInventory.DependencyGraphData
public void AutoAdjustParameters(DependencyGraphData graphData)

Auto-adjust layout parameters based on graph characteristics

Parameters

Name Type Description
graphData AssetInventory.DependencyGraphData