Customizing link label layout

For details about label layout, refer to Label layout.
The customization of link label layout is based on the following CSS properties, valid for IltLink , IltLinkBundle and IltLinearGroup .
CSS properties for link label layout 
Property Name
Type
Default Value
Description
linkLabelMinPercentageFromStart
float
0
Defines the start point of the area of the polyline that should be used for the label when a label layout is performed. This start point is expressed as a percentage of the length of the polyline.
linkLabelMaxPercentageFromStart
float
100
Defines the end point of the area of the polyline that should be used for the label when a label layout is performed. This end point is expressed as a percentage of the length of the polyline.
linkLabelMaxDistFromPath
float
10
Defines the maximum distance allowed between the label and the path when a label layout is performed.
linkLabelPreferredDistFromPath
float
0
Defines the preferred distance between the label and the path when a label layout is performed.
linkLabelPreferredSide
IlvDirection
Bottom
Defines the preferred side where the label should be placed when a label layout is performed. The meaning of this property depends on property linkLabelSideAssociation .
If the side association is LOCAL, the following options can be used to specify the allowed and preferred sides:
  • Left : left side in polyline flow direction
  • Right : right side in polyline flow direction
If the side association is GLOBAL, the following options can be used to specify the allowed and preferred sides:
  • Left : left side.
  • Right : right side
  • Top : top side
  • Bottom : bottom side
  • TopLeft : top side or left side
  • TopRight : top side or right side
  • BottomLeft : bottom side or left side
  • BottomRight : bottom side or right side
linkLabelAllowedSide
integer
0
Defines the sides that are allowed for the label placement when a label layout is performed. The value can be 0, if all sides are allowed. The meaning of this property depends on the property linkLabelSideAssociation .
If the side association is LOCAL, the following options can be used to specify the allowed and preferred sides:
  • Left : left side in polyline flow direction
  • Right : right side in polyline flow direction
If the side association is GLOBAL, the following options can be used to specify the allowed and preferred sides:
  • Left : left side.
  • Right : right side
  • Top : top side
  • Bottom : bottom side
  • TopLeft : top side or left side
  • TopRight : top side or right side
  • BottomLeft : bottom side or left side
  • BottomRight : bottom side or right side
linkLabelSideAssociation
IlvAnnealingPolylineLabelDescriptor
GLOBAL
Defines an association between the preferred and the allowed side for the label when a label layout is performed.
Valid options for the side association are:
  • LOCAL
  • GLOBAL
linkLabelTopOverlap
float
0
Defines the number of pixels the top side of the label can overlap the related obstacle when a label layout is performed.
linkLabelBottomOverlap
float
0
Defines the number of pixels the bottom side of the label can overlap the related obstacle when a label layout is performed.
linkLabelLeftOverlap
float
0
Defines the number of pixels the left side of the label can overlap the related obstacle when a label layout is performed.
linkLabelRightOverlap
float
0
Defines the number of pixels the right side of the label can overlap the related obstacle when a label layout is performed.

How to customize link label layout

The following CSS extract illustrates how you can configure your link objects to customize the behavior of the label layout associated with a network or equipment component.
It is provided as part of the JViews TGO demonstration software at <installdir> /samples/network/labelLayout/data/network.css.
object {
  linkLabelMinPercentageFromStart: 40;
  linkLabelMaxPercentageFromStart: 60;
  linkLabelMaxDistFromPath: 5;
  linkLabelPreferredDistFromPath: 5;
  linkLabelSideAssociation : 1;
  linkLabelPreferredSide: Bottom;
  linkLabelAllowedSide: Bottom;
  linkLabelTopOverlap: 0;
  linkLabelBottomOverlap: 0;
  linkLabelLeftOverlap: 0;
  linkLabelRightOverlap: 0;
}