Revision history for KeyPgLinegraphics


Revision [22655]

Last edited on 2019-04-12 16:32:59 by fxm ["blending" => "blended"]
Additions:
**Note:** Either chained use or boxes drawn with ##**Line**## can induce pixels overdrawn at some locations. Thus, the resultant (blended) color of these overdrawn pixels is affected if a transparent color (in conjunction with the ##GFX_ALPHA_PRIMITIVES## option flag) is used.
Deletions:
**Note:** Either chained use or boxes drawn with ##**Line**## can induce pixels overdrawn at some locations. Thus, the resultant (blending) color of these overdrawn pixels is affected if a transparent color (in conjunction with the ##GFX_ALPHA_PRIMITIVES## option flag) is used.


Revision [22652]

Edited on 2019-04-12 00:37:01 by fxm [Reworded "Note" paragraph]
Additions:
**Note:** Either chained use or boxes drawn with ##**Line**## can induce pixels overdrawn at some locations. Thus, the resultant (blending) color of these overdrawn pixels is affected if a transparent color (in conjunction with the ##GFX_ALPHA_PRIMITIVES## option flag) is used.
Deletions:
**Note:** Chained uses of ##**Line**## usually induce (one or more) overlapping pixel(s) at locations which will cause a overflow of ##[[KeyPgPaint|Paint]]##'s fill color if a transparent color is used for the border.


Revision [22648]

Edited on 2019-04-09 14:17:22 by fxm [Added note about bad filling behavior by Paint when drawing a border with a transparent color]
Additions:
**Note:** Chained uses of ##**Line**## usually induce (one or more) overlapping pixel(s) at locations which will cause a overflow of ##[[KeyPgPaint|Paint]]##'s fill color if a transparent color is used for the border.


Revision [20960]

Edited on 2016-03-13 04:18:09 by fxm [Formatting]

No Differences

Revision [20293]

Edited on 2016-02-10 16:02:04 by DkLwikki [Update link format]
Additions:
**Line** [//target//,] [[STEP]|(//x1//, //y1//)]-[STEP] (//x2, y2//) [, [//color//][, [B|BF][, //style//]]]
Graphics statement that draws a straight line or a box between two points. The action will take place on the current work page set via ##[[KeyPgScreenset|ScreenSet]]##, or onto the buffer ##[[KeyPgGetgraphics|Get]]##/##[[KeyPgPutgraphics|Put]]## buffer if specified.
##**Line**## coordinates are affected by custom coordinates system set via ##[[KeyPgWindow|Window]]## and ##[[KeyPgViewgraphics|View (Graphics)]]## statements, and respect clipping rectangle set by [[KeyPgViewgraphics|View (Graphics)]]. If a pair of coordinates is preceded by the ##STEP## keyword, the coordinates are assumed to be relative to the last graphics cursor position. If the ##B## flag is specified, a rectangle will be drawn instead of a line, with ##(//x1//,//y1//)-(//x2//,//y2//)## as the coordinates of the opposite rectangle corners. If ##BF## is specified, a filled rectangle will be drawn.
##//Color//## denotes the color attribute, which is mode specific (see ##[[KeyPgColor|Color]]## and ##[[KeyPgScreengraphics|Screen (Graphics)]]## for details). If omitted, the current foreground color as set by the ##[[KeyPgColor|Color]]## statement is used.
When ##**Line**## is used as ##**Line** - (x2, y2)##, a line is drawn from the current cursor position to the ##(//x2//,//y2//)## coordinates specified by ##**Line**##. Alternatively, ##[[KeyPgPoint|Point]]## can be used to get the current cursor position.
- [[KeyPgCircle|Circle]]
- [[KeyPgWindow|Window]]
- [[KeyPgViewgraphics|View (Graphics)]]
Deletions:
**Line** [//target//,] [[STEP] (//x1//, //y1//)]-[STEP] (//x2, y2//) [, [//color//][, [B|BF][, //style//]]]
Graphics statement that draws a straight line or a box between two points. The action will take place on the current work page set via ##[[KeyPgScreenset ScreenSet]]##, or onto the buffer ##[[KeyPgGetgraphics Get]]##/##[[KeyPgPutgraphics Put]]## buffer if specified.
##**Line**## coordinates are affected by custom coordinates system set via ##[[KeyPgWindow Window]]## and ##[[KeyPgViewgraphics View (Graphics)]]## statements, and respect clipping rectangle set by [[KeyPgViewgraphics View (Graphics)]]. If a pair of coordinates is preceded by the ##STEP## keyword, the coordinates are assumed to be relative to the last graphics cursor position. If the ##B## flag is specified, a rectangle will be drawn instead of a line, with ##(//x1//,//y1//)-(//x2//,//y2//)## as the coordinates of the opposite rectangle corners. If ##BF## is specified, a filled rectangle will be drawn.
##//Color//## denotes the color attribute, which is mode specific (see ##[[KeyPgColor Color]]## and ##[[KeyPgScreengraphics Screen (Graphics)]]## for details). If omitted, the current foreground color as set by the ##[[KeyPgColor Color]]## statement is used.
When ##**Line**## is used as ##**Line** - (x2, y2)##, a line is drawn from the current cursor position to the ##(//x2//,//y2//)## coordinates specified by ##**Line**##. Alternatively, ##[[KeyPgPoint Point]]## can be used to get the current cursor position.
- [[KeyPgCircle Circle]]
- [[KeyPgWindow Window]]
- [[KeyPgViewgraphics View (Graphics)]]


Revision [15840]

Edited on 2012-01-25 14:57:06 by CountingPine [Formatting]
Additions:
Graphics statement that draws a straight line or a box between two points. The action will take place on the current work page set via ##[[KeyPgScreenset ScreenSet]]##, or onto the buffer ##[[KeyPgGetgraphics Get]]##/##[[KeyPgPutgraphics Put]]## buffer if specified.
##**Line**## coordinates are affected by custom coordinates system set via ##[[KeyPgWindow Window]]## and ##[[KeyPgViewgraphics View (Graphics)]]## statements, and respect clipping rectangle set by [[KeyPgViewgraphics View (Graphics)]]. If a pair of coordinates is preceded by the ##STEP## keyword, the coordinates are assumed to be relative to the last graphics cursor position. If the ##B## flag is specified, a rectangle will be drawn instead of a line, with ##(//x1//,//y1//)-(//x2//,//y2//)## as the coordinates of the opposite rectangle corners. If ##BF## is specified, a filled rectangle will be drawn.
##//Color//## denotes the color attribute, which is mode specific (see ##[[KeyPgColor Color]]## and ##[[KeyPgScreengraphics Screen (Graphics)]]## for details). If omitted, the current foreground color as set by the ##[[KeyPgColor Color]]## statement is used.
##//Style//##, if specified, allows styled line drawing; its value is interpreted as a 16-bit bitmask, and ##**Line**## will use it to skip pixel drawing. Starting at ##(//x1//,//y1//)##, the most significant bit of the style mask is checked: if ##1##, the pixel is drawn, if ##0##, it's skipped. This repeats for all the line pixels with the other bits, with the mask being reused when the 16 bits are all checked.
When ##**Line**## is used as ##**Line** - (x2, y2)##, a line is drawn from the current cursor position to the ##(//x2//,//y2//)## coordinates specified by ##**Line**##. Alternatively, ##[[KeyPgPoint Point]]## can be used to get the current cursor position.
Deletions:
Graphics statement that draws a straight line or a box between two points. The action will take place on the current work page set via [[KeyPgScreenset ScreenSet]], or onto the buffer [[KeyPgGetgraphics Get]]/[[KeyPgPutgraphics Put]] buffer if specified.
**Line** coordinates are affected by custom coordinates system set via [[KeyPgWindow Window]] and [[KeyPgViewgraphics View (Graphics)]] statements, and respect clipping rectangle set by [[KeyPgViewgraphics View (Graphics)]]. If a pair of coordinates is preceded by the ##STEP## keyword, the coordinates are assumed to be relative to the last graphics cursor position. If the ##B## flag is specified, a rectangle will be drawn instead of a line, with ##(//x1//,//y1//)-(//x2//,//y2//)## as the coordinates of the opposite rectangle corners. If ##BF## is specified, a filled rectangle will be drawn.
##//Color//## denotes the color attribute, which is mode specific (see [[KeyPgColor Color]] and [[KeyPgScreengraphics Screen (Graphics)]] for details). If omitted, the current foreground color as set by the [[KeyPgColor Color]] statement is used.
##//Style//##, if specified, allows styled line drawing; its value is interpreted as a 16bit bitmask, and **Line** will use it to skip pixel drawing. Starting at ##(//x1//,//y1//)##, the most significant bit of the style mask is checked: if 1, the pixel is drawn, if 0, it's skipped. This repeats for all the line pixels with the other bits, with the mask being reused when the 16 bits are all checked.
When **Line** is used as //Line - (x2, y2)//, a line is drawn from the current cursor position to the ##(//x2//,//y2//)## coordinates specified by LINE. Alternatively, [[KeyPgPoint Point]] can be used to get the current cursor position.


Revision [15061]

Edited on 2011-03-29 01:55:22 by AgAmemnus [Formatting]
Additions:
When **Line** is used as //Line - (x2, y2)//, a line is drawn from the current cursor position to the ##(//x2//,//y2//)## coordinates specified by LINE. Alternatively, [[KeyPgPoint Point]] can be used to get the current cursor position.
Deletions:
When **Line** is used as //Line - (x2, y2)//, a line is drawn from the current cursor position to the ##(//x2//,//y2//)## coordinates specified by LINE. **Alternatively**, [[KeyPgPoint Point]] can be used to get the current cursor position.


Revision [15060]

Edited on 2011-03-29 01:55:00 by AgAmemnus [Formatting]
Additions:
When **Line** is used as //Line - (x2, y2)//, a line is drawn from the current cursor position to the ##(//x2//,//y2//)## coordinates specified by LINE. **Alternatively**, [[KeyPgPoint Point]] can be used to get the current cursor position.
Deletions:
When **Line** is used as //Line - (x2, y2)//, a line is drawn from the current cursor position to the ##(//x2//,//y2//)## coordinates specified by LINE. (Note: [[KeyPgPoint Point]] can be used to get the current cursor position, as well.)


Revision [15059]

Edited on 2011-03-29 01:54:24 by AgAmemnus [Formatting]
Additions:
When **Line** is used as //Line - (x2, y2)//, a line is drawn from the current cursor position to the ##(//x2//,//y2//)## coordinates specified by LINE. (Note: [[KeyPgPoint Point]] can be used to get the current cursor position, as well.)
Deletions:
When **Line** is used as //Line - (x2, y2)//, a line is drawn from the current cursor position to the ##(//x2//,//y2//)## coordinates specified by LINE.


Revision [15058]

Edited on 2011-03-28 13:50:36 by AgAmemnus [Formatting]
Additions:
When **Line** is used as //Line - (x2, y2)//, a line is drawn from the current cursor position to the ##(//x2//,//y2//)## coordinates specified by LINE.
Deletions:
When **Line** is used as //Line - (x2, y2)//, a line is drawn from the current cursor position to the (x2, y2) coordinates specified by LINE.


Revision [15057]

Edited on 2011-03-28 13:50:00 by AgAmemnus [It's implicit that no further coordinates are needed because of the syntax of -LINE (x2, y2). Furthe]
Additions:
**Line** - (//x2//, //y2//) [, [//color//][, [B|BF][, //style//]]]
When **Line** is used as //Line - (x2, y2)//, a line is drawn from the current cursor position to the (x2, y2) coordinates specified by LINE.
Deletions:
**Line** - (//x1//, //y1//) [, [//color//][, [B|BF][, //style//]]]
When **Line** is used as //Line - (x, y)//, a Line is Drawn from the previous coordinate to the one specified, and no ##//x2//## or ##//y2//## parameters are needed.


Revision [14479]

Edited on 2009-08-29 23:18:17 by CountingPine [updated]
Additions:
- ##//target//## is new to ""FreeBASIC""
Deletions:
- QB LINE could not draw onto GET/PUT buffers.


Revision [13456]

The oldest known version of this page was created on 2008-07-02 13:34:02 by CountingPine [updated]
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki



sf.net phatcode