CynefinDiagram Class
A diagram of the Cynefin framework: the complex, complicated, chaotic and clear domains as four quadrants separated by wavy boundaries, the confusion domain in their center, items placed in the domains, and transitions between the domains (Mermaid cynefin-beta). The domains are always at the same place: complex at the top left, complicated at the top right, chaotic at the bottom left and clear at the bottom right.
public sealed class CynefinDiagram : Diagram- Inheritance
DiagramCynefinDiagram
Constructors
| Name | Description |
|---|---|
| CynefinDiagram() | Initializes a new instance of the CynefinDiagram class, with the padding of Mermaid, 40 pixels. |
CynefinDiagram()
CynefinDiagram.csInitializes a new instance of the CynefinDiagram class, with the padding of Mermaid, 40 pixels.
public CynefinDiagram()Properties
| Name | Description |
|---|---|
| BoundaryAmplitude | Gets or sets how much the boundaries between the domains wave, in pixels; 0 draws straight lines. The default is 8. |
| Colors | Gets the colors and sizes that replace the ones of the theme (the cynefin theme variables of Mermaid). |
| Height | Gets or sets the height of the diagram, without the padding, in pixels. The default is 600. |
| Items | Gets the items. The items of a domain are drawn from the top in their order; the confusion domain shows three of them, and the number of the others. |
| Seed | Gets or sets the seed of the waves of the boundaries: the same seed always draws the same waves. 0, the default, uses a fixed seed (Mermaid derives it from the identifier of the SVG element, so its waves change between pages). |
| ShowDomainDescriptions | Gets or sets a value that indicates whether the decision model and the practices of each domain are written below its name. The default is true. |
| Transitions | Gets the transitions between the domains. |
| Width | Gets or sets the width of the diagram, without the padding, in pixels. The default is 800. |
BoundaryAmplitude
CynefinDiagram.csGets or sets how much the boundaries between the domains wave, in pixels; 0 draws straight lines. The default is 8.
public double BoundaryAmplitude { get; set; }Colors
CynefinDiagram.csGets the colors and sizes that replace the ones of the theme (the cynefin theme variables of Mermaid).
public CynefinTheme Colors { get; }Property value
Height
CynefinDiagram.csGets or sets the height of the diagram, without the padding, in pixels. The default is 600.
public double Height { get; set; }Items
CynefinDiagram.csGets the items. The items of a domain are drawn from the top in their order; the confusion domain shows three of them, and the number of the others.
public IList<CynefinItem> Items { get; }Property value
ShowDomainDescriptions
CynefinDiagram.csTransitions
CynefinDiagram.csGets the transitions between the domains.
public IList<CynefinTransition> Transitions { get; }Property value
Width
CynefinDiagram.csGets or sets the width of the diagram, without the padding, in pixels. The default is 800.
public double Width { get; set; }Methods
| Name | Description |
|---|---|
| AddItem(CynefinDomain, DiagramText) | Adds an item to a domain. |
| AddTransition(CynefinDomain, CynefinDomain, DiagramText?) | Adds a transition between two domains. |
AddItem(CynefinDomain, DiagramText)
CynefinDiagram.csAdds an item to a domain.
public CynefinItem AddItem(CynefinDomain domain, DiagramText label)Parameters
domainCynefinDomain- The domain.
labelDiagramText- The text of the item.
Returns
CynefinItem The item.
AddTransition(CynefinDomain, CynefinDomain, DiagramText?)
CynefinDiagram.csAdds a transition between two domains.
public CynefinTransition AddTransition(CynefinDomain from, CynefinDomain to, DiagramText? label = null)Parameters
fromCynefinDomain- The domain the movement starts from.
toCynefinDomain- The domain the movement goes to.
labelDiagramText?- The text drawn on the arrow, or
nullfor none.
Returns
CynefinTransition The transition.