Project

ImagePlayground

Automate image processing, codes, metadata, charts, topology, and visual stories from PowerShell.

Stars 100
Forks 7
Total downloads 712,347
Release ImagePlayground-PowerShellModule.v3.2.7
Language: C# Updated: 2026-08-25

API Reference

Command

New-ImageTopology

Namespace ImagePlayground
Inputs
System.Object[]
Outputs
ChartForgeX.Topology.TopologyChart

Creates a topology diagram image.

Remarks

Renders ChartForgeX topology definitions to PNG, SVG, HTML, GIF, or APNG output. GIF and APNG sample the route configured by Motion.

Examples

Authored help example

Create a service topology diagram

PS>


New-ImageTopology -TopologyDefinition {
                New-ImageTopologyNode -Id api -Label API -Kind Service -Status Healthy -Symbol API
                New-ImageTopologyNode -Id db -Label Database -Kind Database -Status Warning -Symbol SQL
                New-ImageTopologyEdge -SourceNodeId api -TargetNodeId db -Label '32 ms' -Kind Dependency -Status Warning -Direction Forward
            } -Title 'Service map' -Layout Layered -Direction LeftToRight -FilePath service-map.png
        

Creates a transparent-ready PNG topology diagram from a PowerShell DSL.

Common Parameters

This command supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable.

For more information, see about_CommonParameters.

Syntax

New-ImageTopology [-ActiveScenarioId <String>] [-CanvasSurfaceStyle <Plain|Panel|PanelGrid>] [-Direction <TopToBottom|LeftToRight|BottomToTop|RightToLeft>] -FilePath <String> [-FitContentToViewport] [-Height <Int32>] [-InteractiveHtml] [-Layout <Manual>] [-Motion <TopologyMotionOptions>] [-NodeDisplayMode <Card>] [-NoEdgeLabels] [-NoGroups] [-NoLegend] [-NoScenarioControls] [-NoScenarioPanel] [-NoStatusBadges] [-NoTitle] [-Padding <Int32>] [-PassThru] [-ScenarioControlMode <Buttons|Checkboxes>] [-ScenarioDefinition <ScriptBlock>] [-ScenarioUrlState] [-Show] [-Subtitle <String>] [-Theme <Light|Dark>] [-Title <String>] -TopologyDefinition <ScriptBlock> [-Transparent] [-VisualStyle <Default|MonitoringDashboard>] [-Width <Int32>] [<CommonParameters>]
#
Parameter set: ScriptBlock

Parameters

ActiveScenarioId String optionalposition: namedpipeline: False
Scenario activated for static highlighting or when interactive HTML first loads.
CanvasSurfaceStyle TopologyCanvasSurfaceStyle optionalposition: namedpipeline: Falsevalues: 3
Canvas surface style.
Possible values: Plain, Panel, PanelGrid
Direction TopologyLayoutDirection optionalposition: namedpipeline: Falsevalues: 4
Topology layout direction.
Possible values: TopToBottom, LeftToRight, BottomToTop, RightToLeft
FilePath String requiredposition: namedpipeline: False
Output file path. The extension selects PNG, SVG, HTML, GIF, or APNG output.
FitContentToViewport SwitchParameter optionalposition: namedpipeline: False
Scale topology content down to remain inside the requested viewport.
Height Int32 optionalposition: namedpipeline: False
Viewport height in pixels.
InteractiveHtml SwitchParameter optionalposition: namedpipeline: False
Enable lightweight interactions for HTML output.
Layout TopologyLayoutMode optionalposition: namedpipeline: Falsevalues: 10
Topology layout mode.
Possible values: Manual, GroupGrid, HubAndSpoke, Layered, Matrix, DenseGrouped, Geographic, ForceDirected, RelationshipRadial, MindMap
Motion TopologyMotionOptions optionalposition: namedpipeline: False
Script-free route motion used by SVG, GIF, APNG, and sampled PNG output.
NodeDisplayMode TopologyNodeDisplayMode optionalposition: namedpipeline: Falsevalues: 8
Node presentation mode.
Possible values: Card, CompactCard, Tile, Pill, Icon, Artwork, Dot, Hidden
NoEdgeLabels SwitchParameter optionalposition: namedpipeline: False
Hide edge labels.
NoGroups SwitchParameter optionalposition: namedpipeline: False
Hide topology groups.
NoLegend SwitchParameter optionalposition: namedpipeline: False
Hide the topology legend.
NoScenarioControls SwitchParameter optionalposition: namedpipeline: False
Hide scenario controls in interactive HTML output.
NoScenarioPanel SwitchParameter optionalposition: namedpipeline: False
Hide the compact scenario detail panel in interactive HTML output.
NoStatusBadges SwitchParameter optionalposition: namedpipeline: False
Hide status badges.
NoTitle SwitchParameter optionalposition: namedpipeline: False
Hide the topology title.
Padding Int32 optionalposition: namedpipeline: False
Viewport padding in pixels.
PassThru SwitchParameter optionalposition: namedpipeline: False
Write the generated topology chart to the pipeline after rendering.
ScenarioControlMode TopologyHtmlScenarioControlMode optionalposition: namedpipeline: Falsevalues: 2
Scenario control presentation used by interactive HTML output.
Possible values: Buttons, Checkboxes
ScenarioDefinition ScriptBlock optionalposition: namedpipeline: False
Script block that emits topology scenarios.
ScenarioUrlState SwitchParameter optionalposition: namedpipeline: False
Synchronize the active scenario with the HTML page query string.
Show SwitchParameter optionalposition: namedpipeline: False
Open the generated file after creation.
Subtitle String optionalposition: namedpipeline: False
Topology subtitle.
Theme String optionalposition: namedpipeline: Falsevalues: 2
Topology theme name.
Possible values: Light, Dark
Title String optionalposition: namedpipeline: False
Topology title.
TopologyDefinition ScriptBlock requiredposition: 0pipeline: False
Script block that emits topology groups, nodes, edges, or a topology chart.
Transparent SwitchParameter optionalposition: namedpipeline: False
Use a transparent diagram canvas.
VisualStyle TopologyVisualStyle optionalposition: namedpipeline: Falsevalues: 2
Reusable visual style.
Possible values: Default, MonitoringDashboard
Width Int32 optionalposition: namedpipeline: False
Viewport width in pixels.

Outputs

ChartForgeX.Topology.TopologyChart

New-ImageTopology [-ActiveScenarioId <String>] [-CanvasSurfaceStyle <Plain|Panel|PanelGrid>] [-Chart <TopologyChart>] [-Definition <Object[]>] [-Direction <TopToBottom|LeftToRight|BottomToTop|RightToLeft>] [-Edge <TopologyEdge[]>] -FilePath <String> [-FitContentToViewport] [-Group <TopologyGroup[]>] [-Height <Int32>] [-InteractiveHtml] [-Layout <Manual>] [-Motion <TopologyMotionOptions>] [-Node <TopologyNode[]>] [-NodeDisplayMode <Card>] [-NoEdgeLabels] [-NoGroups] [-NoLegend] [-NoScenarioControls] [-NoScenarioPanel] [-NoStatusBadges] [-NoTitle] [-Padding <Int32>] [-PassThru] [-Scenario <TopologyScenario[]>] [-ScenarioControlMode <Buttons|Checkboxes>] [-ScenarioDefinition <ScriptBlock>] [-ScenarioUrlState] [-Show] [-Subtitle <String>] [-Theme <Light|Dark>] [-Title <String>] [-Transparent] [-VisualStyle <Default|MonitoringDashboard>] [-Width <Int32>] [<CommonParameters>]
#
Parameter set: Definition

Parameters

ActiveScenarioId String optionalposition: namedpipeline: False
Scenario activated for static highlighting or when interactive HTML first loads.
CanvasSurfaceStyle TopologyCanvasSurfaceStyle optionalposition: namedpipeline: Falsevalues: 3
Canvas surface style.
Possible values: Plain, Panel, PanelGrid
Chart TopologyChart optionalposition: namedpipeline: False
Topology chart provided directly.
Definition Object[] optionalposition: namedpipeline: True (ByValue)
Topology objects provided directly or from the pipeline.
Direction TopologyLayoutDirection optionalposition: namedpipeline: Falsevalues: 4
Topology layout direction.
Possible values: TopToBottom, LeftToRight, BottomToTop, RightToLeft
Edge TopologyEdge[] optionalposition: namedpipeline: False
Topology edges provided directly.
FilePath String requiredposition: namedpipeline: False
Output file path. The extension selects PNG, SVG, HTML, GIF, or APNG output.
FitContentToViewport SwitchParameter optionalposition: namedpipeline: False
Scale topology content down to remain inside the requested viewport.
Group TopologyGroup[] optionalposition: namedpipeline: False
Topology groups provided directly.
Height Int32 optionalposition: namedpipeline: False
Viewport height in pixels.
InteractiveHtml SwitchParameter optionalposition: namedpipeline: False
Enable lightweight interactions for HTML output.
Layout TopologyLayoutMode optionalposition: namedpipeline: Falsevalues: 10
Topology layout mode.
Possible values: Manual, GroupGrid, HubAndSpoke, Layered, Matrix, DenseGrouped, Geographic, ForceDirected, RelationshipRadial, MindMap
Motion TopologyMotionOptions optionalposition: namedpipeline: False
Script-free route motion used by SVG, GIF, APNG, and sampled PNG output.
Node TopologyNode[] optionalposition: namedpipeline: False
Topology nodes provided directly.
NodeDisplayMode TopologyNodeDisplayMode optionalposition: namedpipeline: Falsevalues: 8
Node presentation mode.
Possible values: Card, CompactCard, Tile, Pill, Icon, Artwork, Dot, Hidden
NoEdgeLabels SwitchParameter optionalposition: namedpipeline: False
Hide edge labels.
NoGroups SwitchParameter optionalposition: namedpipeline: False
Hide topology groups.
NoLegend SwitchParameter optionalposition: namedpipeline: False
Hide the topology legend.
NoScenarioControls SwitchParameter optionalposition: namedpipeline: False
Hide scenario controls in interactive HTML output.
NoScenarioPanel SwitchParameter optionalposition: namedpipeline: False
Hide the compact scenario detail panel in interactive HTML output.
NoStatusBadges SwitchParameter optionalposition: namedpipeline: False
Hide status badges.
NoTitle SwitchParameter optionalposition: namedpipeline: False
Hide the topology title.
Padding Int32 optionalposition: namedpipeline: False
Viewport padding in pixels.
PassThru SwitchParameter optionalposition: namedpipeline: False
Write the generated topology chart to the pipeline after rendering.
Scenario TopologyScenario[] optionalposition: namedpipeline: False
Topology scenarios provided directly.
ScenarioControlMode TopologyHtmlScenarioControlMode optionalposition: namedpipeline: Falsevalues: 2
Scenario control presentation used by interactive HTML output.
Possible values: Buttons, Checkboxes
ScenarioDefinition ScriptBlock optionalposition: namedpipeline: False
Script block that emits topology scenarios.
ScenarioUrlState SwitchParameter optionalposition: namedpipeline: False
Synchronize the active scenario with the HTML page query string.
Show SwitchParameter optionalposition: namedpipeline: False
Open the generated file after creation.
Subtitle String optionalposition: namedpipeline: False
Topology subtitle.
Theme String optionalposition: namedpipeline: Falsevalues: 2
Topology theme name.
Possible values: Light, Dark
Title String optionalposition: namedpipeline: False
Topology title.
Transparent SwitchParameter optionalposition: namedpipeline: False
Use a transparent diagram canvas.
VisualStyle TopologyVisualStyle optionalposition: namedpipeline: Falsevalues: 2
Reusable visual style.
Possible values: Default, MonitoringDashboard
Width Int32 optionalposition: namedpipeline: False
Viewport width in pixels.

Outputs

ChartForgeX.Topology.TopologyChart