Glyph Version 7.22.2 Mode Types DatabaseQuilter |
pw:: DatabaseQuilterThe database quilter mode type Derives FromNotesThis mode is used to create and modify quilts of database models. Unlike other modes, the state of the mode is saved when it is ended and subsequent modes will be created with the same state. This state is also saved in the application project file, so a new mode created after a file is loaded will have the same state as the last mode ended before saving the file. To create a mode of this type, use the pw::Application.begin command with the mode DatabaseQuilter specified, like this: set quilter [pw::Application begin DatabaseQuilter $models] Summary
BoundaryCurvatureAngle
This attribute is the curvature angle in degrees to use when detecting Curvature boundaries. TypeThis attribute is a float with the range [0, 180), where 0 means no curvature boundaries will be detected. DefaultThe default for this attribute is 15. BoundaryCurvatureRatio
This attribute is the ratio between the surface and curve curvature along a boundary to use when detecting Curvature boundaries. TypeThis attribute is a float with the range [0, infinity), where 0 means no Curvature boundaries will be detected. DefaultThe default for this attribute is 2.5. BoundaryHardAngle
This attribute is the angle between normals to use when detecting Convex and Concave manifold boundaries. TypeThis attribute is a float with the range [0, 180), where 0 means no Convex and Concave boundaries will be detected. DefaultThe default for this attribute is 45. addBoundaryFilter
This action adds a new boundary filter to control how quilting is applied to the matching boundaries. Parameters
ReturnsThis function returns the name of the newly created boundary filter. See AlsodeleteBoundaryFilter, getBoundaryFilterNames, setBoundaryFilterDefinition, and addBoundaryFilterDefinition. ExampleCode # $quilter is a DatabaseQuilter mode Output set filter(1) [$quilter addBoundaryFilter] deleteBoundaryFilter
This function deletes an existing boundary filter. Parameters
ReturnsThis action returns nothing. See AlsoaddBoundaryFilter, getBoundaryFilterNames, and setBoundaryFilterName. Example Code # $quilter is a DatabaseQuilter mode Output set filter(1) [$quilter addBoundaryFilter] getBoundaryFilterNames
This function returns a list of the names of the current boundary filters. ParametersNone. ReturnsThis function returns a list of string values with each value representing the name of a boundary filter. The names are in priority order with the highest priority boundary filter listed first. See AlsoaddBoundaryFilter and deleteBoundaryFilter. ExampleCode # $quilter is a DatabaseQuilter mode Output set filter(1) [$quilter addBoundaryFilter] setBoundaryFilterName
This action changes the name of an existing boundary filter. The new name should be unique. If the name collides with an existing boundary filter name, the new name will be updated to be unique. Parameters
ReturnsThis action returns the actual updated name as a string value. See AlsoaddBoundaryFilter and getBoundaryFilterNames. ExampleCode # $quilter is a DatabaseQuilter mode Output set filter(1) [$quilter addBoundaryFilter] setBoundaryFilterDefinition
This action specifies the patterns used to select which quilt boundaries will have the boundary conditions applied. Parameters
ReturnsThis action returns nothing. NotesFilter Entry: A boundary filter entry consists of the following parts: pattern A, pattern B, and a list of boundary classifications. Pattern A: This string can either be the name of a quilt or a pattern that can match multiple quilts. Wildcard patterns are specified with ‘*’, ‘?’, and ‘[‘ - ‘]’ pairs. A ‘*’ character matches any number (including zero) of characters. A ‘?’ character matches any single character. Brackets indicate a range of characters to match or exclude and has the following 4 available forms: “[abc]” matches one character given in the bracket, “[a-c]” matches one character from the range (inclusive) given in the bracket, “[!abc]” matches one character that is not in the bracket, and “[!a-c]” matches one character that is not in the range specified by the bracket. A backslash “\” can be used to escape any special meaning by a wildcard character. For example, “\?” will match a question mark while “?” will match any single character. Pattern B: This string follows the same syntax as ‘Pattern A’. If the B pattern is empty, then this filter entry will be applied to lamina boundaries on the quilts that match pattern A. If the B pattern is non-empty, then the filter entry will only be applied to manifold boundaries shared between quilts that match pattern A and quilts that match pattern B and are not excluded by the specified boundary classifications. If omitted, an empty string is assumed. Boundary Classifications: This list of 5 possible string values restricts the filter entry to boundaries that match the quilt patterns specified with Pattern A and Pattern B based on their classifications. The five classification options are: “All”, “None”, “Curvature”, “Convex”, and “Concave”. The “All” option indicates that all boundaries regardless of classification should be allowed. Note that “None” means boundaries that are not classified as either “Curvature”, “Convex”, or “Concave”. If the boundary classification list is not specified, “All” is assumed. See AlsoaddBoundaryFilterDefinition and getBoundaryFilterDefinition. ExampleCode # Each entry has the following meaning: Output bf-1 elements: getBoundaryFilterDefinition
This function returns the current definition for a boundary filter. Parameters
ReturnsThis action returns a list of boundary filter patterns. Each entry in the list will consist of 3 entries. The first entry will be “Pattern A” (see the Notes section of setBoundaryFilterDefinition). The second entry will be the “Pattern B” value, while the third entry will be the boundary classification specification. See AlsoaddBoundaryFilter and setBoundaryFilterDefinition. ExampleCode # $quilter is a DatabaseQuilter mode Output bf-1 elements: See AlsoExampleaddBoundaryFilterDefinition
This method adds a new entry to the end of a current boundary filter definition. Parameters
NoteWhile similar to setBoundaryFilterDefinition, this extends the existing filter and may remove earlier entries. This only occurs with explicit namings (no special pattern matching characters in the patterns) and only among entries after an entry that does use special pattern matching characters. For example, if a definition ends with the entry “{quilt-1 quilt-2 Curvature}” (additive entry) and this function adds “{!quilt-1 quilt-2 Curvature}” (subtractive entry), then the second entry nullifies the first entry, removing it from the list instead of adding to the list. Conversely, if a list ends with a subtractive entry and a matching additive entry is added, the subtractive entry will be removed from the list in addition to the additive entry being appended. ReturnsThis action returns nothing. See AlsoExampleCode # $quilter is a DatabaseQuilter mode Output bf-1 elements: getBoundaryFilterQuiltReassemble
This action gets the quilt reassemble mode or max bend angle associated with the boundary filter. Parameters
ReturnsA string with options < None | ForceSplit | ForceJoin > or an explicit float bend angle value in the range [0, 180]. See AlsosetBoundaryFilterQuiltReassemble ExampleCode # $quilter is a DatabaseQuilter mode Output Quilt bend angle: 0.0 setBoundaryFilterQuiltReassemble
This action specifies the quilt reassemble mode or bend angle for the boundary filter. Parameters
ReturnsThis action returns nothing. See Also<getBoundaryFilterQuiltBendAngle> ExampleCode # $quilter is a DatabaseQuilter mode Output Quilt bend angle: 0.0 getBoundaryFilterBoundaryReassemble
This action gets the boundary reassemble mode or max bend angle associated with the boundary filter. Parameters
ReturnsA string with options < None | ForceSplit | ForceJoin > or an explicit float bend angle value in the range [0, 180]. See AlsosetBoundaryFilterBoundaryReassemble ExampleCode # $quilter is a DatabaseQuilter mode Output Quilt bend angle: 0.0 setBoundaryFilterBoundaryReassemble
This action specifies the boundary reassemble mode or bend angle for the boundary filter. Parameters
ReturnsThis action returns nothing. See Also<getBoundaryFilterQuiltBendAngle> ExampleCode # $quilter is a DatabaseQuilter mode Output Quilt bend angle: 0.0 getBoundaryFilterGroups
This action returns a list of quilt boundaries associated with a boundary filter. Parameters
ReturnsThis action returns a list of quilt boundary groups, where each item of the list is a list of one or more quilt boundaries that are aliased. Each quilt boundary is specified as a two item list with the quilt as the first item and the boundary index as the second item. For example, if the third boundary of quilt A (::pw::Quilt_1) shares a boundary with the second boundary of quilt B (::pw::Quilt_2), the entry for this boundary will be {{::pw::Quilt_1 3} {::pw::Quilt_2 2}}. A lamina boundary would have just have a single boundary in the element, such as {{::pw::Quilt_1 4}}. See AlsosetBoundaryFilterPriority
This sets the priority of one or more existing boundary filters. Parameters
ReturnsThis action returns nothing. See AlsoExampleCode # $quilter is a DatabaseQuilter mode Output Filters by priority: assembleQuilts
This action joins and splits the quilts of the models of this mode. The current settings of the mode will control how the joining and splitting is carried out. ParametersThis action has no parameters. ReturnsThis action returns a list of pw::Quilt objects modified by the assembly. |
This attribute is the curvature angle in degrees to use when detecting Curvature boundaries.
$quilter get/setBoundaryCurvatureAngle angle
This attribute is the ratio between the surface and curve curvature along a boundary to use when detecting Curvature boundaries.
$quilter get/setBoundaryCurvatureRatio ratio
This attribute is the angle between normals to use when detecting Convex and Concave manifold boundaries.
$quilter get/setBoundaryHardAngle angle
This action adds a new boundary filter to control how quilting is applied to the matching boundaries.
$quilter addBoundaryFilter ?filter_name?
This function deletes an existing boundary filter.
$quilter deleteBoundaryFilter filter_name
This function returns a list of the names of the current boundary filters.
$quilter getBoundaryFilterNames
This action changes the name of an existing boundary filter.
$quilter setBoundaryFilterName old_name new_name
This action specifies the patterns used to select which quilt boundaries will have the boundary conditions applied.
$quilter setBoundaryFilterDefinition filter_name pattern_list
This function returns the current definition for a boundary filter.
$quilter getBoundaryFilterDefinition filter_name
This method adds a new entry to the end of a current boundary filter definition.
$quilter addBoundaryFilterDefinition filter_name pattern_list
This action gets the quilt reassemble mode or max bend angle associated with the boundary filter.
$quilter getBoundaryFilterQuiltReassemble filter_name
This action specifies the quilt reassemble mode or bend angle for the boundary filter.
$quilter setBoundaryFilterQuiltReassemble filter_name < mode | angle >
This action gets the boundary reassemble mode or max bend angle associated with the boundary filter.
$quilter getBoundaryFilterBoundaryReassemble filter_name
This action specifies the boundary reassemble mode or bend angle for the boundary filter.
$quilter setBoundaryFilterBoundaryReassemble filter_name < mode | angle >
This action returns a list of quilt boundaries associated with a boundary filter.
$quilter getBoundaryFilterGroups filter_name
This sets the priority of one or more existing boundary filters.
$quilter setBoundaryFilterPriority ordered_filter_names
This action joins and splits the quilts of the models of this mode.
$quilter assembleQuilts
This action begins a mode in the application.
pw::Application begin ?-mode_specific_flags? mode ?entities?