Complete API surface of the Beep.Skia.Network assembly: 30 public types with their documented members. Follow the family guide for usage patterns.

Types in this assembly

CentralityMeasure (class)

Centrality measure component that visualizes node importance in the network. Supports different centrality algorithms and displays rankings.

MemberKindDescription
CentralityType MeasureTypePropertyGets or sets the type of centrality measure to display.
List<NodeCentrality> NodeCentralitiesPropertyGets the list of nodes with their centrality scores.
int MaxDisplayCountPropertyGets or sets the maximum number of top nodes to display.
bool ShowValuesPropertyGets or sets whether to show centrality values.
SKColor HighCentralityColorPropertyGets or sets the color for high centrality nodes.
SKColor LowCentralityColorPropertyGets or sets the color for low centrality nodes.
SKColor MediumCentralityColorPropertyGets or sets the color for medium centrality nodes.
CentralityMeasure()MethodInitializes a new instance of the CentralityMeasure class.
void CalculateCentrality(List<NetworkNode> nodes, List<NetworkLink> links)MethodCalculates centrality measures for the given network. The network nodes. The network links.

CentralityType (enum)

Types of centrality measures.

Community (class)

Represents a network community.

MemberKindDescription
int IdPropertyGets or sets the community ID.
List<NetworkNode> NodesPropertyGets or sets the list of nodes in this community.
SKColor ColorPropertyGets or sets the color assigned to this community.
double ModularityPropertyGets the modularity score for this community.

CommunityAlgorithm (enum)

Community detection algorithms.

CommunityDetector (class)

Community detector component that identifies and visualizes network communities. Uses clustering algorithms to group related nodes and color-code them.

MemberKindDescription
CommunityAlgorithm AlgorithmPropertyGets or sets the algorithm used for community detection.
List<Community> CommunitiesPropertyGets the list of detected communities.
int MinCommunitySizePropertyGets or sets the minimum community size to display.
bool ShowLabelsPropertyGets or sets whether to show community labels.
List<SKColor> CommunityColorsPropertyGets or sets the color palette for communities.
CommunityDetector()MethodInitializes a new instance of the CommunityDetector class.
void DetectCommunities(List<NetworkNode> nodes, List<NetworkLink> links)MethodDetects communities in the given network. The network nodes. The network links.

ExportCompletedEventArgs (class)

Event arguments for export completed events.

MemberKindDescription
string FilePathPropertyGets the export file path.
ExportFormat FormatPropertyGets the export format.
ExportCompletedEventArgs(string filePath, ExportFormat format)MethodInitializes a new instance of the ExportCompletedEventArgs class. The file path. The export format.

ExportFailedEventArgs (class)

Event arguments for export failed events.

MemberKindDescription
string ErrorMessagePropertyGets the error message.
ExportFailedEventArgs(string errorMessage)MethodInitializes a new instance of the ExportFailedEventArgs class. The error message.

ExportFormat (enum)

Export format types.

ExportOptions (class)

Export options.

MemberKindDescription
bool IncludePositionsPropertyGets or sets whether to include node positions.
bool IncludeAttributesPropertyGets or sets whether to include node attributes.
bool IncludeWeightsPropertyGets or sets whether to include link weights.
int ImageResolutionPropertyGets or sets the image resolution for image exports.
bool CompressOutputPropertyGets or sets whether to compress the output.

ExportPanel (class)

Export panel component that provides functionality to export network data and visualizations. Supports various formats including CSV, JSON, GraphML, and image exports.

MemberKindDescription
ExportFormat SelectedFormatPropertyGets or sets the selected export format.
List<ExportFormat> AvailableFormatsPropertyGets the list of available export formats.
ExportOptions OptionsPropertyGets or sets the export options.
bool IsExportingPropertyGets or sets whether an export is currently in progress.
string LastExportPathPropertyGets or sets the last export path.
bool ShowOptionsPropertyGets or sets whether to show export options.
event EventHandler<ExportCompletedEventArgs> ExportCompletedEventEvent raised when an export is completed.
event EventHandler<ExportFailedEventArgs> ExportFailedEventEvent raised when an export fails.
ExportPanel()MethodInitializes a new instance of the ExportPanel class.
void Export(List<NetworkNode> nodes, List<NetworkLink> links, string filePath)MethodExports the network data using the current settings. The network nodes to export. The network links to export. The file path to export to.

FilterChangedEventArgs (class)

Event arguments for filter change events.

MemberKindDescription
IReadOnlyList<NetworkNode> FilteredNodesPropertyGets the filtered nodes.
IReadOnlyList<NetworkLink> FilteredLinksPropertyGets the filtered links.
FilterChangedEventArgs(IReadOnlyList<NetworkNode> filteredNodes, IReadOnlyList<NetworkLink> filteredLinks)MethodInitializes a new instance of the FilterChangedEventArgs class. The filtered nodes. The filtered links.

FilterPanel (class)

Filter panel component that provides filtering and search capabilities for network elements. Supports node/link filtering by properties, search queries, and visibility controls.

MemberKindDescription
string SearchQueryPropertyGets or sets the search query text.
bool CaseSensitivePropertyGets or sets whether the search is case-sensitive.
bool UseRegexPropertyGets or sets whether to use regular expressions for search.
int MinDegreePropertyGets or sets the minimum node degree filter.
int MaxDegreePropertyGets or sets the maximum node degree filter.
bool ShowConnectedOnlyPropertyGets or sets whether to show only connected nodes.
bool ShowIsolatedNodesPropertyGets or sets whether to show isolated nodes (degree = 0).
List<NetworkNode> FilteredNodesPropertyGets the list of filtered nodes.
List<NetworkLink> FilteredLinksPropertyGets the list of filtered links.
bool ShowControlsPropertyGets or sets whether to show filter controls.
event EventHandler<FilterChangedEventArgs> FilterChangedEventEvent raised when the filter changes.
FilterPanel()MethodInitializes a new instance of the FilterPanel class.
void ApplyFilters(List<NetworkNode> nodes, List<NetworkLink> links)MethodApplies filters to the given network data. The network nodes. The network links.
void ClearFilters()MethodClears all filters and shows all elements.
void SetSearchQuery(string query)MethodSets a search query and applies filters. The search query.
void SetDegreeRange(int minDegree, int maxDegree)MethodSets degree range filter. The minimum degree. The maximum degree.

GraphNavigator (class)

Graph navigator component that provides interactive controls for exploring network graphs. Includes zoom, pan, node selection, and navigation history.

MemberKindDescription
float ZoomLevelPropertyGets or sets the current zoom level (1.0 = 100%).
float MinZoomPropertyGets or sets the minimum zoom level.
float MaxZoomPropertyGets or sets the maximum zoom level.
float PanOffsetXPropertyGets or sets the pan offset X.
float PanOffsetYPropertyGets or sets the pan offset Y.
NetworkNode SelectedNodePropertyGets the currently selected node.
List<NetworkNode> NavigationHistoryPropertyGets the list of navigation history (node selections).
bool IsPanModePropertyGets or sets whether the navigator is in pan mode.
bool ShowControlsPropertyGets or sets whether to show navigation controls.
float ZoomStepPropertyGets or sets the zoom step size.
event EventHandler<NodeSelectionEventArgs> NodeSelectedEventEvent raised when the selected node changes.
event EventHandler<ViewChangedEventArgs> ViewChangedEventEvent raised when the view changes (zoom/pan).
GraphNavigator()MethodInitializes a new instance of the GraphNavigator class.
void ZoomIn()MethodZooms in by one step.
void ZoomOut()MethodZooms out by one step.
void SetZoom(float zoom)MethodSets the zoom level. The new zoom level.
void ResetView()MethodResets the view to default zoom and pan.
void Pan(float deltaX, float deltaY)MethodPans the view by the specified amount. The change in X position. The change in Y position.
void CenterOnNode(NetworkNode node)MethodCenters the view on a specific node. The node to center on.
void SelectNode(NetworkNode node)MethodSelects a node and adds it to navigation history. The node to select.
void GoBack()MethodGoes back to the previously selected node.
void ClearHistory()MethodClears the navigation history.

LayoutAlgorithm (enum)

Layout algorithm types.

LayoutChangedEventArgs (class)

Event arguments for layout change events.

MemberKindDescription
LayoutAlgorithm AlgorithmPropertyGets the selected layout algorithm.
LayoutChangedEventArgs(LayoutAlgorithm algorithm)MethodInitializes a new instance of the LayoutChangedEventArgs class. The selected algorithm.

LayoutParameters (class)

Parameters for layout algorithms.

MemberKindDescription
float AttractionStrengthPropertyGets or sets the attraction force strength.
float RepulsionStrengthPropertyGets or sets the repulsion force strength.
float DampingPropertyGets or sets the damping factor.
int MaxIterationsPropertyGets or sets the maximum iterations for iterative algorithms.
float ConvergenceThresholdPropertyGets or sets the convergence threshold.

LayoutParametersChangedEventArgs (class)

Event arguments for layout parameters change events.

MemberKindDescription
LayoutParameters ParametersPropertyGets the layout parameters.
LayoutParametersChangedEventArgs(LayoutParameters parameters)MethodInitializes a new instance of the LayoutParametersChangedEventArgs class. The layout parameters.

LayoutSelector (class)

Layout selector component that provides controls for choosing and applying different graph layout algorithms. Supports force-directed, circular, hierarchical, and other layout types.

MemberKindDescription
LayoutAlgorithm SelectedAlgorithmPropertyGets or sets the currently selected layout algorithm.
List<LayoutAlgorithm> AvailableAlgorithmsPropertyGets the list of available layout algorithms.
LayoutParameters ParametersPropertyGets or sets the layout parameters.
bool IsCalculatingPropertyGets or sets whether the layout is currently being calculated.
bool ShowOptionsPropertyGets or sets whether to show layout options.
event EventHandler<LayoutChangedEventArgs> LayoutChangedEventEvent raised when the layout algorithm changes.
event EventHandler<LayoutParametersChangedEventArgs> ParametersChangedEventEvent raised when layout parameters change.
LayoutSelector()MethodInitializes a new instance of the LayoutSelector class.
void SetAlgorithm(LayoutAlgorithm algorithm)MethodSets the layout algorithm. The layout algorithm to use.
void ApplyLayout(List<NetworkNode> nodes, List<NetworkLink> links, SKRect bounds)MethodApplies the current layout to the given nodes. The nodes to layout. The links between nodes. The bounds to layout within.

NetworkAlgorithms (class)

Graph algorithms over NetworkNode/NetworkLink diagrams: PageRank, shortest paths, all simple paths, connectivity, and connected components. Links are treated as directed unless Bidirectional is set.

MemberKindDescription
static PageRankResult PageRank( IEnumerable<NetworkNode> nodes, IEnumerable<NetworkLink> links, double damping = 0.85, int maxIterations = 100, double tolerance = 1e-8)MethodComputes PageRank scores. Dangling nodes distribute their rank evenly across all nodes.
static void ApplyPageRank(PageRankResult result, SKColor? color = null)MethodApplies PageRank scores visually: node scale (and optional color alpha) are normalized between the minimum and maximum scores.
static List<NetworkNode> ShortestPath( NetworkNode from, NetworkNode to, IEnumerable<NetworkLink> links, bool weighted = true)MethodFinds the shortest path (Dijkstra when weighted, BFS otherwise). Returns the node sequence including endpoints, or an empty list when unreachable.
static List<List<NetworkNode>> AllSimplePaths( NetworkNode from, NetworkNode to, IEnumerable<NetworkLink> links, int maxPaths = 50, int maxDepth = 32)MethodEnumerates simple (loop-free) paths between two nodes, depth-first, up to a cap.
static bool IsConnected(IEnumerable<NetworkNode> nodes, IEnumerable<NetworkLink> links)MethodReturns true when all nodes are reachable from the first node (ignoring link direction).
static List<List<NetworkNode>> ConnectedComponents(IEnumerable<NetworkNode> nodes, IEnumerable<NetworkLink> links)MethodReturns connected components (undirected view of the graph).
static double PathCost(IReadOnlyList<NetworkNode> path, IEnumerable<NetworkLink> links, bool weighted = true)MethodSums the cost of a node path (edges matched by consecutive node pairs).

NetworkAnalyzer (class)

Network analyzer component that displays network metrics and statistics. Shows various network analysis data in a structured panel.

MemberKindDescription
int NodeCountPropertyGets or sets the number of nodes in the network.
int LinkCountPropertyGets or sets the number of links in the network.
double AverageDegreePropertyGets or sets the average degree of nodes in the network.
double DensityPropertyGets or sets the network density.
int ConnectedComponentsPropertyGets or sets the number of connected components.
double ClusteringCoefficientPropertyGets or sets the average clustering coefficient.
int DiameterPropertyGets or sets the network diameter.
NetworkAnalyzer()MethodInitializes a new instance of the NetworkAnalyzer class.

NetworkControl (class)

Base class for all network-related controls in the Beep.Skia framework. Provides common functionality for network visualization components.

MemberKindDescription
SKColor PrimaryColorPropertyGets or sets the primary color.
SKColor SecondaryColorPropertyGets or sets the secondary color.
SKColor AccentColorPropertyGets or sets the accent color.
SKColor BorderColorPropertyGets or sets the border color.
float BorderThicknessPropertyGets or sets the border thickness.
float CornerRadiusPropertyGets or sets the corner radius.
bool IsHighlightedPropertyGets or sets the is highlighted.
SKColor HighlightColorPropertyGets or sets the highlight color.

NetworkGraph (class)

MemberKindDescription
List<NetworkNode> NodesPropertyGets or sets the nodes.
List<NetworkLink> LinksPropertyGets or sets the links.
NetworkGraph()MethodInitializes a new instance of the NetworkGraph class.

NetworkNode (class)

MemberKindDescription
SKColor FillColorPropertyGets or sets the fill color.
SKColor StrokeColorPropertyGets or sets the stroke color.
float StrokeWidthPropertyGets or sets the stroke width.
float CornerRadiusPropertyGets or sets the corner radius.
string NodeTypePropertyGets or sets the node type.
bool IsHighlightedPropertyGets or sets the is highlighted.
float ScalePropertyGets or sets the scale.
SKColor CentralityColorPropertyGets or sets the centrality color.
SKColor CommunityColorPropertyGets or sets the community color.
int CommunityIdPropertyGets or sets the community id.
int InputPortCountPropertyGets or sets the input port count.
int OutputPortCountPropertyGets or sets the output port count.
NetworkNode()MethodInitializes a new instance of the NetworkNode class.

NodeCentrality (class)

Represents centrality information for a network node.

MemberKindDescription
NetworkNode NodePropertyGets or sets the network node.
double ScorePropertyGets or sets the raw centrality score.
double NormalizedScorePropertyGets or sets the normalized centrality score (0-1).

NodeCluster (class)

Represents a cluster/grouping of related network nodes. Provides visual grouping with background and border.

MemberKindDescription
List<NetworkNode> NodesPropertyGets the collection of nodes in this cluster.
string ClusterNamePropertyGets or sets the cluster name/label.
SKColor ClusterBackgroundPropertyGets or sets the background color for the cluster.
SKColor ClusterBorderPropertyGets or sets the border color for the cluster.
float PaddingPropertyGets or sets the padding around the cluster bounds.
NodeCluster()MethodInitializes a new instance of the NodeCluster class.
void AddNode(NetworkNode node)MethodAdds a node to this cluster. The node to add.
void RemoveNode(NetworkNode node)MethodRemoves a node from this cluster. The node to remove.

NodeSelectionEventArgs (class)

Event arguments for node selection events.

MemberKindDescription
NetworkNode SelectedNodePropertyGets the selected node.
NodeSelectionEventArgs(NetworkNode selectedNode)MethodInitializes a new instance of the NodeSelectionEventArgs class. The selected node.

PageRankResult (class)

PageRank scores keyed by node.

MemberKindDescription
Dictionary<NetworkNode, double> RanksPropertyGets or sets the ranks.
int IterationsPropertyGets or sets the iterations.
bool ConvergedPropertyGets or sets the converged.
List<KeyValuePair<NetworkNode, double>> Top(int count)MethodReturns the highest-ranked nodes.

PathFinder (class)

Path finder component that visualizes shortest paths between network nodes. Highlights the path and displays path metrics.

MemberKindDescription
NetworkNode StartNodePropertyGets or sets the start node for path finding.
NetworkNode EndNodePropertyGets or sets the end node for path finding.
List<NetworkNode> PathNodesPropertyGets the list of nodes in the current path.
List<NetworkLink> PathLinksPropertyGets the list of links in the current path.
int PathLengthPropertyGets or sets the path length (number of edges).
double PathCostPropertyGets or sets the path cost/distance.
bool ShowMetricsPropertyGets or sets whether to show path metrics.
PathFinder()MethodInitializes a new instance of the PathFinder class.
void SetPath(List<NetworkNode> nodes, List<NetworkLink> links, double cost = 0.0)MethodSets the path to visualize. The nodes in the path. The links in the path. The path cost.
void ClearPath()MethodClears the current path.
void HighlightPathInNetwork()MethodHighlights the path nodes and links in the network visualization. This method should be called by the parent graph component.
void ClearPathHighlighting()MethodClears path highlighting from the network.

ViewChangedEventArgs (class)

Event arguments for view change events.

MemberKindDescription
float ZoomLevelPropertyGets the current zoom level.
float PanOffsetXPropertyGets the pan offset X.
float PanOffsetYPropertyGets the pan offset Y.
ViewChangedEventArgs(float zoomLevel, float panOffsetX, float panOffsetY)MethodInitializes a new instance of the ViewChangedEventArgs class. The zoom level. The pan offset X. The pan offset Y.