[Integration Kit Contents] [Integration Kit What's New] [Integration Kit Function Index] [More Documentation] [PTC]

Thread Extensions

Convention

  1. Inside Creo Elements/Direct Modeling the outer thread has to be created with nominal diameter (crest) of the thread.
  2. Inside Creo Elements/Direct Modeling the inner thread has to be created with core diameter (root) of the thread.
  3. Parts with inner threads and parts with outer threads may clash.
  4. Clashing of inner and outer thread parts is removed during view update of Annotation Module when the thread axis are aligned.
  5. The diameter of thread in INCH sizes are normally handled by writing nominator<slash>denominator. The integer part is separated by a blank or an underline. Those diameter values are passed as a string to the Integration Kit functions.
    Examples are: "1/4" "5/16" "3/8" "1/2" "1" 1_1/8" "1 1/8" "1_1/4" ....

Function Index Top of Page

SD-DEFINE-THREAD  [function]

(sd-define-thread face
                  :nominal-diameter nominal-diameter ( unit :MM )
                  :nominal-diameter-inch nominal-diameter-inch ( unit :INCH )
                  :nominal-diameter-text nominal-diameter-text
                  :core-diameter core-diameter ( unit :MM )
                  :pitch pitch ( unit :MM )
                  :TPI  TPI ( number )
                  :tpi-numerator tpi-numerator ( number )
                  :tpi-denominator tpi-denominator ( number )
                  :thread-direction thread-direction
                  :thread-type thread-type
                  :thread-number thread-number
                  :thread-hand thread-hand
                  :thread-unit thread-unit
                  :color color
                  :include-chamfer include-chamfer
                  :thread-name thread-name
                  :thread-profile thread-profile)
Description:
Mark a cylindrical face as thread to be recognized. Faces marked with that function will show additional thread lines in Annotation drawings. These data attached to the cylindrical face will also be used for the export of CAM output of Creo Elements/Direct Modeling Module Machining as long as the information was given by the modules Machining or Mold Base.
Parameters:
face {sel-item} - The cylindrical face to mark as thread
:nominal-diameter*1) {positive LONG-FLOAT} - The nomimal diameter of the thread
:nominal-diameter-inch*1) {string | positive LONG-FLOAT} - The nomimal diameter of the thread in inch syntax.
:nominal-diameter-text {string} - The nomimal diameter given as a string. The string is taken as it is. This option should only be used for threads with a nominal diameter which cannot be derived from a real measured value of the thread (e.g. some rare pipe threads)
:core-diameter {positive LONG-FLOAT} - The core diameter of the thread
:pitch*2) {positive LONG-FLOAT} - The pitch of the thread measured as distance between two rising edges
:TPI*2) {positive number) - The number of threads per inch
:tpi-numerator*2)*4) ( non negative number ) - The numerator of a fractional thread-per-inch specification (i.e. 1 if a 4½ is specified)
:tpi-denominator*2)*4) ( positive number ) - The denominator of a fractional thread-per-inch specification (i.e. 2 if a 4½ is specified)
:tpi-text*4) ( string ) - The text to be displayed as pitch value (i.e. 4½ tpi)
:thread-direction {GPNT3D | :CYL-AXIS | :REVERSE-CYL-AXIS } - The direction of the thread, in global space, or as keyword to specify the direction relative to the axis of the cylinder (see sd-cylinder-axis-dir)
:thread-type {KEYWORD} - The thread type
:INNER
:OUTER
:thread-number {positive number [1]} - The number of thread starts (1 = single thread)
:thread-hand {KEYWORD [:right-hand]} - The thread hand
:LEFT-HAND
:RIGHT-HAND
:thread-unit {KEYWORD} - The thread unit. This keyword will define a factor to calculate the core diameter out of nominal diameter and pitch.
:METRIC - core-diameter as used in most of the metric thread standards
  core-diameter = nominal-diameter - (1.22687 * pitch) *3)
:INCH - core diameter calculation formula from machinerys handbook
  core-diameter = nominal-diameter - (2 * (17/24) * cos (PI/6) / TPI)
:thread-profile {KEYWORD} - The thread profile. Supported keywords by CAM output of Machining are:
:BSW - British Standard Whithworth Thread
:BSF - British Standard Fine Thread
:BSP - British Standard Pipe Thread
:UNC - Unified National Coarse Screw Thread (US)
:UNF - Unified National Fine Screw Thread (US)
:NPT - National Pipe Thread
:M - Metric
:MF - Metric fine
:TR - trapezoid (DIN 103)
:flat_trapezoid - trapezoid (DIN 380)
:S - saw (DIN 513)
:R - Round
:ROUND_MINING - Round mining
:E - Edison
:Pipe_Rp - Pipe Thread Rp (DIN EN 10226)
:Pipe_G - Pipe Thread G (DIN ISO 228)
:Pipe_PG
:Pipe_JIS_B_0203 (JIS B 0203)

Other profiles can also be used: To get a correct thread dimension in Annotation the keyword for :thread-profile passed in has to match to one keyword of the Annotation thread dimension format. Available Annotation thread dimension profiles can be found in the HTML page of the settings or inquired via
(sd-get-setting-styles-range-list "Annotation/Dimension/Specific/Thread/FormatStyle").
:color {GPNT3D} - R,G,B color vector, all faces belong to the thread are set to this color, default: 1.0,0.63,0.6. When color is specified with NIL the color of faces will not be changed.
:include-chamfer {T/NIL [T]} - cone faces adjoining the cylindrical face will also belong to the thread
:thread-name {string [string depending on :thread-unit]} - the string to specify a thread.

*1) :nominal-diameter and :nominal-diameter-inch are exclusive
*2) :pitch and :TPI are exclusive
*3) this formula is used with respect to DIN 32869 and calculates the core diameter of an outer thread. If the core-diameter is not given, it will be calculated out of nominal diameter and pitch by using the shown formula.
thread-unit is a must parameter now
*4) fractional thread-per-inch values are supported for thread profiles :unc and :npt only.

Remark:
recommended is use of

Return Value:
{T/NIL}
nil - an error occurred, second return value gives a hint why the error occurred
Examples:
;; Metric thread M8x1.25
(SD-DEFINE-THREAD
 the-face
 :nominal-diameter 8.0
 :core-diameter 6.8
 :pitch 1.25
 :thread-type :INNER
 :thread-unit :METRIC
 :thread-color NIL
 :include-chamfer T
 :thread-direction 0.0,0.0,-1.0)


;; 3/8-16  ANSI thread 3/8"  16 threads per inch
;;        --> values called with inch
(SD-DEFINE-THREAD
 the-face
 :nominal-diameter-inch "3/8"
 :core-diameter 7.9375
 :TPI 16
 :thread-type :INNER 
 :thread-unit :INCH
 :thread-color 1.0,0.0,0.0
 :include-chamfer T
 :thread-direction 0.0,0.0,-1.0
 :thread-profile :UNC)

;; Pipe thread ISO 228 G 7/8
(SD-DEFINE-THREAD
 the-face
 :nominal-diameter 30.2 ;;  because 7/8" <> diameter
 :nominal-diameter-inch "7/8"
 :core-diameter 27.877894
 :TPI 12
 :thread-type :INNER
 :thread-unit :INCH
 :thread-color NIL
 :thread-direction 0.0,-1.0,0.0
 :thread-profile :R
 :thread-hand :RIGHT-HAND
 :thread-name "Pipe thread ISO 228 G 7 8")
An example application is listed here

Function Index Top of Page

SD-DESTROY-THREAD  [function]

(sd-destroy-thread face)
Description:
Remove the thread information the cylindrical face was marked with.
Parameters:
face {sel-item} - The cylindrical face marked as thread
Return Value:
{T/NIL}
nil - an error occurred

Function Index Top of Page

SD-INQ-THREAD  [function]

(sd-inq-thread face)
Description:
Returns the thread parameter of the specified face
Parameters:
face {SEL_ITEM}
Return Value:
{PROPERTY LIST or NIL}
:nominal-diameter {positive LONG-FLOAT} - The nomimal diameter of the thread
:nominal-diameter-inch {string} - The nomimal diameter of the thread in inch syntax
:core-diameter {positive LONG-FLOAT} - The core diameter of the thread
:pitch {positive LONG-FLOAT} - The pitch of the thread
:TPI {positive number) - The number of threads per inch
:thread-type{KEYWORD} - The thread type
:thread-number {positive number} - The number of thread starts
:thread-hand {KEYWORD} - The thread hand
:thread-unit{KEYWORD} - The thread unit
:thread-direction {GPNT3D} - The direction of the thread, in global space
:color {GPNT3D} - R,G,B color vector, color of face
:include-chamfer {T/NIL} - cone faces adjoining the cylindrical face are included
:thread-name-unique{string} - The thread name inclusive a unique identification
:thread-name{string} - The thread name
:thread-profile {KEYWORD} - The thread profile.

If face does not belong to a thread return value of function is NIL.

See Also:
sd-define-thread [function]
[Integration Kit Contents] [Integration Kit What's New] [Integration Kit Function Index] [More Documentation] [PTC]
© 2023 Parametric Technology GmbH
(a subsidiary of PTC Inc.), All Rights Reserved