Macro FCCamera/fr

Description
Cette macro peut faire pivoter l'écran dans un angle et axe défini et crée un plan face à l'écran pour créer un objet dans les positions réglées, positionner la face sélectionnée face à l'écran, peut détecter la position de la caméra, alignez la vue de la face ou de l'axe face à l'écran et de modifier les paramètres (Lacet, Tangage, Roulis) de l'objet pour l'aligner dans la position de la camera.

Utilisation
Utilisation facile,



Camera of Axis: Boîte de dialogue pour entrer les valeurs de rotation en degrés (la rotation se fait sur un angle à la fois).

Angle rotation Axis in degrees: Selection de l'axe de rotation X Y ou Z.

Axe of rotation


 * FCCamera_01.png : Effectue la rotation dans l'angle donné.

Virtual


 * FCCamera_02.png : Detecte l'orientation de la camera et affiche les résultats dans la vue rapport. Les valeurs retournées proviennent de la fonction getCameraOrientation.

Align view to face selected


 * FCCamera_03.png : Aligne la face sélectionnée sur la vue 3D (face à l'écran). Chaque clic change la vue de l'objet sélectionné pour NormalAt : "(0,0,1) (0,0,-1) (0,1,0) (0,-1,0) (1,0,0) (-1,0,0)"


 * FCCamera_04.png : Aligne sur la vue 3D l'axe de la face sélectionnée (face à l'écran). Chaque clic change la vue de l'objet sélectionné pour Surface Axis : "(0,0,1) (0,0,-1) (0,1,0) (0,-1,0) (1,0,0) (-1,0,0)"


 * FCCamera_05.png : Aligne l'objet sélectionné à la vue actuelle. Les valeurs modifiées sont : Rotation Axis((X, Y, Z), Angle) même que Euler angles : Lacet (Yaw), Tangage (Pitch), Roulis (Roll), la translation n'est pas modifiée.


 * FCCamera_06.png : Un plan circulaire est créé face à l'écran aux coordonnées du clic de souris sur l'objet. Le rayon du plan circulaire est égal à la plus grande dimension du BoundBox. Si aucun objet n'est sélectionné le plan est créé aux coordonnées 0, 0, 0 avec un rayon de 20 mm. Le rayon du plan par défaut peut être modifié à la ligne 515:


 * FCCamera_07.png : Reset toutes les valeurs.
 * FCCamera_08.png : Quitte FCCamera.

Section Photo



 * : choisissez votre définition d'écran qui déterminera les dimensions de l'image
 * Available (pre-defined):
 * "Actual" (definition actual of screen)
 * "Icon 16 x 16"
 * "Icon 32 x 32"
 * "Icon 64 x 64"
 * "Icon 128 x 128"
 * "CGA 320 x 200"
 * "QVGA 320 x 240"
 * "VGA 640 x 480"
 * "SVGA 800 x 600"
 * "XGA 1024 x 768"
 * "XGA+ 1152 x 864"
 * "SXGA 1280 x 1024"
 * "SXGA+ 1400 x 1050"
 * "UXGA 1600 x 1200"
 * "QXGA 2048 x 1536"
 * "Free"




 * Available :
 * "BMP *.bmp"
 * "ICO *.ico"
 * "JPEG *.jpeg"
 * "JPG *.jpg"
 * "PNG *.png" (by default)
 * "PPM *.ppm"
 * "TIF *.tif"
 * "TIFF *.tiff"
 * "XBM *.xbm"
 * "XPM *.xpm"
 * "XPM *.xpm"


 * Line 1 : Nombre d'images calculées avec l'angle donné (ex: angle 60 degrés = 360 (rotation complete) / 60 (angle) = 6 images


 * Line 2 : Définition de l'écran utilisé


 * Background image :
 * Actual : sauve l'image avec écran et couleurs actuels
 * White : sauve l'image avec écran fond blanc
 * Black : sauve l'image avec écran fond noir


 * : Ouvre un fichier donner le nom et le chemin
 * : Reset les valeurs par défaut
 * : Quitte la fenêtre de photo et retourne au panneau FCCamera

Icônes
Téléchargez les images et copiez les dans votre répertoire de macros.

Cliquez sur l'image, dans la nouvelle fenêtre, positionnez vous sur l'image et cliquez sur le bouton droit de votre souris et faites "Enregistrez la cible du lien sous ..."

Le chemin de l'emplacement des icônes s'affiche dans la Vue rapport.

ex: Path locality to FCCamera.....images.png [ C:\Users\xx\AppData\Roaming\FreeCAD\ ]

Vous pouvez changer et donner votre emplacement désiré en changeant la ligne 165 ex: path = "Votre chemin"

Icônes du programme :



Icônes du tableau :

Liens
Liens en rapport avec FCCamera et codes originaux ayants servi dans la macro


 * Macro Rotate View,
 * Macro Align Object to View,
 * Macro Align Face Object to View,
 * Macro WorkFeatures

Discussion sur le Forum MACRO:Work Feature 2014_12

Script
Téléchargez la macro sur Gist Macro FCCamera.FCMacro

Versions

 * ver 11 (13/01/2018): minor


 * ver 10 (13/01/2018): add "def centerBoundBoxGlobal:"


 * ver 09 (08/01/2018): minor


 * ver 07 (03/01/2018): ajout du panneau photo et de la rotation sur un axe de direction aléatoire sélectionné (wire, edge, line )

param = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Macro")# macro path path = param.GetString("MacroPath","") + "/"                       # macro path path = path.replace("\\","/") App.Console.PrintMessage("Path locality to FCCamera.....images.png [ " + path + " ]"+"\n")
 * ver 0.6 (13/12/2016): nouveau système de recherche du chemin des macros directement dans les préférences.
 * 1) path = FreeCAD.ConfigGet("AppHomePath")
 * 2) path = FreeCAD.ConfigGet("UserAppData")
 * 3) path = "your path"
 * ver 0.5 06/09/2016: correction du nom "FCCamera_Axis_rotation_X.png" dans le bloc reset


 * ver 0.4 28/02/2016 : affichage de tous les renseignements de la caméra et calcul de la Direction


 * ver 0.3 18/03/2015 : modié line 492 remplacé "pl.Base = App.Vector(0,0,0)" par "pl.Base = sel[0].Placement.Base" maintenant ne se déplace plus la forme au point (0,0,0) mais à partir des coordonnées d'origine


 * ver 0.2 25/02/2015 : correction des noms des fichiers (Linux est sensible à la casse) merci microelly2