### 3.1.1 Individual attributes

Graphic attributes are optional arguments of the form `display=value`, they must be given as last argument of a graphic instruction. Attributes are ordered in several categories: color, point shape, point width, line style, line thickness, legend value, position and presence. In addition, surfaces may be filled or not, 3-d surfaces may be filled with a texture, 3-d objects may also have properties with respect to the light. Attributes of different categories may be added, e.g.
`plotfunc(``x``2``+y``2``,[x,y],display=red+line_width_3+filled`

- Colors `display=` or `color=`
  - `black`, `white`, `red`, `blue`, `green`, `magenta`, `cyan`, `yellow`,
  - a numeric value between 0 and 255,
  - a numeric value between 256 and 256+7*16+14 for a color of the rainbow,
  - any other numeric value smaller than 65535, the rendering is not garanteed to be portable.
- Point shapes `display=` one of the following value `rhombus_point plus_point square_point cross_point triangle_point star_point point_point invisible_point`
- Point width: `display=` one of the following value `point_width_n` where `n` is an integer between 1 and 7
- Line thickness: `thickness=n` or `display=line_width_n` where `n` is an integer between 1 and 7 or
- Line shape: `display=` one of the following value `dash_line solid_line dashdot_line dashdotdot_line cap_flat_line cap_square_line cap_round_line`
- Legend, value: `legend="legendname"`; position: `display=` one of `quandrant1 quadrant2 quadrant3 quadrant4` corresponding to the position of the legend of the object (using the trigonometric plan conventions). The legend is not displayed if the attribute `display=hidden_name` is added
- `display=filled` specifies that surfaces will be filled,
- `gl_texture="picture_filename"` is used to fill a surface with a texture. Cf. the interface manual for a more complete description and for `gl_material=` options.

Examples Input

`polygon(-1,-i,1,2*i,legend="P")`

Input

`point(1+i,legend="hello")`

Input

`A:=point(1+i);B:=point(-1);display(D:=droite(A,B),hidden_name)`

Input

`color(segment(0,1+i),red)`

Input

`segment(0,1+i,color=red)`