Foxit PDF SDK
foxit::addon::pdf3d::PDF3DAnnotInstance Class Reference
Inheritance diagram for foxit::addon::pdf3d::PDF3DAnnotInstance:
foxit::Base

Public Types

enum  PDF3DController {
  e_ControllerRotate = 0, e_ControllerSpin = 1, e_ControllerPan = 2, e_ControllerZoom = 3,
  e_ControllerWalk = 4, e_ControllerFly = 5
}
 Enumeration for the 3D controller tool. More...
 
enum  PDF3DRenderMode {
  e_RenderModeSolid = 1, e_RenderModeSolidWireframe = 2, e_RenderModeSolidOutline = 3, e_RenderModeTransparent = 4,
  e_RenderModeTransparentWireframe = 5, e_RenderModeBoundingBox = 6, e_RenderModeTransparentBoundingBox = 7, e_RenderModeTransparentBoundingBoxOutline = 8,
  e_RenderModeWireframe = 9, e_RenderModeShadedWireframe = 10, e_RenderModeHiddenWireframe = 11, e_RenderModeIllustration = 12,
  e_RenderModeShadedIllustration = 13, e_RenderModeVertices = 14, e_RenderModeShadedVertices = 15
}
 Enumeration for the 3D render mode. More...
 

Public Member Functions

 PDF3DAnnotInstance ()
 Constructor.
 
 PDF3DAnnotInstance (const PDF3DAnnotInstance &other)
 Constructor, with another 3d annot instance object. More...
 
 ~PDF3DAnnotInstance ()
 Destructor.
 
FX_HWND ActivateCanvas (FX_HWND screen_canvas_parent)
 Activate canvas. More...
 
void ApplyPresetView (const PDF3DAnnotViewData &view_data)
 Apply the preset view . More...
 
pdf::annots::Annot GetAnnot ()
 Get associated annotation. More...
 
PDF3DAnnotViewDataArray GetPresetViewList ()
 Get the list of all preset views in the 3D model. More...
 
bool IsEmpty () const
 Check whether current object is empty or not. More...
 
void OnLButtonDown (int flag, PointF point)
 Call this function when pressing the left button. More...
 
void OnLButtonUp (int flag, PointF point)
 Call this function when releasing the left button. More...
 
void OnMouseMove (int flag, PointF point)
 Call this function when moving the mouse. More...
 
void OnMouseWheel (int flag, int delta, PointF point)
 Call this function when scrolling the mouse wheel. More...
 
void OnRButtonDown (int flag, PointF point)
 Call this function when pressing the right button. More...
 
void OnRButtonUp (int flag, PointF point)
 Call this function when releasing the right button. More...
 
bool operator!= (const PDF3DAnnotInstance &other) const
 Not equal operator. More...
 
PDF3DAnnotInstanceoperator= (const PDF3DAnnotInstance &other)
 Assign operator. More...
 
bool operator== (const PDF3DAnnotInstance &other) const
 Equal operator. More...
 
void ResetDefaultView ()
 Reset the view back to the default view, the 3D model will be reset to its default state. More...
 
void SetController (PDF3DController tool_tag)
 Set controller. More...
 
void SetRenderMode (PDF3DRenderMode render_mode)
 Set model render mode. More...
 
void UpdateCanvas (RectI rect)
 Update the canvas. More...
 
- Public Member Functions inherited from foxit::Base
FS_HANDLE Handle () const
 Get the handle of current object. More...
 

Detailed Description

This class represents a 3D annotation instance.

See also
PDF3DContext

Member Enumeration Documentation

◆ PDF3DController

Enumeration for the 3D controller tool.

Values of this enumeration should be used alone.

Enumerator
e_ControllerRotate 

rotate.

e_ControllerSpin 

spin.

e_ControllerPan 

pan.

e_ControllerZoom 

zoom.

e_ControllerWalk 

walk.

e_ControllerFly 

fly.

◆ PDF3DRenderMode

Enumeration for the 3D render mode.

Values of this enumeration should be used alone.

Enumerator
e_RenderModeSolid 

Solid.

e_RenderModeSolidWireframe 

Solid wireframe.

e_RenderModeSolidOutline 

Solid outline.

e_RenderModeTransparent 

Transparent.

e_RenderModeTransparentWireframe 

Transparent wireframe.

e_RenderModeBoundingBox 

Bounding box.

e_RenderModeTransparentBoundingBox 

Transparent bounding box.

e_RenderModeTransparentBoundingBoxOutline 

Transparent bounding box outline.

e_RenderModeWireframe 

Wireframe.

e_RenderModeShadedWireframe 

Shaded wireframe.

e_RenderModeHiddenWireframe 

Hidden wireframe.

e_RenderModeIllustration 

Illustration.

e_RenderModeShadedIllustration 

Shaded illustration.

e_RenderModeVertices 

Vertices.

e_RenderModeShadedVertices 

Shaded vertices.

Constructor & Destructor Documentation

◆ PDF3DAnnotInstance()

foxit::addon::pdf3d::PDF3DAnnotInstance::PDF3DAnnotInstance ( const PDF3DAnnotInstance other)

Constructor, with another 3d annot instance object.

Parameters
[in]otherAnother 3d annot instance object.

Member Function Documentation

◆ ActivateCanvas()

FX_HWND foxit::addon::pdf3d::PDF3DAnnotInstance::ActivateCanvas ( FX_HWND  screen_canvas_parent)

Activate canvas.

Parameters
[in]screen_canvas_parentThe parent window handle used to activate the canvas.
Returns
The canvas handle.

◆ ApplyPresetView()

void foxit::addon::pdf3d::PDF3DAnnotInstance::ApplyPresetView ( const PDF3DAnnotViewData view_data)

Apply the preset view .

Ensure the function ActivateCanvas has been called.

Parameters
[in]view_dataThe data of the view to be set. It should be one of the data array returned by function GetPresetViewList.
Returns
None.

◆ GetAnnot()

pdf::annots::Annot foxit::addon::pdf3d::PDF3DAnnotInstance::GetAnnot ( )

Get associated annotation.

Returns
An annotation object.

◆ GetPresetViewList()

PDF3DAnnotViewDataArray foxit::addon::pdf3d::PDF3DAnnotInstance::GetPresetViewList ( )

Get the list of all preset views in the 3D model.

Ensure the function ActivateCanvas has been called.

Returns
An array of view data.

◆ IsEmpty()

bool foxit::addon::pdf3d::PDF3DAnnotInstance::IsEmpty ( ) const

Check whether current object is empty or not.

When the current object is empty, that means current object is useless.

Returns
true means current object is empty, while false means not.

◆ OnLButtonDown()

void foxit::addon::pdf3d::PDF3DAnnotInstance::OnLButtonDown ( int  flag,
PointF  point 
)

Call this function when pressing the left button.

Ensure the function ActivateCanvas has been called.

Parameters
[in]flagThe flag of the mouse event.
[in]pointThe point of the mouse.
Returns
None.

◆ OnLButtonUp()

void foxit::addon::pdf3d::PDF3DAnnotInstance::OnLButtonUp ( int  flag,
PointF  point 
)

Call this function when releasing the left button.

Ensure the function ActivateCanvas has been called.

Parameters
[in]flagThe flag of the mouse event.
[in]pointThe point of the mouse.
Returns
None.

◆ OnMouseMove()

void foxit::addon::pdf3d::PDF3DAnnotInstance::OnMouseMove ( int  flag,
PointF  point 
)

Call this function when moving the mouse.

Ensure the function ActivateCanvas has been called.

Parameters
[in]flagThe flag of the mouse event.
[in]pointThe point of the mouse.
Returns
None.

◆ OnMouseWheel()

void foxit::addon::pdf3d::PDF3DAnnotInstance::OnMouseWheel ( int  flag,
int  delta,
PointF  point 
)

Call this function when scrolling the mouse wheel.

Ensure the function ActivateCanvas has been called.

Parameters
[in]flagThe flag of the mouse event.
[in]deltaThe delta of the mouse wheel.
[in]pointThe point of the mouse.
Returns
None.

◆ OnRButtonDown()

void foxit::addon::pdf3d::PDF3DAnnotInstance::OnRButtonDown ( int  flag,
PointF  point 
)

Call this function when pressing the right button.

Ensure the function ActivateCanvas has been called.

Parameters
[in]flagThe flag of the mouse event.
[in]pointThe point of the mouse.
Returns
None.

◆ OnRButtonUp()

void foxit::addon::pdf3d::PDF3DAnnotInstance::OnRButtonUp ( int  flag,
PointF  point 
)

Call this function when releasing the right button.

Ensure the function ActivateCanvas has been called.

Parameters
[in]flagThe flag of the mouse event.
[in]pointThe point of the mouse.
Returns
None.

◆ operator!=()

bool foxit::addon::pdf3d::PDF3DAnnotInstance::operator!= ( const PDF3DAnnotInstance other) const

Not equal operator.

Parameters
[in]otherAnother 3d annot instance object. This function will check if current object is not equal to this one.
Returns
true means not equal, while false means equal.

◆ operator=()

PDF3DAnnotInstance& foxit::addon::pdf3d::PDF3DAnnotInstance::operator= ( const PDF3DAnnotInstance other)

Assign operator.

Parameters
[in]otherAnother 3d annot instance object, whose value would be assigned to current object.
Returns
Reference to current object itself.

◆ operator==()

bool foxit::addon::pdf3d::PDF3DAnnotInstance::operator== ( const PDF3DAnnotInstance other) const

Equal operator.

Parameters
[in]otherAnother 3d annot instance object. This function will check if current object is equal to this one.
Returns
true means equal, while false means not equal.

◆ ResetDefaultView()

void foxit::addon::pdf3d::PDF3DAnnotInstance::ResetDefaultView ( )

Reset the view back to the default view, the 3D model will be reset to its default state.

Ensure the function ActivateCanvas has been called.

Returns
None.

◆ SetController()

void foxit::addon::pdf3d::PDF3DAnnotInstance::SetController ( PDF3DController  tool_tag)

Set controller.

Ensure the function ActivateCanvas has been called.

Parameters
[in]tool_tagThe controller tool to be set. Please refer to values starting from PDF3DAnnotInstance::e_ControllerRotate and this should be one of these values.
Default value: PDF3DAnnotInstance::e_ControllerRotate.
Returns
None.

◆ SetRenderMode()

void foxit::addon::pdf3d::PDF3DAnnotInstance::SetRenderMode ( PDF3DRenderMode  render_mode)

Set model render mode.

Ensure the function ActivateCanvas has been called.

Parameters
[in]render_modeThe render mode to be set. Please refer to values starting from PDF3DAnnotInstance::e_RenderModeSolid and this should be one of these values.
Default value: PDF3DAnnotInstance::e_RenderModeSolidOutline.
Returns
None.

◆ UpdateCanvas()

void foxit::addon::pdf3d::PDF3DAnnotInstance::UpdateCanvas ( RectI  rect)

Update the canvas.

Ensure the function ActivateCanvas has been called. Call this function when the canvas size and position need to be updated.

Parameters
[in]rectThe new area of canvas in device coordinate system.
Returns
None.