Skip to content

Rotate Three Points Keep Name

KaiUR edited this page May 21, 2026 · 6 revisions

Rotate Three Points Keep Name

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


Description

Rotates selected hybrid shapes using a three-point definition (center, start, end), 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 Not required
Open document Part, or Part inside Product/Process

Usage

  1. Open a CATPart document with hybrid shapes and three points defining the rotation
  2. Run the script
  3. Selection 1: Select the hybrid shapes to rotate — click OK when done
  4. Selection 2: Select the start point (defines the from-direction)
  5. Selection 3: Select the center point (pivot of the rotation)
  6. Selection 4: Select the end point (defines the to-direction)
  7. Rotated shapes are created as datums in the current in-work geometric set with the same names as the source shapes

Output

  • Rotated 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 Rotate_Three_Points_Keep_Name is created
  • All results are datums (isolated) — no parametric link to source geometry

Notes

  • The rotation angle is implicitly defined by the angle between the center→start and center→end vectors
  • The script supports Points, Curves, Lines, Circles, and Surfaces
  • Source shapes are not deleted or modified
  • For rotating all shapes in a geometric set at once use Rotate Three Points Keep Name And Structure
  • For rotation defined by an explicit angle use Rotate Angle Keep Name

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