Peerapong, Here is the "old-fashioned" (before Pro/E had Animation capability) method mentioned above: Create two parameters, say OFFSET and ROTATION, that control linear and rotational movement respectively, then write relations that keep them coordinated based on a third parameter designating the thread PITCH. Now, to show motion, write relations that will increment OFFSET each time you regenerate. Then create a simple mapkey that does Regenerate, Regenerate, Regenerate,... multiple times. This will create simulated proper motion of the screw. Finally, write relations to reset the model after the screw has moved some predetermined distance. OFFSET=OFFSET+.02 D0:1=OFFSET ROTATION=360*((OFFSET/PITCH)-FLOOR(OFFSET/PITCH)) D1:1=ROTATION IF OFFSET>1.0 OFFSET=0 ROTATION=0 ENDIF Obviously, D0:1 & D1:1 are the appropriate assembly dimensions for the screw. The first line increments the motion, and the third line normalizes the angle so that it is always between 0 & 360. The IF-ENDIF section resets the model to 0. You will have to take care creating your two helical cuts to make them match at 0. Also watch out for CW vs CCW positive rotation when you assemble the screw. David