Macro FCSpring Helix Variable/fr

Description
Cette macro crée un ressort avec un pas variable entièrement configurable, chaque pas du ressort peut être configuré.

La définition du ressort obtenu peut être sauvée dans un fichier ayant l'extension .FCSpring



Utilisation
Cette section est utilisée pour configurer le ressort.

Détail schématique de la définition du ressort.



Première section, configuration du ressort
(Un cône peut être configuré manuellement mais cette petite procédure automatise la commande) Si la fonction est activée le réglage se règle automatiquement à 1 (360 points par tour, 1 point = 1 degrés)
 * Number of coil : Nombre total de spires du ressort. Défaut = 10
 * Radius of spring : Rayon du ressort. Défaut = 20.0
 * Pitch of spring : Pas du ressort. Défaut = 15.0
 * Precision of turn : Précision par tour qui correspond en nombre de points pour un tour, le nombre de points est calculé comme suit : Précision (nombre de points) = (pitch / (360/Precision)). Default = 5 (72 points)
 * Spring conical : Donner le grand diamètre du cône, cette dimension sera toujours égale ou plus grande que le rayon.
 * CheckBox : Case à cocher qui permet d'activer la fonction Spring conical.
 * Begin : Angle de départ ou commence la première spire. Défaut 0°
 * End : Angle de fin ou se termine la dernière spire. Défaut 360°
 * Ch. : Case à cocher pour activer la fonction Begin et End des angles des spires.



Seconde section, type de ligne

 * BSpline : Type de ligne BSpline.
 * Wire : Type ligne Wire.
 * Points : Check box point si cette fonction est activée un point est créé à chaque point désigné par Precision (noeud).
 * Reverse : Check box reverse si cette fonction est activée le ressort change de direction (sens horaire)

Third section, selection
This section is displayed if on object is selected. The type object is displayed in the Text Editor

The object can be line, 2 points, circle, wire ... one axis the length of the spring is automatically created

Detection : Cylinder (radius), Sphere (radius), Toroid (radius), Cone (little radius), Circle (radius), Arc (radius), Ellipse (little radius)


 * : If one circle is selected Norm not modify the radius of circle (Default)
 * : If the buttom is pressed, the spring is adapted to the detected radius (If a radius is detected )
 * : If the clic mouse is on one face the spring is createt on this point (Default)
 * : If the buttom is pressed, the spring is created on the center face selected
 * Position : If twoo object are selected (first axis, second spring), this checkBox is enabled and you can modify the placement object 2 (spring) along the on object 1 (axis)
 * : If three points click mouse are selected the Circle button is enabled and it possible to create a circle which can serve as a base for a spring

Position (0)(xx)
(0)(xx) : Number selection(s), length in mm of axis created x 10, egual number of points for shifting the spring of the axis


 * : Position the spring on begin, middle, end axis
 * : Reverse the spring of the axis
 * DoubleSpinBox : Shifting the spring with precision (0.1 mm) along its axis
 * : Reverse the counter ex: Begin 0 to 10.. or End 0 to 10..
 * Slider : Position the spring on its axis



Troisième section, longueur du pas de la spire

 * Numbering of coil : Numéro de la spire a modifier. (Defaut : 0)
 * Smoothing Cette case à cocher découvre un spinBox pour déterminer le degré de lissage entre deux spires ou l'écartement est important, le degré maximum du lissage est la valeur de précision -1 (cette option est à l'état de prototype et le résultat peur être satisfaisant, invisible ou mauvais)
 * Pitch of coil : Dimension du pas de la spire a modifier. (Defaut : 0)
 * : Si le bouton est cliqué, la valeur de "Pitch of string" est affectée à "Pitch of coil" (Cette valeur est automatiquement alignée à la valeur de Pitch of string)
 * Radius of coil : Rayon de la spire a modifier. (Defaut : 0)
 * : Si le bouton est cliqué, la valeur de "Radius of string" est affectée à "Radius of coil" (Cette valeur est automatiquement alignée à la valeur de Radius of string)
 * : Bouton d'acceptation pour valider les modifications de la spire a modifier.
 * Text edit : Cette fenêtre affiche les spires modifiées et validées.
 * : Bouton "Zoom" Agrandit la fenêtre textedit



Commandes

 * : Le bouton Read ouvre une boîte de dialogue pour lire un fichier sauvegardé, le fichier porte l'extension .FCSpring.
 * : Le bouton Save ouvre une boîte de dialogue pour sauver un fichier avec la configuration du ressort modifiée ou non, le fichier porte l'extension .FCSpring.
 * : Ouvre une boîte de dialogue pour charger un fichier .FCSpringCoor (toutes les coordonnées des points constituants le ressort).
 * : Ouvre une boîte de dialogue pour sauver un fichier .FCSpringCoor (toutes les coordonnées des points constituants le ressort).
 * : Quitte la macro.
 * : Reset la macro à la configuration par défaut.
 * : Lance la macro et crée le ressort dans sa configuration.



Vue rapport
La fenêtre Vue rapport affiche les détails de la configuration du ressort.



Exemples de ressorts
Exemples de ressorts modifiés:



Exemple Vue rapport
Dès que la macro est lancée, la liste de la configuration du ressort est affichée sous forme de tableau.

Ici les données du ressort affichées dans la vue rapport.

Icônes
Téléchargez les icônes et copier le tout dans votre répertoire de macro.

Cliquez sur l'image, dans la nouvelle fenêtre positionnez votre souris sur l'icône et faites "Enregistrez la cible du lien sous ..."

Bouton pour votre barre d'outils

Icônes de la Macro



Script
Macro_FCSpring_Helix_Variable.FCMacro

Téléchargez la macro sur Gist Macro_FCSpring_Helix_Variable

Liens
Discussion sur le forum Try to do a Spring

Projet
Lissage des spires aux changements des spires.

spring solid truncated

soften fittings :done

Modification du diamètre à chaque spire au choix : fait

Versions
11/12/2016: ver 01.11: Adding Position of the spring on a selected object

10/09/2016: ver 01.10: Ajout du Bouton "Zoom" pour agrandit la fenêtre textedit

04/09/2016: ver 01.09: ajout de la fonction lissage et sauvegarde/chargement des coordonnées du ressort

16/03/2016: ver 01.08 : correction et ajout "int" à debutAngle et finAngle (dans la section lecture du fichier)

02/03/2016: ver 01.07 : ajout d'une option reverse spring (sens horaire)

08/02/2016: ver 01.06 : correction du bug angle cause "modifyAngle = int(file.readline.rstrip('\n\r'))  # 9"  modifyAngle est int pas char

07/01/2015: ver 01.05 : ajout de "Try ...Except" (données cône) pour assurer la compatibilité avec les versions précédentes.

07/01/2015: ver 01.04 : ajout de fabrication de ressort conique et modification du chemin (path) sur "UserAppData".

07/12/2014 : ver 01.03 : nouvelle version avec rayon de chaque spire modifiable.

17/11/2014: ver 1.02 : nouvelle version avec interface graphique, modification de chaque pas et rayon, sauvegarde et chargement des données sur disque.

10/11/2014 : (23h20) correction de la modification.

10/11/2014 : modification de la ligne 44 :

en

6/11/2014 : ajout de "makeBSpline" et configuration.

Limitations
Durant les tests la fonction sweep a donné ces erreurs !