Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

ogdf::ComponentSplitterLayout Class Reference

#include <ogdf/packing/ComponentSplitterLayout.h>

+ Inheritance diagram for ogdf::ComponentSplitterLayout:

Public Member Functions

 ComponentSplitterLayout ()
 
void call (GraphAttributes &GA) override
 Computes a layout of graph GA. More...
 
void setBorder (int border)
 
void setLayoutModule (LayoutModule *layout)
 
void setPacker (CCLayoutPackModule *packer)
 
- Public Member Functions inherited from ogdf::LayoutModule
 LayoutModule ()
 Initializes a layout module. More...
 
virtual ~LayoutModule ()
 
void operator() (GraphAttributes &GA)
 Computes a layout of graph GA. More...
 

Private Member Functions

void reassembleDrawings (GraphAttributes &GA, const Graph::CCsInfo &ccs)
 Combines drawings of connected components to a single drawing by rotating components and packing the result (optimizes area of axis-parallel rectangle). More...
 

Private Attributes

int m_border
 
std::unique_ptr< CCLayoutPackModulem_packer
 
std::unique_ptr< LayoutModulem_secondaryLayout
 
double m_targetRatio
 

Detailed Description

Definition at line 44 of file ComponentSplitterLayout.h.

Constructor & Destructor Documentation

◆ ComponentSplitterLayout()

ogdf::ComponentSplitterLayout::ComponentSplitterLayout ( )

Member Function Documentation

◆ call()

void ogdf::ComponentSplitterLayout::call ( GraphAttributes GA)
overridevirtual

Computes a layout of graph GA.

This method is the actual algorithm call and must be implemented by derived classes.

Parameters
GAis the input graph and will also be assigned the layout information.

Implements ogdf::LayoutModule.

◆ reassembleDrawings()

void ogdf::ComponentSplitterLayout::reassembleDrawings ( GraphAttributes GA,
const Graph::CCsInfo ccs 
)
private

Combines drawings of connected components to a single drawing by rotating components and packing the result (optimizes area of axis-parallel rectangle).

◆ setBorder()

void ogdf::ComponentSplitterLayout::setBorder ( int  border)
inline

Definition at line 66 of file ComponentSplitterLayout.h.

◆ setLayoutModule()

void ogdf::ComponentSplitterLayout::setLayoutModule ( LayoutModule layout)
inline

Definition at line 62 of file ComponentSplitterLayout.h.

◆ setPacker()

void ogdf::ComponentSplitterLayout::setPacker ( CCLayoutPackModule packer)
inline

Definition at line 64 of file ComponentSplitterLayout.h.

Member Data Documentation

◆ m_border

int ogdf::ComponentSplitterLayout::m_border
private

Definition at line 50 of file ComponentSplitterLayout.h.

◆ m_packer

std::unique_ptr<CCLayoutPackModule> ogdf::ComponentSplitterLayout::m_packer
private

Definition at line 47 of file ComponentSplitterLayout.h.

◆ m_secondaryLayout

std::unique_ptr<LayoutModule> ogdf::ComponentSplitterLayout::m_secondaryLayout
private

Definition at line 46 of file ComponentSplitterLayout.h.

◆ m_targetRatio

double ogdf::ComponentSplitterLayout::m_targetRatio
private

Definition at line 49 of file ComponentSplitterLayout.h.


The documentation for this class was generated from the following file: