EPLAN.EPLAN21.SQUARE.CREATE

Contents

Description

This command creates a square on a page. Internally, the implementation of the EPLAN.EPLAN21.RECTANGLE.CREATE command is used.

The EPLAN.EPLAN21.SQUARE.CREATE command is called up via the API functions as specified in the EPLAN 21 API.

Parameters

All parameters have the prefix "EPL_PARAM_GRAPHIC_CREATE_".

ParameterID Type Description
PAGE [IN]
EplHandle
Handle of the page into which the square is to be inserted.
XPOS [IN]
Integer
X coordinate of the bottom left corner of the square.
YPOS [IN]
Integer
Y coordinate of the bottom left corner of the square.
PENWIDTH [IN]
Integer
Pen width for the object perimeter.
DELTA_X [IN]
Integer
Side length of the square.
ANGLE [IN, OPTIONAL]
Integer
Rotation angle of the square (default = 0).
FILL [IN, OPTIONAL]
Float
Flag:
0 : Do not fill square (default).
1 : Fill square.
COLOR [IN, OPTIONAL]
Integer

Line color:

0 = Black (default)
1 = Red
2 = Yellow
3 = Green
4 = Cyan
5 = Blue
6 = Magenta
7 = White
8 = Gray
9 = Red 50%
10 = Yellow 50%
11 = Green 50%
12 = Cyan 50%
13 = Blue 50%
14 = Magenta 50%
15 = Violet
STYLE [IN, OPTIONAL]
Integer

Line style:

0 = continuous (default)
1 = dashed
2 = dotted
3 = dash-dotted
4 = dash-dot-dotted
5 = none
can be combined with:
32 = arrow at the beginning
64 = arrow at the end
96 = arrow at both sides
RESULT [OUT]
EplHandle
After execution of the command, this parameter can be used to query the handle of the created square.

Error Messages

The eplExecuteCommand function returns EPL_OK if the square could be successfully inserted into the page.

If the command fails, eplExecuteCommand returns the value EPL_ERROR. In this case, the error log can contain the following errors:

ErrorID Description
EPL_ERR_NO_RIGHT The current user group is not allowed to modify the page.
EPL_ERR_FAILED The square could not be created.
EPL_ERR_INVALID_ARGUMENT The PAGE parameter is not an object of the Page type.

Example

The following example shows a function which inserts a square into a page. The handle to the page object must be determined first.

EplHandle
createSquare(EplSession s, EplHandle page)
{
        EplHandle hRet(EPL_ERROR);

        //Create command
        EplHandle cmdCreateSquare = eplCreateCommand(s, L"EPLAN.EPLAN21.SQUARE.CREATE");

        if(cmdCreateSquare != EPL_ERROR)
        {
                //Set parameters
                //
                //Page handle
                eplSetHandleParam(s,
                                  cmdCreateSquare,
                                  EPL_PARAM_SQUARE_CREATE_PAGE,
                                  page,
                                  0);

                //Pen size
                eplSetParam(s,
                            cmdCreateSquare,
                            EPL_PARAM_SQUARE_CREATE_PENWIDTH,
                            L"1",
                            0);

                //Pen color
                eplSetParam(s,
                            cmdCreateSquare,
                            EPL_PARAM_SQUARE_CREATE_COLOR,
                            L"7",
                            0);

                //x-y-coordinates of the insertion point of the square
                eplSetParam(s,
                            cmdCreateSquare,
                            EPL_PARAM_SQUARE_CREATE_XPOS,
                            L"100000",
                            0);

                eplSetParam(s,
                            cmdCreateSquare,
                            EPL_PARAM_SQUARE_CREATE_YPOS,
                            L"100000",
                            0);

                //Side length of the square
                eplSetParam(s,
                            cmdCreateSquare,
                            EPL_PARAM_SQUARE_CREATE_DELTA_X,
                            L"10000",
                            0);

                //Execute command
                if(eplExecuteCommand(s, cmdCreateSquare) = EPL_OK)
                {
                        // Query result:
                        hRet = eplGetHandleParam(s,
                                                cmdCreateSquare,
                                                EPL_PARAM_SQUARE_CREATE_RESULT,
                                                0);
                }

                eplCloseObject(s, cmdCreateSquare);
        }

        return hRet;
}

Reference