FreeCAD Logo FreeCAD 1.0
  • English Afrikaans Arabic Belarusian Catalan Czech German Greek Spanish Spanish Basque Finnish Filipino French Galician Croatian Hungarian Indonesian Italian Japanese Kabyle Korean Lithuanian Dutch Norwegian Bokmal Polish Portuguese Portuguese Romanian Russian Slovak Slovenian Serbian Swedish Turkish Ukrainian Valencian Vietnamese Chinese Chinese
  • Features
  • Download
  • Blog
  • Documentation
    Documentation index Getting started Users documentation The FreeCAD manual Workbenches documentation Python coding documentation C++ coding documentation Tutorials Frequently asked questions Privacy policy About FreeCAD
  • Contribute
    How to help Sponsor Report a bug Make a pull request Jobs and funding Contribution guidelines Developers handbook Translations
  • Community
    Code of conduct Forum The FPA GitHub GitLab Codeberg Mastodon Matrix IRC IRC via Webchat Gitter Discord Reddit Twitter Facebook LinkedIn Calendar
  • ♥ Donate

Donate

$
SEPA Information
Please set up your SEPA bank transfer to:
Beneficiary: The FreeCAD project association
IBAN: BE04 0019 2896 4531
BIC/SWIFT: GEBABEBBXXX
Bank agency: BNP Paribas Fortis
Address: Rue de la Station 64, 1360 Perwez, Belgium

While Stripe doesn't support monthly donations, you can still become a sponsor! Simply make a one-time donation equivalent to 12 months of support, and you'll gain access to the corresponding sponsoring tier. It's an easy and flexible way to contribute.

If you are not sure or not able to commit to a regular donation, but still want to help the project, you can do a one-time donation, of any amount.

Choose freely the amount you wish to donate one time only.

You can support FreeCAD by sponsoring it as an individual or organization through various platforms. Sponsorship provides a steady income for developers, allowing the FPA to plan ahead and enabling greater investment in FreeCAD. To encourage sponsorship, we offer different tiers, and unless you choose to remain anonymous, your name or company logo will be featured on our website accordingly.

from 1 USD / 1 EUR per month. You will not have your name displayed here, but you will have helped the project a lot anyway. Together, normal sponsors maintain the project on its feet as much as the bigger sponsors.

from 25 USD / 25 EUR per month. Your name or company name is displayed on this page.

from 100 USD / 100 EUR per month. Your name or company name is displayed on this page, with a link to your website, and a one-line description text.

from 200 USD / 200 EUR per month. Your name or company name and logo displayed on this page, with a link to your website and a custom description text. Companies that have helped FreeCAD early on also appear under Gold sponsors.

Instead of donating each month, you might find it more comfortable to make a one-time donation that, when divided by twelve, would give you right to enter a sponsoring tier. Don't hesitate to do so!

Choose freely the amount you wish to donate each month.

Please inform your forum name or twitter handle as a notein your transfer, or reach to us, so we can give you proper credits!

Polar Pattern
Scale
PartDesign

PartDesign MultiTransform

Menu location
Part Design → Transformation Features → Multi-Transform
Workbenches
PartDesign
Default shortcut
None
Introduced in version
-
See also
PartDesign Mirrored, PartDesign LinearPattern, PartDesign PolarPattern, PartDesign Scaled

Description

The PartDesign MultiTransform tool creates a pattern of one or more features. The pattern can include multiple transformations where each subsequent transformation is applied to the result of the previous transformation.

The available transformations are: Mirror, Linear Pattern, Polar Pattern and Scale. The first three are also available as separate tools.

A pattern of holes created from a single Hole feature by applying a Linear Pattern with 2 occurrences, followed by a Polar Pattern with 8 occurrences.

Usage

Create

  1. Optionally activate the correct Body.
  2. Optionally select one or more features in the Tree View or the 3D View.
  3. There are several ways to invoke the tool:
    • Press the Multi-Transform button.
    • Select the Part Design → Transformation Features → Multi-Transform option from the menu.
  4. If there is no active Body, and there are two or more Bodies in the document, the Active Body Required dialog will open and prompt you to activate one. If there is a single Body it will be activated automatically.
  5. The Multi-Transform Parameters task panel opens. See Options for more information.
  6. Press the OK button at the top to finish.

Edit

  1. Do one of the following:
    • Double-click the MultiTransform object in the Tree View.
    • Right-click the MultiTransform object in the Tree View and select Edit Multi-Transform from the context menu.
  2. The Multi-Transform Parameters task panel opens. See Options for more information.
  3. Press the OK button at the top to finish.

Combine existing transformations

It is possible to create a MultiTransform object from existing Mirror, LinearPattern and Polar Pattern transformations.

  1. Check the DataOriginals property of the existing transformations to make sure they have been applied to the same features.
  2. Select those features in the Tree View.
  3. There are several ways to invoke the tool:
    • Press the Multi-Transform button.
    • Select the Part Design → Transformation Features → Multi-Transform option from the menu.
  4. The MultiTransform parameters task panel opens.
  5. Press the OK button at the top.
  6. Edit the DataTranformations property of the created MultiTransform object:
    1. Click in the field.
    2. Press the … button that appears.
    3. The Link dialog opens.
    4. Hold down the Ctrl key and select the existing transformations.
    5. Press the OK button.
  7. Optionally edit the MultiTransform object, see above.

Options

  • Choose the mode:
    • Transform body: Transforms the whole base feature's shape (default). introduced in 1.0
    • Transform tool shapes: Transforms the individual tool shapes of selected features.
      • To add features:
        1. Press the Add Feature button.
        2. Select a feature in the Tree View or the 3D View.
        3. Repeat to add more features.
      • To remove features:
        1. Press the Remove Feature button.
        2. Do one of the following:
          • Select a feature in the Tree View or the 3D View.
          • Select a feature in the list at the top and press the Del key.
          • Right-click a feature in the list at the top and select Remove from the context menu.
        3. Repeat to remove more features.
      • If there are several features in the pattern, their order can be important. See PartDesign PolarPattern.
  • To add transformations:
    1. If there are existing transformations: select the transformation after which the new transformation should be added.
    2. Right-click the Transformations list.
    3. Select one the following options from the context menu:
      • Add Mirror Transformation. See PartDesign Mirrored.
      • Add Linear Pattern. See PartDesign LinearPattern.
      • Add Polar Pattern See PartDesign PolarPattern.
      • Add Scaled Transformation. See PartDesign Scaled.
    4. The selected transformation is added to the list and the settings for the transformation are displayed below the list.
    5. Adjust the settings to suit.
    6. Press the OK bar at the bottom.
    7. Repeat to add more transformations.
  • To edit a transformation:
    1. Right-click the transformation in the Transformations list.
    2. Select Edit from the context menu.
    3. Adjust the settings to suit.
    4. Press the OK bar at the bottom.
  • To change the order of the transformations:
    1. Right-click a transformation in the Transformations list.
    2. Select Move Up or Move Down from the context menu.
  • If the Recompute on change checkbox is checked the view will update in real time.

Limitations

See PartDesign PolarPattern.

Example

You can use this tool to create a fully parametric part that is symmetrical about two axes from a sketch.

This could be a 150x100x10mm large mounting plate for a motor with symmetric holes.

  1. Create a Body and add a sketch on one of its base planes.
  2. In the sketch create geometry for one quadrant of the part (i.e. the upper right quadrant).
    • Note that the constraints must also only cover a quarter of the part, e.g. instead of the full dimension of 150mm enter 150/2mm or 75mm.
    • Make sure the sketch is closed by adding lines along the vertical and horizontal axes.
  3. Extrude the part with Pad.
  4. Select Multi-Transform.
  5. The task dialog opens.
  6. The last feature of the Body is already selected. Since we want to mirror that feature we can ignore the Add Feature and Remove Feature buttons.
  7. Right-click in the Transformations field and select Add Mirror Transformation from the context menu.
  8. For the Plane select Vertical sketch axis.
  9. If the Recompute on change checkbox is checked, you should now see the part mirrored about one axis.
  10. Again select Add Mirror Transformation from the context menu of the Transformations field.
  11. Now for the Plane select Horizontal sketch axis.
  12. Press the OK button to finish.
  13. To remove the edges along the axes of symmetry in the final result, set the DataRefine property of the new feature to true in the Property View.

To verify that the part is fully parametric open the initial sketch with the quarter part and change one dimension, say a hole diameter. After closing the sketch the three other holes will have changed accordingly. This works with all other dimensions as well. A sketch modelling the full part with a single extrusion and no mirroring would be a lot more complex and all later changes would be more complicated.


Polar Pattern
Scale
PartDesign

This page is retrieved from https://wiki.freecad.org/PartDesign_MultiTransform

Get in touch!
Forum GitHub Mastodon Matrix IRC Gitter.im Discord Reddit Twitter Facebook LinkedIn

© The FreeCAD Team. Homepage image credits (top to bottom): ppemawm, r-frank, epileftric, regis, rider_mortagnais, bejant.

This project is supported by: , KiCad Services Corp. and other sponsors

GitHubImprove this page on GitHub