Macro FCCamera/it

Descrizione
Questa macro serve per ruotare lo schermo di un determinato angolo lungo l'asse voluto e per creare un piano frontale allo schermo in cui produrre una forma in una specifica posizione del piano della faccia selezionata rivolta verso lo schermo, inoltre serve per rilevare la posizione della fotocamera, per allineare la vista alla faccia o all'asse e per allineare l'oggetto alla vista.

This macro can rotate the screen in a defined angle and the defined axis and creates a plan to face the screen to create a form in the specified plan positions the selected face facing the screen, to detect the position of the camera, align view to face or to axis, align the object to view.

Utilizzo


Camera of Axis: La finestra di dialogo per immettere il valore dell'angolo di rotazione in gradi.

Angle rotation Axis in degrees: Selezionare l'asso di rotazione X, Y,, Z o D.

Axe of rotation: Serve per selezionare l'asse di rotazione X, Y, Z o D.


 * FCCamera_01.png : Serve per confermare i valori inseriti

Virtual


 * FCCamera_02.png : Rileva l'orientamento della fotocamera e lo stampa nella vista Report. Il valore restituito è il valore fornito dalla funzione getCameraOrientation.

Align view to face selected


 * FCCamera_03.png : Allinea la vista alla faccia selezionata. Fare clic e ripetere il clic per NormalAt : "(0,0,1) (0,0,-1) (0,1,0) (0,-1,0) (1,0,0) (-1,0,0)"


 * FCCamera_04.png : Allinea la vista della faccia selezionata agli Assi. Fare clic e ripetere il clic per Surface Axis : "(0,0,1) (0,0,-1) (0,1,0) (0,-1,0) (1,0,0) (-1,0,0)"


 * FCCamera_05.png : Allinea l'oggetto selezionato alla vista attiva. Modifica i valori di : Rotation Axis((X, Y, Z), Angle) come angoli di Eulero : Yaw, Pitch, Roll. Translation non viene modificata.


 * FCCamera_06.png : crea un piano circolare frontale allo schermo con le coordinate del punto cliccato con il mouse su un oggetto. Il raggio del piano è uguale alla dimensione massima di boundbox. Se non è selezionato alcun oggetto, il piano viene creato nel punto 0, 0, 0 con un raggio di 20 mm. Il raggio è modificabile nella riga 515:


 * FCCamera_07.png : Ripristina tutti i valori.
 * FCCamera_08.png : Esce da FCCamera.



Sezione Photo



 * : scegliere la propria definizione dello schermo per il formato dell'immagine
 * Available (pre-definito):
 * "Actual" (definizione attuale dello schermo)
 * "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 2 : La definizione di schermo utilizzata


 * Immagine di sfondo :
 * Actual : salva l'immagine con il colore dello schermo effettivo
 * White : salva l'immagine con il colore dello schermo bianco
 * Black : salva l'immagine con il colore dello schermo nero


 * : Apre la finestra del file, indica il nome e il percorso
 * : Reimposta il valore predefinito
 * : Esce dal pannello foto e torna al pannello di FCCamera

Link
Link delle macro collegate a FCCamera

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

La discussione nel forum MACRO:Work Feature 2014_12

Script
Scaricare gli icone FCCamera_Icones.zip

Scaricare la macro da Gist Macro FCCamera.FCMacro

Esempi


Versione

 * ver 0.14 (20/10/2020): corretto bug "Grid" non accettata


 * ver 0.13 (28/06/2020): adding files image in source code, create plane "On point, Center face, BBox center, Center Mass", gridLayout


 * ver 00.12.1 (12/02/2020): suppress the bad character lines 674 and 675 (accent...) again


 * ver 12 (01/08/2019): compatible Python 3 ( print to print )


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


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


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


 * ver 08 (08/01/2018): supp "Pyqt4"
 * ver 07 (03/01/2018): aggiunto pannello foto e rotazione sull'asse selezionato (polilinea, bordo, linea)

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): nuovo sistema per verificare il percorso delle macro direttamente nelle preferenze
 * 1) path = FreeCAD.ConfigGet("AppHomePath")
 * 2) path = FreeCAD.ConfigGet("UserAppData")
 * 3) path = "your path"
 * ver 0.5 06/09/2016: correct name "FCCamera_Axis_rotation_X.png" in reset block


 * ver 0.4 28/02/2016 : add display all camera detection and the Direction


 * ver 0.3 18/03/2015 : modify line 492 replace "pl.Base = App.Vector(0,0,0)" to "pl.Base = sel[0].Placement.Base" now no longer moves the form at point (0,0,0) and leaves has the coordinates


 * ver 0.2 25/02/2015 : correct names files in for compatibility Linux (case sensitive) thanks microelly2