cs-element
Version:
Advanced reactive data management library with state machines, blueprints, persistence, compression, networking, and multithreading support
61 lines • 1.8 kB
TypeScript
/**
* SVG движок для визуализации CSElement структур
*/
import { VisualizationEngine, VisualizationGraph, VisualizationOptions, VisualizationResult, VisualizationFormat } from '../../types/visualization-interfaces';
export declare class SvgEngine implements VisualizationEngine {
name: string;
supportedFormats: VisualizationFormat[];
/**
* Проверка поддержки формата
*/
supportsFormat(format: VisualizationFormat): boolean;
/**
* Рендеринг графа в SVG формат
*/
render(graph: VisualizationGraph, options: VisualizationOptions): Promise<VisualizationResult>;
/**
* Вычисление позиций узлов
*/
private calculatePositions;
/**
* Древовидная раскладка
*/
private calculateTreeLayout;
/**
* Круговая раскладка
*/
private calculateCircularLayout;
/**
* Силовая раскладка (упрощенная)
*/
private calculateForceLayout;
/**
* Применение сил для силовой раскладки
*/
private applyForces;
/**
* Генерация SVG контента
*/
private generateSvg;
/**
* Рендеринг узла
*/
private renderNode;
/**
* Рендеринг связи
*/
private renderEdge;
/**
* Вычисление точек соединения между узлами
*/
private calculateConnectionPoints;
/**
* Обрезка текста
*/
private truncateText;
/**
* Экранирование XML символов
*/
private escapeXml;
}
//# sourceMappingURL=SvgEngine.d.ts.map