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

Types in this assembly

ActivityNodeType (enum)

AssociationType (enum)

Defines the types of UML associations.

MessageType (enum)

Defines the types of UML messages.

UMLActionNode (class)

UML representation of an action automation node. Displays as a rectangle with action-specific visual cues.

MemberKindDescription
string ActionTypePropertyGets or sets the action type (API, Database, File, etc.).
string ActionDescriptionPropertyGets or sets the action description.
UMLActionNode()MethodInitializes a new instance of the UMLActionNode class.

UMLActivationBar (class)

UML sequence activation bar — a narrow vertical rectangle placed on a lifeline to represent the period during which an object is active.

MemberKindDescription
string LabelPropertyGets or sets the label.
UMLActivationBar()MethodInitializes a new instance of the UMLActivationBar class.
override Dictionary<string, object> GetProperties(bool includeCommon = true, bool includeNodeProperties = true)Method
override void SetPropperties(IDictionary<string, object> properties, bool updateNodeProperties = true, bool applyToPublicSetters = true)MethodGets or sets the set propperties.

UMLActivityNode (class)

UML Activity Node — a rounded rectangle representing an action in an activity diagram.

MemberKindDescription
string ActionNamePropertyGets or sets the action name.
ActivityNodeType ActionTypePropertyGets or sets the action type.
UMLActivityNode()MethodInitializes a new instance of the UMLActivityNode class.
override Dictionary<string, object> GetProperties(bool includeCommon = true, bool includeNodeProperties = true)Method
override void SetPropperties(IDictionary<string, object> properties, bool updateNodeProperties = true, bool applyToPublicSetters = true)MethodGets or sets the set propperties.

UMLActor (class)

Represents a UML actor in use case diagrams. Displays a stick figure representation with an actor name below.

MemberKindDescription
string ActorNamePropertyGets or sets the name of the actor.
UMLActor()MethodInitializes a new instance of the UMLActor class.

UMLArtifactNode (class)

UML Artifact node — a deployable file/artifact with a folded-corner icon and «artifact» stereotype.

MemberKindDescription
string ArtifactNamePropertyGets or sets the artifact name.
string FileNamePropertyGets or sets the file name.
UMLArtifactNode()MethodInitializes a new instance of the UMLArtifactNode class.
override Dictionary<string, object> GetProperties(bool includeCommon = true, bool includeNodeProperties = true)Method
override void SetPropperties(IDictionary<string, object> properties, bool updateNodeProperties = true, bool applyToPublicSetters = true)MethodGets or sets the set propperties.

UMLAssociation (class)

Represents a UML association relationship between two UML elements. Can display multiplicity and role names.

MemberKindDescription
string SourceMultiplicityPropertyGets or sets the multiplicity at the source end.
string TargetMultiplicityPropertyGets or sets the multiplicity at the target end.
string SourceRolePropertyGets or sets the role name at the source end.
string TargetRolePropertyGets or sets the role name at the target end.
AssociationType AssociationTypePropertyGets or sets the type of association.
bool ShowDataFlowPropertyGets or sets whether to show animated data flow for this association. Useful for associations that represent data flow or communication relationships.
string DataTypePropertyGets or sets the data type for the association (used for data flow visualization).
UMLAssociation() : base(()MethodInitializes a new instance of the UMLAssociation class.
new void Draw(SKCanvas canvas)MethodDraws the association line with UML-specific decorations. The canvas to draw on.

UMLClass (class)

Represents a UML class in a class diagram. Displays class name, attributes, and operations in separate compartments.

MemberKindDescription
string ClassNamePropertyGets or sets the name of the class.
List<string> AttributesPropertyGets or sets the list of attributes for this class.
string AttributesTextPropertyGets or sets the attributes text.
List<string> OperationsPropertyGets or sets the list of operations for this class.
string OperationsTextPropertyGets or sets the operations text.
bool IsAbstractPropertyGets or sets the is abstract.
UMLClass()MethodInitializes a new instance of the UMLClass class.

UMLCombinedFragment (class)

UML combined fragment (sequence diagram) — a frame with an operator tab (alt, opt, loop, par, break, critical, neg, assert, ignore, consider) and an optional guard.

MemberKindDescription
static readonly string[] Operators =FieldSupported interaction operators.
string OperatorPropertyGets or sets the operator.
string GuardConditionPropertyGets or sets the guard condition.
UMLCombinedFragment()MethodInitializes a new instance of the UMLCombinedFragment class.
override Dictionary<string, object> GetProperties(bool includeCommon = true, bool includeNodeProperties = true)Method
override void SetPropperties(IDictionary<string, object> properties, bool updateNodeProperties = true, bool applyToPublicSetters = true)MethodGets or sets the set propperties.

UMLComponentNode (class)

UML Component node — a modular part of a system with provided and required interfaces. Rendered as a rectangle with the component icon (two tabs) and a «component» stereotype.

MemberKindDescription
string ComponentNamePropertyGets or sets the component name.
string ProvidedInterfacesPropertyGets or sets the provided interfaces.
string RequiredInterfacesPropertyGets or sets the required interfaces.
UMLComponentNode()MethodInitializes a new instance of the UMLComponentNode class.
override Dictionary<string, object> GetProperties(bool includeCommon = true, bool includeNodeProperties = true)Method
override void SetPropperties(IDictionary<string, object> properties, bool updateNodeProperties = true, bool applyToPublicSetters = true)MethodGets or sets the set propperties.

UMLConditionNode (class)

UML representation of a condition automation node. Displays as a diamond shape with condition-specific visual cues.

MemberKindDescription
string ConditionExpressionPropertyGets or sets the condition expression.
string ConditionTypePropertyGets or sets the condition type (Boolean, Comparison, Complex).
UMLConditionNode()MethodInitializes a new instance of the UMLConditionNode class.

UMLControl (class)

Base class for all UML diagram elements in the Beep.Skia.UML framework. Provides common functionality for UML-specific controls.

MemberKindDescription
string StereotypePropertyGets or sets the stereotype of this UML element (e.g., "&lt;&lt;interface&gt;&gt;", "&lt;&lt;abstract&gt;&gt;").
SKColor BackgroundColorPropertyGets or sets the background color of this UML element.
SKColor BorderColorPropertyGets or sets the border color of this UML element.
float BorderThicknessPropertyGets or sets the border thickness.
SKColor SelectionColorPropertyGets or sets the selection color.
override List<IConnectionPoint> InConnectionPointsPropertyUML input connection points (persisted).
override List<IConnectionPoint> OutConnectionPointsPropertyUML output connection points (same instances, UML treats ports as bidirectional visually).

UMLDataSourceNode (class)

UML representation of a data source automation node. Displays as a cylinder shape with data source-specific visual cues.

MemberKindDescription
UMLDataSourceNode()MethodInitializes a new instance of the UMLDataSourceNode class.

UMLDeploymentNode (class)

UML Deployment node — a physical or execution environment (device / execution environment). Rendered as a 3D box with the «node» stereotype.

MemberKindDescription
string NodeNamePropertyGets or sets the node name.
string NodeTypePropertyGets or sets the node type.
UMLDeploymentNode()MethodInitializes a new instance of the UMLDeploymentNode class.
override Dictionary<string, object> GetProperties(bool includeCommon = true, bool includeNodeProperties = true)Method
override void SetPropperties(IDictionary<string, object> properties, bool updateNodeProperties = true, bool applyToPublicSetters = true)MethodGets or sets the set propperties.

UMLInheritance (class)

Represents a UML inheritance relationship between classes. Displays a solid line with a triangle arrowhead pointing to the parent class.

MemberKindDescription
UMLInheritance() : base(()MethodInitializes a new instance of the UMLInheritance class.
new void Draw(SKCanvas canvas)MethodDraws the inheritance relationship with a triangle arrowhead. The canvas to draw on.

UMLInterface (class)

Represents a UML interface in a class diagram. Displays interface name and operations with interface notation.

MemberKindDescription
string InterfaceNamePropertyGets or sets the name of the interface.
List<string> OperationsPropertyGets or sets the list of operations for this interface.
string OperationsTextPropertyGets or sets the operations text.
UMLInterface()MethodInitializes a new instance of the UMLInterface class.

UMLLifeline (class)

MemberKindDescription
string ObjectNamePropertyGets or sets the object name.
string ClassNamePropertyGets or sets the class name.
float LifelineLengthPropertyGets or sets the lifeline length.
UMLLifeline()MethodInitializes a new instance of the UMLLifeline class.

UMLMessage (class)

Represents a UML message in sequence diagrams. Displays arrows between lifelines with different styles for different message types.

MemberKindDescription
string MessageTextPropertyGets or sets the message text/label.
MessageType MessageTypePropertyGets or sets the type of message.
string SequenceNumberPropertyGets or sets the sequence number (optional).
bool ShowDataFlowPropertyGets or sets whether to show animated data flow for this message. Useful for visualizing data flow in sequence diagrams.
string ReturnDataTypePropertyGets or sets the return data type for the message (used for data flow visualization).
UMLMessage() : base(()MethodInitializes a new instance of the UMLMessage class.
new void Draw(SKCanvas canvas)MethodDraws the message arrow with appropriate styling. The canvas to draw on.

UMLOutputNode (class)

UML representation of an output automation node. Displays as a rounded rectangle with output-specific visual cues.

MemberKindDescription
UMLOutputNode()MethodInitializes a new instance of the UMLOutputNode class.

UMLPackageNode (class)

UML Package Node — a tabbed folder shape representing a namespace or module.

MemberKindDescription
string PackageNamePropertyGets or sets the package name.
UMLPackageNode()MethodInitializes a new instance of the UMLPackageNode class.
override Dictionary<string, object> GetProperties(bool includeCommon = true, bool includeNodeProperties = true)Method
override void SetPropperties(IDictionary<string, object> properties, bool updateNodeProperties = true, bool applyToPublicSetters = true)MethodGets or sets the set propperties.

UMLSystemBoundary (class)

UML System Boundary — a rectangle that groups related use cases. Rendered with a dashed border and optional title at the top-left.

MemberKindDescription
string SystemNamePropertyGets or sets the system name.
UMLSystemBoundary()MethodInitializes a new instance of the UMLSystemBoundary class.
override Dictionary<string, object> GetProperties(bool includeCommon = true, bool includeNodeProperties = true)Method
override void SetPropperties(IDictionary<string, object> properties, bool updateNodeProperties = true, bool applyToPublicSetters = true)MethodGets or sets the set propperties.

UMLTransformNode (class)

UML representation of a transform automation node. Displays as a hexagon shape with transform-specific visual cues.

MemberKindDescription
UMLTransformNode()MethodInitializes a new instance of the UMLTransformNode class.

UMLTriggerNode (class)

UML representation of a trigger automation node. Displays as a rounded rectangle with trigger-specific visual cues.

MemberKindDescription
string TriggerTypePropertyGets or sets the trigger type (Event, Schedule, Manual, etc.).
string TriggerConditionPropertyGets or sets the trigger condition or schedule.
UMLTriggerNode()MethodInitializes a new instance of the UMLTriggerNode class.

UMLUseCaseNode (class)

UML Use Case node — an oval representing a user goal or system function.

MemberKindDescription
string UseCaseNamePropertyGets or sets the use case name.
UMLUseCaseNode()MethodInitializes a new instance of the UMLUseCaseNode class.
override Dictionary<string, object> GetProperties(bool includeCommon = true, bool includeNodeProperties = true)Method
override void SetPropperties(IDictionary<string, object> properties, bool updateNodeProperties = true, bool applyToPublicSetters = true)MethodGets or sets the set propperties.

XmiExporter (class)

Exports a UML class-style diagram to XMI 2.5 (UML 2.5) for interchange with UML tools (Enterprise Architect, Papyrus, StarUML, Visual Paradigm, etc.). Maps classes, interfaces, actors, use cases, and packages, plus associations, inheritance (generalizations), and member text.

MemberKindDescription
string Export(IReadOnlyList<SkiaComponent> components, IReadOnlyList<IConnectionLine> lines, string modelName = "Model")MethodExports components and lines to XMI.