HOutputHandlerOptions

class HOutputHandlerOptions

HOutputHandlerOptions is used to pass data to HOutputHandler. All options are used based on the handler’s needs. Specific HOutputHandler subclassed instances should document their own usage of options.

Public Functions

HOutputHandlerOptions()

Constructs an HOutputHandlerOptions object.

virtual char const *GetType() const
virtual bool PopulateOptions()

Any application wishing to customize how the options are populated should derive from this class and overload this function.

inline HOutputHandlerOptions(HOutputHandlerOptions const *o)

Constructs an HOutputHandlerOptions object from another HOutputHandlerOptions object.

Parameters

o – A pointer to the HOutputHandlerOptions object you want to copy.

inline HOutputHandlerOptions(HOutputHandlerOptions const &o)

Constructs an HOutputHandlerOptions object from another HOutputHandlerOptions object.

Parameters

o – A reference to the HOutputHandlerOptions object you want to copy.

virtual ~HOutputHandlerOptions()
void Init(HOutputHandlerOptions const *o)

This method initializes this HOutputHandlerOptions object from using the properties of another HOutputHandlerOptions object.

Parameters

o – A pointer to the HOutputHandlerOptions object you want to copy.

inline HBaseView *View() const

A pointer to the HBaseView object for this output.

inline void View(HBaseView *const v)

A pointer to the HBaseView object for this output.

inline HBaseModel *Model() const

A pointer to the HBaseModel object for this output.

inline void Model(HBaseModel *const m)

A pointer to the HBaseModel object for this output.

inline HCamera *Camera() const

A pointer to the HCamera object for this output.

inline void Camera(HCamera *const c)

A pointer to the HCamera object for this output.

inline HC_KEY Key() const

The HC_Key for this output.

inline void Key(HC_KEY const k)

The HC_Key for this output.

inline char const *HSRAOptions() const

HOOPS HSRAOption string .

inline void HSRAOptions(char const *const tf)

HOOPS HSRAOption string .

inline HPoint const *WindowColor() const

Set the color of the window. The RGB color stored in xyz of HPoint.

inline void WindowColor(HPoint const *const tf)

Set the color of the window. The RGB color stored in xyz of HPoint.

inline bool UseWindowColor() const

If set to true, the background color of the view is used.

inline void UseWindowColor(bool const tf)

If set to true, the background color of the view is used.

inline float WindowWidth() const

Width for output sizing in inches.

inline void WindowWidth(float const f)

Width for output sizing in inches.

inline float WindowHeight() const

Height for output sizing in inches.

inline void WindowHeight(float const f)

Height for output sizing in inches.

inline float PaperWidth() const

Width for output sizing in inches.

inline void PaperWidth(float const f)

Width for output sizing in inches.

inline float PaperHeight() const

Height for output sizing in inches.

inline void PaperHeight(float const f)

Height for output sizing in inches.

inline bool ForceGrayscale() const

Specifies black and white output.

inline void ForceGrayscale(bool const tf)

Specifies black and white output.

inline size_t LineFuseThreshold() const

Gets the line fuse threshold

Returns

The line fuse threshold value

inline void LineFuseThreshold(size_t const tf)

Sets the line fuse threshold value.

Parameters

tf – The line fuse threshold value to set

inline bool FastPrint() const

This option has been deprecated. Specifies printing method.

inline void FastPrint(bool const tf)

This option has been deprecated. Specifies printing method.

inline bool ConserveMemory() const

This option has been deprecated and has no effect.

inline void ConserveMemory(bool const tf)

This option has been deprecated and has no effect.

inline bool WriteAnimations() const
inline void WriteAnimations(bool const tf)
inline bool WindowFrame() const

Determines if a window frame is drawn or not.

inline void WindowFrame(bool const tf)

Determines if a window frame is drawn or not.

inline bool UseSubscreen() const

Determines if HOOPS is calculating a subscreen to match the output to the size of the view window.

inline void UseSubscreen(bool const tf)

Determines if HOOPS is calculating a subscreen to match the output to the size of the view window.

inline int ImageDpi() const

Indicates the DPI used for images. This is calculated with info from HC_Show_Device_Info.

inline void ImageDpi(int const dpi)

Indicates the DPI used for images. This is calculated with info from HC_Show_Device_Info.

inline int PaperDpi() const

Indicates the DPI used for paper. This is set from the options dialog.

inline void PaperDpi(int const dpi)

Indicates the DPI used for paper. This is set from the options dialog.

inline void *ExtendedData() const
inline void ExtendedData(void *const vp)
inline void ExtendedData(HPDFOptions *const vp)
inline bool ActivateOnPageOpen() const
inline void ActivateOnPageOpen(bool onoff)
inline float AnnotLeft() const
inline void AnnotLeft(float f)
inline float AnnotRight() const
inline void AnnotRight(float f)
inline float AnnotBottom() const
inline void AnnotBottom(float f)
inline float AnnotTop() const
inline void AnnotTop(float f)
inline int Version() const
inline void Version(int const v)
inline H_OUTPUT_TYPE OutputType() const

The output type.

inline void OutputType(H_OUTPUT_TYPE ot)

The output type.

inline bool Output3d() const

Some file formats, such as PDF and DWF, support 2d and/or 3d output. Set this to TRUE for 3d output.

inline void Output3d(bool const tf)

Some file formats, such as PDF and DWF, support 2d and/or 3d output. Set this to TRUE for 3d output. Default is FALSE.

inline bool Ascii() const

Some file formats, support binary and ascii such as STL. Set this to true for ascii output.

inline void Ascii(bool const tf)

Some file formats, support binary and ascii such as STL. Set this to true for ascii output.

inline bool StlNormals() const

Determines if we generate and output face normals when writing to STL file format.

inline void StlNormals(bool const tf)

Determines if we generate and output face normals when writing to STL file format.

inline double PrintToScale() const
Returns

The output scaling ratio. See PrintToScale()

inline void PrintToScale(double const r)

Parameter is a positive double precision ratio which specifies how many HOOPS/3DGS world-space-units represents a centimeter. The camera will (temporarily) be scaled according to this ratio to force the physical (hardcopy) output size to match an application’s size units. A natural side-effect of this style of output is that the hardcopy will not match the picture on the screen like normal HOOPS printing. The output will effectively be scaled (up or down) and given a new aspect ratio so that it will fill the printable area of the specified output device with to-scale geometry surrounding the camera target.

Examples:

  • If a value of 1.0 in HOOPS/3DGS world-space is meant to represent 2 mm, set the ratio to 0.2

  • If a value of 1.0 in HOOPS/3DGS world-space is meant to represent 1 inch, set the ratio to 2.54

  • If a value of 1.0 in HOOPS/3DGS world-space is meant to represent 1 cm, set the ratio to 1.0

Behavioral Notes:

  • This mode will respect user-defined margins.

  • PrintToScale behavior is undefined if there is a perspective camera.

The default value is 0, which indicates to not print-to-scale.

Public Members

HBaseView *m_pHBaseView

A pointer to the HBaseView object for this output.

HBaseModel *m_pHBaseModel

A pointer to the HBaseModel object for this output.

HCamera *m_pCamera

A pointer to the HCamera object for this output.

HC_KEY m_Key

The HC_Key for this output.

char const *m_pHSRAOptions

HOOPS HSRAOption string .

HPoint const *m_pWindowColor

RGB color stored in xyz.

bool m_bUseWindowColor

If set to true, the background color of the view is used.

float m_Window_Width

Width for output sizing in inches.

float m_Window_Height

Height for output sizing in inches.

float m_Paper_Width

Width for output sizing in inches.

float m_Paper_Height

Height for output sizing in inches.

bool m_ForceGrayscale

Specifies black and white output.

size_t m_lineFuseThreshold

If the number of lines in a segment is greater than or equal to this value, the lines are fused into a single line during export. This option applies to 3D PDF exports only. The default value is 100.

bool m_bFastPrint

This option has been deprecated. Specifies printing method.

bool m_bConserveMemory

This option has been deprecated and has no effect.

bool m_bWriteAnimations
bool m_bWindowFrame

Determines if a window frame is drawn or not.

bool m_bUseSubscreen

Determines if HOOPS is calculating a subscreen to match the output to the size of the view window.

int m_Image_Dpi

Indicates the DPI used for images. This is calculated with info from HC_Show_Device_Info.

int m_Paper_Dpi

Indicates the DPI used for paper. This is set from the options dialog.

void *m_pExtendedData

A pointer to extra data needed by a HOutputHandler subclass .

char const *m_license

A pointer to a license key. This can be used by HIO modules that are based on 3rd party toolkits which require a license key to be set.

int m_antialiasLevel
int m_jpeg_quality
unsigned char *m_imageOutputBuffer
size_t m_imageOutputBufferSize
int m_Version

The file format version desired for writing.

H_OUTPUT_TYPE m_OutputType

The output type.

bool m_b3dOutput

Some file formats, such as PDF and DWF, support 2d and/or 3d output. Set this to TRUE for 3d output. Default is FALSE.

bool m_bAscii

Some file formats, support binary and ascii such as STL. Set this to true for ascii output.

bool m_bStlNormals

Determines if we generate and output face normals when writing to STL file format.

double m_ratio_cm_to_internal_units

The output scaling ratio. See PrintToScale()

float m_PageMargins[4]

Sets the page margin in inches. m_PageMargins[0] is the left margin m_PageMargins[1] is the right margin m_PageMargins[2] is the bottom margin m_PageMargins[3] is the top margin

HBhvBehaviorManager *m_pBehaviorManager

A pointer to the behavior manager.

char const *m_pDWFModelName

DWF Model name

char const *m_pPDFResourceDirectory

Publish resource directory. Setting this directory is required for 3D PDF export. Normally, this directory is HOOPS_PUBLISH_INSTALL_DIR/bin/resource.

ExportNameMap m_names

available for output handlers to map HC_KEYS to names in the output file.

void *m_pPRCAsmModelFile

Pointer to a PRC model

bool m_bActivateOnPageOpen

Set this member to true if you want the 3D annotation in a 3D PDF document to be automatically enabled when opening the PDF file. Default is false

float m_fAnnotLeft

This setting applies to the positioning of a 3D annotation in a 3D PDF, and defines the distance, in inches, from the page’s left border, where the left side of the annotation should be located. The default is 0.5

float m_fAnnotRight

This setting applies to the positioning of a 3D annotation in a 3D PDF, and defines the distance, in inches, from the page’s right border, where the right of the annotation should be located. The default is 0.5

float m_fAnnotBottom

This setting applies to the positioning of a 3D annotation in a 3D PDF, and defines the distance, in inches, from the page’s bottom border, where the bottom of the annotation should be located. The default is 2.0

float m_fAnnotTop

This setting applies to the positioning of a 3D annotation in a 3D PDF, and defines the distance, in inches, from the page’s top border, where the top of the of the annotation should be located. The default is 0.5

HPrcBrepCompression m_ePrcBrepCompression

Sets the compression level for BRep data when exporting to the PRC format. Defaults to PrcBrepCompressionNone.

bool m_bPrcRemoveBRep

Sets whether to remove BREP data when exporting to the PRC format. Defaults to false.

bool m_bPrcRemoveAttributes

Sets whether to remove attribute data when exporting to the PRC format. Defaults to false.

bool m_bPrcUseNameUserData

Sets whether to use the m_iPrcNameUserDataIndex field. Defaults to false.

long m_iPrcNameUserDataIndex

Sets the user data index for the UTF8-encoded name to use for PRC entities when creating PRC data from a scene graph.

bool m_bPrcCompressTessellation

Sets whether to compress tessellation data when exporting to the PRC format. Defaults to false.

bool m_bAVIShowCompressionDialog

Used in HIO_AVI. If true shows a dialog during export to allow the user to select a compression level. Defaults to true.

char m_bAVICodec[4]

Used in HIO_AVI. Sets the AVI codec for function mmioFOURCC Default codec is UNCOMPRESSED m_bAVICodec[0] First character of the four-character code. m_bAVICodec[1] Second character of the four-character code. m_bAVICodec[2] Third character of the four-character code. m_bAVICodec[3] Fourth character of the four-character code.

bool m_bExporting2DDwf

2D Dwf Export uses a legacy version of Hardcopy. Set this option to true when exporting a 2D DWF file

char const *m_pHTMLTemplateFile

Path to the template file to use when generating an HTML file from HIOUtilityPublish. This value is REQUIRED for HTML export to succeed.

bool m_bHTMLIncludeMeasurementInformation

Whether to include measurement information when generating an HTML file from HIOUtilityPublish.

bool m_bPDFEmbedFonts

Whether to embed fonts in exported 2D PDF files. Embedding fonts makes the PDF exported file bigger, but enables text contained within it to render correctly even on platforms that lack the font used when creating the file.