Skip to content

Translate Direction Distance Keep Name

KaiUR edited this page Jun 3, 2026 · 8 revisions

Translate Direction Distance Keep Name

File: Part_Document_Scripts/Translate_Direction_Distance_Keep_Name.py
Version: 1.5
Document Type: Part (also works with Part inside Product or Process)


Description

Translates selected hybrid shapes by a user-defined direction and distance, preserving the original names of all shapes. The result is created as a datum (isolated) so it has no parametric link to the source geometry.


Requirements

Requirement Value
Python >= 3.10
pycatia >= 0.8.3
wxPython Required
Open document Part, or Part inside Product/Process

Usage

  1. Open a CATPart document with hybrid shapes and an axis system
  2. Run the script
  3. Selection 1: Select the hybrid shapes to translate — click OK when done
  4. Selection 2: Select a face or line of an axis system to define the translation direction
  5. A dialog appears asking for the distance to translate — enter a value in mm and click OK
  6. Translated shapes are created as datums in the current in-work geometric set with the same names as the source shapes

Output

  • Translated shapes are added to the current in-work geometric set
  • If the in-work object is not a geometric set, a new geometric set named Translate_Keep_Name is created
  • All results are datums (isolated) — no parametric link to source geometry

Notes

  • The direction must be defined by selecting a face or line of an axis system — selecting other geometry types will cause the script to exit with an error
  • Enter a positive distance to translate in the selected direction, negative to translate in the opposite direction
  • The script supports Points, Curves, Lines, Circles, and Surfaces
  • Source shapes are not deleted or modified

Home


Getting Started


Contributing


Any Document Scripts


Drawing Document Scripts


Part Document Scripts


Shape Generation Scripts


Process Document Scripts


Product Document Scripts


Utility Scripts


Legal

Clone this wiki locally