<<< Facet Mesh Generation | Chapters | Tabular Output of Faceting >>> |
There is further information on this method of graphical output in Chapter 4, "Graphical Output", of the Parasolid Downward Interfaces Manual.
For information on the tabular output of facet geometry, see Chapter 56, "Tabular Output of Faceting".
The output of the facet mesh is controlled by the option structure PK_TOPOL_render_facet_o_t, which itself references two option structures:
The following sample C code shows how each part of the PK_TOPOL_render_facet_o_t options structure must be initialized to set up the default option settings, prior to calling PK_TOPOL_render_facet.
/* declaration and initialization */ PK_TOPOL_render_facet_o_t my_render_option_struct; PK_TOPOL_facet_mesh_o_m (my_render_option_struct.control); /* set default mesh options */ PK_TOPOL_facet_go_o_m (my_render_option_struct.go_option); /* set default GO options */ /* now set application specific mesh options */ my_render_option_struct.control.<field1> = <value1>; my_render_option_struct.control.<field2> = <value2>; /* and set application specific GO options */ my_render_option_struct.go_option.<field1> = <value1>; my_render_option_struct.go_option.<field2> = <value2>; /* ... now call PK_TOPOL_render_facet( ... ); */ |
PK_facet_go_normals_t controls whether facet normal data are calculated at facet vertices and output through GO. The possible settings are:
Value | Description |
---|---|
PK_facet_go_normals_no_c (default) |
|
PK_facet_go_parameters_t controls whether surface parameter data are calculated at facet vertices and output through GO. The possible settings are:
Value | Description |
---|---|
PK_facet_go_parameters_no_c (default) |
|
output surface parameters plus first derivative data at vertices |
|
output surface parameters plus first and second derivative data at vertices |
PK_facet_go_edges_t controls whether edge entity values are output through GO. These allow the application to identify which facet edges (fins) lie on the boundary of a facet mesh and to associate them with an originating edge entity.
Value | Description |
---|---|
PK_facet_go_edges_no_c (default) |
|
PK_facet_go_strips_t controls whether facets are output individually through GO or as facet strips. The latter are a repeating sequence of connected triangular facets which are output through GO in terms of shared coordinates
The value of
max_facet_sides
in the facet mesh options structure is ignored when facet strips are output (facets are always triangular).
Value | Description |
---|---|
PK_facet_go_strips_no_c (default) |
|
Output facet strips. Requires |
PK_facet_go_interleaved_t controls whether facets are output from the GO on a body by body basis (that is, all the faces from one body are output, then all the faces from the next body, and so on), or whether faces from the total list of bodies output are interleaved (so that faces from different bodies may be output consecutively). Interleaving helps reduce the amount of facet data that is stored prior to outputting. Parasolid always outputs facets from a single face together, whether interleaving is used or not.
Value | Description |
---|---|
PK_facet_go_interleaved_no_c (default) |
|
If interleaving is used, and you need to keep track of the body with which a given face is associated, then you should use its occurrence number. For more information about occurrence numbers, see "Occurrence numbers" in Chapter 55, "Faceting Output Via GO".
If interleaving is used and multi-threading is enabled, then:
<<< Facet Mesh Generation | Chapters | Tabular Output of Faceting >>> |