LVectorBase::PhysicalToLogical

#include "ltwrappr.h"

virtual L_INT LVectorBase::PhysicalToLogical(pDst, pSrc)

Converts a Windows 2D POINT into a 3D VECTORPOINT.

Parameters

pVECTORPOINT pDst

Pointer to a VECTORPOINT structure to be updated with the logical 3 dimensional point converted from the 2 dimensional point in pSrc.

const POINT * pSrc

Pointer to a POINT structure that contains a 2 dimensional point to be converted into a 3 dimensional point.

Returns

Value Meaning
SUCCESS The function was successful.
< 1 An error occurred. Refer to Return Codes.

Comments

Converts a given 2D physical point into a logical (with X, Y, Z coordinates), 3D point.

The Z value of the destination 3D point will not be changed.

Conversion will be based on the current view port and camera values set in the VECTORHANDLE.

Required DLLs and Libraries

See Also

Functions

Topics

Example

This example will obtains drawing logical extents.

L_INT LVectorBase__PhysicalToLogicalExample(HWND hWnd) 
{ 
   RECT        rect; 
   L_INT       nRet; 
   VECTORPOINT LeftTop, RightBottom; 
   POINT       LeftTop2D, RightBottom2D; 
   LVectorBase Vector; 
 
   nRet = Vector.Load(MAKE_IMAGE_PATH(TEXT("random.dxf"))); 
   if(nRet != SUCCESS) 
      return nRet; 
 
   // Get physical extent of the all objects inside drawing 
   nRet = Vector.AttachToWindow(hWnd); 
   if(nRet != SUCCESS) 
      return nRet; 
 
   GetClientRect(hWnd, &rect); 
   nRet = Vector.SetViewport(&rect); 
   if(nRet != SUCCESS) 
      return nRet; 
 
   // Get the rectangle of entire object  
   nRet = Vector.GetObjectRect(&rect); 
   if(nRet != SUCCESS) 
      return nRet; 
 
   LeftTop2D.x = rect.left; 
   LeftTop2D.y = rect.top; 
   RightBottom2D.x = rect.right; 
   RightBottom2D.y = rect.bottom; 
 
   nRet = Vector.PhysicalToLogical( &LeftTop, &LeftTop2D ); 
   if(nRet != SUCCESS) 
      return nRet; 
 
   nRet = Vector.PhysicalToLogical( &RightBottom, &RightBottom2D ); 
   if(nRet != SUCCESS) 
      return nRet; 
 
   return SUCCESS; 
} 

Help Version 20.0.2020.4.2
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2020 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Vector C++ Class Library Help