Macro CloneConvert/it

Other languages:

Macro CloneConvert

Descrizione
Crea un Clone/Copia/Composto dell'oggetto/degli oggetti e poi converte in una posizione e dimensione scelta (pollici, mm, m, µm...) o libera. L'oggetto base è riconosciuto in mm (base FreeCAD).

Versione macro: 0.16
Ultima modifica: 2025-01-06
Versione FreeCAD: ≥0.18
Download: ToolBar Icon
Autore: mario52
Autore
mario52
Download
ToolBar Icon
Link
Versione macro
0.16
Data ultima modifica
2025-01-06
Versioni di FreeCAD
≥0.18
Scorciatoia
Nessuna
Vedere anche
Nessuno

Descrizione

Crea un clone o una copia dell'oggetto e poi lo colloca nella posizione scelta e con le dimensioni desiderate (pollici, mm, m, µm...) o a piacere. L'oggetto base è misurato in mm (secondo il sistema base di FreeCAD)

Temporary code for external macro link. Do not use this code. This code is used exclusively by Addon Manager. Link for optional manual installation: Macro


# This code is copied instead of the original macro code
# to guide the user to the online download page.
# Use it if the code of the macro is larger than 64 KB and cannot be included in the wiki
# or if the RAW code URL is somewhere else in the wiki.

from PySide import QtGui, QtCore

diag = QtGui.QMessageBox(QtGui.QMessageBox.Information,
    "Information",
    "This macro must be downloaded from this link\n"
    "\n"
    "https://gist.githubusercontent.com/mario52a/9f2f2f6144e1307a048f1840ef99300c/raw/fb76b3c728c1c7cd085e87f5d6d223d9f79bb574/Macro_CloneConvert.FCMacro" + "\n"
    "\n"
    "Quit this window to access the download page")

diag.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint)
diag.setWindowModality(QtCore.Qt.ApplicationModal)
diag.exec_()

import webbrowser 
webbrowser.open("https://gist.githubusercontent.com/mario52a/9f2f2f6144e1307a048f1840ef99300c/raw/fb76b3c728c1c7cd085e87f5d6d223d9f79bb574/Macro_CloneConvert.FCMacro")
<class="rawcodeurl"><a href="https://gist.githubusercontent.com/mario52a/9f2f2f6144e1307a048f1840ef99300c/raw/fb76b3c728c1c7cd085e87f5d6d223d9f79bb574/Macro_CloneConvert.FCMacro">raw code</a>


Utilizzo

  1. Avviare la macro
  2. Definire le impostazioni di XYZ
  3. Scegliere "Clone" o "Copy"
  4. Scegliere un'unità di misura
  5. Selezionare l'oggetto
  6. Fare click su Ok

Note

I valori di BoundingBox, Volume e Surface sono indicati nella vista Report, nel caso di Copy per oggetti multipli, il display visualizza BoundingBox 0.0.

L'unità di base è il mm, esempio con il lato del cubo di 1 mm:

Selezionare nel comboBox l'unità inch, 1 inch = 25.4 mm , notare che il valore nei campi "Scale free" si adeguano automaticamente a 25.4 che corrisponde appunto a 1 pollice (per impostare scalature differenti secondo gli assi, i valori ​​in "Scale-free" possono essere modificati individualmente). Cliccare sul pulsante OK. Il cubo clone creato in questo modo ha le dimensioni di 25,4 mm

Operazione inversa :

Per convertire un oggetto, ad esempio un cubo di 25,4 mm (1 inch) in un cubo di 1mm x 1mm x 1mm, utilizzare la formula 1 / 25,4 = 0,0393700 e inserire il valore 0,0393700 (con la virgola) nel campo Scale X, Y e Z.

Per un cubo di 5mm, fare 5 / 25,4 = 0,1968503e inserire il valore 0,1968503 (con la virgola) nel campo Scale X, Y e Z.

150% = 1,50 nel campo "Scale free"
104% = 1,04 nel campo "Scale free"

Operazione inversa:

Per convertire un oggetto, ad esempio un cubo di 25,4 mm (1 inch) in un cubo di 1mm x 1mm x 1mm, utilizzare la formula 1 / 25,4 = 0,0393700 e inserire il valore 0,0393700 (con la virgola) nel campo Scale X, Y e Z.

Per un cubo di 5mm, fare 5 / 25,4 = 0,1968503e inserire il valore 0,1968503 (con la virgola) nel campo Scale X, Y e Z.

50% = 0,50 nel campo "Scale free"
4% = 0,04 nel campo "Scale free"

Le unita predefinite sono: km, hm, dam, m, dm, cm, mm, µm, nm, inch, link, foot, yard, perch, chain, furlong, mile, league, nautique.

CloneConvert
CloneConvert

Script

L'icona di Macro_CloneConvert:

Macro_CloneConvert.FCMacro

Scaricare la macro da Gist Macro_CloneConvert.FCMacro

Revisioni

01/06/2025 ver 00.16 sostituisce PySide2 con PySide aumenta mini e maxi cancella tutti i riferimenti a PySide, PySide2 e QtWidgets e corregge il clone, composto

06/06/2020 ver 0.15 = icon

20/05/2020 ver 0.14 = grid layout PySide2 Qt5

15/09/2019 ver 0.13 = replace the grec sign micro to "um", replace all "_translate("MainWindow", "mm", None)" to "mm" and comment line "text.encode('utf-8')" cause not work with FC 0.19 18.213

01/06/2019 ver 0.12 = adapted for 0.19 et correction "Copy:legacy=True" and ShapeColor .....

30/03/2018 ver 0.11 = odd checkBox, if multi selection the clone are object unique or object separate

07/06/2017 ver 0.10 = replace Draft...Copy to Part..Shape cause section Copy : not draw copy scaled of object but copy not scaled ??

14/06/2016 ver 0.9 = adding the choice of number of copies and labels optimization

31/01/2016 ver 0.8 = modify the buttons reset section for two click for reset (in case modification the value)

30/01/2016 ver 0.7 = rewriting code with Placement and Increment and adding buttons Compound, Increment, ValueAt(),

26/01/2016 ver 0.6 = correction placement with many objets Copy

26/07/2015 ver 0.5 = correction rotate many objects Function Copy

25/07/2015 ver 0.4 = adding rotation

11/08/2014 replace "AttributeError" to "Exception"

02/07/2014 ver. 0.3 = modified to operate PyQt4 and PySide

09/05/2014 ver. 0.2 = adding function "Copy"