Modifies a CDXDBnds class so that it is clipped by a clipping boundary.
HRESULT DXClipToOutputWithPlacement( _Inout_ CDXDBnds &LogicalOutBnds, _In_ const CDXDBnds *pClipBnds, _Inout_ CDXDBnds &PhysicalOutBnds, _In_ const CDXDVec *pPlacement );
LogicalOutBnds [in, out, ref]
A CDXDBnds object that specifies and receives the input boundary.
A pointer to a CDXDBnds object that specifies the clipping boundary.
PhysicalOutBnds [in, out, ref]
A CDXDBnds object that specifies and receives the output boundary.
A pointer to a CDXDVec object that specifies an offset to use when setting PhysicalOutBnds.
Returns S_OK if clipping is successful, or S_FALSE if clipping is not necessary.
Use DXClipToOutputWithPlacement to clip a CDXDBnds object. First, DXClipToOutputWithPlacement compares the input boundary, LogicalOutBnds, to the clipping boundary, pClipBnds. If the boundaries intersect, the input boundary is resized to the boundaries of this intersection. Next, this newly resized input boundary is offset by pPlacement and compared to the specified output boundary, PhysicalOutBnds. If these boundaries intersect, the output boundary is resized to the boundaries of this intersection. The following illustration shows this process.
If the clipping boundary is not partially or completely within the input boundary, then DXClipToOutputWithPlacement returns S_FALSE. LogicalOutBnds might also be modified.
If the clipping boundary, offset by pPlacement, is not partially or completely within the output boundary, then DXClipToOutputWithPlacement returns S_FALSE. LogicalOutBnds might also be modified.
Minimum supported client
Minimum supported server
Windows 2000 Server