Display Tolerances   

<<< Rendering Option Settings Chapters Facet Mesh Generation >>>

Contents

[back to top]


106.1 Introduction

The rendering functions PK_GEOM_render and PK_TOPOL_render_line allow tolerances to be specified, to be used when rendering curves in a part. These approximation tolerances control the accuracy of the polyline representation of the curves.

The curve approximation tolerances chosen for the rendering functions have an effect on:

 

Related Topics:

[back to top]


106.2 Curve approximation tolerances

The quality and performance of rendering within PK_GEOM_render and PK_TOPOL_render_line are controlled by these options:

 

Option

Description

have_curve_chord_tol

Whether curve_chord_tol is set. Default: PK_LOGICAL_false

Note: Used to PK_GEOM_render only

is_curve_chord_tol

Whether curve_chord_tol is set. Default: PK_LOGICAL_false

Note: Used by PK_TOPOL_render_line only .

curve_chord_tol

This is the most important value affecting the quality of the image. It gives an upper bound on the distance from each chord to the curve it is approximating. It also gives an upper bound on the maximum deviation in the image of approximated silhouettes from the true accurate silhouette. Silhouettes are approximated on complex geometry, including B-surfaces, offset surfaces and blends.

have_curve_chord_max

Whether curve_chord_max is set. Default: PK_LOGICAL_false

Note: Used by PK_GEOM_render only.

is_curve_chord_max

Whether curve_chord_max is set. Default: PK_LOGICAL_false

Note: Used by PK_TOPOL_render_line only.

curve_chord_max

This is an upper bound on the length of a chord used in the approximation of a curve.

have_curve_chord_ang

Whether curve_chord_ang is set. Default: PK_LOGICAL_false

Note: Used by PK_GEOM_render only.

is_curve_chord_ang

 

Whether curve_chord_ang is set. Default: PK_LOGICAL_false

Note: Used by PK_TOPOL_render_line only.

curve_chord_ang

This limits the angular error between a curve and a chord in its approximation. It is an upper bound on the sum of the two angles formed between the chord and the curve tangent at each chord end.

These options control the representation of curves as polylines, both as output through the GO and internally in the rendering functions. They also control the accuracy of silhouettes on general surfaces. If these options are not specified a default angular tolerance is used and a default chordal tolerance chosen if necessary. The defaults chosen by Parasolid are designed to optimise performance and memory usage for normal display purposes.

 

Note: The values of these tolerances, in particular the chordal tolerance, may significantly affect the performance of the rendering functions, particularly on parts containing complex geometry. An application may well decide to use more accurate rendering for hardcopy output than it would for dynamic display purposes.

Because the algorithms use the polyline approximations to generate curves internally, apparent inconsistencies in the image of size equal to or less than the chordal tolerance may appear. These are eradicated by reducing the chordal tolerance.

Both PK_GEOM_render and PK_TOPOL_render_line functions return a Parasolid Report of type PK_REPORT_record_type_3 with a status of PK_REPORT_3_render_curve_tols_c indicating the tolerance values used by Parasolid, whether they are supplied or calculated internally.

[back to top]


106.3 Rendering and picking

The picking function PK_BODY_pick_topols can be used to simulate face, edge and vertex picking from the viewing screen:

See Chapter 111, “Picking Topology”, for further information on selecting entities in this way.

 

[back to top]

<<< Rendering Option Settings Chapters Facet Mesh Generation >>>