# IT:AD:plantuml:HowTo:Default Configuration (*) #
* [[../|(UP)]]
* See also:
* [[./Document Relationships]]
## Process ##
### Common Setup
I found that in most cases an ultra-stripped down (no Circles), compact version is just what I need to get ideas moving:
!includeurl http://skysigal.com/_media/resources/configuration/plantuml/minimalist.txt
'Optional:
'!includeurl http://skysigal.com/_media/resources/configuration/plantuml/icons_archimate.txt
'!includeurl http://skysigal.com/_media/resources/configuration/plantuml/icons_azure_cloud.txt
'!includeurl http://skysigal.com/_media/resources/configuration/plantuml/icons_bpm.txt
'!includeurl http://skysigal.com/_media/resources/configuration/plantuml/icons_ms_32.txt
'skinparam handwritten true
'<>
'<>
'<>
'<>
'<>
'skinparam nodesep 50
'skinparam ranksep 50
'skinparam dpi 300
'scale 0.8
'scale max 800 width
It has the following styles for most elements:
<>
<>
<>
Which relies on the following which still shows Circles and Stereotypes, but just in a restrained pallet:
!includeurl http://skysigal.com/_media/resources/configuration/plantuml/default.txt
skinparam nodesep 50
skinparam ranksep 30
There's also the following, which in turn relies on the default one:
!includeurl http://skysigal.com/_media/resources/configuration/plantuml/archimate.txt
### Common Reference Information
{{page>it/ad/plantuml/howto/Document Relationships#Relationships&noheader&nofooter}}
### Hidden Relationships
Use Hidden Tags to help layout diagrams:
Foo .[Hidden]. Bar
### Diagram Notes
I prefer free standing notes..they always start small...and grow.
Use a Relationship to link the note to the class you want:
note as N1
blah...
blah...
blah...
end note
Foo .. N1
### Embed Images
If you have a publicly available, correctly sized image (like from here: http://skysigal.com/lib/exe/mediamanager.php?ns=resources%3Aimages) you can include it:
class Foo {
}
class "Azure AD" {
}
!includeurl http://skysigal.com/_media/resources/configuration/plantuml/default.txt
skinparam packageStyle rect
hide circles
hide empty attributes
hide empty methods
class Foo {
}
class "Azure AD" {
}
## Shading
class Bar1 #Wheat {
Highlighted
}
!includeurl http://skysigal.com/_media/resources/configuration/plantuml/default.txt
skinparam packageStyle rect
hide circles
hide empty attributes
hide empty methods
class Foo {
Normal
}
class Bar1 #Wheat {
Highlighted
}
class Bar2 #white {
Highlighted
}
### Comments
It's not the most intuitive syntax, but a comment start with a `'`
'Some Comment
etc...
### Direction
PlantUML has an interesting bug that if you put the arrows at the beginning of the line, it reverses the direction you requested using UP, DOWN, RIGHT, LEFT.
The recommendation is to keep arrow heads on the right if you don't want to do your head in having arrow heads on the left, but having to also have it say LEFT when you want RIGHT, and vice versa.
package 1 {
class A1
class B1
A1 -RIGHT-> B1 : -RIGHT->
class C1
class D1
C1 -LEFT-> D1 : -LEFT->
class E1
class F1
E1 <-RIGHT- F1 : <-RIGHT-
class G1
class H1
G1 <-LEFT- H1 : <-LEFT-
class I1
class J1
I1 <-- J1 : <--
A1 -[HIDDEN]DOWN- C1
C1 -[HIDDEN]DOWN- E1
E1 -[HIDDEN]DOWN- G1
G1 -[HIDDEN]DOWN- I1
}
package 2 {
class A2
class B2
A2 -RIGHT-|> B2 : -RIGHT-|>
class C2
class D2
C2 -LEFT-|> D2 : -LEFT-|>
class E2
class F2
E2 <|-RIGHT- F2 : <|-RIGHT-
class G2
class H2
G2 <|-LEFT- H2 : <|-LEFT-
class I2
class J2
I2 <|-- J2 : <|--
A2 -[HIDDEN]DOWN- C2
C2 -[HIDDEN]DOWN- E2
E2 -[HIDDEN]DOWN- G2
G2 -[HIDDEN]DOWN- I2
}
Produces:
!includeurl http://skysigal.com/_media/resources/configuration/plantuml/minimalist.txt
package 1 {
class A1
class B1
A1 -RIGHT-> B1 : -RIGHT->
class C1
class D1
C1 -LEFT-> D1 : -LEFT->
class E1
class F1
E1 <-RIGHT- F1 : <-RIGHT-
class G1
class H1
G1 <-LEFT- H1 : <-LEFT-
class I1
class J1
I1 <-- J1 : <--
A1 -[HIDDEN]DOWN- C1
C1 -[HIDDEN]DOWN- E1
E1 -[HIDDEN]DOWN- G1
G1 -[HIDDEN]DOWN- I1
}
package 2 {
class A2
class B2
A2 -RIGHT-|> B2 : -RIGHT-|>
class C2
class D2
C2 -LEFT-|> D2 : -LEFT-|>
class E2
class F2
E2 <|-RIGHT- F2 : <|-RIGHT-
class G2
class H2
G2 <|-LEFT- H2 : <|-LEFT-
class I2
class J2
I2 <|-- J2 : <|--
A2 -[HIDDEN]DOWN- C2
C2 -[HIDDEN]DOWN- E2
E2 -[HIDDEN]DOWN- G2
G2 -[HIDDEN]DOWN- I2
}