#ifndef PROQUICKPRINT_H_ #define PROQUICKPRINT_H_ #include <ProANSI.h> PRO_BEGIN_C_DECLS #include <ProToolkit.h> #include <ProDrawing.h> #include <ProPrint.h> #include <ProObjects.h> typedef struct dtlqp_print_drawing_info* ProQuickprintOptions; typedef enum { PRO_QPRINT_LAYOUT_PROJ, PRO_QPRINT_LAYOUT_MANUAL, PRO_QPRINT_LAYOUT_TEMPLATE } ProQuickprintLayoutType; typedef enum { PRO_QPRINTMANUAL_3VIEW_1_23VERT, PRO_QPRINTMANUAL_3VIEW_23_VERT1, PRO_QPRINTMANUAL_3VIEW_123_HORIZ } ProQuickprintmanual3ViewLayoutType; typedef enum { PRO_QPRINTPROJ_TOP_VIEW, PRO_QPRINTPROJ_RIGHT_VIEW, PRO_QPRINTPROJ_LEFT_VIEW, PRO_QPRINTPROJ_BOTTOM_VIEW, PRO_QPRINTPROJ_BACK_NORTH, PRO_QPRINTPROJ_BACK_EAST, PRO_QPRINTPROJ_BACK_SOUTH, PRO_QPRINTPROJ_BACK_WEST } ProQuickprintprojectedProjViewLocation; typedef enum { PRO_QPRINTPROJ_GENVIEW_MAIN, PRO_QPRINTPROJ_GENVIEW_NW, PRO_QPRINTPROJ_GENVIEW_SW, PRO_QPRINTPROJ_GENVIEW_SE, PRO_QPRINTPROJ_GENVIEW_NE } ProQuickprintprojectedGeneralViewLocation; extern ProError ProQuickprintoptionsAlloc (ProQuickprintOptions* options); /* Purpose: Allocates a quick print options handle. Input Arguments: none Output Arguments: options - The quick print options handle. Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments was invalid. */ extern ProError ProQuickprintoptionsFree (ProQuickprintOptions options); /* Purpose: Frees a quick print options handle. Input Arguments: options - The quick print options handle. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments was invalid. */ extern ProError ProQuickprintoptionsLayouttypeSet (ProQuickprintOptions options, ProQuickprintLayoutType layout_type); /* Purpose: Assigns the layout type to use for the quick print. Input Arguments: options - The options handle. layout_type - The layout type to use for the quick print. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments was invalid. */ extern ProError ProQuickprintoptionsOrientationSet ( ProQuickprintOptions options, int orientation); /* Purpose: Assigns the sheet orientation for the quick print operation. Input Arguments: options - The quick print options. orientation - The orientation. Valid values are PRODEV_ORIENTATION_PORTRAIT or PRODEV_ORIENTATION_LANDSCAPE. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments was invalid. PRO_TK_BAD_CONTEXT - The layout type is not 'projection' or 'manual'. */ extern ProError ProQuickprintoptionsSizeSet (ProQuickprintOptions options, ProPrintSize* size); /* Purpose: Assigns the size of the print for the quick print operation. Input Arguments: options - The quick print options. size - The size of the print for the quick print operation. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments was invalid. PRO_TK_BAD_CONTEXT - The layout type is not 'projection' or 'manual'. PRO_TK_INVALID_TYPE - Variable size quick prints are not currently supported. */ extern ProError ProQuickprintoptionsViewAdd (ProQuickprintOptions options, ProQuickprintprojectedGeneralViewLocation location, ProLine view_name, double scale, ProDrawingViewDisplay *display_style); /* Purpose: Adds a new general view to be printed. <P> <B>Note:</B> For manual view layouts, the order in which the views are added determine their final location in the drawing. Input Arguments: options - The options handle. location - For projected view layout, this is the location of the view being added. Ignored for manual view layout. view_name - Name of the saved model view. scale - The view scale to use. display_style - The view display style to use. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments was invalid. PRO_TK_LINE_TOO_LONG - No more than 4 views may be used in a manual layout. PRO_TK_BAD_CONTEXT - The layout type is not 'projection' or 'manual'. */ extern ProError ProQuickprintoptionsThreeviewlayoutSet ( ProQuickprintOptions options, ProQuickprintmanual3ViewLayoutType layout_type); /* Purpose: Assigns the layout type to use, when three views are being used in a manual layout (the layout type is PRO_QPRINT_LAYOUT_MANUAL). Input Arguments: options - The options handle. layout_type - The layout type to use. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments was invalid. PRO_TK_BAD_CONTEXT - The layout type is not 'manual', or there are not exactly three views stored in the layout. */ extern ProError ProQuickprintoptionsProjectionsSet ( ProQuickprintOptions options, ProQuickprintprojectedProjViewLocation* projections); /* Purpose: Assigns the list of the projection to include in this quick print operation, if the layout type is PRO_QPRINT_LAYOUT_PROJ. Input Arguments: options - The options handle. projections - ProArray of the projections to include. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments was invalid. PRO_TK_BAD_CONTEXT - The layout type is not 'projection'. */ extern ProError ProQuickprintoptionsTemplateSet (ProQuickprintOptions options, ProPath dwg_template); /* Purpose: Assigns the path to the drawing template file, if the layout type is PRO_QPRINT_LAYOUT_TEMPLATE. Input Arguments: options - The options handle. dwg_template - Path to the drawing template file to use for the quick print operation. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments was invalid. PRO_TK_BAD_CONTEXT - The layout type is not 'template'. */ extern ProError ProQuickprintExecute (ProSolid solid, ProPath pcf_path, ProQuickprintOptions options); /* Purpose: Executes a quick print of a given solid model. Input Arguments: solid - The solid model to print. The model's simplified rep and layer status will be maintained. pcf_path - Path to the plotter configuration file to use. If NULL, the value of the config option 'quick_print_plotter_config_file'. options - Details on how the quick print should be carried out. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments was invalid. PRO_TK_E_NOT_FOUND - pcf_path is null, and no default plotter config file is set. PRO_TK_GENERAL_ERROR - Could not complete the printing operation. PRO_TK_NO_PERMISSION - The function does not have permission to operate on this model. PRO_TK_BAD_CONTEXT - The function is not available in Design Test Mode. */ extern ProError ProQuickprintoptionsPrintFlatToScreenAnnotsSet (ProQuickprintOptions options, ProBoolean print_flat_to_screen); /* Purpose: Set the option to print flat_to_screen annotations. Input Arguments: options - The options handle. print_flat_to_screen - The print flat_to_screen annotations flag Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments was invalid. See Also: ProAnnotationplaneFlatToScreenCreate() */ PRO_END_C_DECLS #endif