openstack-manuals/doc/contributor-guide/source/diagram-guidelines/general-guidelines.rst
Nathaniel Archer cb7c8d07af Add draft of diagram guidelines.
Change-Id: I28dbdd0f545317b50809396d47dfbb462430b748
2016-07-22 10:09:11 -05:00

77 lines
1.9 KiB
ReStructuredText

.. _dg_general:
==================
General guidelines
==================
Text format
~~~~~~~~~~~
* Set the font to Open Sans. If your tool does not have Open Sans, set
the font to a different sans serif font, like Helvetica.
* Set the font size to at least 6px or above.
* All objects must be labeled with text.
Objects
~~~~~~~
* An object must be a closed geometric shape or icon.
* Objects must have a hollow middle, where text can be added.
* All objects must be labeled according to their function.
Object color
~~~~~~~~~~~~
Any objects inside a diagram should be black, unless the object
needs to be emphasized within a diagram in order to fully
understand its function. Colored objects may only use
bright primary colors, such as light blue, red, or green. You can make
multiple objects the same color, provided the objects serve
similar functions or purposes.
Lines
~~~~~
* Set line width to at least 2px or above.
* Avoid crossing an object with a line.
The following are recommendations for line shape and usage.
Line shape
----------
Keep lines straight unless a line needs to change direction. If
a line changes direction to reach an object, the corner in
which the change of direction occurs must be rounded.
Solid lines
-----------
Use solid lines to show a direct relationship between objects.
For example, objects within a reference architecture that are
used in conjunction with each other.
Dashed lines
------------
Use dashed lines to group objects connected through an online
network. For example, an object that uses neutron to connect
to a server.
Dotted lines
------------
Use dotted lines to show how data entered by a human user travels.
Arrows
~~~~~~
Use arrows to represent one-way interactions between two or more
objects. If an object is attached to an arrow, it implies that the
function represented by the object can only work when interacting
with another object in the diagram.