Plots a single pixel
Syntax
PSet [target ,] [STEP] (x, y) [,color]
Parameters
target
specifies buffer to draw on.
STEP
indicates that coordinates are relative
(x, y)
coordinates of the pixel.
color
the color attribute.
Description
target specifies buffer to draw on.
target may be an image created with
ImageCreate or
Get (Graphics). If omitted,
target defaults to the screen's current work page.
(x, y) are the coordinates of the pixel.
STEP if present, indicates that
(x, y) coordinates are relative to the graphics cursor position. If omitted,
(x, y) are relative to the upper left-hand corner of
target. The x and y coordinates are affected by the last call to the
View (Graphics) and
Window statements, and respect the current clipping region as set by the
View (Graphics) statement.
color specifies the color attribute. If omitted,
color defaults to the current foreground color. See
Color.
color is graphics mode specific, see
Color and
Screen (Graphics) for details.
Optimization note: while
Pset and the opposite
Point provide valid results, they are very slow. Much better performance can be achieved by using
Poke after calculating the address yourself from values obtained from
ImageInfo and
ScreenInfo, or even more usig inline ASM.
Example
' Set an appropriate Screen mode.
Screen 14
' Plot a pixel at the coordinates 100, 100, Color 15. (white)
PSet (100, 100), 15
' Confirm the operation.
Locate 1: Print "Pixel plotted at 100, 100"
' Wait for a keypress.
Sleep
' Plot another pixel at the coordinates 150, 150, Color 4. (red)
PSet (150, 150), 4
' Confirm the operation.
Locate 1: Print "Pixel plotted at 150, 150"
' Wait for a keypress.
Sleep
' Plot a third pixel relative to the second, Color 15. (white)
' This pixel is given the coordinates 60, 60. It will be placed
' at 60, 60 plus the previous coordinates (150, 150), thus plotting at 210, 210.
PSet Step (60, 60), 15
' Confirm the operation.
Locate 1: Print "Pixel plotted at 150 + 60, 150 + 60"
' Wait for a keypress
Sleep
' Close the program
End
Differences from QB
- target is new to FreeBASIC
See also