3D Annot Module
Types
| A3DPDF3DAnnotData | |
A3DPDFEActivateWhen |
|
A3DPDFEDesactivateWhen |
|
A3DPDFEAnimationStyle |
|
A3DPDFELighting |
|
A3DPDFERenderingStyle |
Fields
Functions
A3DStatus |
A3DPDF3DAnnotCreate |
A3DStatus |
A3DPDFPageInsert3DAnnot |
A3DStatus |
A3DPDFPageFieldSet3DAnnot |
A3DStatus |
A3DPDF3DAnnotGetUniqueId |
A3DStatus |
A3DPDF3DAnnotGetJavascriptHighlightManagerName |
Detailed Description
-
group
a3d_pdf_3Dannot_module Module to define a 3D Annotation.
This module describes the functions and structures that allow you to define 3D data in the page.
Type Documentation
-
enum
A3DPDFEActivateWhen The circumstances under which the 3D Annot shall be activated.
- Version
- 4.1
Values:
-
enumerator
kA3DPDFActivExplicitActivation The 3D Annot shall remain inactive until explicitly activated by a script or user action.
-
enumerator
kA3DPDFActivPageOpened The 3D Annot shall be activated as soon as the page containing the 3D Annot is opened.
-
enumerator
kA3DPDFActivPageVisible The 3D Annot shall be activated as soon as any part of the page containing the 3D Annot becomes visible.
-
enum
A3DPDFEDesactivateWhen The circumstances under which the 3D Annot shall be deactivated.
- Version
- 4.1
Values:
-
enumerator
kA3DPDFActivExplicitDesactivation The 3D Annot shall remain active until explicitly deactivated by a script or user action.
-
enumerator
kA3DPDFActivPageClosed The 3D Annot shall be deactivated as soon as the page is closed.
-
enumerator
kA3DPDFActivPageNotVisible The 3D Annot shall be deactivated as soon as the page containing the 3D Annot becomes invisible.
-
enum
A3DPDFEAnimationStyle Animation Style.
- Version
- 4.1
Values:
-
enumerator
kA3DPDFAnimStyleNoAnimation Animations shall not be driven directly by the conforming reader. This value shall be used by documents that are intended to drive animations through an alternate means, such as JavaScript.
-
enumerator
kA3DPDFAnimStyleLoop This animation style results in a repetitive playthrough of the animation.
-
enumerator
kA3DPDFAnimStyleBounce This animation style results in a back-and-forth playing of the animation.
-
enum
A3DPDFELighting Lighting.
- Version
- 4.1
Values:
-
enumerator
kA3DPDFLightArtworkCurrent The light is defined from the 3D data (in the 3D Artwork).
-
enumerator
kA3DPDFLightNone No light.
-
enumerator
kA3DPDFLightWhite White light.
-
enumerator
kA3DPDFLightDay Day light.
-
enumerator
kA3DPDFLightBright Bright light.
-
enumerator
kA3DPDFLightPrimaryColor Primary color light.
-
enumerator
kA3DPDFLightNight Night light.
-
enumerator
kA3DPDFLightBlue Blue light.
-
enumerator
kA3DPDFLightRed Red light.
-
enumerator
kA3DPDFLightCube Cube light.
-
enumerator
kA3DPDFLightCADOptimized CAD Optimized light.
-
enumerator
kA3DPDFLightHeadlamp Headlamp light.
-
enum
A3DPDFERenderingStyle Rendering Style.
- Version
- 4.1
Values:
-
enumerator
kA3DPDFRenderingTransparentBoundingBox Displays bounding boxes faces of each node, aligned with the axes of the local coordinate space for that node, with an added level of transparency.
-
enumerator
kA3DPDFRenderingSolid Displays textured and lit geometric shapes.
-
enumerator
kA3DPDFRenderingTransparent Displays textured and lit geometric shapes (triangles) with an added level of transparency.
-
enumerator
kA3DPDFRenderingSolidWireframe Displays textured and lit geometric shapes (triangles) with an added level of transparency, with single color opaque edges on top of it.
-
enumerator
kA3DPDFRenderingIllustration Displays silhouette edges with surfaces, removes obscured lines.
-
enumerator
kA3DPDFRenderingSolidOutline Displays silhouette edges with lit and textured surfaces, removes obscured lines.
-
enumerator
kA3DPDFRenderingShadedIllustration Displays silhouette edges with lit and textured surfaces and an additional emissive term to remove poorly lit areas of the artwork.
-
enumerator
kA3DPDFRenderingBoundingBox Displays the bounding box edges of each node, aligned with the axes of the local coordinate space for that node.
-
enumerator
kA3DPDFRenderingTransparentBoundingBoxOutline Displays bounding boxes edges and faces of each node, aligned with the axes of the local coordinate space for that node, with an added level of transparency.
-
enumerator
kA3DPDFRenderingWireframe Displays only edges in a single color.
-
enumerator
kA3DPDFRenderingShadedWireframe Displays only edges, though interpolates their color between their two vertices and applies lighting.
-
enumerator
kA3DPDFRenderingTransparentWireframe Displays textured and lit geometric shapes (triangles) with an added level of transparency, with single color opaque edges on top of it.
-
enumerator
kA3DPDFRenderingHiddenWireframe Displays edges in a single color, though removes back-facing and obscured edges.
-
enumerator
kA3DPDFRenderingVertices Displays only vertices in a single color.
-
enumerator
kA3DPDFRenderingShadedVertices Displays only vertices, though uses their vertex color and applies lighting.
Function Documentation
-
A3DStatus
A3DPDF3DAnnotCreate(A3DPDFDocument *pDoc, const A3DPDF3DAnnotData *p3DAnnotData, A3DPDF3DAnnot **pp3DAnnot) Function to create a 3D Annotation object.
The 3D Annotation object is primarily created with this function, and it should be inserted on the page with the functions A3DPDFPageInsert3DAnnot or A3DPDFPageFieldSet3DAnnot.
- Version
- 4.1
Parameters: - pDoc – [inout] The Document object to work with.
- p3DAnnotData – [in] The 3D Annot parameters.
- pp3DAnnot – [out] The 3D Annot object created.
Return values: A3D_SUCCESS –
Returns: A3D_SUCCESS in case of success or an error code
-
A3DStatus
A3DPDFPageInsert3DAnnot(A3DPDFPage *pPage, const A3DPDF3DAnnot *p3DAnnot, const A3DPDFRectData *pRectData) Function to insert a 3D Annot in a page.
Insert a 3D Annot object on the page. Several 3D Annots can be stored on a page. After insertion, a unique id is generated for the 3D Annot object. This unique id can be retrieved with A3DPDF3DAnnotGetUniqueId.
- Version
- 4.1
Parameters: - pPage – [inout] The Page object to work with.
- p3DAnnot – [in] The 3D Annot to insert on the page.
- pRectData – [in] The rectangle to specify the position on the page.
Return values: A3D_SUCCESS –
Returns: A3D_SUCCESS in case of success or an error code
-
A3DStatus
A3DPDFPageFieldSet3DAnnot(A3DPDFPage *pPage, const A3DUTF8Char *pcFieldName, const A3DPDF3DAnnot *p3DAnnot) Function to replace the form field specified with a 3D Annot object.
Several 3D Annots can be stored on a page. After insertion, a unique id is generated for the 3D Annot object. This unique id can be retrieved with A3DPDF3DAnnotGetUniqueId.
- Version
- 4.1
Parameters: - pPage – [inout] The Page object to work with.
- pcFieldName – [in] The name of the form field. Only Acroform fields are supported.
- p3DAnnot – [in] The 3D Annot to set.
Return values: A3D_SUCCESS –
Returns: A3D_SUCCESS in case of success or an error code
-
A3DStatus
A3DPDF3DAnnotGetUniqueId(const A3DPDF3DAnnot *p3DAnnot, A3DUTF8Char **ppc3dAnnotId) Function to retrieve the unique id of a 3D annotation This function must be called after inserting the 3d annot object with A3DPDFPageInsert3DAnnot or A3DPDFPageFieldSet3DAnnot.
Memory Management
In case of success,
ppc3dAnnotIdcontains heap allocated memory you are responsible for. To free the memory onppc3dAnnotId, callA3DPDF3DAnnotGetUniqueIdwithp3DAnnotset to 0.- Version
- 24.4
Parameters: - p3DAnnot – [in] The 3D Annot to work with.
- ppc3dAnnotId – [out] The identifier as a string.
-
A3DStatus
A3DPDF3DAnnotGetJavascriptHighlightManagerName(const A3DPDF3DAnnot *p3DAnnot, A3DUTF8Char **ppcHighlightManagerName) Function to retrieve the name of the javascript Highlight Manager object.
- Deprecated:
This function is deprecated. Please use A3DPDF3DNodeSceneGetJavascriptManagerName instead. This will be removed in version 2026.1.0. On PDF files generated with the datamodel API, customers can configure properties for highlighting behaviour within 3D scenes. With this, customers need to write some JavaScript at the document level (typically on the UI widgets on a page) to set the highlight properties. This Highlight Manager object returned by this function can be used to do that. Please refer to the section ‘Setting up Properties for Highlight or Select on 3D Scene Widget’ in programming guide for more details. This function must be called after inserting the 3d annot object with A3DPDFPageInsert3DAnnot or A3DPDFPageFieldSet3DAnnot.
Memory Management
In case of success,
ppcHighlightManagerNamecontains heap allocated memory you are responsible for. To free the memory onppcHighlightManagerName, callA3DPDF3DAnnotGetJavascriptHighlightManagerNamewithp3DAnnotset to 0.- Version
- 24.4
Parameters: - p3DAnnot – [in] The 3D Annot to work with.
- ppcHighlightManagerName – [out] The Highlight Manager name as a string.