PC SOFT

ONLINE HELP
FOR WINDEV, WEBDEV AND WINDEV MOBILE

Home | Sign in | English US
  • Coordinates
  • Drawing with opacity or anti-aliasing
  • Using the drawing functions
  • Drawing in PHP
  • Drawing in Browser code
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,
  • Versions 17 and later
    WINDEVWEBDEV - Server codeReports and QueriesWindowsLinuxUser code (UMC) in an Image variable.
    New in version 17
    WINDEVWEBDEV - Server codeReports and QueriesWindowsLinuxUser code (UMC) in an Image variable.
    WINDEVWEBDEV - Server codeReports and QueriesWindowsLinuxUser code (UMC) in an Image variable.
    in an Image variable.
    WEBDEV - Browser codeWindows MobilePHP This type of variable is not available.
Versions 15 and later
WEBDEV - Server codeLinux This function is now available for the WEBDEV sites in Linux.
Linux Caution: A specific configuration is required to use this function in Linux. See The drawings for more details.
New in version 15
WEBDEV - Server codeLinux This function is now available for the WEBDEV sites in Linux.
Linux Caution: A specific configuration is required to use this function in Linux. See The drawings for more details.
WEBDEV - Server codeLinux This function is now available for the WEBDEV sites in Linux.
Linux Caution: A specific configuration is required to use this function in Linux. See The drawings for more details.
Versions 16 and later
Android This function is now available for the Android applications.
WEBDEV - Browser code This function is now available in Browser code.
New in version 16
Android This function is now available for the Android applications.
WEBDEV - Browser code This function is now available in Browser code.
Android This function is now available for the Android applications.
WEBDEV - Browser code This function is now available in Browser code.
Versions 17 and later
iPhone/iPad This function is now available for the iPhone/iPad applications.
New in version 17
iPhone/iPad This function is now available for the iPhone/iPad applications.
iPhone/iPad This function is now available for the 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.
// 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)
WINDEVWEBDEV - Server codeReports and QueriesWindowsAndroidWindows MobilePHPUser code (UMC)
// Draw a polygon from an array of point coordinates (syntax 2)
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
arrCoordinatesXYC[I][1] = 80  + Cos(I*10) * Radius
// y
arrCoordinatesXYC[I][2] = 60  + Sin(I*10) * Radius
END
dPolygon(arrCoordinatesXYC, LightGray, YellowToolhelp)
Syntax

Building a polygon point by point Hide the details

dPolygon(<Number of Sides> , <X1> , <Y1> , <X2> , <Y2> [, ... [, <Xn> , <Yn> ]] [, <Background Color> [, <Side Color>]])
<Number of Sides>: Integer
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>: Integer
X coordinate of first point of the polygon. These coordinates are expressed in pixels.
<Y1>: Integer
Y coordinate of first point of the polygon. These coordinates are expressed in pixels.
<X2>: Integer
X coordinate of second point of the polygon. These coordinates are expressed in pixels.
<Y2>: Integer
Y coordinate of second 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)
Background color of polygon. This color corresponds to:
If this parameter is not specified, the background color:
  • is Transparent if dBackGround was not used beforehand,
  • corresponds to the color specified in the last call to dBackGround.
<Color of Sides>: Integer or constant (optional)
Color of polygon sides. This color corresponds 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 dPen was not used.

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

dPolygon(<Array of Coordinates> [, <Background Color> [, <Color of Sides>]])
<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.
  • Versions 22 and later
    WINDEVWEBDEV - Server codeiPhone/iPadWindows MobileUniversal Windows 10 App WLanguage array of Point variables containing the coordinates of polygon points. These coordinates are expressed in pixels.
    New in version 22
    WINDEVWEBDEV - Server codeiPhone/iPadWindows MobileUniversal Windows 10 App WLanguage array of Point variables containing the coordinates of polygon points. These coordinates are expressed in pixels.
    WINDEVWEBDEV - Server codeiPhone/iPadWindows MobileUniversal Windows 10 App WLanguage array of Point variables containing the coordinates of polygon points. These coordinates are expressed in pixels.
<Background Color>: Integer or constant (optional)
Background color of polygon. This color corresponds to:
If this parameter is not specified, the background color:
  • is Transparent if dBackGround was not used beforehand,
  • corresponds to the color specified in the last call to dBackGround.
<Color of Sides>: Integer or constant (optional)
Color of polygon sides. This color corresponds 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 background color if dPen was not used.
Remarks

Coordinates

Drawing a polygon:
dPolygon(5, 80, 10, 10, 150, 100, 200, 160, 80, 140, 40)
The coordinates are specified in relation to the top left corner of Image control (coordinates set to (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.
WINDEVWEBDEV - Server codeReports and QueriesWindowsAndroidJavaPHPAjaxUser code (UMC)

Drawing with opacity or anti-aliasing

For a drawing with opacity (dStartDrawing associated with the dWithOpacity constant) or anti-aliasing (dChangeMode associated with the drawAntiAliasing constant), the outline is drawn above the inside of the polygon: therefore, the line is partly combined with the inside of the polygon. If the line thickness is quite big, the line will be displayed in two colors.

Using the drawing functions

  • dStartDrawing must be called before any other drawing function. dStartDrawing is used to define the element (Image control or Image variable) onto 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.
PHP

Drawing in 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.
Versions 16 and later
WEBDEV - Browser code

Drawing in Browser code

Some drawing functions are available in Browser code. The drawing functions in Browser code are based on the HTML 5 standard. More specifically, these functions are based on the "canvas" tag of HTML 5.
The drawing features in browser code are available for the recent browsers only (supporting the HTML 5 standard). To find out whether the drawing features are proposed by your browser, use DrawingAvailable.
Caution: To use the drawing functions with Internet Explorer 9, the project must "include the reference to the DTD file". This option is available in the "Advanced" tab of description window of project ("Project .. Project description"), "Advanced" button, "W3C standard" option.
Caution: To use the drawing functions with Internet Explorer 9, the project must "include the reference to the DTD file". This option is available in the "Advanced" tab of the description window of the project ("Project .. Project description").
Caution: To use the drawing functions with Internet Explorer 9, the project must include the reference to the DTD file. To do so, the HTML mode must be "HTML 4.01 Transitional + DTD". This option is available in the "Advanced" tab of the description window of project.
Reminder: To display the description window of the project, on the "Project" pane, in the "Project" group, click "Description".
Special case: Drawing in the browser of an Android phone: The browser drawing functions are only available starting with version 3 of Android.
New in version 16
WEBDEV - Browser code

Drawing in Browser code

Some drawing functions are available in Browser code. The drawing functions in Browser code are based on the HTML 5 standard. More specifically, these functions are based on the "canvas" tag of HTML 5.
The drawing features in browser code are available for the recent browsers only (supporting the HTML 5 standard). To find out whether the drawing features are proposed by your browser, use DrawingAvailable.
Caution: To use the drawing functions with Internet Explorer 9, the project must "include the reference to the DTD file". This option is available in the "Advanced" tab of description window of project ("Project .. Project description"), "Advanced" button, "W3C standard" option.
Caution: To use the drawing functions with Internet Explorer 9, the project must "include the reference to the DTD file". This option is available in the "Advanced" tab of the description window of the project ("Project .. Project description").
Caution: To use the drawing functions with Internet Explorer 9, the project must include the reference to the DTD file. To do so, the HTML mode must be "HTML 4.01 Transitional + DTD". This option is available in the "Advanced" tab of the description window of project.
Reminder: To display the description window of the project, on the "Project" pane, in the "Project" group, click "Description".
Special case: Drawing in the browser of an Android phone: The browser drawing functions are only available starting with version 3 of Android.
WEBDEV - Browser code

Drawing in Browser code

Some drawing functions are available in Browser code. The drawing functions in Browser code are based on the HTML 5 standard. More specifically, these functions are based on the "canvas" tag of HTML 5.
The drawing features in browser code are available for the recent browsers only (supporting the HTML 5 standard). To find out whether the drawing features are proposed by your browser, use DrawingAvailable.
Caution: To use the drawing functions with Internet Explorer 9, the project must "include the reference to the DTD file". This option is available in the "Advanced" tab of description window of project ("Project .. Project description"), "Advanced" button, "W3C standard" option.
Caution: To use the drawing functions with Internet Explorer 9, the project must "include the reference to the DTD file". This option is available in the "Advanced" tab of the description window of the project ("Project .. Project description").
Caution: To use the drawing functions with Internet Explorer 9, the project must include the reference to the DTD file. To do so, the HTML mode must be "HTML 4.01 Transitional + DTD". This option is available in the "Advanced" tab of the description window of project.
Reminder: To display the description window of the project, on the "Project" pane, in the "Project" group, click "Description".
Special case: Drawing in the browser of an Android phone: The browser drawing functions are only available starting with version 3 of Android.
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
Components
WINDEVWEBDEV - Server codeReports and Queries wd230pnt.dll
Windows Mobile wp230pnt.dll
WEBDEV - Browser code WDJS.DLL
Java wd230java.jar
Linux wd230pnt.so
Android wd230android.jar
Minimum required version
  • Version 9
This page is also available for…
Comments
Click [Add] to post a comment