Descrizione
Questa macro crea una molla con una configurazione personalizzabile. Si possono creare diverse configurazioni di molle, secondo le proprie esigenze, e poi salvarle in un file con estensione .FCSpring
Uso
Configurazione della molla
Schema di configurazione della molla
Gui
Prima sezione: configurazione della molla
- Number of coil : Numero di spire. Default = 10
- Radius of spring : Raggio della molla. Default = 20.0
- Pitch of spring : Passo principale. Default = 15.0
- Precision of turn : Precisione della curvatura, la precisione corrisponde al numero di punti per spira ed è calcolata : precision (numero di punti) = (passo / (360/precisione)). Default = 5 (72 punti)
- Spring conical : Diametro maggiore del cono, questa dimensione deve essere maggiore o uguale al raggio
- Begin : Angolo iniziale della prima spira della molla.
- End : Angolo finale dell'ultima spira della molla.
- Ch. : Casella di scelta per attivare la funzione angolo iniziale e angolo finale della molla, deselezionata per impostazione predefinita.
Se questa funzione è selezionata, la precisione viene impostata automaticamente a 1 (360 punti per spira, 1 punto = 1 grado)
Seconda sezione: tipo di linea
- BSpline : Linea di tipo BSpline.
- Wire : Linea di tipo Wire.
- Points : Casella di controllo dei punti, se è attivata viene creato un punto in ogni punto.
- Reverse : Casella di controllo per invertire la direzione della molla
Terza sezione, selection
Questa sezione viene visualizzata se è selezionato l'oggetto. Il tipo di oggetto viene visualizzato in Text Editor
L'oggetto può essere una linea, 2 punti, un cerchio, un contorno ... un asse, la lunghezza della molla viene creata automaticamente
Detection : Cylinder (radius), Sphere (radius), Toroid (radius) , Cone (little radius), Circle (radius), Arc (radius), Ellipse (little radius)
- Norm. : Se uno circo e seletto Norm il raggio non e modificato (Difetto)
- AdpRa : Se il pulsante e attivato, il raggio della molla e datato al raggio della selezione se uno raggio e detetto
- PMous : Se date uno clic mouse sopra una faccia l'asso della molla sarà il punto di coordinate della molla
- CFace : Si il pulsante è attivato, la molla sarà creata in centro della facia
- Position : Se due obbietti sonno selezionate (primo asso secondo molla) potete modificare il posizionamento della molla allungo l'asso creato
- Circle : Se tre punti sonno selezionati potete creare un cerchio che servirà di punto di partenza della molla
- ... :
Position (0)(xx)
(0)(xx) : Number selection(s), length in mm of axis created x 10, Dati e numeri punti per la posizione della molla sopra l'asso
- Begin/End : Posizione della base della molla su l'asso, inizia, meta, fine del asso
- RSpr : Riversa la molla sopra l'asso
- DoubleSpinBox : posizione della molla con una precinzione di spostamento di (0.1 mm) a longo l'asso
- RCom : Riversa il contatore ex: Begin 0 to 10.. or End 0 to 10..
- Slider : Posizione rapida della molla a longo l'asso
Terza sezione: spire di lunghezza speciale
- Numbering of coil : Numero di spire da modificare. (Defaut : nessuna)
- Smoothing Questa casella apre una casella numerica per determinare il grado di lisciatura. Il valore massimo è il valore di precisione -1 (questa opzione è ancora allo stadio di prototipo e il risultato può essere soddisfacente o completamente sbagliato)
- Pitch of coil : Passo delle spire da modificare. (Defaut : nessuna)
- 15 : Se viene premuto questo pulsante il valore di "Pitch of string" influenza "Pitch of coil" (Questo valore viene allineato automaticamente al valore di Pitch of string)
- Radius of coil : Raggio della spira da modificare. (Defaut : nessuno)
- 20 : Se viene premuto questo pulsante il valore di "Radius of string" influenza "Radius of coil" (Questo valore viene allineato automaticamente al valore di Radius of string)
- Accept the value modified : Pulsante da premere per confermare le modifiche definite prima.
- Text edit : Questa finestra mostra tutte le spire modificate.
- C : Ripulisce l'editor
- Z : Pulsante "Zoom" ingrandisce la finestra di modifica del testo
Comandi
- Load : Apre una finestra di dialogo per leggere un file .FCSpring.
- Save : Apre una finestra di dialogo per salvare un file .FCSpring .
- Load Coordinates : Apre una finestra di dialogo per leggere un file .FCSpringCoor (tutte le coordinate dei punti di una molla).
- Save Coordinates : Apre una finestra di dialogo per salvare un file .FCSpringCoor (tutte le coordinate dei punti di una molla).
- Quit : Esce dalla macro.
- Reset : Ripristina la configurazione iniziale della macro.
- Launch : Avvia la macro per creare una molla configurata.
Registro degli eventi
La finestra Report visualizzata tutti i valori modificati.
Esempio di molla
Esempio di molla modificata
Esempio di rapporto nel Registro degli eventi
All'avvio della macro viene visualizzato l'elenco completo dei giri sotto forma di tabella.
Questi sono i dati della molla precedente visualizzati nella finestra Report
Icone
Scaricare le immagini e copiarle nel repertorio delle macro.
Cliccare sull'immagine con il tasto destro del mouse e salvarla nella nuova posizione selezionando "Salva oggetto con nome ..."
Pulsanti della barra degli strumenti
Icone della macro
Script
Macro_FCSpring_Helix_Variable.FCMacro
Download the macro to Gist Macro_FCSpring_Helix_Variable
Esempi
Difference between Smooth (here 71 with precision 5 (72 points)) and normal
Example create conical spring
Link
La discussione nel forum: Try to do a Spring
In progetto
molla troncata
ammorbidire i raccordi: fatto
modificare il diametro di qualsiasi spira: fatto
Versione
03/04/2017: ver 01.12: correzione bug linea 2314 aggiunto "global ui"
11/12/2016: ver 01.11: Aggiunto Posizione della molla sopra l'oggetto selezionato
10/09/2016: ver 01.10: Adding Button "Zoom" enlarge the textedit window
04/09/2016: ver 01.09: add smoothing
16/03/2016: ver 01.08 : correct and add "int()" to debutAngle and finAngle (read file)
02/03/2016: ver 01.07 : add option reverse spring
08/02/2016: ver 01.06 : correct bug angle cause "modifyAngle = int(file.readline().rstrip('\n\r')) # 9" modifyAngle is int() not char
07/01/2015: ver 01.05 : adding "Try ...Except" (data cone) for compatibility with old version
07/01/2015: ver 01.04 : adding spring conical and modify the path to "UserAppData" and adding the icone.
07/12/2014: ver 01.03 : new version with radius coil adjustable
17/11/2014 ver 1.02 : nuova versione con interfaccia grafica e con la possibilità di modificare qualsiasi spira e salvare o caricare i dati su disco.
10/11/2014: (23h20) correction of the modification
ligne.Placement = App.Placement(App.Vector(0.0,0.0,0.0), App.Rotation(App.Vector(0,0,1),angleTr), App.Vector(0,0,0))
10/11/2014: modify line 44 :
a = FreeCAD.ActiveDocument.Line.Placement=App.Placement(App.Vector(0.0,0.0,0.0), App.Rotation(App.Vector(0,0,1),angleTr), App.Vector(0,0,0))
con
ligne = FreeCAD.ActiveDocument.Line.Placement=App.Placement(App.Vector(0.0,0.0,0.0), App.Rotation(App.Vector(0,0,1),angleTr), App.Vector(0,0,0))
6/11/2014 : aggiunto "makeBSpline" e configurazione
Limitationi
Durante i test di sweep ho ottenuto questi errori!
For the moment the macro is not adapted for the square, rectangle...
Only circle work well
TCollection_IndexedDataMap
Wrong usage of punctual sections