Power users hub/it: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
No edit summary
 
(52 intermediate revisions by 6 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
{{TOCright}}
[[Image:Power_user_hub.png|64px]]
----


Questo è il posto per esplorare più a fondo FreeCAD. Qui si può imparare a personalizzazione e estendere FreeCAD secondo le proprie esigenze.
[[Image:Crystal_Clear_app_terminal.png|right|150]]


FreeCAD è estendibile con il codice [[Python/it|Python]] che viene eseguito direttamente nella [[Python_console/it|Console Python]] o che viene caricato dai moduli all'avvio. Questo significa che è possibile modificare FreeCAD senza dover ricompilare il programma. Ad esempio, è possibile:
Questo è il posto per esplorare più a fondo FreeCAD. Qui si può imparare a personalizzazione FreeCAD secondo le proprie esigenze.
* '''Creare e modificare elementi di geometria''': serve un particolare oggetto (forma o linea speciale) che non è presente nell'installazione di default FreeCAD? Si può facilmente creare un nuovo tipo di oggetto, sia partendo da zero che adattando un tipo di oggetto esistente.
* '''Creare strumenti e comandi personalizzati''': aggiungere un set di strumenti che eseguono il proprio codice.
* '''Modificare l'interfaccia''': creare delle barre degli strumenti per mettere i propri strumenti, creare finestre, pannelli o interfacce speciali per interagire con i propri strumenti.
*'''Modificare il grafo della scena''': per costruire e calcolare la geometria, FreeCAD usa processi diversi da quelli che usa per visualizzare la geometria sullo schermo. Si ha accesso totale al modo in cui i contenuti della scena vengono visualizzati sullo schermo, quindi è possibile modificare tale rappresentazione, interagire con essa, o aggiungere tutti i tipi di comportamenti personalizzati e agli accessori dello schermo, quali, ad esempio, informazioni, opzioni di trascinamento, ancoraggio o entità temporanee.


Se si desidera contribuire con contenuti a queste pagine, richiedere un account wiki con autorizzazioni dell'editor [https://forum.freecadweb.org/viewtopic.php?f=21&t=6830 nel forum] e leggere le [[WikiPages|WikiPages]] per le linee guida generali da seguire. Per gli altri modi di contribuire al progetto, vedere la pagina [[Help_FreeCAD/it|Contribuire a FreeCAD]].
Queste pagine sono in fase di sviluppo. Se non si trovano le informazioni che si stanno cercando, o se da qualche altra parte si trovano informazioni utili che non sono linkate, si prega di lasciare un commento nel [http://forum.freecadweb.org/ forum], e perché non [[Help_FreeCAD/it|aggiungere personalmente altro contenuto a queste pagine]]!

Una delle caratteristiche migliori di FreeCAD consiste nella possibilità di creare degli script e di estenderlo notevolmente senza dover compilare nulla o intervenire sul codice sorgente. Tutta la parte degli script è realizzata in Python, un linguaggio di programmazione molto potente, ma semplice. Con semplici script [http://en.wikipedia.org/wiki/Python Python], si ha accesso totale a quasi tutte le parti di FreeCAD. Ad esempio, è possibile:
* '''Creare e modificare elementi di geometria''': Serve un particolare oggetto (forma o linea speciale) che non è presente nell'installazione di default FreeCAD? Si può facilmente creare un nuovo tipo di oggetto, sia partendo da zero che adattando un tipo di oggetto esistente.
* '''Creare strumenti e comandi personalizzati''': Al momento, FreeCAD offre già ampie funzionalità, ma mancano ancora diversi pratici strumenti e comandi utili all'utente finale, ma è facile creare dei propri set di strumenti.
* '''Modificare l'interfaccia''': In questo momento l'interfaccia utente di FreeCAD è ancora molto semplice, ma è disponibile tutto quello che serve per adattarla alle proprie esigenze. È possibile, ad esempio, creare barre degli strumenti in cui inserire i propri strumenti, creare speciali pannelli per interagire con gli strumenti, ecc.
*'''Modificare la visualizzazione della scena''': Per costruire e calcolare la geometria, FreeCAD usa processi diversi da quelli che usa per visualizzare la geometria sullo schermo. Si ha accesso totale al modo in cui i contenuti della scena vengono visualizzati sullo schermo, quindi è possibile modificare tale rappresentazione, interagire con essa, o aggiungere tutti i tipi di comportamenti personalizzati e agli accessori dello schermo, quali, ad esempio, informazioni, opzioni di trascinamento, ancoraggio o entità temporanee.


<span id="Customizing_FreeCAD"></span>
== Personalizzare FreeCAD ==
== Personalizzare FreeCAD ==


Line 20: Line 22:
* [[Customize_Toolbars/it|Personalizzare la barra degli strumenti]]
* [[Customize_Toolbars/it|Personalizzare la barra degli strumenti]]
* [[Installing_more_workbenches/it|Installare ambienti aggiuntivi]]
* [[Installing_more_workbenches/it|Installare ambienti aggiuntivi]]
* [http://forum.freecadweb.org/viewtopic.php?t=10556 Plugin Loader]
* [https://github.com/FreeCAD/FreeCAD-addons Addons installer.FCMacro]


<span id="Scripting_in_FreeCAD"></span>
== Script in FreeCAD ==
== Script in FreeCAD ==


<span id="General"></span>
===Generale===
===Generale===

* [[Introduction to Python/it|Introduzione a Python]] - Vedere anche altri tutorial Python in fondo a questa pagina
* [[Scripting_and_macros/it|Scripting e Macros]] - Un elenco di pagine wiki rilevanti
* [[Python scripting tutorial/it|Guida agli script in FreeCAD]] - Uno sguardo generale agli script in Python FreeCAD
* [[Introduction_to_Python/it|Introduzione a Python]] - Vedere anche altri tutorial Python in fondo a questa pagina
* [[FreeCAD Scripting Basics/it|Script base in FreeCAD]]: Gli script di base...
* [[Python_scripting_tutorial/it|Guida agli script in FreeCAD]] - Uno sguardo generale agli script in Python FreeCAD
* [[Gui Command/it|Comandi dell'interfaccia grafica]] : Aggiungere comandi personalizzati alla GUI
* [[FreeCAD_Scripting_Basics/it|Script base in FreeCAD]]: Gli script di base.
* [[Manual:A_gentle_introduction/it|Manuale FreeCAD - Sezione Python Scripting]]: Introduzione in più capitoli agli script Python in FreeCAD
* [[Gui_Command/it|Comandi dell'interfaccia grafica]] : Aggiungere comandi personalizzati alla GUI
* [[Units/it|Unità]]: utilizzare unità miste in FreeCAD
* [[Units/it|Unità]]: utilizzare unità miste in FreeCAD
* [[Profiling/it|Profilazione]] del codice Python
* [[Debugging/it#Eliminare errori Python|Debugging]] del codice Python
*[[Python_Development_Environment/it|Python Development Environment]] - Un ambiente di sviluppo semplicistico per Python all'interno di FreeCAD


<span id="Modules"></span>
=== Moduli ===
=== Moduli ===


Line 39: Line 48:
* La pagina [[Workbench creation/it|Creare un Ambiente di lavoro]] spiega come creare un proprio ambiente di lavoro.
* La pagina [[Workbench creation/it|Creare un Ambiente di lavoro]] spiega come creare un proprio ambiente di lavoro.


<span id="Working_with_Meshes"></span>
=== Lavorare con Mesh ===
====Lavorare con Meshes====
* [[Mesh Scripting/it|Script per Mesh]]: Come interagire con il [[Mesh Module/it|Modulo Mesh]]


* [[Mesh Scripting/it|Script per Mesh]]: Come interagire con il [[Mesh Workbench/it|Ambiente Mesh]]
==== Lavorare con Parti ====

* [[Part Module/it|Il Modulo Parte]]: Come sono utilizzati gli strumenti e la struttura di [http://en.wikipedia.org/wiki/Open_CASCADE Open CASCADE Technology] in FreeCAD
<span id="Working_with_Parts"></span>
====Lavorare con Parts====

* [[Part_Workbench/it|L'ambiente Part]]: Come sono utilizzati gli strumenti e la struttura di [http://en.wikipedia.org/wiki/Open_CASCADE Open CASCADE Technology] in FreeCAD
* [[Topological data scripting/it|Script di dati topologici]]: Come interagire con il Modulo Parte
* [[Topological data scripting/it|Script di dati topologici]]: Come interagire con il Modulo Parte
* [[PythonOCC]] - [[PythonOCC/it|PythonOCC]]: Come utilizzare tutta la potenza di Open CASCADE
* [[PythonOCC]] - [[PythonOCC/it|PythonOCC]]: Come utilizzare tutta la potenza di Open CASCADE
* [[Mesh to Part/it|Da Mesh a Parte]]: Conversione tra tipi di oggetti
* [[Mesh to Part/it|Da Mesh a Parte]]: Conversione tra tipi di oggetti


<span id="Accessing_the_Coin_scenegraph"></span>
====Accedere alla scenografia di Coin====
====Accedere alla scenografia di Coin====


* [[Scenegraph/it|La grafica di scena di Coin/Inventor]]: Come funziona la rappresentazione della scena in FreeCAD
* [[Scenegraph/it|La grafica di scena di Coin/Inventor]]: Come funziona la rappresentazione della scena in FreeCAD
* [[Pivy/it|Pivy]]: Come accedere alla grafica della scena e come modificarla
* [[Pivy/it|Pivy]]: Come accedere alla grafica della scena e come modificarla


<span id="Controlling_the_Qt_interface"></span>
===Controllare l'interfaccia di Qt===
===Controllare l'interfaccia di Qt===

* [[PySide/it|PySide]]: Come accedere alla gestione dell'interfaccia e modificare il suo contenuto
* [[PySide/it|PySide]]: Come accedere alla gestione dell'interfaccia e modificare il suo contenuto
* [[Embedding FreeCADGui|Using the FreeCAD GUI]] - [[Embedding FreeCADGui/it|Utlizzare l'interfaccia grafica utente di FreeCAD]] in una diversa applicazione Qt tramite PyQt
* [[Embedding FreeCADGui|Using the FreeCAD GUI]] - [[Embedding FreeCADGui/it|Utlizzare l'interfaccia grafica utente di FreeCAD]] in una diversa applicazione Qt tramite PyQt


<span id="Working_with_parametric_objects"></span>
===Lavorare con oggetti parametrici===
===Lavorare con oggetti parametrici===
* [[Scripted objects/it|Oggetti da Script]]: Come creare in FreeCAD oggetti generati interamente da script Python
* [[Drawing Module/it|Modulo di Disegno in proiezioni]]: Automatizzare il processo di conversione da 3D a 2D


* [[Scripted_objects/it|Script di oggetti]]: come realizzare oggetti con script Python al 100%.
** [[Scripted_objects_with_attachment/it|Oggetti creati da script con parti associate]]: come rendere gli oggetti creati da script associabili ad altri oggetti.
** [[Scripted_objects_saving_attributes/it|Oggetti creati da script che salvano gli attributi]]: come salvare e ripristinare gli attributi della classe proxy con {{incode|dumps}} e {{incode|loads}}.
** [[Scripted_objects_migration/it|Migrazione di oggetti creati da script]]: come migrare dei vecchi oggetti creati da script in una nuova classe.

<span id="Examples"></span>
===Esempi===
===Esempi===

* [[Code snippets/it|Parti di codici]] : Una raccolta di esempi di codice Python di FreeCAD, da utilizzare negli script ...
* [[Code snippets/it|Parti di codici]] : Una raccolta di esempi di codice Python di FreeCAD, da utilizzare negli script ...
* [[Line drawing function/it|Funzione per tracciare linee]]: Come costruire un semplice strumento per tracciare linee
* [[Line drawing function/it|Funzione per tracciare linee]]: Come costruire un semplice strumento per tracciare linee
* [[Dialog creation/it|Creare finestre di dialogo]]: Come creare finestre di dialogo con Qt designer, e come utilizzarle in FreeCAD
* [[Dialog creation/it|Creare finestre di dialogo]]: Come creare finestre di dialogo con Qt designer, e come utilizzarle in FreeCAD
* [[Embedding FreeCAD/it|Incorporare FreeCAD]]: Come importare FreeCAD sotto forma di un modulo Python in altre applicazioni
* [[Embedding FreeCAD/it|Incorporare FreeCAD]]: Come importare FreeCAD sotto forma di un modulo Python in altre applicazioni
* Il [[Draft Module/it|Modulo Disegno]] aggiunge a FreeCAD funzioni base di disegno 2D. E 'scritto interamente in Python, e costituisce un valido esempio per scrivere moduli personali.
* L'[[Draft_Workbench/it|Ambiente Draft]] aggiunge a FreeCAD funzioni base di disegno 2D. E 'scritto interamente in Python, e costituisce un valido esempio per scrivere moduli personali.
* [[FreeCAD vector math library]] - [[FreeCAD vector math library/it|Libreria di matematica vettoriale di FreeCAD]] : Un paio di funzioni utili per manipolare i vettori in FreeCAD. Questa libreria è inclusa anche nel modulo Draft.
* [[FreeCAD vector math library]] - [[FreeCAD vector math library/it|Libreria di matematica vettoriale di FreeCAD]] : Un paio di funzioni utili per manipolare i vettori in FreeCAD. Questa libreria è inclusa anche nel modulo Draft.


<span id="API_Functions"></span>
== Funzioni API ==
== Funzioni API ==


Line 74: Line 99:
Relazionato: [[Exposing_C%2B%2B_to_Python|Exposing C++ to Python]]
Relazionato: [[Exposing_C%2B%2B_to_Python|Exposing C++ to Python]]


<span id="Advanced_modification"></span>
== Modifiche avanzate ==
== Modifiche avanzate ==


* [[Start_up_and_Configuration/it|Avvio e configurazione]]: Avvio e opzioni della riga di comando
<div class="mw-translate-fuzzy">
* [[Install_on_Windows/it|Installare in Windows]]: Utlizzando l'installatore di Windows
* [[Start up and Configuration/it|Avvio e configurazione]]: Avvio e opzioni della riga di comando
* [[Install on Windows/it|Installare in Windows]]: Utlizzando l'installatore di Windows
* [[Compile_on_Windows/it|Compilare FreeCAD in Windows]] e [[Compile_on_Linux/it|Compilare FreeCAD in Linux]]
* [[CompileOnWindows/it|Compilare FreeCAD in Windows]] e [[CompileOnUnix/it|Compilare FreeCAD in Unix]]
* [[Branding/it|Marchiare e Personalizzare]]: Semplici modifiche che si possono apportare al codice sorgente per modificare alcuni aspetti del FreeCAD
* [[Branding/it|Marchiare e Personalizzare]]: Semplici modifiche che si possono apportare al codice sorgente per modificare alcuni aspetti del FreeCAD
* [[Extra python modules/it|Moduli extra in Python]] : Potenzia l'interprete di Python in FreeCAD con questi moduli aggiuntivi!
* [[Extra_python_modules/it|Moduli extra in Python]] : Potenzia l'interprete di Python in FreeCAD con questi moduli aggiuntivi!
</div>


<span id="Python_tutorials"></span>
== Guide di Python ==
== Guide di Python ==


Line 89: Line 114:


'''Python'''
'''Python'''
* [https://docs.python.org/2.7/tutorial/index.html Official python tutorial] - Una guida molto completa per scoprire Python
* [https://docs.python.org/3/tutorial/index.html Official python tutorial] - Una guida molto completa per scoprire Python
* [http://en.wikibooks.org/wiki/Non-Programmer%27s_Tutorial_for_Python Non-programmer tutorial per Python] - Un eccellente wiki
* [https://en.wikibooks.org/wiki/Non-Programmer%27s_Tutorial_for_Python_3 Non-programmer tutorial per Python] - Un eccellente wiki
* [http://npt.cc.rsu.ru/user/wanderer/ODP/Python_for_Newbies.htm Python per novizi] - Un grande manuale che si occupa di tutti i concetti base
* [http://npt.cc.rsu.ru/user/wanderer/ODP/Python_for_Newbies.htm Python per novizi] - Un grande manuale che si occupa di tutti i concetti base


Line 106: Line 131:


'''Pivy''' - Come interagire con le scene 3D di FreeCAD
'''Pivy''' - Come interagire con le scene 3D di FreeCAD
* [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.108.947&rep=rep1&type=pdf Pivy - Embedding a Dynamic Scripting Language into a Scene Graph Library] : Tesi che illustra Pivy nel dettaglio
* [http://pivy.coin3d.org/documentation/pycon Tutorial base di Pivy] : Un tutorial molto semplice del sito di Pivy
* [http://ftp.ntua.gr/mirror/python/pycon/dc2004/papers/47/ High Level 3D Graphics Programming in Python] : esempio Pivy da Pycon 2004
* [http://www.google.com.br/url?sa=U&start=3&q=http://studierstube.icg.tu-graz.ac.at/doc/pdf/PivyStudierstubeTutorial.pdf&ei=XyC1Sc2wOeCKmQem_eHnBQ&usg=AFQjCNEYhb-0DcUc6OxFVijAe1epBb-4aA Introduzione a Pivy] : Un documento che non è realmente un tutorial, ma che illustra bene come funziona Pivy
* [https://www.semanticscholar.org/paper/Integrating-Pivy-into-Studierstube-4.2-Gruber/08c9a89c8326c87f81c2d83428029fbfb6c2ae64 Introducing Pivy into studierstube] [https://www.researchgate.net/publication/228737136_Integrating_Pivy_into_Studierstube_42 (Mirror)] : Uno scritto che non è un vero tutorial, ma illustra bene come Pivy funziona (richiede un account accademico)


<span id="Community_projects"></span>
== Progetti della comunità ==
== Progetti della comunità ==


Line 115: Line 142:
È anche disponibile una pagina dove è descritto come [[Help FreeCAD/it|Contribuire a FreeCAD]].
È anche disponibile una pagina dove è descritto come [[Help FreeCAD/it|Contribuire a FreeCAD]].


* [[Scientific_literature/it|Letteratura scientifica]]: articoli che fanno riferimento o utilizzano il sistema FreeCAD in vari modi.
{{Userdocnavi/it}}


[[Category:Hubs/it]]


{{Powerdocnavi{{#translation:}}}}
[[Category:Poweruser Documentation/it]]
[[Category:Hubs{{#translation:}}]]

Latest revision as of 21:33, 27 January 2024


Questo è il posto per esplorare più a fondo FreeCAD. Qui si può imparare a personalizzazione e estendere FreeCAD secondo le proprie esigenze.

FreeCAD è estendibile con il codice Python che viene eseguito direttamente nella Console Python o che viene caricato dai moduli all'avvio. Questo significa che è possibile modificare FreeCAD senza dover ricompilare il programma. Ad esempio, è possibile:

  • Creare e modificare elementi di geometria: serve un particolare oggetto (forma o linea speciale) che non è presente nell'installazione di default FreeCAD? Si può facilmente creare un nuovo tipo di oggetto, sia partendo da zero che adattando un tipo di oggetto esistente.
  • Creare strumenti e comandi personalizzati: aggiungere un set di strumenti che eseguono il proprio codice.
  • Modificare l'interfaccia: creare delle barre degli strumenti per mettere i propri strumenti, creare finestre, pannelli o interfacce speciali per interagire con i propri strumenti.
  • Modificare il grafo della scena: per costruire e calcolare la geometria, FreeCAD usa processi diversi da quelli che usa per visualizzare la geometria sullo schermo. Si ha accesso totale al modo in cui i contenuti della scena vengono visualizzati sullo schermo, quindi è possibile modificare tale rappresentazione, interagire con essa, o aggiungere tutti i tipi di comportamenti personalizzati e agli accessori dello schermo, quali, ad esempio, informazioni, opzioni di trascinamento, ancoraggio o entità temporanee.

Se si desidera contribuire con contenuti a queste pagine, richiedere un account wiki con autorizzazioni dell'editor nel forum e leggere le WikiPages per le linee guida generali da seguire. Per gli altri modi di contribuire al progetto, vedere la pagina Contribuire a FreeCAD.

Personalizzare FreeCAD

Script in FreeCAD

Generale

Moduli

Le funzionalità di FreeCAD sono suddivise in moduli che trattano tipi specifici di dati e di applicazioni. FreeCAD è composto da moduli built-in e da moduli di estensione (plug-in). Quando i moduli plugin sono installati, sono disponibili come i moduli built-in. I moduli descritti di seguito sono i moduli di default, inclusi in ogni installazione FreeCAD.

  • I Moduli builtin sono i moduli principali di FreeCAD. Essi contengono gli strumenti per manipolare le configurazioni generali di FreeCAD, i documenti e il loro contenuto.
  • La pagina Creare un Ambiente di lavoro spiega come creare un proprio ambiente di lavoro.

Lavorare con Meshes

Lavorare con Parts

Accedere alla scenografia di Coin

Controllare l'interfaccia di Qt

Lavorare con oggetti parametrici

Esempi

Funzioni API

La documentazione completa di FreeCAD si trova in http://www.freecadweb.org/api/ . Essa contiene le API C++ e Python, e non è ancora del tutto formattata, il che può essere fonte di confusione quando si cerca solo il codice Python. Una versione delle API più facile da esplorare si trova in questa pagina in inglese e in questa in italiano. Ricordare che può essere incompleta in quanto viene aggiornata manualmente. Per informazioni più accurate, esplorare i moduli direttamente dalla console di FreeCAD.

Relazionato: Exposing C++ to Python

Modifiche avanzate

Guide di Python

Questi sono buoni tutorial generici, non specifici per FreeCAD, che possono interessare chi è totalmente nuovo a Python.

Python

PySide - Come creare e gestire l'interfaccia Qt di FreeCAD con Python

I seguenti sono due riferimenti specifici di PyQt (non di PySide) che possono offrire alcune informazioni sul suo utilizzo:

Pivy - Come interagire con le scene 3D di FreeCAD

Progetti della comunità

Nel Portale della comunità, è possibile trovare altri progetti basati su FreeCAD e gestiti dalla comunità degli utenti di FreeCAD. Quando si avvia un nuovo progetto con FreeCAD, ricordarsi di riferirlo nel Portale!

È anche disponibile una pagina dove è descritto come Contribuire a FreeCAD.