PC SOFT

ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Home | Sign in | English EN
This content has been translated automatically. Click here to view the French version.
  • Coordinates
  • Drawing with opacity or anti-aliasing
  • Using the drawing functions
  • Pattern and PHP
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Others
Stored procedures
Draws a polygon:
  • in an Image control,
  • in an Image variable.
    Windows MobilePHP This type of variable is not available.
Versions 16 and later
Android This function is now available for Android applications.
New in version 16
Android This function is now available for Android applications.
Android This function is now available for Android applications.
Versions 17 and later
iPhone/iPad This function is now available for iPhone/iPad applications.
New in version 17
iPhone/iPad This function is now available for iPhone/iPad applications.
iPhone/iPad This function is now available for iPhone/iPad applications.
Versions 18 and later
Universal Windows 10 App This function is now available in Windows Store apps mode.
New in version 18
Universal Windows 10 App This function is now available in Windows Store apps mode.
Universal Windows 10 App This function is now available in Windows Store apps mode.
Versions 21 and later
Universal Windows 10 App This function is now available in Universal Windows 10 App mode.
New in version 21
Universal Windows 10 App This function is now available in Universal Windows 10 App mode.
Universal Windows 10 App This function is now available in Universal Windows 10 App mode.
Versions 24 and later
Android The syntax that manages the Point and the Color types is now available for Android applications.
Java The syntax that manages the Point and the Color types is now available for Java applications.
New in version 24
Android The syntax that manages the Point and the Color types is now available for Android applications.
Java The syntax that manages the Point and the Color types is now available for Java applications.
Android The syntax that manages the Point and the Color types is now available for Android applications.
Java The syntax that manages the Point and the Color types is now available for Java applications.
// Initialize the drawing in an Image control
dStartDrawing(IMG_Drawing)
// Draw a 4-side polygon whose
// background is light yellow and whose border is light blue
dPolygon(4, 10, 20, 20, 50, 40, 60, 50, 10, LightYellow, LightBlue)
Versions 24 and later
Universal Windows 10 AppWindows MobileiPhone/iPadUser code (UMC)Ajax
// Draw a 4-side polygon whose
// background is light yellow and whose border is light blue
dPolygon(IMG_Drawing, 4, 10, 20, 20, 50, 40, 60, 50, 10, LightYellow, LightBlue)
New in version 24
Universal Windows 10 AppWindows MobileiPhone/iPadUser code (UMC)Ajax
// Draw a 4-side polygon whose
// background is light yellow and whose border is light blue
dPolygon(IMG_Drawing, 4, 10, 20, 20, 50, 40, 60, 50, 10, LightYellow, LightBlue)
Universal Windows 10 AppWindows MobileiPhone/iPadUser code (UMC)Ajax
// Draw a 4-side polygon whose
// background is light yellow and whose border is light blue
dPolygon(IMG_Drawing, 4, 10, 20, 20, 50, 40, 60, 50, 10, LightYellow, LightBlue)
Windows MobileAndroidUser code (UMC)PHP
// Draw a polygon from an array of point coordinates
arrCoordinatesXY is array of 0 by 2 int = [[2, 3], [14, 100], [10,70], [50, 80]]
dPolygon(arrCoordinatesXY)
arrCoordinatesXY2 is array of 0 int = [2, 2, 140, 2, 150, 70, 0, 100, 200,100]
dPolygon(arrCoordinatesXY2)
arrCoordinatesXYC is array of 36 by 2 int
Radius is int = 50
FOR I = 1 TO 36
// x
tabCoordinatesXYC[I][1] = 80 + Cos(I*10) * Radius
// y
tabCoordinatesXYC[I][2] = 60 + Sin(I*10) * Radius
END
dPolygon(arrCoordinatesXYC, LightGray, YellowToolhelp)
Syntax

Building a polygon point by point Hide the details

dPolygon([<Image>, ] <Number of sides> , <X1> , <Y1> , <X2> , <Y2> [, <X3> , <Y3> [... [, <Xn> , <Yn>]]] [, <Background color> [, <Side color>]])
<Image>: Optional control name or optional Image, WDPic or picLayer variable
Versions 24 and later
Universal Windows 10 AppWindows MobileAndroidiPhone/iPadJavaUser code (UMC) Image to use. This image can correspond to:
  • the name of an Image control.
  • on behalf of an Variable of type Image.
    Windows Mobile This type of variable is not available.
If this parameter is not specified, it is necessary to define the drawing destination with dStartDrawing.
New in version 24
Universal Windows 10 AppWindows MobileAndroidiPhone/iPadJavaUser code (UMC) Image to use. This image can correspond to:
  • the name of an Image control.
  • on behalf of an Variable of type Image.
    Windows Mobile This type of variable is not available.
If this parameter is not specified, it is necessary to define the drawing destination with dStartDrawing.
Universal Windows 10 AppWindows MobileAndroidiPhone/iPadJavaUser code (UMC) Image to use. This image can correspond to:
  • the name of an Image control.
  • on behalf of an Variable of type Image.
    Windows Mobile This type of variable is not available.
If this parameter is not specified, it is necessary to define the drawing destination with dStartDrawing.
<Number of sides>: entier
Number of sides in the polygon (up to 23 sides). This parameter defines the number of <X>, <Y> pairs to specify in the function.
<X1>: entier
X coordinate of first point of the polygon. These coordinates are expressed in pixels.
<Y1>: entier
Y coordinate of first point of the polygon. These coordinates are expressed in pixels.
<X2>: entier
X coordinate of second point of the polygon. These coordinates are expressed in pixels.
<Y2>: entier
Y coordinate of second point of the polygon. These coordinates are expressed in pixels.
<X3>: entier
X coordinate of 3rd point of the polygon. These coordinates are expressed in pixels.
<Y3>: entier
Y coordinate of 3rd point of the polygon. These coordinates are expressed in pixels.
<Xn>: Optional integer
X coordinate of nth point of the polygon. These coordinates are expressed in pixels.
<Yn>: Optional integer
Y coordinate of nth point of the polygon. These coordinates are expressed in pixels.
<Background color>: Integer or constant (optional)
Polygon background color. This color can correspond to:
If this parameter is not specified, the background color:
  • is Transparent if function dBackground has not been used before,
  • corresponds to the Color specified in the last call to function dBackground.
<Side color>: Integer or constant (optional)
Color of polygon sides. This color can correspond to:
If this parameter is not specified, the line color:
  • corresponds to the Color specified in the last call to function dPen,
  • is identical to the Color used for the Background if the dPen function has not been used.

Building a polygon via an array of X and Y coordinates Hide the details

dPolygon([<Image>, ] <Array of coordinates> [, <Background color> [, <Side color>]])
<Image>: Optional control name or optional Image, WDPic or picLayer variable
Versions 24 and later
Universal Windows 10 AppWindows MobileAndroidiPhone/iPadJavaUser code (UMC) Image to use. This image can correspond to:
  • the name of an Image control.
  • on behalf of an Variable of type Image.
    Windows Mobile This type of variable is not available.
If this parameter is not specified, it is necessary to define the drawing destination with dStartDrawing.
New in version 24
Universal Windows 10 AppWindows MobileAndroidiPhone/iPadJavaUser code (UMC) Image to use. This image can correspond to:
  • the name of an Image control.
  • on behalf of an Variable of type Image.
    Windows Mobile This type of variable is not available.
If this parameter is not specified, it is necessary to define the drawing destination with dStartDrawing.
Universal Windows 10 AppWindows MobileAndroidiPhone/iPadJavaUser code (UMC) Image to use. This image can correspond to:
  • the name of an Image control.
  • on behalf of an Variable of type Image.
    Windows Mobile This type of variable is not available.
If this parameter is not specified, it is necessary to define the drawing destination with dStartDrawing.
<Array of coordinates>: Array of integers or array of points
  • WLanguage array of integers containing the coordinates of polygon points. The even subscript represent the X coordinates while the odd subscripts represent the Y coordinates of points. These coordinates are expressed in pixels.
  • Universal Windows 10 AppWindows MobileAndroidiPhone/iPadJava WLanguage array of Point variables containing the coordinates of polygon points. These coordinates are expressed in pixels.
<Background color>: Integer or constant (optional)
Polygon background color. This color can correspond to:If this parameter is not specified, the background color:
  • is Transparent if function dBackground has not been used before,
  • corresponds to the Color specified in the last call to function dBackground.
<Side color>: Integer or constant (optional)
Color of polygon sides. This color can correspond to:If this parameter is not specified, the line color:
  • corresponds to the Color specified in the last call to function dPen,
  • is identical to the Color used for the Background if the dPen function has not been used..
Versions 26 and later
AndroidiPhone/iPadUser code (UMC)

Construction of a polygon from an Variable of the Polygon type Hide the details

dPolygon([<Image>, ] <Polygon> [, <Background color> [, <Side color>]])
<Image>: Optional control name or optional Image, WDPic or picLayer variable
AndroidiPhone/iPadUser code (UMC) Image to use. This image can correspond to:
  • the name of an Image control.
  • on behalf of an Variable of type Image.
    Windows Mobile This type of variable is not available.
If this parameter is not specified, it is necessary to define the drawing destination with dStartDrawing.
<Polygon>: Variable type Polygon
Name of the variable of type Polygon describing the different points of the Polygon.
<Background color>: Integer or constant (optional)
Polygon background color. This color can correspond to:If this parameter is not specified, the background color:
  • is Transparent if function dBackground has not been used before,
  • corresponds to the Color specified in the last call to function dBackground.
<Side color>: Integer or constant (optional)
Color of polygon sides. This color can correspond to:If this parameter is not specified, the line color:
  • corresponds to the color specified in the last call to dPen,
  • is identical to the Color used for the Background if the dPen function has not been used..
New in version 26
AndroidiPhone/iPadUser code (UMC)

Construction of a polygon from an Variable of the Polygon type Hide the details

dPolygon([<Image>, ] <Polygon> [, <Background color> [, <Side color>]])
<Image>: Optional control name or optional Image, WDPic or picLayer variable
AndroidiPhone/iPadUser code (UMC) Image to use. This image can correspond to:
  • the name of an Image control.
  • on behalf of an Variable of type Image.
    Windows Mobile This type of variable is not available.
If this parameter is not specified, it is necessary to define the drawing destination with dStartDrawing.
<Polygon>: Variable type Polygon
Name of the variable of type Polygon describing the different points of the Polygon.
<Background color>: Integer or constant (optional)
Polygon background color. This color can correspond to:If this parameter is not specified, the background color:
  • is Transparent if function dBackground has not been used before,
  • corresponds to the Color specified in the last call to function dBackground.
<Side color>: Integer or constant (optional)
Color of polygon sides. This color can correspond to:If this parameter is not specified, the line color:
  • corresponds to the color specified in the last call to dPen,
  • is identical to the Color used for the Background if the dPen function has not been used..
AndroidiPhone/iPadUser code (UMC)

Construction of a polygon from an Variable of the Polygon type Hide the details

dPolygon([<Image>, ] <Polygon> [, <Background color> [, <Side color>]])
<Image>: Optional control name or optional Image, WDPic or picLayer variable
AndroidiPhone/iPadUser code (UMC) Image to use. This image can correspond to:
  • the name of an Image control.
  • on behalf of an Variable of type Image.
    Windows Mobile This type of variable is not available.
If this parameter is not specified, it is necessary to define the drawing destination with dStartDrawing.
<Polygon>: Variable type Polygon
Name of the variable of type Polygon describing the different points of the Polygon.
<Background color>: Integer or constant (optional)
Polygon background color. This color can correspond to:If this parameter is not specified, the background color:
  • is Transparent if function dBackground has not been used before,
  • corresponds to the Color specified in the last call to function dBackground.
<Side color>: Integer or constant (optional)
Color of polygon sides. This color can correspond to:If this parameter is not specified, the line color:
  • corresponds to the color specified in the last call to dPen,
  • is identical to the Color used for the Background if the dPen function has not been used..
Remarks

Coordinates

Drawing a polygon:
dPolygon(5, 80, 10, 10, 150, 100, 200, 160, 80, 140, 40)
Drawing a polygon
Coordinates are given with respect to the top left corner of the image (coordinates: (0.0)).
Important: There is no need to close the polygon (the coordinates of last point do not have to be equal to the coordinates of first point). The polygon is automatically "closed".
Limits: a polygon can contain up to 100 000 points in WINDEV, WEBDEV and Java, and up to 1000 points in Windows CE.
AndroidJavaUser code (UMC)PHPAjax

Drawing with opacity or anti-aliasing

In the case of a drawing with opacity (function dStartDrawing with the constant dWithOpacity) or anti-aliasing (function dChangeMode with the constant drawAntiAliasing), the contour is drawn over the inside of the Polygon: therefore, the line is partly combined with the inside of the polygon. If the line is very thick, it will be displayed in two colors.

Using the drawing functions

The drawing functions can be used according to 2 methods:
  • Method 1: Using dStartDrawing
    • dStartDrawing must be called before any other drawing function. dStartDrawing is used to define the element (Image control or variable) to which the drawing functions will be applied.
    • When drawing on an Image control:
      • The drawing functions operate on a copy ("bitmap") of the image. You can use the drawing functions of Windows (via API or CallDLL32) but these functions must use the DC (Device Context) returned by dStartDrawing.
      • dEndDrawing and dStartDrawing must not be called in the same process.
        The drawing will not be displayed if dEndDrawing and dStartDrawing are called in the same process: it will be automatically erased.
  • Versions 24 and later
    Universal Windows 10 AppAndroidiPhone/iPadJavaUser code (UMC) Method 2: indicating the drawing target directly in the syntax (via a parameter)
    The <Image> parameter is used to specify directly the target of the drawing. The dStartDrawing function becomes unnecessary. This function must be deleted.
    Versions 25 and later
    AndroidJava This syntax is now available.
    New in version 25
    AndroidJava This syntax is now available.
    AndroidJava This syntax is now available.
    New in version 24
    Universal Windows 10 AppAndroidiPhone/iPadJavaUser code (UMC) Method 2: indicating the drawing target directly in the syntax (via a parameter)
    The <Image> parameter is used to specify directly the target of the drawing. The dStartDrawing function becomes unnecessary. This function must be deleted.
    Versions 25 and later
    AndroidJava This syntax is now available.
    New in version 25
    AndroidJava This syntax is now available.
    AndroidJava This syntax is now available.
    Universal Windows 10 AppAndroidiPhone/iPadJavaUser code (UMC) Method 2: indicating the drawing target directly in the syntax (via a parameter)
    The <Image> parameter is used to specify directly the target of the drawing. The dStartDrawing function becomes unnecessary. This function must be deleted.
    Versions 25 and later
    AndroidJava This syntax is now available.
    New in version 25
    AndroidJava This syntax is now available.
    AndroidJava This syntax is now available.
PHP

Pattern and PHP

In PHP, the drawing functions are based on the graphic library GD. This library is commonly used by the PHP hosting companies and therefore it is always enabled. The version of the GD library must be version 2.0.28 (or later). This library can be downloaded from the PHP site.
To enable (if necessary) this library locally, the following elements are required:
  • PHP installed.
  • the PHP.INI file found in the Windows directory must contain the following line: "extension=php_gd2.dll" (instead of ";extension=php_gd2.dll").
  • the php_gd2.dll file must exist in the directory of PHP extensions. This directory is defined in the PHP.INI file by the "extension_dir" variable.
Related Examples:
The drawing functions Unit examples (WINDEV): The drawing functions
[ + ] Using the main drawing functions of WINDEV to:
- Initialize an Image control for drawing
- Draw simple shapes
- Write a text into a drawing
- Change the color in a drawing
Business / UI classification: Neutral code
Component: wd260pnt.dll
Minimum version required
  • Version 9
This page is also available for…
Comments
Click [Add] to post a comment