2.2.2.4.10.1.1 ArcOrder
The ArcOrder packet contains an arc.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
pControlFlags |
OrderType (optional) |
FieldBytes |
|||||||||||||||||||||||||||||
|
Bounds (13 bytes, optional) |
|||||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
|
... |
BackMode (optional) |
nLeftRect (optional) |
|||||||||||||||||||||||||||||
|
... |
nTopRect (optional) |
nRightRect (optional) |
|||||||||||||||||||||||||||||
|
... |
nBottomRect (optional) |
nXStart (optional) |
|||||||||||||||||||||||||||||
|
... |
nYStart (optional) |
nXEnd (optional) |
|||||||||||||||||||||||||||||
|
... |
nYEnd (optional) |
BackColor (optional) |
|||||||||||||||||||||||||||||
|
... |
ROP2 (optional) |
PenStyle (optional) |
|||||||||||||||||||||||||||||
|
PenWidth (optional) |
PenColor (optional) |
||||||||||||||||||||||||||||||
|
ArcDirection (optional) |
|||||||||||||||||||||||||||||||
pControlFlags (1 byte): MUST be set to the value OE2_CF_STANDARD_ENC from the OE2 Control Flags enumeration. If the order differs in type from the last order that is sent, this field contains the bitwise AND of the value OE2_CF_TYPE_CHANGE. If the bounding rectangle has changed since the last order of the same type, this field contains the bitwise AND of the value OE2_CF_BOUNDS. If the coordinates of the bounding rectangle are specified as deltas from the last bounding rectangle that is used, this field contains the bitwise AND of the value OE2_CF_DELTACOORDS.
OrderType (1 byte): If the order differs in type from the last, this field MUST contain the value OE2_ARC_ORDER from the Order Types enumeration. If the order is the same type as the last, this field is not present.
FieldBytes (2 bytes): A 16-bit field, with each bit indicating which of the fields that follow Bounds is present. A bit set to 1 indicates that the field is present and its value has changed since the same order type was last sent.
-
0
1
2
3
4
5
6
7
8
91
0
1
2
3
4
5A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
0
-
Where the bits are defined as:
-
Value
Description
A
The BackMode value is present.
B
The nLeftRect value is present.
C
The nTopRect value is present.
D
The nRightRect value is present.
E
The nBottomRect value is present.
F
The nXStart value is present.
G
The nYStart value is present.
H
The nXEnd value is present.
I
The nYEnd value is present.
J
The BackColor value is present.
K
The ROP2 value is present.
L
The PenStyle value is present.
M
The PenWidth value is present.
N
The PenColor value is present.
O
The ArcDirection value is present.
-
Bits that are marked 0 MUST be set to zero.
Bounds (13 bytes): A byte array of a BoundsData structure. This field is present only if pControlFlags contains the bitwise AND of the value OE2_CF_BOUNDS from the OE2 Control Flags enumeration.
BackMode (2 bytes): This value MUST be present if the corresponding bit from FieldBytes is set. This represents one of the BackMode values that are defined in section 2.2.1.2.1 and that specify how the foreground and background SHOULD be mixed.
nLeftRect (2 bytes): This value MUST be present if the corresponding bit from FieldBytes is set. This represents the left edge of the bounding rectangle in screen coordinates.
nTopRect (2 bytes): This value MUST be present if the corresponding bit from FieldBytes is set. This represents the top edge of the bounding rectangle in screen coordinates.
nRightRect (2 bytes): This value MUST be present if the corresponding bit from FieldBytes is set. This represents the right edge of the bounding rectangle in screen coordinates.
nBottomRect (2 bytes): This value MUST be present if the corresponding bit from FieldBytes is set. This represents the bottom edge of the bounding rectangle in screen coordinates.
nXStart (2 bytes): This value MUST be present if the corresponding bit from FieldBytes is set. This represents the x-coordinate of the first radial endpoint.
nYStart (2 bytes): This value MUST be present if the corresponding bit from FieldBytes is set. This represents the y-coordinate of the first radial endpoint.
nXEnd (2 bytes): This value MUST be present if the corresponding bit from FieldBytes is set. This represents the x-coordinate of the second radial endpoint.
nYEnd (2 bytes): This value MUST be present if the corresponding bit from FieldBytes is set. This represents the y-coordinate of the second radial endpoint.
BackColor (3 bytes): This value MUST be present if the corresponding bit from FieldBytes is set. This represents the background color value that is specified by a byte array of a TSHR_COLOR structure.
ROP2 (1 byte): This value MUST be present if the corresponding bit from FieldBytes is set. This represents one of the ROP2 values that are defined in section 2.2.1.2.5 and that specify the mix mode of the foreground.
PenStyle (1 byte): This value MUST be present if the corresponding bit from FieldBytes is set. This represents one of the PenStyle values that are defined in section 2.2.1.2.4.
PenWidth (1 byte): This value MUST be present if the corresponding bit from FieldBytes is set. This represents the width, in pixels, of the pen.
PenColor (3 bytes): This value MUST be present if the corresponding bit from FieldBytes is set. This represents the color value of the pen that specifies a byte array of a TSHR_COLOR structure.
ArcDirection (1 byte): This value MUST be present if the corresponding bit from FieldBytes is set. This represents the direction in which the arc SHOULD be drawn. Possible values are as follows:
-
Value
Meaning
ORD_ARC_COUNTERCLOCKWISE
0x01
The arc SHOULD be drawn counterclockwise.
ORD_ARC_CLOCKWISE
0x02
The arc SHOULD be drawn clockwise.