Interactive Collection
 
Functions Introduced:
Use the function ProCurvesCollect() to interactively create a collection of curves by invoking a chain collection user interface.
Figure 7. Chain collection User Interface
Use the function ProSurfacesCollect() to interactively create a collection of surfaces by invoking a surface sets dialog.
Figure 8. Surface Sets dialog box
For the functions ProCurvesCollect() and ProSurfacesCollect() the input arguments are as follows:
types—Specifies an array defining the permitted instruction types. The following instruction types are supported:
PRO_CHAINCOLLUI_ONE_BY_ONE—for creating "One by One" chain.
PRO_CHAINCOLLUI_TAN_CHAIN—for creating "Tangent" chain.
PRO_CHAINCOLLUI_CURVE_CHAIN—for creating "Curve" chain.
PRO_CHAINCOLLUI_BNDRY_CHAIN—for creating "Boundary Loop" chain.
PRO_CHAINCOLLUI_FROM_TO—for creating "From-To" chain.
PRO_CHAINCOLLUI_ALLOW_LENGTH_ADJUSTMENT—for allowing length adjustment in curves.
PRO_CHAINCOLLUI_ALLOW_ALL—for allowing all the supported instruction types.
PRO_CHAINCOLLUI_ALLOW_EXCLUDED—for excluding chain.
PRO_CHAINCOLLUI_ALLOW_APPENDED—for appending chain.
n_types—Specifies the size of the types array.
filter_func—Specifies the filter function. The filter function is called before each selection is accepted. If your application wishes to reject a certain selection, it can return an error status from this filter. You may pass NULL to skip the filter.
app_data—Specifies the application data that will be passed to filter_func. You may pass NULL when this is not required.
collection—Specifies the collection object where the results will be stored. This should be preallocated using ProCollectionAlloc() (for ProCurvesCollect()) and ProSrfcollectionAlloc() (for ProSurfacesCollect()) respectively. The collection properties and instructions will be stored in this handle after the call to the functions ProCurvesCollect() and ProSurfacesCollect(). Use the functions for programmatic access to curve and surface collections and to extract the required information.
The output arguments are as follows:
sel_list—Specifies a pointer to an array of ProSelection objects describing the current resulting curves and edges or surfaces resulting from the collection. You may pass NULL if you are not currently interested in the results of the collection.
n_sel—Specifies the number of entries in sel_list.
도움이 되셨나요?