 |
Flick Function Descriptions |
|
Contents
[back to top]
D.1 Introduction
This appendix describes all the FLICK functions currently available in KID. The names of all FLICK functions, both support functions and KI functions, are reserved words and should not be overwritten.
[back to top]
D.1.1 Documentation conventions
-
basic data types - int, tag, double, vector, logical, char, string, address
-
( data ... ) - denotes a lisp list of type 'data'
-
single element - denotes optional arguments
-
< arguments . default > - denotes optional arguments with defaults
-
argument | argument - denotes alternative possible values
-
tokens should be quoted, e.g. 'tytofa
[back to top]
D.2 Support functions
alloc - KI support function to create workspace
Syntax:
|
( alloc int ) => address
|
Args:
|
count
|
Returns:
|
workspace
|
Notes:
|
The count is the number of integers the workspace will store. The workspace returned is initialized to zeros.
|
allow_ifails - KI support function to control ifail error handling
Syntax:
|
( allow_ifails ( < string > token ... ) expression )
|
Args:
|
( KI_name valid_ifail ... ) lisp_programme
|
Returns:
|
expression_value
|
Initially the only valid ifail is zero ( KI_no_errors ), any other ifail returned will generate a lisp error. The set of valid ifails can be extended by including those which are to be allowed in the valid ifail specification either for all KI calls or if a KI function name is given as the first element of the valid ifail list only for the named KI function. Calls to allow_ifails can be nested. Once an ifail has been made valid it cannot subsequently be disallowed.
To allow all ifails the ( pseudo ) token KI_all_ifails is provided.
To indicate all but the specified ifails use a negative sign ( e.g. - KI_not_a_tag ).
Note: Any KI call which returns an ifail will return all its other arguments as nulls and zeros.
|
Examples
( allow_ifails ( KI_missing_geom ) ( IDSOFF 99 ))
--- call IDSOFF but don´t produce an error if the face lacks geometry
( allow_ifails ( STOMOD KI_modeller_not_started ) ( STOMOD ))
--- stop the modeller but don´t complain if it isn´t started
( allow_ifails ( KI_roll_is_off ) ( my_strict_programme ))
--- allow KI_roll_is_off errors, but no others
( allow_ifails ( - KI_corrupt_file ) ( my_liberal_programme ))
--- allow all errors except KI_corrupt_file
( allow_ifails ( KI_all_ifails ) ( my_careless_programme ))
--- don´t complain about anything
For greater flexibility of use the valid ifail specification may be a list of valid ifail specifications, as in the following example:
( allow_ifails ( ( IDSOFF KI_missing_geom KI_not_a_tag )
( IDCOEN KI_missing_geom KI_not_a_tag )
( setq v1 ( IDSOFF 99 ) )
( setq v2 (IDCOEN 100 ) ) )
This function does not evaluate its arguments, which is more convenient for normal use but means that it is difficult to pass arguments to it inside another function. The support function valid_ifails does evaluate its arguments and is intended for use inside user functions rather than directly.
empty - KI support function to turn an array into a lisp list
Syntax:
|
( empty int type address ) => ( values ... )
|
Args:
|
count data_type array
|
Returns:
|
( data ... )
|
Example:
|
( empty 6 tag @12345 )
|
|
Notes:
|
This function unpacks arrays and generates lisp lists. The supported types are: logical, char, int, double, string, vector, tag.
|
If 0 values are requested the returned list is always nil. The inverse function to 'empty' is 'fill'.
|
enlist - KI support function to turn the lisp lists into KI lists
Syntax:
|
( enlist values <token> ) => tag
|
Args:
|
data < type . TYLITG >
|
Returns:
|
KI_list
|
KI calls:
|
CRLIST, PTTGLI, PTINLI, PTRLLI
|
Example:
|
( enlist '( 3.0 4 5.3 ) 'TYLIRL )
( enlist '( 7 8 9 ) ) ( enlist 7 )
|
|
Notes:
|
This function turns the given values into a sensible KI list.
The list type is an optional argument which defaults to TYLITG.
The empty list generates the null tag (0). Atomic data is treated as a list of one element.
Tag lists with a single element are not converted (since the KI will accept these as-is).
The inverse function to 'enlist' is 'unlist'.
|
fill - KI support function to turn lists into arrays
Syntax:
|
( fill data_type '( values ... ) ) => address
|
Args:
|
data_type data_list
|
Returns:
|
array_address
|
Example:
|
( fill vector '( ( 0 0 0 ) ( 0 0 1 ) ) )
|
|
Notes:
|
The array created may be passed to the KI, its value is an address.
The possible data types are: logical, char, int, double, string, vector, tag. When given an empty list the function produces a valid pointer to a zero word. This is because the KI will not accept a null pointer (@0) as a valid argument.
The inverse function to 'fill' is 'empty'.
|
ifails - KI support function to map ifails to ints
Syntax:
|
( ifails int ) => string
( ifails string ) => int
|
Args:
|
value
|
Returns:
|
corresponding_value
|
Example:
|
( ifails 'KI_run_time_error )
( ifails 947 ) ( ifails '( 947 948 ))
|
|
Notes:
|
When applied to integers this returns the equivalent symbolic ifail.
When applied to symbols it returns the equivalent integer.
When applied to lists it acts on each element.
When applied to invalid integers it gives the value UNKNOWN_IFAIL. When applied to invalid symbols it gives the value -1, and in this case the KI itself will raise an error.
|
timing - controls output of timing data for KI function calls
Syntax:
|
( timing <0|1|2|t|nil> ) => int
|
Args:
|
( timing <level> )
|
Returns:
|
current_level
|
token - KI support function to map tokens to ints
Syntax:
|
( token int ) => string
( token string ) => int
|
Args:
|
value
|
Returns:
|
corresponding_value
|
Example:
|
( token 'RTLOSX )
( token 15301 ) ( token '( TYTOFA TYGESU ))
|
|
Notes:
|
When applied to integers this returns the equivalent symbolic token.
When applied to symbols it returns the equivalent integer.
When applied to lists it acts on each element.
When applied to invalid integers it gives the value UNKNOWN_TOKEN. When applied to invalid symbols it gives the value -1, and in this case the KI itself will raise an error.
|
unlist - KI support function to turn KI lists into lisp lists
Syntax:
|
( unlist tag <int> <token> )
|
Args:
|
list <length . nil> <list_type . TYLITG>
|
Returns:
|
( data ...)
|
KI calls:
|
GTRLLI, GTTGLI, GTINLI, COLIST, DELENT
|
Example:
|
( unlist 77 5 'TYLIRL )
( unlist 88 nil 'TYLIIN ) ( unlist 8 )
|
|
Notes:
|
The list length and list type are optional arguments. If the length is supplied as nil the whole list is returned. The default length is nil, the default list type is TYLITG. The null tag (0) returns the nil list regardless. 'unlist' deletes the list after unpacking it using DELENT. The inverse function to 'unlist' is 'enlist'.
|
valid_ifails - suppress lisp error generation from Parasolid errors
Syntax:
|
( valid_ifails list expression )
|
Args:
|
ifail_spec code_to_evaluate
|
Returns:
|
result of evaluating expression
|
|
Notes:
|
ifail spec='(<KI_function_name><->KI_ifail_name<->KI_ifail_name ...) or '(ifail_spec ifail_spec ...)
|
The presence of KI_ifail_name in the list suppresses errors from that ifail, unless it is preceded by '-' when all ifails but that ifail will be suppressed. The presence of a KI_function_name at the head of the list causes the rest of the list to be applied to calls to that function only.
|
The special ifail code KI_all_ifails is provide to suppress or unsuppress all ifails.
|
This function is primarily intended for use inside other functions. The fact that it evaluates its arguments means that for direct use they must normally be quoted. The function allow_ifails does not evaluate its arguments and is the function which should normally be used directly
|
[back to top]
D.3 KI Functions
ADPAPE - KI function to add parameter (line) to B-curve or B-surface
Syntax
|
( ADPAPE tag double int ) => ( ifail )
|
Args
|
entity parameter uorv
|
Returns
|
( ifail )
|
|
Syntax
|
( adpape tag double token ) => t
|
Args
|
entity parameter uorv
|
Returns
|
t
|
Example
|
( adpape 20 0.3 'PAPRUP )
|
|
Note
|
The geometry must not be attached to any topology.
|
ADVXED - KI function to add a new vertex to a given edge
Syntax
|
( ADVXED tag vector ) => ( tag tag ifail )
|
Args
|
edge point
|
Returns
|
( newvrx newedg ifail )
|
|
Syntax
|
( advxed tag vector ) => ( tag tag )
|
Args
|
edge point
|
Returns
|
( newvrx newedg )
|
|
Example
|
( advxed (e1 tag) '(2.5 0 5 ))
|
APPTRA - KI function to apply a transformation
Syntax
|
( APPTRA tag tag ) => ( ifail )
|
Args
|
entity transf
|
Returns
|
( ifail )
|
|
Syntax
|
( apptra tag tag ) => tag
|
Args
|
entity transf
|
Returns
|
entity
|
Example
|
( apptra ( b0 tag ) 425 )
( apptra ( list ( b0 tag ) ( c0 tag )) 425 )
|
|
Note
|
Mirroring and scaling transformations cannot be applied to assemblies or instances.
|
ATGETO - KI function to attach geometry to topology
Syntax
|
( ATGETO int address address int address ) => ( ifail )
|
Args
|
ntopol topology senses ngeom geometry
|
Returns
|
( ifail )
|
|
Syntax
|
( atgeto ( tag ... ) <( logical ... )> ( tag ... ) ) => t
|
Args
|
( topology ... ) <( senses ... )> ( geometry ... )
|
Returns
|
t
|
ATTGEO - KI function to attach geometry to topology
Syntax
|
( ATTGEO tag tag logical ) => ( ifail )
|
Args
|
topol geom sense
|
Returns
|
( ifail )
|
|
Syntax
|
( attgeo tag tag logical ) => t
|
Args
|
topol geom sense
|
Returns
|
t
|
BLECHK - KI function to check the local validity of unfixed blends
Syntax
|
( BLECHK tag int ) => ( int tag tag tag ifail )
|
Args
|
edge level
|
Returns
|
( n_invalid code_list bad_edge_list tag_list ifail )
|
|
Syntax
|
( blechk ( tag ... ) int ) => ( ( token ... ) ( tag ... ) ( tag ... ) )
|
Args
|
'( edge ... ) < level . 1 >
|
Returns
|
( ( error edge topol ) ... )
|
Example
|
( blechk '( 22 34 45 ) 2 )
( blechk ( list ( e1 tag ) ( e2 tag) ( e3 tag)) 2 )
|
BLECRB - KI function to define a rolling ball blend or chamfer
Syntax
|
( BLECRB tag int double double int address address ) => ( tag int ifail )
|
Args
|
edge type range1 range2 nprops prop_array tag_array
|
Returns
|
( affected_edges n_edges ifail )
|
|
Syntax
|
( blecrb tag int ( double <double> ) ( ( token value ) ... ))
|
Args
|
'( edge ... ) type ( range1 <range2> ) ( property value ) ...
|
Returns
|
( affected_edge ... )
|
Example
|
( blecrb '( 20 22 24 ) 1 1.75 '( ( BLECCL 42 ) ( BLECPR ) ) )
( blecrb ( list ( e1 tag ) ( e2 tag ) ( e3 tag ) 1 1.75 '(( BLECCL 42 ) ( BLECPR )))
|
BLECVR - KI function to define a variable radius blend
Syntax
|
( BLECVR tag int address address int address address ) => ( tag int ifail )
|
Args
|
edge n_points vector_arr real_arr n_props prop_arr tag_arr
|
Returns
|
( affected_edges n_edges ifail )
|
|
Syntax
|
( blecvr tag ( vector ... ) ( (double <double>) ... ) ( ( token value ) ... ))
|
Args
|
edge '( position ... ) '( ( lradius rradius ) ... ) '( ( property value ) ... )
|
Returns
|
( affected_edge ... )
|
|
If only one radius is supplied at each point for both left and right sides this need not be put into a sublist.
|
Example
|
( blecvr '( 20 ) '( ( 0 0 1 ) ( 0 0 5 )) '( 1.75 3.5 )
'( ( BLECTL 0.001 ) ( BLECLI ) ( BLECPR )))
|
BLEENQ - KI function to enquire blend parameters
Syntax
|
( BLEENQ tag ) => ( tag tag int double double int tag tag ifail )
|
Args
|
edge
|
Returns
|
( face1 face2 type_code range1 range2 n_props props values ifail )
|
|
Syntax
|
( bleenq tag ) => ( tag tag ( int ... ) ( real ... ))
|
Args
|
edge
|
Returns
|
( face1 face2 type range1 range2 ( property value ... ) ... )
|
Example
|
( bleenq 56 )
|
BLEFIX - KI function to fix blends in a body
Syntax
|
( BLEFIX tag ) => ( int tag tag int tag tag ifail )
|
Args
|
body
|
Returns
|
( n_blend_faces blend_faces underlying_faces error edge topol ifail )
|
|
Syntax
|
( blefix tag ) => ( ( tag ... ) ( tag ... ) )
|
Args
|
body
|
Returns
|
( error edge topol ( blend_face ( underlying_face ... )) ... )
|
Example
|
( blefix ( b0 tag ))
|
|
Note
|
If no errors are found then KI_FALSE will be returned.
|
BLEFXF - KI function to create a blend between specified faces
Syntax
|
( BLEFXF tag tag logical logical int address address ) => ( int tag int tag tag ifail )
|
Args
|
left_wall right_wall left_rev right_rev nopts opts opt_data
|
Returns
|
( status status_data nblends blends underlying_data ifail )
|
|
Syntax
|
( blefxf tag tag logical logical <'(( token tag|double ... ) ... )>) =>
( token ( <tag ...> ) ( tag ( tag ... ) ) <...> )
|
Args
|
'( left_face ... ) '( right_face ... ) left_rev right_rev <'(( option data ) ...)>
|
Returns
|
( status ( <data ...> ) ( blend ( underlying ... ) ) <...> )
|
Example
|
( blefxf 80 75 t t '( FXFTCB 0.5 ))
|
BLEREM - KI function to remove blend attributes
Syntax
|
( BLEREM tag ) => ( ifail )
|
Args
|
edges
|
Returns
|
( ifail )
|
|
Syntax
|
( blerem ( tag ... )) => t
|
Args
|
'( edge ... )
|
Returns
|
t
|
Example
|
( blerem '( 20 22 24 ))
|
BLNAFF - KI function to find edges and faces affected by blend
Syntax
|
( BLNAFF tag ) => ( tag int tag int ifail )
|
Args
|
edge
|
Returns
|
( edge_list length face_list length ifail )
|
|
Syntax
|
( blnaff tag ) => (( tag ... ) ( tag ... ))
|
Args
|
edge
|
Returns
|
(( edge ... ) ( face ... ))
|
BLNDVX - KI function to blend vertices on sheets and wires
Syntax
|
( BLNDVX tag double ) => ( tag tag ifail )
|
Args
|
vertices radius
|
Returns
|
( new_edges new_vertices ifail )
|
|
Syntax
|
( blndvx tag double ) => ( ( tag ... ) ( tag ... ) )
|
Args
|
vertices radius
|
Returns
|
( ( new_edge ... ) ( new_vertex ... ) )
|
Example
|
( blndvx 19 3.2 )
( blndvx '( 19 21 23 ) 1.4 )
|
BOPBYS - KI function to do a global or local boolean operation on bodies
Syntax
|
( BOPBYS tag tag int address address) => (tag int ifail)
|
Args
|
targets tools n_opts options_arr data_arr
|
Returns
|
( bodies n_body ifail )
|
|
Syntax
|
( bopbys ( tag ... ) ( tag ... ) ( ( token <tag> ...) ... )) => ( tag ... )
|
Args
|
targets tools '( ( option <topol> ... ) ... )
|
Returns
|
( body ... )
|
Example
|
( bopbys 20 '( 22 24 26 ) '((BOOPSU) (BOOPME )))
( bopbys ( b0 tag ) ( list ( b1 tag ) ( b2 tag ) ( b3 tag )) '((BOOPSU) (BOOPME)))
|
CCLIST - KI function to concatenate two lists, tail onto head
Syntax
|
( CCLIST tag tag ) => ( ifail )
|
Args
|
head tail
|
Returns
|
( ifail )
|
|
Syntax
|
( cclist tag tag ) => tag
|
Args
|
head tail
|
Returns
|
head
|
CHCKEN - KI function to check an entity
Syntax
|
( CHCKEN tag int int address ) => ( tag tag tag int ifail )
|
Args
|
entity max_faults n_opts opt_arr
|
Returns
|
( list_of_tokens list_of_tags list_of_tags int ifail )
|
|
Syntax
|
( chcken tag <int> ( token ... )) => (( token <tag> <vector> ) ... )
|
Args
|
entity <n_errors> '( <options> ... )
|
Returns
|
(( error <entity> <position> ) ... )
|
|
Note
|
If no errors are found then KI_no_errors will be returned.
|
CLABYS - KI function to detect clashing bodies
Syntax
|
( CLABYS tag tag tag tag logical ) => ( tag tag int ifail )
|
Args
|
body transform body transform full
|
Returns
|
( face_list face_list n_clashes ifail )
|
|
Syntax
|
( clabys tag tag tag tag logical ) => (( tag ... ) ( tag ... ))
|
Args
|
body transform body transform full
|
Returns
|
(( face ... ) ( face ... ))
|
Example
|
( clabys 125 nil 145 nil t )
|
|
Note
|
Whereas CLABYS may return two lists of faces or just two faces, clabys always returns two (LISP) lists of faces. If the bodies do not clash the function returns nil.
|
CLENEN - KI function to find the closest point between two entities/entity lists
Syntax
|
( CLENEN tag tag int address address ) =>
( double tag tag vector vector address address tag int tag int ifail )
|
Args
|
entity_list entity_list nopts optlist optdata
|
Returns
|
( distance entity_list entity_list point1 point2 params1 params2 prop1 nprop1 prop2 nprop2 ifail )
|
|
Syntax
|
( clenen tag tag <( ( token double ... ) ) ... )> ) =>
( double ( tag ... ) ( tag ... ) vector vector ( double double ) ( double double )
( token ... ) ( token ... ) )
|
Args
|
'( entity ... ) '( entity ... ) < optlist >
|
Returns
|
( distance ( entity sub_topol ) ( entity sub_topol ) point1 point2
( param1 param1 ) ( param2 param2 ) ( token ... ) ( token ... ) )
|
Example
|
( clenen 21 79 )
( clenen '( 21 32 ) '( 34 45 ) '( ( CLOPP1 2.0 2.0 ) ) )
|
|
Note
|
The parametrization will depend upon the type of sub_topology but, with clenen, it will always be decoded as two doubles. The KI manual should be consulted to determine which parameters are meaningful for given sub_topologies.
|
CLENEX - KI function to find the closest point between entities
Syntax
|
( CLENEX tag tag int address address ) =>
( int tag tag tag tag tag tag tag tag tag tag tag ifail )
|
Args
|
entity1_list entity2_list nopts optlist optdata
|
Returns
|
( num_minima min_distances topol1_lists topol2_lists point1_list point2_list parms1_lists parms2_lists prop1_lists nprop1_list prop2_lists nprop2_list ifail )
|
|
Syntax
|
( clenex tag tag <( ( token double ... ) ... )> ) =>
( double ... ( ( tag ... ) ... ) ( ( tag ... ) ... ) ( vector ... ) ( vector ... ) ( ( double double ) ... ) ( ( double double ) ... ) ( ( <token> ... ) ... ) ( ( <token> ... ) ... ) )
|
Args
|
'( entity ... ) '( entity ... ) < optlist >
|
Returns
|
( ( distance ... ) ( ( entity1 sub_topol ) ... ) ( ( entity2 sub_topol ) ... ) ( point1 ... ) ( point2 ... ) ( ( param11 param12 ) ... ) ( ( param21 param22 ) ... ) ( ( <token1> ... ) ... ) ( ( token2 ... ) ... ) )
|
Example
|
( clenex 21 79 )
( clenex 21 79 '( CLOPFA ) )
( clenex '( 21 32 ) '( 34 45 ) '( ( CLOPP1 2.0 2.0 ) ) )
|
|
Note
|
The parametrization will depend upon the type of sub_topology but, with clenex, it will always be decoded as two doubles. The KI manual should be consulted to determine which parameters are meaningful for given sub_topologies.
|
CLPTEN - KI function to find the closest point on an entity to a given point
Syntax
|
( CLPTEN vector tag int address address ) =>
( double tag vector address tag int ifail )
|
Args
|
point entity_list nopts opt_list opt_data
|
Returns
|
( min_dist topol_list soln_pt parms props nprops ifail )
|
|
Syntax
|
( clpten vector tag <( ( token ( double ... ) ) ... )> ) =>
( double ( tag ... ) vector ( <double> <double> ) ( <token> ... ) )
|
Args
|
point entity_list < optlist >
|
Returns
|
( min_dist topol_list soln_pt parms prop_list )
|
Example
|
( clpten '( 3 3 8 ) ( b0 tag ) '((CLOPUP 4) (CLOPTL 0.1)))
|
CLPTEX - KI function to find the closest point(s) on an entity to a given point
Syntax
|
( CLPTEX vector tag int address address ) => ( int tag tag tag tag tag tag ifail )
|
Args
|
point entity_list nopts opt_list opt_data
|
Returns
|
( num_minima min_distance topol_lists soln_points parms_lists prop_lists nprops_list ifail )
|
|
Syntax
|
( clptex vector tag <( ( token ( double ... ) ... )> ) =>
( ( double ... ) ( ( tag ... ) ... ) ( vector ... ) ( ( double double ) ... ) ( ( <token> ... ) ... ) )
|
Args
|
point entity_list < optlist >
|
Returns
|
( min_distances topol_lists soln_points parms_lists prop_lists )
|
Example
|
( clptex '( 3 3 8 ) ( b0 tag ) '((CLOPUP 4) (CLOPTL 0.1)))
|
CLPTFA - KI function to find the closest point on a face to a given point
Syntax
|
( CLPTFA vector tag int address address ) => ( vector address tag logical ifail )
|
Args
|
point face nopts optlist optdata
|
Returns
|
( fpoint params topol ortho ifail )
|
|
Syntax
|
( clptfa vector tag <( ( token double ... ) ... )> ) =>
( vector ( double double ) tag logical )
|
Args
|
point face < optlist >
|
Returns
|
( fpoint svec topol ortho )
|
Example
|
( clptfa '( 2 2 2 ) ( f0 tag ) )
( clptfa '( 2 2 2 ) ( f0 tag ) '( CLOPPR 2.0 2.0 ) )
|
COFEAT - KI function to count the entities in a feature
Syntax
|
( COFEAT tag ) => ( int ifail )
|
Args
|
feature
|
Returns
|
( n_items ifail )
|
|
Syntax
|
( cofeat tag ) => int
|
Args
|
feature
|
Returns
|
n_items
|
COLIST - KI function to count the items in a list
Syntax
|
( COLIST tag ) => ( int ifail )
|
Args
|
list
|
Returns
|
( n_items ifail )
|
|
Syntax
|
( colist tag ) => int
|
Args
|
list
|
Returns
|
n_items
|
COMENT - KI function to comment the journal file
Syntax
|
( COMENT int string ) => ( ifail )
|
Args
|
nchars comment
|
Returns
|
( ifail )
|
|
Syntax
|
( coment string ) => t
|
Args
|
comment
|
Returns
|
t
|
Example
|
( coment "end of test" )
|
COPYEN - KI function to copy an entity
Syntax
|
( COPYEN tag ) => ( tag ifail )
|
Args
|
entity
|
Returns
|
( new_entity ifail )
|
|
Syntax
|
( copyen tag ) => tag
|
Args
|
entity
|
Returns
|
new_entity
|
CRATDF - KI function to create a new attribute type definition
Syntax
|
( CRATDF int string int address address ) => ( tag ifail )
|
Args
|
namlen name nopts opt_array opt_data
|
Returns
|
( att_type ifail )
|
|
Syntax
|
( cratdf string token '( token ... ) <'( token ... )> ) => tag
|
Args
|
name class owners <fields>
|
Returns
|
att_type
|
Example
|
(cratdf 'Mass 'RQAC02 '(TYTOAS TYTOIN TYTOBY))
|
CRBSPC - KI function to create a B-curve from B-spline data
Syntax
|
( CRBSPC int int int address address int address ) => ( tag ifail )
|
Args
|
dim order ncontrol controls knots nprops properties
|
Returns
|
( B-curve ifail )
|
|
Syntax
|
( crbspc int int '( real ... ) '( real ... ) '( token )) => tag
|
Args
|
dim order '( control... ) '( knot ... ) '( property )
|
Returns
|
B-curve
|
Example
|
( crbspc 3 4 '((0 0 0) (0 0 1) (0 1 2)) '( 0 1 1.5 3 ) '(PAPRPE))
|
|
Note
|
The list of control points is flattened before use, so any embedded list or vector bracketing may be used.
|
CRBSPS - KI function to create a B-surface from B-spline data
Syntax
|
( CRBSPS int int int int int address address address int address ) => ( tag ifail )
|
Args
|
dim uord vord ncol nrow controls uknots vknots nprops props
|
Returns
|
( B-surface ifail )
|
|
Syntax
|
( crbsps int int int int int '(( double ... ) ... ) '( double ... ) '( double ... )
'( token ... )) => tag
|
Args
|
dim uord vord ncol nrow '( control ...)'( uknot ... ) '( vknot ...) '( property ... )
|
Returns
|
B-surface
|
Example
|
( crbsps 3 3 3 6 6 '(( 0 0 0 ) ( 0 0 1 ) ...... ) '( 0 0.2 0.5 0.8 1 1.2 1.5 1.8 2 ) '( 0 0.2 0.5 0.8 1 1.2 1.5 1.8 2 ) nil )
|
|
Note
|
The controls points are flattened before use and so any embedding of brackets may be used.
|
CRBXSO - KI function to create a box solid (cuboid)
Syntax
|
( CRBXSO vector vector double double double ) => ( tag ifail )
|
Args
|
centre axis width length height
|
Returns
|
( body ifail )
|
|
Syntax
|
( crbxso vector vector double double double ) => tag
|
Args
|
centre axis width length height
|
Returns
|
body
|
Example
|
( crbxso '( 0 0 0 ) '( 0 0 1) 5 5 5 )
|
CRBYGE - KI function to create a body from geometry
Syntax
|
( CRBYGE tag int address address ) => ( tag ifail )
|
Args
|
geometry nopts opt_list opt_data
|
Returns
|
( wire_or_sheet ifail )
|
|
Syntax
|
( crbyge tag <'( ( token double double ) <...> )> ) => tag
|
Args
|
geometry <'( ( option start end ) <( option start end )> ) )>
|
Returns
|
wire_or_sheet
|
Example
|
( crbyge 17 )
( crbyge 17 '( CBOPUR 0.0 0.1 ) )
( crbyge 17 '( ( CBOPUR 0.0 1.0 ) ( CBOPVR 0.0 3.0 ) ) )
|
CRCAPO - KI function to create a Cartesian point
Syntax
|
( CRCAPO double double double ) => ( tag ifail )
|
Args
|
x y z
|
Returns
|
( point ifail )
|
|
Syntax
|
( crcapo vector ) => tag
|
Args
|
coords
|
Returns
|
point
|
CRCICU - KI function to create a circular curve
Syntax
|
( CRCICU vector vector double ) => ( tag ifail )
|
Args
|
centre axis radius
|
Returns
|
( circle ifail )
|
|
Syntax
|
( crcicu vector vector double ) => tag
|
Args
|
centre axis radius
|
Returns
|
circle
|
Example
|
( crcicu '( 0 0 0 ) '( 0 1 0 ) 0.5 )
|
CRCMPC - KI function to join B-curves into a single curve
Syntax
|
( CRCMPC int address ) => ( tag ifail )
|
Args
|
ncurves curve_array
|
Returns
|
( B-curve ifail )
|
|
Syntax
|
( crcmpc '( tag ... )) => tag
|
Args
|
'( B-curve ... )
|
Returns
|
B-curve
|
CRCOSO - KI function to create a conical solid
Syntax
|
( CRCOSO vector vector double double double ) => ( tag ifail )
|
Args
|
centre axis base_rad top_rad height
|
Returns
|
( cone ifail )
|
|
Syntax
|
( crcoso vector vector double double double ) => tag
|
Args
|
centre axis base_rad top_rad height
|
Returns
|
cone
|
CRCOSU - KI routine to create a conical surface
Syntax
|
( CRCOSU vector vector double double ) => (tag ifail)
|
Args
|
position axis_direction radius_at_position half-angle
|
Returns
|
( cone ifail )
|
|
Syntax
|
( crcosu vector vector double double ) => tag
|
Args
|
position axis_direction radius_at_position half-angle
|
Returns
|
cone
|
CRCPCU - KI function to create a constant parameter line curve on a surface
Syntax
|
( CRCPCU tag int double ) => ( tag ifail )
|
Args
|
surface u_or_v param
|
Returns
|
( curve ifail )
|
|
Syntax
|
( crcpcu tag token param ) => tag
|
Args
|
surface u_or_v param
|
Returns
|
curve
|
Example
|
( crcpcu 17 'PAPRUP 0.1 )
|
CRCUPC - KI function to create a B-curve from a general curve
Syntax
|
( CRCUPC tag address ) => ( tag int ifail )
|
Args
|
curve bounds_array
|
Returns
|
( B-curve nseg ifail )
|
|
Syntax
|
( crcupc tag vector vector ) => ( tag int )
|
Args
|
curve start end
|
Returns
|
( B-curve nseg )
|
CRCYSO - KI function to create cylindrical solid
Syntax
|
( CRCYSO vector vector double double ) => ( tag ifail )
|
Args
|
centre axis radius height
|
Returns
|
( body ifail )
|
|
Syntax
|
( crcyso vector vector double double ) => tag
|
Args
|
centre axis radius height
|
Returns
|
body
|
CRCYSU - KI function to create cylindrical surface
Syntax
|
( CRCYSU vector vector double ) => ( tag ifail )
|
Args
|
position axis radius
|
Returns
|
( surface ifail )
|
|
Syntax
|
( crcysu vector vector double ) => tag
|
Args
|
position axis radius
|
Returns
|
surface
|
CREASS - KI function to create assembly
Syntax
|
( CREASS int ) => ( tag ifail )
|
Args
|
type
|
Returns
|
( assembly ifail )
|
|
Syntax
|
( creass ) => tag
|
Args
|
-none-
|
Returns
|
assembly
|
|
Note
|
There is only one type of assembly and this is defaulted in creass.
|
CREATT - KI routine to create an attribute
Syntax
|
( CREATT tag tag int address int address int address int string ) => ( ifail )
|
Args
|
owners att_type nint int_array nreal real_array nstring int_array nchars string
|
Returns
|
( ifail )
|
|
Syntax
|
( creatt '( tag ... ) tag '( int ... ) '( double ... ) '( string ... ) ) => t
|
Args
|
owners att_type int_list double_list string_list
|
Returns
|
t
|
Example
|
( creatt 17 133 nil '( 1.0 ) '( density ) )
( creatt '( 17 23 ) 133 '( 1 1 1 ) nil nil )
|
CREFEA - KI function to create a feature
Syntax
|
( CREFEA int tag ) => ( tag ifail )
|
Args
|
type owner
|
Returns
|
( feature ifail )
|
|
Syntax
|
( crefea token tag ) => tag
|
Args
|
type owner
|
Returns
|
feature
|
CREINS - KI function to create an instance of a part within an assembly
Syntax
|
( CREINS tag tag tag int ) => ( tag ifail )
|
Args
|
assembly part transform type
|
Returns
|
( instance ifail )
|
|
Syntax
|
( creins tag tag <tag> ) => tag
|
Args
|
assembly part <transform>
|
Returns
|
instance
|
Example
|
( creins 99 7 )
|
|
Note
|
If a transform is not supplied it defaults to the null tag (0) which is interpreted as the identity transform. Also note that there is only one type of instance (TYINPS) and this is always used by creins.
|
CRELCU - KI function to create an elliptic curve
Syntax
|
( CRELCU vector vector double vector double ) => ( tag ifail )
|
Args
|
centre axis major_radius major_axis minor_radius
|
Returns
|
( ellipse ifail )
|
|
Syntax
|
( crelcu vector vector double vector double ) => tag
|
Args
|
centre axis major_radius major_axis minor_radius
|
Returns
|
ellipse
|
CREQSC - KI function to create an equal scaling transformation
Syntax
|
( CREQSC double vector ) => ( tag ifail )
|
Args
|
scale centre
|
Returns
|
( transform ifail )
|
|
Syntax
|
( creqsc double vector ) => tag
|
Args
|
scale centre
|
Returns
|
transform
|
CREREF - KI function to create a reflection transform
Syntax
|
( CREREF vector vector ) => ( tag ifail )
|
Args
|
position normal
|
Returns
|
( transform ifail )
|
|
Syntax
|
( creref vector vector ) => tag
|
Args
|
position normal
|
Returns
|
transform
|
CREROT - KI function to create a rotation transformation
Syntax
|
( CREROT vector vector double ) => ( tag ifail )
|
Args
|
position axis angle
|
Returns
|
( transform ifail )
|
|
Syntax
|
( crerot vector vector double ) => tag
|
Args
|
position axis angle
|
Returns
|
transform
|
CRETFM - KI function to create a general transformation from a given matrix
Syntax
|
( CRETFM address ) => ( tag ifail )
|
Args
|
coefficient_array
|
Returns
|
( transform ifail )
|
|
Syntax
|
( cretfm '( double ... )) => tag
|
Args
|
'( transform_coefficients ... )
|
Returns
|
transform
|
|
Note
|
16 coefficients must be supplied to define the transform.
|
CRETRA - KI function to create a translation transformation
Syntax
|
( CRETRA vector double ) => ( tag ifail )
|
Args
|
direction distance
|
Returns
|
( transformation ifail )
|
|
Syntax
|
( cretra vector double ) => tag
|
Args
|
direction distance
|
Returns
|
transform
|
Example
|
( cretra '( 0 0 0 ) 2 )
|
CREXSU - KI function to create an extruded surface
Syntax
|
( CREXSU tag vector logical ) => ( tag ifail )
|
Args
|
curve path simplify
|
Returns
|
( surface ifail )
|
|
Syntax
|
( crexsu tag vector <logical> ) => tag
|
Args
|
curve path <simplify . nil>
|
Returns
|
surface
|
CRFASU - KI function to create a surface to fit and attach to face
Syntax
|
( CRFASU tag ) => ( int tag int ifail )
|
Args
|
face
|
Returns
|
( sf_type surface body_state ifail )
|
|
Syntax
|
( crfasu tag ) => ( token tag token )
|
Args
|
face
|
Returns
|
( sf_type surface body_state )
|
CRFGCU - KI function to create a foreign geometry curve
Syntax
|
( CRFGCU int string int int address int address ) => ( tag ifail )
|
Args
|
keylen key nspace nints ivals nreals rvals
|
Returns
|
( curve ifail )
|
|
Syntax
|
( crfgcu string <int> <'( int ... )> <'( double ... )> => tag
|
Args
|
key <nspace> <'( ival ... )> <'( rval ... )>
|
Returns
|
curve
|
Example
|
( crfgcu "SDL/helix" )
( crfgcu "SDL/sine" 1 () '( 1.0 2.0 ) )
|
CRFGSU - KI function to create a foreign geometry surface
Syntax
|
( CRFGSU int string int int address int address ) => ( tag ifail )
|
Args
|
keylen key nspace nints ivals nreals rvals
|
Returns
|
( surface ifail )
|
|
Syntax
|
( crfgsu string <int> <'( int ... )> <'( double ... )> => tag
|
Args
|
key <nspace> <'( ival ... )> <'( rval ... )>
|
Returns
|
surface
|
Example
|
( crfgsu "SDL/franke" )
( crfgsu "SDL/corrugated" 1 '( 1.0 2.0 3.0 ) )
|
CRINCU - KI function to create intersection curves
Syntax
|
( CRINCU tag tag address ) => ( tag int ifail )
|
Args
|
surface surface box_array
|
Returns
|
( curve_list n_curves ifail )
|
|
Syntax
|
( crincu tag tag <((double...)... )> ) => ( tag ... )
|
Args
|
surface surface <box.((-500 -500 -500) (500 500 500))>
|
Returns
|
( curve ...)
|
Example
|
( crincu 17 18 )
( crincu 17 18 '(( -10 -10 -10 ) ( 10 10 10 )))
( crincu 17 18 '(( -10 10 ) ( -10 10 ) (-10 10 )))
|
|
Note
|
The KI box is an array of doubles with all low coords first. The lisp box can be given as two extreme vectors or as 3 intervals. The box argument is optional in crincu. The default is for the whole of the standard size box.
|
CRKNPA - KI function to create a knitting pattern from a list of bodies
Syntax
|
( CRKNPA tag ) => ( tag tag int tag int tag int ifail )
|
Args
|
bodies
|
Returns
|
( edges1 edges2 nedges negated n_negated over n_over ifail )
|
|
Syntax
|
( crknpa '( tag ... ) ) => ( ( <tag> ... ) ( <tag> ... ) ( <tag> ... ) ( <tag> ... ) )
|
Args
|
'( body ... )
|
Returns
|
( ( <edge> ... ) ( <edge> ... ) ( <body> ... ) ( <body> ... ) )
|
Example
|
( crknpa '(17 91) )
|
|
Note
|
The bodies passed to the function must be either solid or sheet bodies. Any leftover bodies have no edges in the pattern.
|
CRLFPS - KI function to create a B-surface by lofting
Syntax
|
( CRLFPS int address int address address 0 => ( tag ifail )
|
Args
|
ncurves curve_array nprops prop_array tag_array
|
Returns
|
( B-surface ifail )
|
|
Syntax
|
( crlfps '( tag ... ) '( token <real> ... ) ... ) => tag
|
Args
|
'( curve ... ) '( prop <data> ) ...
|
Returns
|
B-surface
|
Example
|
( crlfps '( 18 95 43 50 ) '( PAPRPE ) '( PAPRIS 1 ))
|
|
Note
|
crlfps has a variable number of arguments consisting of several lists, each containing a token and (where appropriate) associated real data.
|
CRLICU - KI function to create a linear curve
Syntax
|
( CRLICU vector vector ) => (tag ifail)
|
Args
|
position direction
|
Returns
|
( line ifail )
|
|
Syntax
|
( crlicu vector vector ) => tag
|
Args
|
position direction
|
Returns
|
line
|
|
Note
|
Creates a line through the given point in the given direction.
|
CRLIST - KI function to create an (empty) list entity
Syntax
|
( CRLIST int ) => ( tag ifail )
|
Args
|
type
|
Returns
|
( list ifail )
|
|
Syntax
|
( crlist token ) => tag
|
Args
|
type
|
Returns
|
list
|
Example
|
( crlist 'TYLITG )
|
|
Note
|
The support function enlist performs convenient conversion between KI lists and lisp lists.
|
CRMINO - KI function to create a minimum object
Syntax
|
( CRMINO ) => ( tag ifail )
|
Args
|
- none -
|
Returns
|
( body ifail )
|
|
Syntax
|
( crmino ) => tag
|
Args
|
- none -
|
Returns
|
body
|
CROFSU - KI function to create an offset surface
Syntax
|
( CROFSU tag double ) => ( tag ifail )
|
Args
|
underlying_surface distance
|
Returns
|
( surface ifail )
|
|
Syntax
|
( crofsu tag double ) => tag
|
Args
|
underlying_surface distance
|
Returns
|
surface
|
Example
|
( crofsu 84 12.0 )
|
CRPLSU - KI function to create a planar surface
Syntax
|
( CRPLSU vector vector ) => ( tag ifail )
|
Args
|
position normal
|
Returns
|
( surface ifail )
|
|
Syntax
|
( crplsu vector vector ) => tag
|
Args
|
position normal
|
Returns
|
surface
|
CRPRSO - KI function to create a prismatic solid
Syntax
|
( CRPRSO vector vector double int double ) => ( tag ifail )
|
Args
|
centre axis radius nsides height
|
Returns
|
( body ifail )
|
|
Syntax
|
( crprso vector vector double int double ) => tag
|
Args
|
centre axis radius nsides height
|
Returns
|
body
|
CRPWPC - KI function to create a B-curve from piecewise data
Syntax
|
( CRPWPC int int int address int ) => ( tag ifail )
|
Args
|
dim ord nseg coeff_array basis
|
Returns
|
( B-curve ifail )
|
|
Syntax
|
( crpwpc int int int '( vector ... ) token ) => tag
|
Args
|
dim ord nseg '( point .. ) basis
|
Returns
|
B-curve
|
CRPWPS - KI function to create a B-surface from piecewise data
Syntax
|
( CRPWPS int int int int int address int ) => ( tag ifail )
|
Args
|
dim uord vord ncol nrow coeff_array basis
|
Returns
|
( B-surface ifail )
|
|
Syntax
|
( crpwps int int int int int '( vector ... ) token ) => tag
|
Args
|
dim uord vord ncol nrow '( point ... ) basis
|
Returns
|
B-surface
|
CRRVSU - KI function to create a surface of revolution
Syntax
|
( CRRVSU tag vector vector int address address) => (tag ifail)
|
Args
|
curve point axis n_opts options real_lists
|
Returns
|
( surface ifail )
|
|
Syntax
|
( crrvsu tag vector vector '( ( token <real> <real> ) ... )) => tag
|
Args
|
curve point axis '( ( option data ... ) ... )
|
Returns
|
surface
|
CRSEPS - KI function to sweep a B-curve into a B-surface
Syntax
|
( CRSEPS tag vector ) => ( tag ifail )
|
Args
|
B-curve translation
|
Returns
|
( B-surface ifail )
|
|
Syntax
|
( crseps tag vector ) => tag
|
Args
|
B-curve translation
|
Returns
|
B-surface
|
CRSHFA - KI function to create a sheet body from a face
Syntax
|
( CRSHFA tag ) => ( tag ifail )
|
Args
|
face
|
Returns
|
( body ifail )
|
|
Syntax
|
( crshfa tag ) => tag
|
Args
|
face
|
Returns
|
body
|
CRSIPS - KI function to swing a B-curve into a B-surface
Syntax
|
( CRSIPS tag vector vector double ) => ( tag ifail )
|
Args
|
B-curve point axis angle
|
Returns
|
( B-surface ifail )
|
|
Syntax
|
( crsips tag vector vector double ) => tag
|
Args
|
B-curve point axis angle
|
Returns
|
B-surface
|
CRSOFA - KI function to create solid from faces
Syntax
|
( CRSOFA tag int ) => ( tag int tag ifail )
|
Args
|
face_list action
|
Returns
|
( body_list nbodies state_list ifail )
|
|
Syntax
|
( crsofa '( tag ... ) token ) => (( tag token ) ... )
|
Args
|
'( face ... ) action
|
Returns
|
(( body state ) ... )
|
|
Note
|
A face or a list of faces may be supplied to crsofa.
|
CRSPCU - KI function to create SP-curve(s) from B-spline data defined in surface parameter space
Syntax
|
( CRSPCU tag int int int address address logical logical ) => ( int tag ifail )
|
Args
|
surf dim order nctrl ctrls knots periodic split
|
Returns
|
( n_curves SP-curve ifail )
|
|
Syntax
|
( crspcu tag int int '( ( double ... ) ... ) '( double ... ) logical logical ) => ( tag ... )
|
Args
|
surf dim order '( ctrl_pt ... ) '( knot ... ) <periodic . f> <split . f>
|
Returns
|
( SP-curve ... )
|
Example
|
( crspcu 17 3 3 '(( 0.1 0.2 1 ) ... ) '( 1 2 2 2.5 3.5 4 ) t nil )
|
CRSPPC - KI function to create a B-curve by splining
Syntax
|
( CRSPPC int address int address address ) => ( tag ifail )
|
Args
|
npts points nprops prop_array real_list_array
|
Returns
|
( B-curve ifail )
|
|
Syntax
|
( crsppc '( vector ... ) '( token <real ... > ) '( token ....) etc. ) => tag
|
Args
|
points '( token <associated reals> ) ...
|
Returns
|
B-curve
|
Example
|
( crsppc '((0 0 0) (0 0 1)) '( PAPRCU ) '( PAPRKT 0.55 0.75 ))
|
|
Note
|
crsppc has an extendable argument list; as many tokens (together with any associated reals) as required may be supplied.
|
CRSPPS - KI function to create a B-surface by splining
Syntax
|
( CRSPPS int int address int address address ) => ( tag ifail )
|
Args
|
ncol nrow pts nprops prop_array real_list_array
|
Returns
|
( B-surface ifail )
|
|
Syntax
|
( crspps int int '( vector ... ) '( token <real> ... ) ...) => tag
|
Args
|
ncol nrow points token_&_reals ...
|
Returns
|
B-surface
|
Example
|
( crspps 2 2 '((0 0 0) (10 0 0) ( 0 10 0 ) (10 10 0 )) '( PAPRCU )
'( PAPRBL 0.4 0.5 0.6 ))))
|
|
Note
|
crspps takes an indefinite number of arguments. The user may supply any number of tokens with associated reals.
|
CRSPSO - KI function to create a spherical solid
Syntax
|
( CRSPSO vector double ) => ( tag ifail )
|
Args
|
centre radius
|
Returns
|
( body ifail )
|
|
Syntax
|
( crspso vector double ) => tag
|
Args
|
centre radius
|
Returns
|
body
|
CRSPSU - KI function to create a spherical surface
Syntax
|
( CRSPSU vector double ) => ( tag ifail )
|
Args
|
centre radius
|
Returns
|
( surface ifail )
|
|
Syntax
|
( crspsu vector double ) => tag
|
Args
|
centre radius
|
Returns
|
surface
|
CRSPTC - KI function to approximate a trimmed curve by SP-curves
Syntax
|
( CRSPTC tag tag double logical logical ) => ( int tag ifail )
|
Args
|
surface tr-curve tolerance degenerate sense
|
Returns
|
( n_curves sp_curves ifail )
|
|
Syntax
|
( crsptc tag tag double logical logical ) => ( tag ... )
|
Args
|
surface tr_curve tolerance degenerate sense
|
Returns
|
( sp_curve ... )
|
CRTOBY - KI function to create the topology of a body
Syntax
|
( CRTOBY int tag tag tag ) => ( tag int int ifail )
|
Args
|
body_type topol_types entity_ids children
|
Returns
|
( new_topol state_code fault_id ifail )
|
|
Syntax
|
( crtoby token '( token ... ) '( int ... ) '(( <int> ... ) ... )) => ( ( tag ... ) token int )
|
Args
|
body_type '( topol_type ... ) '( id ... ) '( ( <child> ... ) )
|
Returns
|
( ( new_topol ... ) state_code fault_id )
|
Example
|
(crtoby 'BYTYSO '(TYTOBY TYTOSH TYTOFA) '(1 2 3) '((2) (3) nil))
|
CRTOSO - KI function to create a toroidal solid
Syntax
|
( CRTOSO vector vector double double ) => ( tag ifail )
|
Args
|
centre axis majrad minrad
|
Returns
|
( body ifail )
|
|
Syntax
|
( crtoso vector vector double double ) => tag
|
Args
|
centre axis majrad minrad
|
Returns
|
body
|
CRTOSU - KI function to create a toroidal surface
Syntax
|
( CRTOSU vector vector double double ) => ( tag ifail )
|
Args
|
centre axis majrad minrad
|
Returns
|
( surface ifail )
|
|
Syntax
|
( crtosu vector vector double double ) => tag
|
Args
|
centre axis majrad minrad
|
Returns
|
surface
|
CRTRCU - KI function to create a trimmed curve
Syntax
|
( CRTRCU tag double double) => (tag ifail)
|
Args
|
curve start_parm end_parm
|
Returns
|
( trimmed_curve ifail )
|
|
Syntax
|
( crtrcu tag double double ) => tag
|
Args
|
curve start_parm end_parm
|
Returns
|
trimmed_curve
|
CRTSFA - KI function to create a sheet body from a surface and trimmed SP-curve data
Syntax
|
( CRTSFA tag logical tag double double int address ) => ( tag tag int ifail )
|
Args
|
surface sense curves edge_tol face_tol n_opts options
|
Returns
|
( body face state ifail )
|
|
Syntax
|
( crtsfa tag logical '((tag ...) (tag ...)) double double ( token ... )) => ( tag tag token )
|
Args
|
surface sense list_of_lists_of_trimmed_curves edge_tol face_tol '( option ... )
|
Returns
|
body face state
|
DEFCON - KI function to make a connection between two entities
Syntax
|
( DEFCON tag tag ) => ( ifail )
|
Args
|
parent child
|
Returns
|
( ifail )
|
|
Syntax
|
( defcon tag tag ) => t
|
Args
|
parent child
|
Returns
|
t
|
DEHOSH - KI function to delete a list of holes from a sheet
Syntax
|
( DEHOSH tag tag ) => ( ifail )
|
Args
|
sheet list_of_loops
|
Returns
|
( ifail )
|
|
Syntax
|
( dehosh tag '( tag tag ) ) => t
|
Args
|
sheet '( loop ...)
|
Returns
|
t
|
Example
|
( dehosh 18 29 )
( dehosh 18 '( 29 85 121 ) )
|
DELCON - KI function to break a connection between two entities
Syntax
|
( DELCON tag tag ) => ( ifail )
|
Args
|
parent child
|
Returns
|
( ifail )
|
|
Syntax
|
( delcon tag tag ) => t
|
Args
|
parent child
|
Returns
|
t
|
DELENT - KI function to delete an entity
Syntax
|
( DELENT tag ) => ( ifail )
|
Args
|
entity
|
Returns
|
( ifail )
|
|
Syntax
|
( delent tag ) => t
|
Args
|
entity
|
Returns
|
t
|
|
Note
|
delent does not raise an error if the tag is 0, neither does it attempt any action.
|
DELFAS - KI function to delete faces from a body
Syntax
|
( DELFAS tag int address ) => ( tag int tag ifail )
|
Args
|
face_list nactions actions
|
Returns
|
( body_list nbodies state_list ifail )
|
|
Syntax
|
( delfas '( tag ... ) <'( token ) . SLLOCP> ) => (( tag token ) ... )
|
Args
|
'( face ... ) <'( action )>
|
Returns
|
(( body state ) ... )
|
Example
|
( delfas 19 )
( delfas 19 'SLLOGR )
( delfas 19 '( SLLOGR SLLOLI ) )
|
DELIST - KI function to delete a list
Syntax
|
( DELIST tag ) => ( ifail )
|
Args
|
list
|
Returns
|
( ifail )
|
|
Syntax
|
( delist tag ) => t
|
Args
|
list
|
Returns
|
t
|
DELIVL - KI function to delete items from a list
Syntax
|
( DELIVL tag int int ) => ( ifail )
|
Args
|
list start nitems
|
Returns
|
( ifail )
|
|
Syntax
|
( delivl list int int ) => t
|
Args
|
list start nitems
|
Returns
|
t
|
DELSEN - KI function to delete a single geometric entity
Syntax
|
( DELSEN tag ) => ( ifail )
|
Args
|
geometry
|
Returns
|
( ifail )
|
|
Syntax
|
( delsen tag ) => t
|
Args
|
geometry
|
Returns
|
t
|
Example
|
( delsen 26 )
|
DETGEO - KI function to detach geometry from topology
Syntax
|
( DETGEO tag ) => ( ifail )
|
Args
|
topol
|
Returns
|
( ifail )
|
|
Syntax
|
( detgeo tag ) => t
|
Args
|
topol
|
Returns
|
t
|
DLENFE - KI function to delete an entity from a feature
Syntax
|
( DLENFE tag tag ) => ( ifail )
|
Args
|
feature entity
|
Returns
|
( ifail )
|
|
Syntax
|
( dlenfe tag tag ) => t
|
Args
|
feature entity
|
Returns
|
t
|
DLORPH - KI function to delete orphans
Syntax
|
( DLORPH int ) => ( ifail )
|
Args
|
type
|
Returns
|
( ifail )
|
|
Syntax
|
( dlorph <token> ) => t
|
Args
|
<type>
|
Returns
|
t
|
Example
|
( dlorph 'TYENGE )
( dlorph 'TYADLI )
( dlorph )
|
|
Note
|
If the type token is not given, dlorph will delete orphans of both types.
|
ENBXEN - KI function to enquire box containing specified entity
Syntax
|
( ENBXEN tag ) => ( address ifail )
|
Args
|
entity
|
Returns
|
( box_array ifail )
|
|
Syntax
|
( enbxen tag ) => ( vector vector )
|
Args
|
entity
|
Returns
|
( lower_box_corner upper_box_corner )
|
ENBYTY - KI function to enquire body type
Syntax
|
( ENBYTY tag ) => ( int ifail )
|
Args
|
body
|
Returns
|
( type ifail )
|
|
Syntax
|
( enbyty tag ) => token
|
Args
|
body
|
Returns
|
type
|
ENCONT - KI function to enquire containment of point
Syntax:
|
( ENCONT tag tag ) => ( int ifail )
|
Args:
|
point entity
|
Returns:
|
( enclosure ifail )
|
|
Syntax:
|
( encont vector tag ) => token
|
Args:
|
point entity
|
Returns:
|
enclosure
|
Example:
|
( encont 7 8 )
( encont '( 0 0 0 ) 7 )
|
|
Note:
|
In fact encont accepts either a tag or a vector for its first argument (calling CRCAPO if required).
|
ENCUPA - KI routine to enquire curve parametrisation
Syntax:
|
( ENCUPA tag ) => ( address address tag int ifail )
|
Args:
|
curve
|
Returns:
|
( range_array bounds_array props nprops ifail )
|
|
Syntax:
|
( encupa tag ) => ( ( real token ) ( real token ) ( token ... ) )
|
Args:
|
curve
|
Returns:
|
( ( bound type ) ( bound type ) ( property ... ) )
|
Example:
|
( encupa ( t0 tag ) ) => ( ( -10000.0 PAPRIF ) ( 10000.0 PAPRIF ) ( PAPRCN PAPRLI ) )
|
ENDFAT - KI routine to enquire the attribute type definition of an attribute
Syntax:
|
( ENDFAT tag ) => ( tag ifail )
|
Args:
|
attribute
|
Returns:
|
( att_type ifail )
|
|
Syntax:
|
( endfat tag ) => tag
|
Args:
|
attribute
|
Returns:
|
att_type
|
ENDFNM - KI routine to enquire an attribute type definition from its name
Syntax:
|
( ENDFNM int string ) => ( tag ifail )
|
Args:
|
namlen name
|
Returns:
|
( att_type ifail )
|
|
Syntax:
|
( endfnm string ) => tag
|
Args:
|
name
|
Returns:
|
att_type
|
ENDIPE - KI function to enquire discontinuities on a B-curve or B-surface
Syntax:
|
( ENDIPE tag int ) => ( int tag tag ifail )
|
Args:
|
geometry type_disc
|
Returns:
|
( ndisc u_or_v params ifail )
|
|
Syntax:
|
( endipe tag token ) => ( int ( <token> ... ) ( <double> ... ) )
|
Args:
|
geometry type_disc
|
Returns:
|
( ( <u_or_v> ... ) ( <param> ... ) )
|
Example:
|
( endipe 20 'PADIG1 )
|
ENEDTY - KI function to enquire edge type
Syntax:
|
( ENEDTY tag ) => ( int ifail )
|
Args:
|
edge
|
Returns:
|
( type ifail )
|
|
Syntax:
|
( enedty tag ) => token
|
Args:
|
edge
|
Returns:
|
type
|
ENENTY - KI function to enquire entity type
Syntax:
|
( ENENTY tag int ) => ( address int ifail )
|
Args:
|
entity length
|
Returns:
|
( type_array ntypes ifail )
|
|
Syntax:
|
( enenty tag ) => ( token ... )
|
Args:
|
entity
|
Returns:
|
( type ... )
|
ENEQGE - KI function to enquire whether two geometries are equivalent
Syntax:
|
( ENEQGE tag tag ) => ( logical ifail )
|
Args:
|
geom1 geom2
|
Returns:
|
( equivalent ifail )
|
|
Syntax:
|
( eneqge tag tag ) => logical
|
Args:
|
geom1 geom2
|
Returns:
|
equivalent
|
ENEXEN - KI function to enquire extreme point of entity
Syntax:
|
( ENEXEN tag vector vector vector ) => ( vector tag ifail )
|
Args:
|
entity dir1 dir2 dir3
|
Returns:
|
( position entity ifail )
|
|
Syntax:
|
( enexen tag vector <vector . (1 0 0)> <vector . (0 1 0)> ) => ( vector tag )
|
Args:
|
entity dir1 <dir2> <dir3>
|
Returns:
|
( position entity )
|
|
Note:
|
Defaults are provided as a convenience for the last two directions as these values are usually not of interest.
|
ENFAPR - KI function to enquire if a face is a parametrically rectangular
Syntax:
|
( ENFAPR tag ) => ( int address address ifail )
|
Args:
|
face
|
Returns:
|
( rectangular u_bound_arr v_bound_arr ifail )
|
|
Syntax:
|
( enfapr tag ) => ( logical ( double double ) ( double double ))
|
Args:
|
face
|
Returns:
|
( rectangular ( u-low u-high ) ( v-low v-high ))
|
ENLOTY - KI function to enquire loop type
Syntax:
|
( ENLOTY tag ) => ( int ifail )
|
Args:
|
loop
|
Returns:
|
( type ifail )
|
|
Syntax:
|
( enloty tag ) => token
|
Args:
|
loop
|
Returns:
|
type
|
ENPAPC - KI function to find parameter of point on curve
Syntax:
|
( ENPAPC tag vector ) => ( double ifail )
|
Args:
|
curve position
|
Returns:
|
( parameter ifail )
|
|
Syntax:
|
( enpapc tag vector ) => double
|
Args:
|
curve position
|
Returns:
|
parameter
|
ENPAPS - KI function to find parameters of point on surface
Syntax:
|
( ENPAPS tag vector ) => ( double double ifail )
|
Args:
|
surface position
|
Returns:
|
( u v ifail )
|
|
Syntax:
|
( enpaps tag vector ) => ( double double )
|
Args:
|
surface position
|
Returns:
|
( u v )
|
ENPBEN - KI function to calculate the parametric box of a given entity
Syntax:
|
( ENPBEN tag ) => ( address address ifail )
|
Args:
|
entity
|
Returns:
|
( ulimits vlimits ifail )
|
|
Syntax:
|
( enpben tag ) => ( ( double double ) ( double double ) )
|
Args:
|
entity
|
Returns:
|
( lower_box_corner upper_box_corner )
|
ENPIFA - KI function to enquire if points in face
Syntax:
|
( ENPIFA tag int address int address int address address ) =>
( address address ifail )
|
Args:
|
face n_parms parms n_pvecs pvecs n_opts opt_array opt_data
|
Returns:
|
( enclosure topology ifail )
|
|
Syntax:
|
( enpifa tag '( <double ... > ) '( ,vector ... > ) '( <( token tag ... )> ) ) => ( ( token tag ) ... )
|
Args:
|
face '( <parm ... > ) '( <pvec ... > ) '( <( option loop ...)> )
|
Returns:
|
( ( enclosure topology ) ... )
|
Example:
|
( enpifa 79 '( (-3 3 -12 0 -4 5 5 5 ) nil '( ( PFOPLO 78 494 ) ) )
( enpifa 79 ' ( (-3 3) (-5 5) nil nil )
( enpifa 79 nil '( 0 0 0 ) nil nil )
( enpifa 79 nil '( ( 0 0 0 ) ) nil nil )
|
|
Note:
|
The lists of parameters and pvecs are flattened so any internal bracketing may be used.
|
ENPOGC - KI function to enquire point on general curve
Syntax:
|
( ENPOGC tag vector ) => ( vector vector vector double ifail )
|
Args:
|
curve position
|
Returns:
|
( tangent normal binormal curvature ifail )
|
|
Syntax:
|
( enpogc tag vector ) => ( vector vector vector double )
|
Args:
|
curve position
|
Returns:
|
( tangent normal binormal curvature )
|
ENPOGS - KI function to enquire point on general surface
Syntax:
|
( ENPOGS tag vector ) => ( vector vector vector double double ifail )
|
Args:
|
surface position
|
Returns:
|
( normal pdir1 pdir2 pcurvature1 pcurvature2 ifail )
|
|
Syntax:
|
( enpogs tag vector ) => ( vector vector vector double double )
|
Args:
|
surface position
|
Returns:
|
( normal pdir1 pdir2 pcurvature1 pcurvature2 )
|
ENPOPC - KI function to evaluate point from curve parameter
Syntax:
|
( ENPOPC tag double int ) => ( address ifail )
|
Args:
|
curve parameter nderivs
|
Returns:
|
( derivative_array ifail )
|
|
Syntax:
|
( enpopc tag double <int> ) => ( vector ... )
|
Args:
|
curve parameter <nderivs . 0>
|
Returns:
|
( point ... )
|
|
Note:
|
The number of derivatives to enpopc is optional, and defaults to 0.
|
ENPOPS - KI function to evaluate a point from surface parameters
Syntax:
|
( ENPOPS tag double double int int logical ) => ( vector ifail )
|
Args:
|
surface u v nu_derivs nv_derivs nreq
|
Returns:
|
( <normal> ifail )
|
|
Syntax:
|
( enpops tag double double <int> <int> ) => ( vector ... )
|
Args:
|
surface u v <nu_derivs . 0> <nv_derivs . 0> <nreq . t>
|
Returns:
|
( ( point ... ) <normal> )
|
|
Note:
|
The numbers of u and v derivatives in enpops default to 0. The default request for a normal is t.
|
The function enpops manages workspace automatically, but ENPOPS requires workspace allocated of sufficient length to store the derivative vectors returned.
|
ENSHTY - KI function to enquire shell type
Syntax:
|
( ENSHTY tag ) => ( int ifail )
|
Args:
|
shell
|
Returns:
|
( type ifail )
|
|
Syntax:
|
( enshty tag ) => token
|
Args:
|
shell
|
Returns:
|
type
|
ENSUPA - KI routine to enquire surface parametrisation
Syntax:
|
( ENSUPA tag ) => ( address address address address tag int tag int ifail )
|
Args:
|
surface
|
Returns:
|
( urange vrange ubound vbound uprops nuprops vprops nvprops ifail )
|
|
Syntax:
|
( ensupa tag ) => ( ( ( real token ) ( real token ) ( token ... ) ) ( ( real token ) ( real token ) ( token ... ) ) )
|
Args:
|
surface
|
Returns:
|
( ( ( ubound type ) ( ubound type ) ( property ... ) ) ( ( vbound type ) ( vbound type ) ( property ... ) ) )
|
Example:
|
( ensupa ( surface tag ) ) => ((( -10000.0 PAPRIF ) ( -10000.0 PAPRIF ) ( PAPRCN PAPRLI )) (( -10000.0 PAPRIF ) ( -10000.0 PAPRIF ) ( PAPRCN PAPRLI )))
|
ENVETY - KI function to enquire vertex type
Syntax:
|
( ENVETY tag ) => ( int ifail )
|
Args:
|
vertex
|
Returns:
|
( type ifail )
|
|
Syntax:
|
( envety tag ) => token
|
Args:
|
vertex
|
Returns:
|
type
|
FIXIDS - KI function to fix identifiers in part
Syntax:
|
( FIXIDS tag ) => ( int tag tag tag ifail )
|
Args:
|
part
|
Returns:
|
( nfaults fixed_entities old_ids new_ids ifail )
|
|
Syntax:
|
( fixids tag ) => ( ( <tag> ... ) ( <int> ... ) ( <int> ... ) )
|
Args:
|
part
|
Returns:
|
( ( <fixed_entity> ... ) ( <old_id> ... ) ( <new_id> ... ) )
|
FNENFE - KI function to find entity in a feature
Syntax:
|
( FNENFE tag tag ) => ( logical ifail )
|
Args:
|
feature entity
|
Returns:
|
( found ifail )
|
|
Syntax:
|
( fnenfe tag tag ) => logical
|
Args:
|
feature entity
|
Returns:
|
found
|
GETMND - KI function to recover a faulty model
Syntax:
|
( GETMND int string int address ) => ( tag tag tag tag tag int int ifail )
|
Args:
|
key_length key nopts opt_array
|
Returns:
|
( part mends faults mended_components faulty_components ifail )
|
|
Syntax:
|
( getmnd string ) => ( tag ( token ... ) ( token ... ) ( tag ... ) ( tag ... ) )
|
Args:
|
key
|
Returns:
|
( part ( mend ... ) ( fault ... ) ( entity ... ) ( entity ... ))
|
GETMOD - KI function to receive an archived model
Syntax:
|
( GETMOD int string ) => ( tag ifail )
|
Args:
|
length key
|
Returns:
|
( body ifail )
|
|
Syntax:
|
( getmod string ) => tag
|
Args:
|
key
|
Returns:
|
body
|
Example:
|
( getmod 'gearwheel )
|
|
Notes:
|
Keys with embedded nulls are not supported from lisp.
|
GETSNP - KI function to restore a snapshot
Syntax:
|
( GETSNP int string int logical ) => ( ifail )
|
Args:
|
length filename histfl statfl
|
Returns:
|
( ifail )
|
|
Syntax:
|
( getsnp string <logical .t > ) => t
|
Args:
|
filename <restore_interface_parms>
|
Returns:
|
t
|
|
Notes:
|
The logical flag controlling the restoration of interface parameters is optional and defaults to true.
|
GTINLI - KI function to get values from a list of integers
Syntax:
|
( GTINLI tag int int ) => ( int ifail )
|
Args:
|
list start nvals
|
Returns:
|
( vals ifail )
|
|
Syntax:
|
( gtinli tag int int ) => ( int ... )
|
Args:
|
list start nvals
|
Returns:
|
( value ... )
|
|
Notes:
|
Support function unlist provides convenient access to this function.
|
The gtinli function manages workspace automatically, but GTINLI requires workspace supplied which is sufficiently long to store the integers output.
|
GTRLLI - KI function to get values from a list of reals
Syntax:
|
( GTRLLI tag int int ) => ( double ifail )
|
Args:
|
list start nvals
|
Returns:
|
( rvals ifail )
|
|
Syntax:
|
( gtrlli tag int int ) => ( double ... )
|
Args:
|
list start nvals
|
Returns:
|
( value ... )
|
|
Notes:
|
Support function unlist provides convenient access to this function.
|
The gtrlli function manages workspace automatically. The GTRLLI function requires sufficient workspace to store the reals output.
|
GTTGLI - KI function to get values from a list of tags
Syntax:
|
( GTTGLI tag int int address) => ( ifail )
|
Args:
|
list start nvals tag_array
|
Returns:
|
( tags ifail )
|
|
Syntax:
|
( gttgli tag int int ) => ( tag ... )
|
Args:
|
list start nvals
|
Returns:
|
( value ... )
|
Notes:
|
Support function unlist provides convenient access to this function.
|
The gttgli function manages workspace automatically, but GTTGLI requires workspace allocated of sufficient length to store the tags output.
|
HOLLBY - KI function to hollow a solid body
Syntax:
|
( HOLLBY tag double logical tag tag tag double int ) => ( tag tag tag int ifail )
|
Args:
|
body offset check pierced_faces thickened_faces offsets tolerance max_faults
|
Returns:
|
( old_faces new_faces problem_tags state ifail )
|
|
Syntax:
|
( hollby tag double <logical . t> <( tag ... ) . NULTAG> <( tag ... ) . NUL TAG> <( double ... ). NULTAG> <double . 1E-6><int .07) ) =>
( ( tag ... ) ( tag ... ) ( tag ... ) token )
|
Args:
|
body offset <check> <pierced_faces> <thickened_faces> <offsets> <tolerance> <max_faults>
|
Returns:
|
( ( old_face ... ) ( new_face ... ) ( problem_tag ... ) state )
|
Example:
|
( hollby 19 .1 ) ( hollby 10 .1 t '(79) '(74 69) '(.2 .3) )
|
IDATEN - KI function to enquire the attribute of a given type attached to an entity
Syntax:
|
( IDATEN tag tag ) => ( tag ifail )
|
Args:
|
entity att_type
|
Returns:
|
( attribute ifail )
|
|
Syntax:
|
( idaten tag tag ) => tag
|
Args:
|
entity att_type
|
Returns:
|
attribute
|
IDATLS - KI function to enquire the attributes of a given type attached to an entity
Syntax:
|
( IDATLS tag tag ) => ( tag ifail )
|
Args:
|
entity att_type
|
Returns:
|
( attribute_list ifail )
|
|
Syntax:
|
( idatls tag tag ) => ( <tag> ... )
|
Args:
|
entity att_type
|
Returns:
|
( <attribute> ... )
|
IDATPA - KI function to identify all attributes of a given type in a part
Syntax:
|
( IDATPA tag tag ) => ( tag ifail )
|
Args:
|
part att_type
|
Returns:
|
( att_list ifail )
|
|
Syntax:
|
( idatpa tag tag ) => ( tag ... )
|
Args:
|
part att_type
|
Returns:
|
( attribute ... )
|
IDCCEN - KI function to identify common connected entities
Syntax:
|
( IDCCEN tag tag int ) => ( tag int ifail )
|
Args:
|
entity1 entity2 connection_type
|
Returns:
|
( entities n_entity ifail )
|
|
Syntax:
|
( idccen tag tag token ) => ( tag ... )
|
Args:
|
entity1 entity2 connection_type
|
Returns:
|
( common_entity ... )
|
IDCOEN - KI function to identify connected entities
Syntax:
|
( IDCOEN tag int ) => ( tag int ifail )
|
Args:
|
entity type
|
Returns:
|
( list nitems ifail )
|
|
Syntax:
|
( idcoen tag token ) => ( tag ... )
|
Args:
|
entity type
|
Returns:
|
( entity ... )
|
Example:
|
( idcoen 7 'TYTOFA )
|
IDCOFE - KI function to identify curve of edge
Syntax:
|
( IDCOFE tag ) => ( tag ifail )
|
Args:
|
edge
|
Returns:
|
( curve ifail )
|
|
Syntax:
|
( idcofe tag ) => tag
|
Args:
|
edge
|
Returns:
|
curve
|
IDENID - KI function to identify entity by identifier
Syntax:
|
( IDENID tag int int ) => ( tag ifail )
|
Args:
|
part identifier type
|
Returns:
|
( entity ifail )
|
|
Syntax:
|
( idenid tag int token ) => tag
|
Args:
|
part identifier type
|
Returns:
|
entity
|
Example:
|
( idenid 7 33 'TYTOFA )
|
IDFSEN - KI function to identify facesets of one or two bodies
Syntax:
|
( IDFSEN tag tag tag tag tag tag int address tag ) => ( tag tag tag tag tag tag ifail)
|
Args:
|
target tool targed tooled targvx toolvx nopts opt_array topol
|
Returns:
|
( targsu toolsu targbo toolbo targrj toolrj ifail )
|
|
Syntax:
|
( idfsen tag tag '( tag ... ) '( tag ... ) '( tag ... ) '( tag ... ) '(( token < tag ... > =>
( ( ( tag ... ) ... ) ( ( tag ... ) ... ) ( tag ... ) ( tag ... ) ( ( tag ... ) ... ) ( ( tag ...) ... ) ) )...))
|
Args:
|
target tool '( edge ... ) '( edge ... ) '( vertex ... ) '( vertex ... ) '( option ... ) < '( topology ... ) >
|
Returns:
|
( ( ( face ... ) ... ) ( ( face ... ) ... ) ( edge ... ) ( edge ... ) ( ( face ... ) ... ) ( ( face ... ) ... ) )
|
Example:
|
( idfsen (b0 tag) (b1 tag) (e0 tag) nil nil (list 'IDOPSU (list 'IDOPFS (f1 tag))))
|
|
Notes:
|
A faceset is a collection of connected faces.
|
IDKYPA - KI function to identify keyed parts
Syntax:
|
( IDKYPA int string ) => ( tag tag int ifail )
|
Args:
|
length key
|
Returns:
|
( part_list state_list nparts ifail )
|
|
Syntax:
|
( idkypa string ) => (( tag token ) ... )
|
Args:
|
key
|
Returns:
|
(( part state ) ... )
|
|
Notes
|
Keys with embedded nulls are not supported via lisp.
|
IDLSID - KI function to identify entities by identifier
Syntax:
|
( IDLSID tag tag int ) => ( tag int ifail )
|
Args:
|
part identifier_list type
|
Returns:
|
( entities n_entity ifail )
|
|
Syntax:
|
( idlsid tag '( int ... ) token ) => ( tag ... )
|
Args:
|
part '( identifier ... ) type
|
Returns:
|
( entity ... )
|
Example:
|
( idlsid 7 '( 33 35 37 65 ) 'TYTOFA )
|
IDNCEN - KI function to identify number of connected entities
Syntax:
|
( IDNCEN tag int ) => ( int ifail )
|
Args:
|
entity type
|
Returns:
|
( ifail )
|
|
Syntax:
|
( idncen tag token ) => int
|
Args:
|
entity type
|
Returns:
|
n_connected
|
IDPOFV - KI function to identify point of vertex
Syntax:
|
( IDPOFV tag ) => ( tag ifail )
|
Args:
|
vertex
|
Returns:
|
( point ifail )
|
|
Syntax:
|
( idpofv tag ) => tag
|
Args:
|
vertex
|
Returns:
|
point
|
IDSCEN - KI function to identify single connected entity
Syntax:
|
( IDSCEN tag int ) => ( tag ifail )
|
Args:
|
entity type
|
Returns:
|
( connected_entity ifail )
|
|
Syntax:
|
( idscen tag token ) => tag
|
Args:
|
entity type
|
Returns:
|
connected_entity
|
IDSCLS - KI function to identify single connected entities of a list of entities
Syntax:
|
( IDSCLS tag int ) => ( tag int ifail )
|
Args:
|
entities type
|
Returns:
|
( connected_entities n_entity ifail )
|
|
Syntax:
|
( idscls '( tag ... ) token )
|
Args:
|
'( entity ... ) type
|
Returns:
|
( entity ... )
|
IDSOFF - KI function to identify surface of face
Syntax:
|
( IDSOFF tag ) => ( tag logical ifail )
|
Args:
|
face
|
Returns:
|
( surface reversed ifail )
|
|
Syntax:
|
( idsoff tag ) => ( tag logical )
|
Args:
|
face
|
Returns:
|
( surface reversed )
|
IMPRNT - KI function to imprint bodies or lists of faces
Syntax:
|
( IMPRNT tag tag int address ) => ( tag tag int tag tag int ifail )
|
Args:
|
target tool nopts opt_array
|
Returns:
|
( targed tooled nedges targvx toolvx nverts ifail )
|
|
Syntax:
|
( imprnt tag tag < '( token ... ) > ) => ( ( tag ... ) ( tag ... ) ( tag ... ) ( tag ... ) )
|
Args:
|
target tool < '( option ... ) >
|
Returns:
|
( ( edge ... ) ( edge ... ) ( vertex ... ) ( vertex ... ) )
|
Example:
|
(imprint 17 77)
|
INCUCU - KI function to intersect two curves
Syntax:
|
( INCUCU tag address tag address tag address ) =>
( tag tag tag tag int ifail )
|
Args:
|
curve bounds curve bounds surface box_array
|
Returns:
|
( intpts iparms1 iparms2 incods nintpt ifail )
|
|
Syntax:
|
( incucu tag vector vector tag vector vector <surface> <((double...)... )> ) =>
( ( token vector cvec cvec ) ... )
|
Args:
|
curve start end curve start end <surface> <box.((-500 -500 -500) (500 500 500))>
|
Returns:
|
( ( intcod point iparm1 iparm2 ) ... )
|
Example:
|
( incucu 7 '(0 0 0) '(5 0 0) 34 '(4 0 0) '(1 2 3) )
|
|
Notes:
|
The KI box is an array of doubles with all low coords first. The lisp box can be given as two extreme vectors or as 3 intervals. The box argument is optional in incucu. The default is for the whole of the standard size box.
|
INCUFA - KI function to intersect curve and face
Syntax:
|
( INCUFA tag address tag ) => ( tag tag tag tag tag int ifail )
|
Args:
|
curve bounds face
|
Returns:
|
( intpts cuparm suparm intcodes topol nintpt ifail )
|
|
Syntax:
|
( incufa tag vector vector tag ) =>
( ( token vector ( double ) ( double double ) tag ) ... )
|
Args:
|
curve start end face
|
Returns:
|
( ( token point ( cuparm ) ( suparm suparm ) topol ) ... )
|
Example:
|
( incufa 80 '( 4 0 0 ) '( 4 0 0 ) 23 )
|
INCUSU - KI function to intersect a curve and a surface
Syntax:
|
( INCUSU tag address tag address) => ( tag tag tag tag int ifail )
|
Args:
|
curve bounds surface box_array
|
Returns:
|
( intpts cuparm suparm incods nintpt ifail )
|
|
Syntax:
|
( incusu tag vector vector tag <( ( double ...)... )> ) =>
( ( token vector ( double ) ( double double ) ) ... )
|
Args:
|
curve start end surface <box.((-500 -500 -500) (500 500 500))>
|
Returns:
|
( ( token point ( cuparm ) ( suparm suparm ) ) ... )
|
Example:
|
( incusu 7 '(0 0 0) '(5 0 0) 34 )
|
Notes:
|
The KI box is an array of doubles with all low coords first. The lisp box can be given as two extreme vectors or as 3 intervals. The box argument is optional in incusu. The default is for the whole of the standard size box.
|
INFAFA - KI function to intersect two faces
Syntax:
|
( INFAFA tag tag int address address) => (int tag int tag tag ifail))
|
Args:
|
face1 face2 n_opts options opt_data
|
Returns:
|
( n_points points n_curves curves types ifail )
|
|
Syntax:
|
( infafa tag tag '( ( token <real> ... ) ...) => ( ( vector ... ) ( ( tag token ) ... )))
|
Args:
|
face1 face2 '( ( option <real> ... ) ... )
|
Returns:
|
( ( point ... ) ( ( curve type ) ... ))
|
INSUFA - KI function to intersect a surface with a face
Syntax:
|
( INSUFA tag tag int address address) => (int tag int tag tag ifail))
|
Args:
|
surface face n_opts options opt_data
|
Returns:
|
( n_points points n_curves curves types ifail )
|
|
Syntax:
|
( insufa tag tag '( ( token <real> ... ) ...) => ( ( vector ... ) ( ( tag token ) ... )))
|
Args:
|
surface face '( ( option <real> ... ) ... )
|
Returns:
|
( ( point ... ) ( ( curve type ) ... ))
|
INSUSU - KI function to intersect two surfaces
Syntax:
|
( INSUSU tag tag int address address) => (int tag int tag tag ifail)
|
Args:
|
surf1 surf2 n_opts options real_data
|
Returns:
|
( n_points points n_curves curves types ifail )
|
|
Syntax:
|
( insusu tag tag '( ( token <real> ...) ... ) => ( ( vector ... ) ( ( tag type ) ... )
|
Args:
|
surf1 surf2 '( ( options <points> ... ) ... )
|
Returns:
|
( ( point ... ) ( ( curve int_type ) ... )
|
INTBYS - KI function to intersect bodies
Syntax:
|
( INTBYS tag tag ) => ( tag int ifail )
|
Args:
|
body tool_list
|
Returns:
|
( assembly nbodies ifail )
|
|
Syntax:
|
( intbys tag '( tag ... )) => ( tag int )
|
Args:
|
target '( tool ... )
|
Returns:
|
( assembly nbodies )
|
KABORT - KI function to abort an interrupted Kernel operation
Syntax:
|
( KABORT int ) => ( ifail )
|
Args:
|
reason
|
Returns:
|
( ifail )
|
|
Syntax:
|
( kabort <token> ) => t
|
Args:
|
<reason>
|
Returns:
|
t
|
Example:
|
( kabort 'SLABRE )
|
KNITEN - KI function to "knit together" bodies by fusing coincident edges
Syntax:
|
( KNITEN int tag tag tag logical ) => ( int tag int ifail )
|
Args:
|
body_type target edge_list1 edge_list2 sort_shells
|
Returns:
|
( state failed_edges nfailed ifail )
|
|
Syntax:
|
( kniten token tag '( tag ... ) '( tag ... )<logical.nil> ) => ( token ( <tag> ... ) )
|
Args:
|
body_type target ( edge ... ) ( edge ... )<sort_shells>
|
Returns:
|
( state ( <edge> ... ) )
|
LEVASS - KI function to level assemblies
Syntax:
|
( LEVASS tag ) => ( tag ifail )
|
Args:
|
assembly
|
Returns:
|
( new_assembly ifail )
|
|
Syntax:
|
( levass tag ) => tag
|
Args:
|
assembly
|
Returns:
|
new_assembly
|
MASSPR - KI function to compute mass and related property calculations
Syntax:
|
( MASSPR tag int address double ) => ( tag tag tag tag tag ifail )
|
Args:
|
entity_list nopts opt_array accuracy
|
Returns:
|
( real_list real_list real_list real_list real_list ifail )
|
|
Syntax:
|
( masspr '( tag ... ) '( token ...) double ) => (( real...) ( real... ) ( real ... ) ( real ... ) ( real... ))
|
Args:
|
'( entity ... ) '( options ... ) accuracy
|
Returns:
|
(( periph ...) ( amount ...) ( mass... ) ( cog ...) ( inertia ..))
|
Example:
|
( masspr 7 '( MAOPCG MAOPEM ) 0.95 )
|
MENDEN - KI function to mend a model
Syntax:
|
( MENDEN tag logical ) =>
( tag tag tag tag tag tag tag int int int int int int ifail )
|
Args:
|
body replace_all
|
Returns:
|
( fixed_edges fixed_vertices faulty_edges faulty_vertices edge_faults vertex_faults old_geom nfixed nfixvx nftyed nftyvx nold ifail )
|
|
Syntax:
|
( menden tag <logical . nil> ) => ( ( <tag> ... ) ( <tag> ... ) ( <tag> ... ) ( <tag> ... ) ( <token> ... ) ( <token> ... ) ( <tag> ... ) token )
|
Args:
|
body <replace_all>
|
Returns:
|
( ( <fixed_edge> ... ) ( <fixed_vertex> ... ) ( <faulty_edge> ... ) ( <faulty_vertex> ... ) ( <edge_fault> ... ) ( <vertex_fault> ... ) ( <old_geom> ... ) body_state )
|
Example:
|
( menden 17 )
|
MERGEN - KI function to remove redundant topology from an entity
Syntax:
|
( MERGEN tag ) => ( ifail )
|
Args:
|
entity
|
Returns:
|
( ifail )
|
|
Syntax:
|
( mergen tag ) => token
|
Args:
|
entity
|
Returns:
|
ifail_token
|
|
Notes:
|
Unlike most lower-case functions, mergen returns the ifail explicitly. This is most likely to be KI_no_errors or KI_non_mergeable
|
NEGENT - KI function to negate (reverse) an entity
Syntax:
|
( NEGENT tag ) => ( ifail )
|
Args:
|
entity
|
Returns:
|
( ifail )
|
|
Syntax:
|
( negent tag ) => tag
|
Args:
|
entity
|
Returns:
|
entity
|
OFFABY - KI function to offset the faces of a solid or sheet body
Syntax:
|
( OFFABY tag double logical tag tag tag double int ) => ( tag int ifail )
|
Args:
|
body offset check pierced_faces thickened_faces offsets tolerance max_faults
|
Returns:
|
( problem_tags state ifail )
|
|
Syntax:
|
( offaby tag double <tokens . t> <( tag ... ) . NULTAG> <( tag ... ) . NUL TAG> <( double ... ) . NULTAG> ) <double . 1E-6><int .07>=> ( ( tag ... ) token )
|
Args:
|
body offset <check> <pierced_faces> <thickened_faces> <offsets> <tolerance> <max_faults>
|
Returns:
|
( ( problem_tag ... ) state )
|
Example:
|
( offaby 19 .1 )
( offaby 19 .1 t '(79) '(74 69) '(.2 .3) )
|
OUATDF - KI function to output an attribute type definition
Syntax:
|
( OUATDF tag int ) => ( address int tag tag ifail )
|
Args:
|
att_type bufsiz
|
Returns:
|
( name namlen opt_list data_list ifail )
|
|
Syntax:
|
( ouatdf tag ) => ( string ( token ... ) ... )
|
Args:
|
att_type
|
Returns:
|
( name ( option data ... ) ... )
|
Example:
|
( ouatdf 133 ) => ( Colour ( ATOPCL RQAC01 ) ( ATOPOW TYTOFA )
( ATOPFL RQAPCS ))
|
|
ouatdf is restricted to a buffer size of eighty characters.
|
OUBBCO - KI function to output bulletin board controls
Syntax:
|
( OUBBCO ) => ( tag tag int tag int ifail )
|
Args:
|
- none -
|
Returns:
|
( entity_types events nentities options nopts ifail )
|
|
Syntax:
|
( oubbco ) = (( < ( token ( token ... )) ... > ) ( token < ... > ))
|
Args:
|
- none -
|
Returns:
|
( ( < ( entity_type ( event ... )) ... > ) ( option < ... > ))
|
Example:
|
( oubbco ) => ( BBOPOF )
( oubbco ) => ((( TYTOFA ( BBEVCR BBEVDE BBEVCH )) ( TYADAD ( BBEVCR ))) ( BBOPON ))
|
OUBBEV - KI function to output full bulletin board information
Syntax:
|
( OUBBEV logical ) => ( int tag tag int tag tag tag ifail )
|
Args:
|
empty_board
|
Returns:
|
( nevents events nperev nents ents enttyp usflds ifail )
|
|
Syntax:
|
( oubbev logical ) => ((token (tag token <( int ... )>) ... ) ... )
|
Args:
|
empty_board
|
Returns:
|
(( event ( entity type <usflds> ) ) ... )
|
OUBLSS - KI function to output blend surface definition
Syntax:
|
( OUBLSS tag ) => ( int tag tag tag tag tag tag int tag tag tag int logical ifail )
|
Args:
|
surface
|
Returns:
|
( type sf1 sf2 sf3 iparm12 iparm23 iparm31 nipars rpars12 rpars23 rpars31 nrpars sense ifail )
|
|
Syntax:
|
( oublss tag ) => ( token tag tag tag (int...) (int...) (int...) (double...) (double...) (double...) logical)
|
Args:
|
surface
|
Returns:
|
( type sf1 sf2 sf2 (iparm12...) (iparm23...)(iparm31...)(rparm12...) (rparm23...)(rparm31...) sense )
|
OUBSCU - KI function to output a curve in B-spline form
Syntax:
|
( OUBSCU tag double int address ) => ( tag int int int tag tag int ifail )
|
Args:
|
curve tolerance option_count option_arr
|
Returns:
|
( ctrls dim order n_cntrl knot_vector props n_props ifail )
|
|
Syntax:
|
( oubscu tag double ( token ... )) =>
( ( double ... ) ... ) int int int ( double ... ) ( token ... ))
|
Args:
|
curve tolerance '( <option> ... )
|
Returns:
|
control_points dimension order knot_vector ( property ... )
|
OUBSED - KI function to output the curve of an edge in B-spline form
Syntax:
|
( OUBSED tag double int address ) => ( tag int int int tag tag int ifail )
|
Args:
|
edge tolerance nopt opt_array
|
Returns:
|
( points dim order ncontrol knots properties nprops )
|
|
Syntax:
|
( oubsed tag double '( token ... )) =>
((( double ... ) ... ) int ( double ... ) ( token ... ))
|
Args:
|
edge tolerance '( option ... )
|
Returns:
|
(( point ...) dim order ( knot ... ) ( property ... ))
|
|
Notes:
|
The list of data points returned may be of dimension 3 or 4 and are packed in lists of rows.
|
OUBSFA - KI function to output the surface of a face in B-spline form
Syntax:
|
( OUBSFA tag double int address ) => ( tag int int int int int tag tag tag int ifail )
|
Args:
|
face tol nopts option_array
|
Returns:
|
( points dim uorder vorder ncol nrow uknots vknots props nprops ifail )
|
|
Syntax:
|
( oubsfa tag double '( token ... )) =>
(((( double ... )...)...) int int int int int ( double ... ) ( double... ) ( token ... ))
|
Args:
|
face tolerance '( option ... )
|
Returns:
|
((( point ... )... ) dim uorder vorder ncol nrow ( uknot ... ) ( vknot ... ) ( property ... ))
|
Example:
|
( oubsfa 19 0.5 '( SROPCU SROPNR ))
|
|
Notes:
|
The list of data points returned may be of dimension 3 or 4 and are packed in lists of rows.
|
OUBSPC - KI function to output a B-curve in B-spline form
Syntax:
|
( OUBSPC tag ) => ( tag int int int tag tag int ifail )
|
Args:
|
B-curve
|
Returns:
|
( controls dim order ncontrol knots properties nprops ifail )
|
|
Syntax:
|
( oubspc tag ) => (( double ... )... ) int int ( double ... ) ( token ... ))
|
Args:
|
B-curve
|
Returns:
|
(( point .... )... ) dim order ( knot ... ) ( property ... ))
|
OUBSPS - KI function to output a B-surface in B-spline form
Syntax:
|
( OUBSPS tag ) => ( tag int int int int int tag tag tag int logical ifail )
|
Args:
|
B-surface
|
Returns:
|
( controls dim uord vord ncol nrow uknots vknots properties nprops sense ifail )
|
|
Syntax:
|
( oubsps tag ) =>
((( double ... )... ) int int int int int ( double...) ( double ... ) ( token ... ) logical )
|
Args:
|
B-surface
|
Returns:
|
(( points ... ) dim uord vord ncol nrow ( uknot...) ( vknot... ) ( property ...) sense )
|
OUBSSU - KI function to output a region of a surface in B-spline form
Syntax:
|
( OUBSSU tag address address double int address ) =>
( tag int int int int int tag tag tag int ifail)
|
Args:
|
surface urange_arr vrange_arr tolerance n_options option_arr
|
Returns:
|
( controls dimension uorder vorder ncol nrow uknots vknots nprops proper ties ifail )
|
|
Syntax:
|
( oubssu tag ( double double ) ( double double ) double ( token ...)) =>
( ( double ... ) int int int int int ( double ... ) ( double ... ) ( token ... ))
|
Args:
|
surface u_range v_range tolerance '( option ... )
|
Returns:
|
( controls dimension uorder vorder ncol nrow uknots vknots properties )
|
OUCOCU - KI function to output coordinates on curve
Syntax:
|
( OUCOCU tag vector vector double double double ) => ( tag int ifail )
|
Args:
|
curve start end ctol atol stol
|
Returns:
|
( vec_list npos ifail )
|
|
Syntax:
|
( oucocu tag vector vector double double double ) => ( vector ... )
|
Args:
|
curve start end ctol atol stol
|
Returns:
|
( coord ... )
|
OUCPCU - KI function to output a constant parameter line curve
Syntax:
|
( OUCPCU tag ) => ( tag int double int ifail )
|
Args:
|
curve
|
Returns:
|
( surface u_or_v param sense ifail )
|
|
Syntax:
|
( oucpcu tag ) => ( tag token double logical )
|
Args:
|
curve
|
Returns:
|
( surface u_or_v param sense )
|
Example:
|
( oucpcu 17 )
|
OUEXSU - KI function to output an extruded surface
Syntax:
|
( OUEXSU tag ) => ( tag vector int ifail )
|
Args:
|
surface
|
Returns:
|
( curve path sense ifail )
|
|
Syntax:
|
( ouexsu tag ) => ( tag vector logical )
|
Args:
|
surface
|
Returns:
|
( curve path sense )
|
OUFEAT - KI function to output items in feature
Syntax:
|
( OUFEAT tag ) => ( int tag int ifail )
|
Args:
|
feature
|
Returns:
|
( type list nitems ifail )
|
|
Syntax:
|
( oufeat tag ) => ( token ( tag .... ))
|
Args:
|
feature
|
Returns:
|
( type ( entity ... ))
|
OUFGCU - KI function to output a foreign geometry curve
Syntax:
|
( OUFGCU tag int ) => ( address int tag tag int tag ifail )
|
Args:
|
curve nchars
|
Returns:
|
( key keylen ivals rvals sense transform ifail )
|
|
Syntax:
|
( oufgcu tag int ) => ( tag ( <int> ... ) ( <double> ... ) logical tag )
|
Args:
|
curve nchars
|
Returns:
|
( key ( <ival> ... ) ( <rval> ... ) sense transform )
|
Example:
|
( oufgcu 84 3 )
|
OUFGSU - KI function to output a foreign geometry surface
Syntax:
|
( OUFGSU tag int ) => ( address int tag tag int tag ifail )
|
Args:
|
surface nchars
|
Returns:
|
( key keylen ivals rvals sense transform ifail )
|
|
Syntax:
|
( oufgsu tag int ) => ( tag ( <int> ... ) ( <double> ... ) logical tag )
|
Args:
|
surface nchars
|
Returns:
|
( key ( <ival> ... ) ( <rval> ... ) sense transform )
|
Example:
|
( oufgsu 84 3 )
|
OUFINF - KI function to output information about the specified file
Syntax:
|
( OUFINF int string int int int ) => ( int double string ifail )
|
Args:
|
length name guise format selection
|
Returns:
|
( ival rval sval nstring ifail )
|
|
Syntax:
|
( oufinf string token token ) => int
|
Args:
|
name guise format
|
Returns:
|
version_file_created
|
Example:
|
( oufinf "cube" 'FFCXMT 'FFTEXT )
|
OUGEEF - KI function to output geometry of edge or fin
Syntax:
|
( OUGEEF tag logical ) => ( tag int vector double vector double int ifail )
|
Args:
|
edge_or_fin parms
|
Returns:
|
( curve curve_type start start_t end end_t sense ifail )
|
|
Syntax:
|
( ougeef tag ( logical . t ) ) => ( tag token vector double vector double logical )
|
Args:
|
edge_or_fin parms
|
Returns:
|
( curve curve_type start start_t end end_t sense )
|
Example:
|
( ougeef 24 )
( ougeef 24 nil )
|
OUGESU - KI function to output generated surface
Syntax:
|
( OUGESU tag ) => ( tag int tag int tag tag tag tag int tag tag int logical ifail )
|
Args:
|
surface
|
Returns:
|
( types ntypes codes ncodes ints reals geoms singc nsingc singp unused nsingp sense ifail )
|
|
Syntax:
|
( ougesu tag ) =>
(( token... ) ( token...) ( int...) (double...) ( tag... ) ( vector...) logical )
|
Args:
|
surface
|
Returns:
|
(( type... ) ( code... ) ( int ... ) ( double... ) ( geometry... ) ( sing_curve... ) (sing_point...) sense )
|
OUIDEN - KI function to output identifier of entity
Syntax:
|
( OUIDEN tag ) => ( int ifail )
|
Args:
|
entity
|
Returns:
|
( identifier ifail )
|
|
Syntax:
|
( ouiden tag ) => int
|
Args:
|
entity
|
Returns:
|
identifier
|
OUIDLS - KI function to output identifiers of a list of entities
Syntax:
|
( OUIDLS tag ) => ( tag int ifail )
|
Args:
|
list
|
Returns:
|
( id_list nitems ifail )
|
|
Syntax:
|
( ouidls '( tag ...)) => ( int ... )
|
Args:
|
'( entity ... )
|
Returns:
|
( int ... )
|
OUINTP - KI function to output interface parameters
Syntax:
|
( OUINTP int ) => ( int double ifail )
|
Args:
|
option
|
Returns:
|
( ival rval ifail )
|
|
Syntax:
|
( ouintp <token> ) => ( int string ) or (( int string ) ... )
|
Args:
|
<option>
|
Returns:
|
( ival description )
|
Example:
|
( ouintp 'SLIPLC )
( ouintp )
|
|
Notes:
|
The return value is given as a list containing the integer value (as returned directly by the KI), and the string describing its meaning. Any programming applications should use the actual integer parameter; the string message is only meant as mnemonic aid.
|
The parameter is optional, if it is omitted a list of all current option settings will be returned, each element of the list formed as described above.
|
OULERR - KI function to enquire on the most recent KI-error
Syntax:
|
( OULERR int ) => ( int string int ifail )
|
Args:
|
option
|
Returns:
|
( ival sval length ifail )
|
|
Syntax:
|
( oulerr <token> ) => ( string string ( string ) string ) or ( int string )
|
Args:
|
<option>
|
Returns:
|
( ifail_mnemonic KI_routine ( bad_arg ) error_message ) or ( ival sval )
|
Example:
|
( oulerr 'SLEREX )
( oulerr )
|
|
Notes:
|
The parameter is optional. If it is omitted a list of strings is created to return a generic message containing information from several options combined. If it is supplied the ival and sval for that option are returned.
|
OUMODP - KI function to output modeling parameter
Syntax:
|
( OUMODP int ) => ( int double ifail )
|
Args:
|
option
|
Returns:
|
( ival rval ifail )
|
|
Syntax:
|
( oumodp token ) => double
|
Args:
|
option
|
Returns:
|
resolution
|
OUOFSU - KI function to output an offset surface
Syntax:
|
( OUOFSU tag ) => ( tag double int ifail )
|
Args:
|
surface
|
Returns:
|
( underlying_surface distance sense ifail )
|
|
Syntax:
|
( ouofsu tag ) => ( tag double logical )
|
Args:
|
surface
|
Returns:
|
( underlying_surface distance sense )
|
Example:
|
( ouofsu 20 )
|
OUPART - KI function to output key and state of a part
Syntax:
|
( OUPART tag int ) => ( int address int ifail )
|
Args:
|
part buffer_length
|
Returns:
|
( length char_array state ifail )
|
|
Syntax:
|
( oupart tag ) => ( string token )
|
Args:
|
part
|
Returns:
|
( key state )
|
|
Notes:
|
The key may be the empty string ("") for anonymous parts.
|
OUPWPC - KI function to output B-curve in piecewise form
Syntax:
|
( OUPWPC tag token ) => ( tag int int int ifail )
|
Args:
|
paracurve basis
|
Returns:
|
( coeffs dim order nsegments ifail )
|
|
Syntax:
|
( oupwpc tag token ) => (( double... )...) int int int )
|
Args:
|
paracurve basis
|
Returns:
|
(( points ... ) dim order nsegments )
|
OUPWPS - KI function to output B-surface in piecewise form
Syntax:
|
( OUPWPS tag token ) => ( tag int int int int int logical ifail )
|
Args:
|
parasurface basis
|
Returns:
|
( coeffs dim uord vord ncol nrow sense ifail )
|
|
Syntax:
|
( oupwps tag token ) => ((( double ...)...) int int int int int logical )
|
Args:
|
parasurface basis
|
Returns:
|
((( point...)... ) dim uord vord ncol nrow sense )
|
OURVSU - KI function to output data on a surface of revolution
Syntax:
|
( OURVSU tag ) => ( tag vector vector int int tag ifail )
|
Args:
|
surface
|
Returns:
|
( curve point axis sense n_sings parameter_range ifail )
|
|
Syntax:
|
( ourvsu tag ) => ( tag vector vector logical int ( double double ))
|
Args:
|
surface
|
Returns:
|
( curve point axis sense n_sings ( t_low t_high ))
|
OUSPCU - KI function to output an SP-curve in B-spline form
Syntax:
|
( OUSPCU tag ) => ( tag tag int int int tag ifail )
|
Args:
|
SP-curve
|
Returns:
|
( surface ctrls dim order nctrl knots ifail )
|
|
Syntax:
|
( ouspcu tag ) => ( tag int int int ( ( double ... ) ... ) ( double ... ) )
|
Args:
|
SP-curve
|
Returns:
|
( surface dim order nctrl ( ( ctrl_pt ... ) ... ) ( knot ... ) )
|
OUSPPC - KI function to output a B-curve as spline points
Syntax:
|
( OUSPPC tag ) => ( tag int tag tag int ifail )
|
Args:
|
B-curve
|
Returns:
|
( points npts prop_list <real_list>_list nprops ifail )
|
|
Syntax:
|
( ousppc tag ) => ( ( vector ...) ( (token <real ...> ) ... ) )
|
Args:
|
B-curve
|
Returns:
|
( ( point ... ) ( ( code data ... ) ... ) )
|
OUSPPS - KI function to output a B-surface as spline points
Syntax:
|
( OUSPPS tag) => (tag int int tag tag int int ifail)
|
Args:
|
B-surface
|
Returns:
|
( points ncol nrow props <data_list>_list nprops sense ifail)
|
|
Syntax:
|
( ouspps tag) => ((vector ...) ((token <double ...>) ...) int int logical )
|
Args:
|
B-surface
|
Returns:
|
(( point...) (( code <data...>) ...) ncol nrow sense )
|
OUSTAT - KI function to output information about the current state of the kernel
Syntax:
|
( OUSTAT int ) => ( int double ifail )
|
Args:
|
option
|
Returns:
|
( ival rval ifail )
|
|
Syntax:
|
( oustat <token> ) => (int string ) or ((int string) ... )
|
Args:
|
<option>
|
Returns:
|
( ivalue string )
|
Example:
|
( oustat 'SLSTAR )
( oustat )
|
|
Notes:
|
Each option is returned in two ways, firstly as the integer directly provided by the KI, and secondly as a string describing its meaning. Only the first should be used by programming applications as the second is only intended as a mnemonic guide.
|
If the option is omitted, all the possible option requests are returned in a list with each element constructed as described above.
|
OUTATT - KI function to output an attribute
Syntax:
|
( OUTATT tag int ) => ( tag tag tag tag address ifail )
|
Args:
|
attribute bufsiz
|
Returns:
|
( owner int_list real_list int_list char_list ifail )
|
|
Syntax:
|
( outatt tag ) => ( tag ( int ... ) (double ... ) (string ... ) )
|
Args:
|
attribute
|
Returns:
|
( entity ( int_fields ) ( double_fields ) ( string_fields ) )
|
|
Notes:
|
The total length of the string_fields is restricted to 400 characters.
|
OUTBUB - KI function to output rudimentary bulletin board information
Syntax:
|
( OUTBUB logical ) => ( tag tag tag tag tag tag tag tag tag ifail )
|
Args:
|
empty
|
Returns:
|
( new changed deleted new_types changed_types deleted_types new_user changed_user deleted_user ifail )
|
|
Syntax:
|
( outbub logical ) => (( tag... ) ( tag... ) ( tag ... ) ( token... ) ( token... ) ( token... ) ((int...)...) ((int...)...) ((int...)))
|
Args:
|
empty
|
Returns:
|
(( new... ) (changed... ) ( deleted... ) ( new_type..) ( changed_type... ) ( deleted_type... ) ( new_user... ) ( changed_user ...) ( deleted_user... )
|
OUTCUR - KI function to output curve definition
Syntax:
|
( OUTCUR tag ) => ( int vector vector vector double double ifail )
|
Args:
|
curve
|
Returns:
|
( type vec1 vec2 vec3 real1 real2 ifail )
|
|
Syntax:
|
( outcur tag ) => ( token vector vector <vector> <double> <double> )
|
Args:
|
curve
|
Returns:
|
( type vec1 vec2 <vec3> <real1> <real2> )
|
Notes:
|
Only the appropriate elements are returned with the type token.
|
OUTLEN - KI function to output the tolerance value associated with an entity
Syntax:
|
( OUTLEN tag ) => ( double ifail )
|
Args:
|
entity
|
Returns:
|
( tolerance ifail )
|
|
Syntax:
|
( outlen tag ) => double
|
Args:
|
entity
|
Returns:
|
tolerance
|
Example:
|
( outlen 20 )
|
OUTPOI - KI function to output a point
Syntax:
|
( OUTPOI tag ) => ( int vector ifail )
|
Args:
|
point
|
Returns:
|
( type coords ifail )
|
|
Syntax:
|
( outpoi tag ) => vector
|
Args:
|
point
|
Returns:
|
coords
|
OUTRAN - KI function to output transformation
Syntax:
|
( OUTRAN tag ) => ( address ifail )
|
Args:
|
transform
|
Returns:
|
( real_array ifail )
|
|
Syntax:
|
( outran tag ) => ((double...) (double...) (double...) (double...))
|
Args:
|
transform
|
Returns:
|
(( transformation_matrix_coeff ...) ... )
|
|
Notes:
|
outran returns 16 real coefficients in a list of 4 x 4.
|
OUTRCU - KI function to output a trimmed curve
Syntax:
|
( OUTRCU tag) => (tag vector vector double double ifail)
|
Args:
|
trimmed_curve
|
Returns:
|
( curve start_pos end_pos start_parm end_parm ifail )
|
|
Syntax:
|
( outrcu tag ) => (tag vector vector double double )
|
Args:
|
trimmed_curve
|
Returns:
|
( curve start_pos end_pos start_parm end_parm )
|
OUTSFA - KI routine to output trimmed surfaces
Syntax:
|
( OUTSFA tag int address address ) => ( tag int tag tag tag ifail )
|
Args:
|
faces nopts opt_array data_array
|
Returns:
|
( surface no_of_trimming_sets list_list_<list>_trimmed_sp_curves list_list_<list>_geom list_list_<list>_topol ifail )
|
|
Syntax:
|
( outsfa tag '( ( token <data> ) ... ) ) =>
( tag int (<( ( ( tag <...> ) <( tag <...> )> < ( tag <...> )>) ... ) ... >) )
|
Args:
|
faces '( ( option <data> ) ... )
|
Returns:
|
( surface no_of_trimming_sets (<trimming_set> ... ) )
|
Examples:
|
spherical face:
(outsfa ( f0 tag ) ) => ( 33 0 nil )
|
circular face:
(outsfa ( f0 tag ) ) => ( 77 1 ( ( ( ( 99 ) ) ) ) )
(outsfa ( f0 tag ) '( ( SROPBS 0.1 ) ( SROPCU ) ( SROPNG ) ( SROPNT ) ) ) => ( 47 1 ( ( ( ( 99 ) ( 101 ) ( 89 ) ) ) ) )
|
cylinder face (crossing parameter seam):
(outsfa ( f0 tag ) ) =>
( 823 2 ( ( ( ( 842 845 848 851 ) ) ( ( 830 833 836 839 ) ) ) ) )
|
|
Notes:
|
The geom and topol lists are optional and are _missing_ (i.e. not even nil if not requested). So the third element of the output is a list of trimming_sets: i.e. ( trimming_set ... ) where a trimming_set is a list of trimmed_loops, so we have ( ( trimmed_loop ... ) ... ) where each trimmed loop is as follows:
|
options SROPNG and SROPNT:
-
trimmed_loop: ( ( sp_curve ... ) ( geom ... ) ( topol ... ) )
-
overall: (((( sp_curve ... ) ( geom ...) ( topol ... ) ) ... ) ... )
|
option SROPNG:
-
trimmed_loop: ( ( sp_curve ... ) ( geom ... ) )
-
overall: (((( sp_curve ... ) ( geom ...) ) ... ) ... )
|
option SROPNT:
-
trimmed_loop: ( ( sp_curve ... ) ( topol ... ) )
-
overall: (((( sp_curve ... ) ( topol ... ) ) ... ) ... )
|
neither option SROPNG nor SROPNT:
-
trimmed_loop: ( ( sp_curve ... ) )
-
overall: (((( sp_curve ... ) ) ... ) ... )
|
OUTSUR - KI function to output surface
Syntax:
|
( OUTSUR tag ) => ( int vector vector double double logical ifail )
|
Args:
|
surface
|
Returns:
|
( type vec1 vec2 double1 double2 sense ifail )
|
|
Syntax:
|
( outsur tag ) => ( token <vector> <vector> <double> <double> logical )
|
Args:
|
surface
|
Returns:
|
( type <vec1> <vec2> <double1> <double2> sense )
|
|
Notes:
|
outsur only returns the relevant surface parameters. The type and sense are always returned.
|
OUUFEN - KI function to return the user field of an entity
Syntax:
|
( OUUFEN tag ) => ( array ifail )
|
Args:
|
entity
|
Returns:
|
( workspace_address ifail )
|
|
Syntax:
|
( ouufen tag ) => ( int ... )
|
Args:
|
entity
|
Returns:
|
int_list
|
PICKEN - KI function to pick entities inside a cylindrical volume
Syntax:
|
( PICKEN tag tag vector vector double int int ) => ( int tag tag tag tag ifail )
|
Args:
|
parts transforms point axis radius opt type
|
Returns:
|
( nhit items indices distances points ifail )
|
|
Syntax:
|
( picken '( tag ... ) '( tag ... ) vector vector double token token ) => ( ( tag int double vector ) ... )
|
Args:
|
'( part... ) '( transform... ) point axis radius type <opt . SLPKIR>
|
Returns:
|
( ( item owner_index distance point ) ... )
|
|
Notes:
|
Either a list of parts or a single part tag may be passed to picken. If no transforms are required they may be supplied as nil.
|
PIERCE - KI function to remove face from a sheet
Syntax:
|
( PIERCE tag ) => ( ifail )
|
Args:
|
face
|
Returns:
|
( ifail )
|
|
Syntax:
|
( pierce tag ) => t
|
Args:
|
face
|
Returns:
|
t
|
PTENFE - KI function to put entities into feature
Syntax:
|
( PTENFE tag tag ) => ( ifail )
|
Args:
|
feature entity
|
Returns:
|
( ifail )
|
|
Syntax:
|
( ptenfe tag '( tag...)) => t
|
Args:
|
feature '( entity ... )
|
Returns:
|
t
|
|
Notes:
|
ptenfe accepts either a single entity or a list of entities, whereas PTENFE will accept only a single entity per call.
|
PTINLI - KI function to put values into a list of integers
Syntax:
|
( PTINLI tag int int address ) => ( ifail )
|
Args:
|
list start nitems integer_array
|
Returns:
|
( ifail )
|
|
Syntax:
|
( ptinli tag int '( int ... )) => tag
|
Args:
|
list start '( value ... )
|
Returns:
|
list
|
|
Notes:
|
Support function "enlist" provides convenient access to this function. ptinli echoes the original list as a return value.
|
PTRLLI - KI function to put values into a list of reals
Syntax:
|
( PTRLLI tag int int address ) => ( ifail )
|
Args:
|
list start nitems double_array
|
Returns:
|
( ifail )
|
|
Syntax:
|
( ptrlli tag int '( double ... )) => tag
|
Args:
|
list start '( value ... )
|
Returns:
|
list
|
|
Notes:
|
Support function "enlist" provides convenient access to this function. ptrlli echoes the original list as a return value.
|
PTTGLI - KI function to put values into a list of tags
Syntax:
|
( PTTGLI tag int int address ) => ( ifail )
|
Args:
|
list start ntags tag_array
|
Returns:
|
( ifail )
|
|
Syntax:
|
( pttgli tag int '( tag ... )) => tag
|
Args:
|
list start '( tag... )
|
Returns:
|
list
|
Example:
|
( pttgli 546 1 ( list (b0 tag ) ( c0 tag ) ) )
|
|
Notes:
|
Support function "enlist" provides convenient access to this function. pttgli echoes the original list as a return value.
|
RAYFIR - KI function to intersect ray with bodies
Syntax:
|
( RAYFIR tag tag int vector vector ) => ( int tag tag tag ifail )
|
Args:
|
parts transforms nhits point direction
|
Returns:
|
( nhits points faces indices ifail )
|
|
Syntax:
|
( rayfir '( tag ... ) '( tag ... ) int vector vector ) => ( vector tag int ) ... )
|
Args:
|
parts transforms nhits point direction
|
Returns:
|
(( coord face owner_index ) ... )
|
REDINS - KI function to redirect an instance
Syntax:
|
( REDINS tag tag ) => ( ifail )
|
Args:
|
instance part
|
Returns:
|
( ifail )
|
|
Syntax:
|
( redins tag tag ) => t
|
Args:
|
instance part
|
Returns:
|
t
|
REEDSH - KI function to replace the edges of a sheet body
Syntax:
|
( REEDSH tag address address ) => ( ifail )
|
Args:
|
sheet u_range v_range
|
Returns:
|
( ifail )
|
|
Syntax:
|
( reedsh tag '( double double ) '( double double ) ) => t
|
Args:
|
sheet '( u_low u_high ) '( v_low v_high )
|
Returns:
|
t
|
Example:
|
( reedsh 21 '( .1 .2 ) '( 3 4 ) )
(reedsh 21 ( list u_low v_low ) '( 3 4 ) )
|
RESUSH - KI function to replace the surface of a sheet body
Syntax:
|
( RESUSH tag tag double ) => ( tag int ifail )
|
Args:
|
sheet surface tolerance
|
Returns:
|
( edges nedges ifail )
|
|
Syntax:
|
( resush tag '( tag tag ) )) => <( tag ... )>
|
Args:
|
sheet surface tolerance
|
Returns:
|
<( edge ... )>
|
Example:
|
( resush 19 29 .1 )
|
RETLEN - KI function to restore Parasolid tolerance to the supplied edge
Syntax:
|
( RETLEN tag ) => ( int ifail )
|
Args:
|
edge
|
Returns:
|
( status ifail )
|
|
Syntax:
|
( retlen tag ) => token
|
Args:
|
edge
|
Returns:
|
status
|
Example:
|
( retlen 76 ) => RTTLOK
|
RMFASO - KI function to remove faces into new solids
Syntax:
|
( RMFASO tag int int ) => ( tag int tag tag int tag ifail )
|
Args:
|
faces actpar actoff
|
Returns:
|
( parents nparents parent_states offspring noff offspring_states )
|
|
Syntax:
|
( rmfaso '( tag ... ) token token ) => (( tag token ) ... ) (( tag token ) ... ))
|
Args:
|
faces actpar actoff
|
Returns:
|
((( parent state ) ... ) (( offspring state ) ... ))
|
ROLBFN - KI function to roll back or forward by n steps between roll-marks
Syntax:
|
( ROLBFN int ) => ( int ifail )
|
Args:
|
nsteps
|
Returns:
|
( nsteps ifail )
|
|
Syntax:
|
( rolbfn int ) => int
|
Args:
|
nsteps
|
Returns:
|
nsteps
|
ROLBLM - KI function to roll back changes since last roll-mark
Syntax:
|
( ROLBLM ) => ( ifail )
|
Args:
|
-none-
|
Returns:
|
( ifail )
|
|
Syntax:
|
( rolblm ) => t
|
Args:
|
-none-
|
Returns:
|
t
|
ROLSMK - KI function to set a roll-back mark
Syntax:
|
( ROLSMK ) => ( ifail )
|
Args:
|
-none-
|
Returns:
|
( ifail )
|
|
Syntax:
|
( rolsmk ) => t
|
Args:
|
-none-
|
Returns:
|
t
|
RRFCET - KI function to generate faceted rendering
Syntax:
|
( RRFCET int address address tag tag ) => ( ifail )
|
Args:
|
nopts opt_array opt_data entities transforms
|
Returns:
|
( ifail )
|
|
Syntax:
|
( rrfcet '(( token <double>... ) ... ) '( tag ...) '( tag ...)) => t
|
Args:
|
'(( option <data> ... ) ... ) '( entity ... ) '( transform ... )
|
Returns:
|
t
|
Example:
|
( rrfcet '(( RROPFS 5 0.6 ) ( RROPCV )) 7 nil )
|
|
Notes:
|
Each rrfcet option may be accompanied by real data values. Either a single entity or a list of entities may be faceted. The transform list may be supplied as nil.
|
RRHIDL - KI function to generate hidden line data
Syntax:
|
( RRHIDL int address address tag tag address ) => ( ifail )
|
Args:
|
nopts opts opt_data entities transforms view_matrix
|
Returns:
|
( ifail )
|
|
Syntax:
|
( rrhidl '(( token <double> ... ) ... ) '( tag... ) '( tag... ) '( double... )) => t
|
Args:
|
options entities transforms view_matrix
|
Returns:
|
t
|
Example:
|
( rrhidl nil 410 nil Vw )
( rrhidl '(( RROPIV ) ( RROPPH 1 ( 0 0 1 )) '( 7 410 ) nil Vw )
|
|
Notes:
|
In rrhidl each option is passed in list together with any associated data parameters. A single body or a list of bodies may be passed. The transform list may be left as null. 16 doubles must be supplied to identify the viewing transform.
|
RRPIXL - KI function to generate shaded picture (pixel) data
Syntax:
|
( RRPIXL int address address tag tag address tag tag ) => ( ifail )
|
Args:
|
nopts opts optdata ents transf view_matrix pixel lights
|
Returns:
|
( ifail )
|
|
Syntax:
|
( rrpixl '(( token <double> ... )...) '( tag ... ) '( tag ... ) '( double ... ) '( double ... ) (( double ... )... )) => t
|
Args:
|
'(( option <data> ... )...) '( entity ...) '( transform ... ) '( view_matrix ... ) '( npix_x npix_y pix_size_x pix_size_y org_x org_y ) '(( light_type ( red green blue ) ( x y z )) ... ))
|
Returns:
|
t
|
Example:
|
( rrpixl '(( RROPDM ) ( RROPSF 0.5 0.5 0 0 1 )) '( 7 40 ) nil Vw '( 50 50 1 1 0 0 ) '(( 3 ( 0.3 0.3 0.3 ) ( 0.0 0.0 0.0 )) ( 1 ( 1 0 0 ) ( 0 0 1 ))))
|
RRVDEP - KI function to generate view dependent rendering data
Syntax:
|
( RRVDEP int address address tag tag address ) => ( ifail )
|
Args:
|
nopts opt_array opt_data entities transforms view
|
Returns:
|
( ifail )
|
|
Syntax:
|
( rrvdep '((token) ... ) '( tag ...) '( tag ...) '( double ... )) => t
|
Args:
|
'(( option ) ... ) '( entity ... ) '( transform ... ) view )
|
Returns:
|
t
|
Example:
|
( rrvdep '((RROPSI)) 7 nil Vw )
|
|
Notes:
|
Some rrvdep options are accompanied by real data. Either a single entity or a list of entities may be rendered. The transform list may be supplied as nil.
|
RRVIND - KI function to generate view independent rendering data
Syntax:
|
( RRVIND int address address tag tag ) => ( ifail )
|
Args:
|
nopts opt_array opt_data entities transforms
|
Returns:
|
( ifail )
|
|
Syntax:
|
( rrvind '(( token <double>... ) ... ) '( tag ...) '( tag ...)) => t
|
Args:
|
'(( option <data> ... ) ... ) '( entity ... ) '( transform ... )
|
Returns:
|
t
|
Example:
|
( rrvind '(( RROPIE ) ( RROPPA 0.5 0.5 )) 7 nil )
|
|
Notes:
|
Some rrvind options are accompanied by real data values. Either a single entity or a list of entities may be rendered. The transform list may be supplied as nil.
|
SAVMOD - KI function to save model in archive
Syntax:
|
( SAVMOD tag int string ) => ( ifail )
|
Args:
|
part length name
|
Returns:
|
( ifail )
|
|
Syntax:
|
( savmod tag string ) => t
|
Args:
|
part name
|
Returns:
|
t
|
SAVSNP - KI function to make a snapshot
Syntax:
|
( SAVSNP int string int ) => ( ifail )
|
Args:
|
length name unused
|
Returns:
|
( ifail )
|
|
Syntax:
|
( savsnp string ) => t
|
Args:
|
name
|
Returns:
|
t
|
SCRIBE - KI function to scribe a line on a face, a region or a wire body
Syntax:
|
( SCRIBE tag tag vector vector ) => ( tag int tag int ifail )
|
Args:
|
topol curve start end
|
Returns:
|
( new_edges nedges new_faces nfaces ifail )
|
|
Syntax:
|
( scribe tag tag vector vector ) => (( tag ... ) ( tag ... ))
|
Args:
|
topol curve start end
|
Returns:
|
(( new_edge ... ) ( new_face... ))
|
SEBBCO - KI function to set bulletin board controls
Syntax:
|
( SEBBCO int address address int address ) => ( ifail )
|
Args:
|
nentities entity_tokens event_tokens nopts option_tokens
|
Returns:
|
( ifail )
|
|
Syntax:
|
( sebbco '( (( token ... ) token ... ) ... ) '( token ... ))
|
Args:
|
'( (( entity_type ... ) event ... ) ... ) '( option .. )
|
Returns:
|
t
|
Example:
|
(sebbco '( ((TYTOFA TYTOED) (BBEVCR BBEVDE BBEVCH)) (TYTOBY (BBEVCR BBEVDE)) ) '(BBOPON) )
(setq saved_setting (oubbco)) (sebbco nil '(BBOPOF))
...
(apply 'sebbco saved_setting)
|
SECTBY - KI function to section bodies
Syntax:
|
( SECTBY tag tag ) => ( tag tag tag int ifail )
|
Args:
|
bodies surface
|
Returns:
|
( front_bodies back_bodies new_faces nfaces ifail )
|
|
Syntax:
|
( sectby tag tag ) => (( tag ... ) ( tag ... ) ( tag ... ))
|
Args:
|
bodies surface
|
Returns:
|
(( front_body... ) ( back_body... ) ( new_face ... ))
|
SEINTP - KI function to set interface parameter
Syntax:
|
( SEINTP int int double ) => ( ifail )
|
Args:
|
option ival rval
|
Returns:
|
( ifail )
|
|
Syntax:
|
( seintp token int ) => t
|
Args:
|
option ival
|
Returns:
|
t
|
Example:
|
( seintp 'SLIPRB 1000000 )
( seintp 'SLIPCH t )
|
|
Notes:
|
In the cases where 1 means "on" and 0 means "off", logical values t and nil may be used in place of integers.
|
SEMODP - KI function to set modeler parameter
Syntax:
|
( SEMODP int int double ) => ( ifail )
|
Args:
|
option ival rval
|
Returns:
|
( ifail )
|
|
Syntax:
|
( semodp token rval ) => t
|
Args:
|
option precision
|
Returns:
|
t
|
SESTPA - KI function to set state of part
Syntax:
|
( SESTPA tag int ) => ( ifail )
|
Args:
|
part state
|
Returns:
|
( ifail )
|
|
Syntax:
|
( sestpa tag token ) => t
|
Args:
|
part state
|
Returns:
|
t
|
SETLEN - KI function to associate a tolerance value with a face, edge or vertex
Syntax:
|
( SETLEN tag double ) => ( tag int ifail )
|
Args:
|
entity tolerance
|
Returns:
|
( new_edges n_edge ifail )
|
|
Syntax:
|
( setlen tag double ) => ( <tag> ... )
|
Args:
|
entity tolerance
|
Returns:
|
( <edge> ... )
|
Example:
|
( setlen 20 0.001 )
|
SEUFEN - KI function to set user field of entity
Syntax:
|
( SEUFEN tag address ) => ( ifail )
|
Args:
|
entity workspace_address
|
Returns:
|
( ifail )
|
|
Syntax:
|
( seufen tag '( int ... )) => t
|
Args:
|
entity int_list
|
Returns:
|
t
|
SHAREN - KI function to share the underlying geometry of a body
Syntax:
|
( SHAREN tag int address ) => ( int ifail )
|
Args:
|
body nopts opt_array
|
Returns:
|
( ngeom ifail )
|
|
Syntax:
|
( sharen tag '( <( token )> ...) ) => int
|
Args:
|
body '( <( option )> ... )
|
Returns:
|
( ngeom )
|
Example:
|
( sharen 26 nil )
( sharen 26 '( ( SHOPIC ) ) )
|
SIMPEN - KI function to simplify geometry in a body
Syntax:
|
( SIMPEN tag int ) => ( tag int ifail )
|
Args:
|
body level
|
Returns:
|
( geometry ngeometry ifail )
|
|
Syntax:
|
( simpen tag token ) => ( tag ... )
|
Args:
|
body level
|
Returns:
|
( new_geometry ... )
|
SPLTEN - KI function to split topology and geometry of body at any G1 discontinuities
Syntax:
|
( SPLTEN tag ) => ( int tag tag ifail )
|
Args:
|
body
|
Returns:
|
( n_splt_faces faces_split new_faces ifail )
|
|
Syntax:
|
( splten tag ) => (<( tag ( tag ... ) )> ... )
|
Args:
|
body
|
Returns:
|
(<( old_face ( new_face ... ) ) > ... )
|
Example:
|
( splten 26 )
|
SRCHIL - KI function to search for a value in a list of integers from a starting index
Syntax:
|
( SRCHIL tag int int ) => ( int ifail )
|
Args:
|
list value start
|
Returns:
|
( index ifail )
|
|
Syntax:
|
( srchil tag int <int> ) => int
|
Args:
|
list value <start . 1>
|
Returns:
|
index
|
SRCHRL - KI function to search for a value in a list of reals from a starting index
Syntax:
|
( SRCHRL tag double int ) => ( int ifail )
|
Args:
|
list value start
|
Returns:
|
( index ifail )
|
|
Syntax:
|
( srchrl tag double <int> ) => int
|
Args:
|
list value <start . 1>
|
Returns:
|
index
|
SRCHTG - KI function to search for a value in a list of tags from a starting index
Syntax:
|
( SRCHTG tag tag int ) => ( int ifail )
|
Args:
|
list value start
|
Returns:
|
( index ifail )
|
|
Syntax:
|
( srchtg tag tag <int> ) => int
|
Args:
|
list value <start . 1>
|
Returns:
|
index
|
STAMOD - KI function to start the modeler
Syntax:
|
( STAMOD logical int string int ) => ( tag int ifail )
|
Args:
|
kijon nchars journal_filename user_field
|
Returns:
|
( world ki_version ifail )
|
|
Syntax:
|
( stamod <string> <int> ) => string
|
Args:
|
<journal_filename . ""> <user_field . 0>
|
Returns:
|
ki_version
|
Example:
|
( stamod )
( stamod "my_journal" ) ( stamod 'op 4 )
|
|
Notes:
|
The default journalling is off, the default user field length is 0. The ifail KI_modeller_not_stopped is not treated as an error, should it occur this string is returned instead of the version number string.
|
STOMOD - KI function to stop modeler
Syntax:
|
( STOMOD ) => ( ifail )
|
Args:
|
-none-
|
Returns:
|
( ifail )
|
|
Syntax:
|
( stomod ) => string
|
Args:
|
-none-
|
Returns:
|
ifail_mnemonic
|
|
Notes:
|
The ifail KI_modeller_not_started is not treated as an error. This string is returned instead of KI_no_errors where necessary.
|
SUBBYS - KI function to subtract bodies
Syntax:
|
( SUBBYS tag tag ) => ( tag int ifail )
|
Args:
|
target tool
|
Returns:
|
( assembly nbodies ifail )
|
|
Syntax:
|
( subbys tag '( tag ... )) => ( tag int )
|
Args:
|
target '( tool ... )
|
Returns:
|
( assembly nbodies )
|
Example:
|
( subbys 7 71 )
( subbys 7 '( 71 145 ))
|
SWEENT - KI function to sweep entity
Syntax:
|
( SWEENT tag vector ) => ( tag int int ifail )
|
Args:
|
entity path
|
Returns:
|
( laterals nlaterals state ifail )
|
|
Syntax:
|
( sweent '( tag ... ) vector ) => (( tag ... ) token )
|
Args:
|
'( entity ... )
|
Returns:
|
(( new_lateral ... ) state )
|
Example:
|
( sweent '( 6 10 22 ) '( 0 0 1 ))
( sweent 7 '( 5 5 5 ))
|
|
Notes:
|
sweent can be applied to a single body, vertex or face, or a list of faces.
|
SWIENT - KI function to swing entity
Syntax:
|
( SWIENT tag vector vector double ) => ( tag int int ifail )
|
Args:
|
entity point direction angle
|
Returns:
|
( new_laterals nlaterals state ifail )
|
|
Syntax:
|
( swient '( tag ... ) vector vector double ) => (( tag ... ) state )
|
Args:
|
'( entity ... ) point direction angle
|
Returns:
|
(( new_lateral ... ) state )
|
Example:
|
( swient 7 '( 0 0 0 ) '( 0 0 1 ) 1.57 )
( swient '( 19 64 ) '( 0 0 0 ) '( 0 0 1 ) pi_2 )
|
|
Notes:
|
swient accepts either a single vertex, face or body or a list of faces.
|
TAPFAS - KI function to taper faces in a body
Syntax:
|
( TAPFAS tag vector vector double ) => ( tag int int ifail )
|
Args:
|
faces point direction angle
|
Returns:
|
( tapered_faces nfaces state ifail )
|
|
Syntax:
|
( tapfas '( tag ... ) vector vector double ) => (( tag ... ) token )
|
Args:
|
'( face ... ) point direction angle
|
Returns:
|
(( tapered_face ... ) state )
|
Example:
|
( tapfas '( 6 38 100 ) '(0 0 0) '(0 0 1) 0.3 )
|
THIKEN - KI function to thicken a sheet body into a solid
Syntax:
|
( THIKEN tag double double logical double int ) => ( tag tag tag int ifail )
|
Args:
|
sheet front_thickness back_thickness check tolerance max_flts
|
Returns:
|
( old_topol new_topol bad_topol state ifail )
|
|
Syntax:
|
( thiken tag double double logical double int ) =>
(( tag ... ) ( tag ... ) (<tag> ... ) token )
|
Args:
|
sheet front_thickness back_thickness check tolerance max_flts
|
Returns:
|
(( old _topol ... ) ( new_topol ...) (<bad_topol> ... ) state )
|
Example:
|
( thiken 146 .1 t .0000001 0 )
|
TRIMSH - KI function to trim a sheet body to supplied curves
Syntax:
|
( TRIMSH tag int address int address address ) => ( ifail )
|
Args:
|
sheet n_curves curves n_opts opt_array opt_data
|
Returns:
|
( ifail )
|
|
Syntax:
|
( trimsh tag ( tag ... ) <( ( token double ... ) ... )> ) => t
|
Args:
|
sheet ( curve ... ) <'( ( option data ) ... ) )>
|
Returns:
|
t
|
Example:
|
( trimsh 21 '( 34 35 36 37 ) '( ( SLTRRE 1.0 1.0 1.0 3.0 3.0 3.0 ) ) )
|
|
Notes:
|
(i) At present the only options available are SLTRRE and SLTRKE. These are mutually exclusive and one of them must be supplied.
(ii) The option data may be bracketed to aid readability, i.e. '( ( SLTRRE 1.0 1.0 1.0 3.0 3.0 3.0 ) ) and '( ( SLTRRE ( 1.0 1.0 1.0 ) ( 3.0 3.0 3.0 ) ) ) are equivalent.
|
TRSHCU - KI function to trim a sheet body with curves
Syntax:
|
( TRSHCU tag int address int address vector ) => ( tag int tag tag ifail )
|
Args:
|
sheet ncurves trim_curves nopts opts direction
|
Returns:
|
( edges nedges derived_curves original_edges ifail )
|
|
Syntax:
|
( trshcu tag '( tag ... ) '(( token ) ... ) vector ) =>
( ( tag ... ) ( tag ... ) ( logical ... ) )
|
Args:
|
sheet trim_curves options direction
|
Returns:
|
( ( edge ... ) ( derived_curve ... ) ( original_edge ... ) )
|
Example:
|
( trshcu 21 '(33) '( TRSHPD ) '(0 0 1))
|
TWEFAC - KI function to transform geometry of faces
Syntax:
|
( TWEFAC tag tag ) => ( int ifail )
|
Args:
|
faces transforms
|
Returns:
|
( state ifail )
|
|
Syntax:
|
( twefac '( tag ... ) '( tag ... ) ) => token
|
Args:
|
faces transforms
|
Returns:
|
state
|
Example:
|
( twefac 100 150)
( twefac '( 64 100 ) 150 ) ( twefac '( 36 ( 64 100 ) ) '( 150 170 ) )
|
TWSUFA - KI function to tweak the surface(s) of face(s)
Syntax:
|
( TWSUFA tag tag logical ) => ( int ifail )
|
Args:
|
face surface sense
|
Returns:
|
( state ifail )
|
|
Syntax:
|
( twsufa '( tag ...) '( tag ... ) '( logical ... ) => token
|
Args:
|
faces surfaces senses
|
Returns:
|
state
|
Example:
|
( twsufa 22 35 t )
( twsufa '(22 25) '(35 38) '(t f)
|
UNIBYS - KI function to unite bodies
Syntax:
|
( UNIBYS tag tag ) => ( tag int ifail )
|
Args:
|
target tools
|
Returns:
|
( assembly nbodies ifail )
|
|
Syntax:
|
( unibys tag '( tag ... )) => ( tag int )
|
Args:
|
target '( tool ... )
|
Example:
|
( unibys 7 45 )
( unibys 7 '( 130 212 ))
|
Returns:
|
(assembly nbodies )
|
UNLDPA - KI function to unload part
Syntax:
|
( UNLDPA tag ) => ( ifail )
|
Args:
|
part
|
Returns:
|
( ifail )
|
|
Syntax:
|
( unldpa tag ) => t
|
Args:
|
( unldpa part )
|
Returns:
|
t
|
[back to top]