Path Attributes

Paths do not have a separate ...BUNDLE data structure associated with them. Their attributes are defined by LINEBUNDLE and AREABUNDLE. There are certain line attributes that apply only to geometric lines, or lines created with some path operations. Depending on the purpose of a path, only certain path attributes are in effect. These and the other path attributes are described in this chapter.

When an application creates a presentation space, the path attributes are set to the default values shown in the following table.

Path Attribute Default Values

┌────────────────┬────────────────┬────────────────────────────┐
│Attribute       │Default Value   │Function that Redefines     │
│                │                │Attribute                   │
├────────────────┼────────────────┼────────────────────────────┤
│Geometric width │None            │GpiSetLineWidthGeom         │
├────────────────┼────────────────┼────────────────────────────┤
│End             │LINEEND_FLAT    │GpiSetLineEnd               │
├────────────────┼────────────────┼────────────────────────────┤
│Join            │LINEJOIN_BEVEL  │GpiSetLineJoin              │
├────────────────┼────────────────┼────────────────────────────┤
│Width           │1.0             │GpiSetLineWidth             │
├────────────────┼────────────────┼────────────────────────────┤
│Type            │LINETYPE_SOLID  │GpiSetLineType              │
├────────────────┼────────────────┼────────────────────────────┤
│Color           │CLR_NEUTRAL     │GpiSetAttrs (LBB_COLOR)     │
├────────────────┼────────────────┼────────────────────────────┤
│Mix mode        │FM_OVERPAINT    │GpiSetAttrs (LBB_MIX_MODE)  │
├────────────────┼────────────────┼────────────────────────────┤
│Pattern symbol  │Solid           │GpiSetPattern               │
├────────────────┼────────────────┼────────────────────────────┤
│Pattern set     │LCID_DEFAULT    │GpiSetPatternSet            │
├────────────────┼────────────────┼────────────────────────────┤
│Reference point │(0,0)           │GpiSetPatternRefPoint       │
├────────────────┼────────────────┼────────────────────────────┤
│Foreground color│CLR_NEUTRAL     │GpiSetAttrs (ABB_COLOR)     │
│                │(black on most  │                            │
│                │devices)        │                            │
├────────────────┼────────────────┼────────────────────────────┤
│Background color│CLR_BACKGROUND  │GpiSetAttrs (ABB_BACK_COLOR)│
│                │(white on most  │                            │
│                │devices)        │                            │
├────────────────┼────────────────┼────────────────────────────┤
│Foreground mix  │FM_OVERPAINT    │GpiSetAttrs (ABB_MIX_MODE)  │
├────────────────┼────────────────┼────────────────────────────┤
│Background mix  │BM_LEAVEALONE   │GpiSetAttrs                 │
│                │                │(ABB_BACK_MIX_MODE)         │
│                │                │Geometric width, End, and   │
│                │                │Join take effect only when a│
│                │                │path is converted to a      │
│                │                │geometric wide line using   │
│                │                │GpiStrokePath or            │
│                │                │GpiModifyPath.              │
│                │                │Width, Type, Color, and Mix │
│                │                │mode take effect only when a│
│                │                │path is outlined using      │
│                │                │GpiOutlinePath.             │
│                │                │Pattern symbol, Pattern set,│
│                │                │and Reference point take    │
│                │                │effect only when a path is  │
│                │                │filled using GpiFillPath or │
│                │                │GpiStrokePath.              │
└────────────────┴────────────────┴────────────────────────────┘


[Back: About Paths]
[Next: Line Width and Geometric Width for Paths]