Macro Screen Wiki

From FreeCAD Documentation
Revision as of 15:19, 21 May 2021 by Mario52 (talk | contribs) (ver 0.5 21/05/2021)

Macro Screen Wiki

Description
Special macro for the Wiki Worker. This macro allows to save the 3D view in the desired format. The 3D view or the full 3D window of FreeCAD takes the desired dimensions. A rotation of the selected object or of the 3D view is possible to give a rotation angle the number of images is calculated automatically it is possible to give a departure angle and an arrival angle. You must use another Gimp example program to assemble the images and create the animated file.

Macro version: 00.05
Last modified: 2021/05/21
FreeCAD version: 0.19
Download: Download the Macro_Screen_Wiki.png image and paste it in the same directory of the macro
Author: Mario52
Author
Mario52
Download
Download the Macro_Screen_Wiki.png image and paste it in the same directory of the macro
Links
Macro Version
00.05
Date last modified
2021/05/21
FreeCAD Version(s)
0.19
Default shortcut
None
See also
Macro_Copy3DViewToClipboard
Macro_Snip

Description

This macro allows the user save the 3D view in a desired format. The 3D view or the full 3D window of FreeCAD takes the desired dimensions. A rotation of the selected object or of the 3D view is possible to give a rotation angle the number of images is calculated automatically it is possible to give a departure angle and an arrival angle. You must use another Gimp example program to assemble the images and create the animated file.

Temporary code for external macro link. Do not use this code. This code is used exclusively by Addon Manager. Link for optional manual installation: Macro


# This code is copied instead of the original macro code
# to guide the user to the online download page.
# Use it if the code of the macro is larger than 64 KB and cannot be included in the wiki
# or if the RAW code URL is somewhere else in the wiki.

from PySide import QtGui, QtCore

diag = QtGui.QMessageBox(QtGui.QMessageBox.Information,
    "Information",
    "This macro must be downloaded from this link\n"
    "\n"
    "https://gist.githubusercontent.com/mario52a/61571ce0bd41af0471995df7c3ea855f/raw/4fdc5b2db7ed3ed062a2575637e035f728b2e40d/Macro_Screen_Wiki.FCMacro" + "\n"
    "\n"
    "Quit this window to access the download page")

diag.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint)
diag.setWindowModality(QtCore.Qt.ApplicationModal)
diag.exec_()

import webbrowser 
webbrowser.open("https://gist.githubusercontent.com/mario52a/61571ce0bd41af0471995df7c3ea855f/raw/4fdc5b2db7ed3ed062a2575637e035f728b2e40d/Macro_Screen_Wiki.FCMacro")


Macro Screen Wiki Image and configuration window

Macro Screen Wiki Rotation window

Use

Images options

Definition

  1. 400x200
  2. 600x400 (Default)
  3. 1024x768
  4. 320x240 (QVGA)
  5. 320x480 (HVGA)
  6. 400x300
  7. 480x360
  8. 640x480 (VGA)
  9. 768x576 (PAL)
  10. 800x600 (SVGA)
  11. 960x720
  12. 1024x768 (XGA)

Format image

  1. 600 px Length (Default: 600 px)
  2. 400 px Height (Default: 400 px)

Window

  1. Window FC : The complete FreeCAD window
  2. Screen 3D : The 3D view of FreeCAD

Background Color

  1. Current (Default)
  2. Color
  3. Transparent
  4. Restore

Command

  1. Set Screen: Docked window
  2. Tile Screen: Fly window
  3. Save Image: Save the image ex: imageBox_000.png (the _000 is incremented with each new image)
  4. Follow: After saving the first image, press this button to save the next image with the same name. The images saved is incremented ex: imageBox_001.png, imageBox_002.png, imageBox_003.png, etc...
  5. New Image: Save one new image without change the counter
  6. Rotation: Access to the rotation menu (the title of the section "Image options" change to "Rotation options"
  7. Quit: ___Screen_Wiki end__________
  8. ToolBar: Reduce the image window in a toolBar, the Rotation option is not available in this mode
    1. The button Flip/Flop Y/N the mini toolBar

Rotation options

Rotation on

  1. 3D View: The complete view is rotated
  2. Object: The object selected is rotated

Axis

X: Rotation on X axis
Y: Rotation on Y axis
Z: Rotation on Z axis
D: Rotation on Direction.
  • To use this option: select first the object, then afterwards select the wire guideline. If D is checked and no wire is selected the direction is Vector(0, 0, 0)

Point Rotation BoundBox

  1. Object: Rotation on the BoundBox center of the object selected
  2. Sub Object: Rotation on the BoundBox center of the sub object selected

Angles

  • Angle Rotation
  1. -: Decrease the value by 10 degrees
  2. 0 Degrees  : Value
  3. +: Increase the value by 10 degrees
  • Number images: The number image saved with the values given is calculated (approximation + 1)
  • Angle Begin Rotation
  1. -: Decrease the value by 10 degrees
  2. 0 Degrees  : Value: Angle of the starting rotation
  3. +: Increase the value by 10 degrees
  • Degrees Angle End Rotation
  1. -: Decrease the value by 10 degrees
  2. 360 Degrees : Value: Angle of the end rotation
  3. +: Increase the value by 10 degrees

Command

  • Delay between 2 images
  1. 0,00 Delay second  : If there is a problem saving images due to speed, then add a delay of X seconds.
  2. Reverse: Checked, this option reverses the rotation 3D view or Object
  3. Original position: This option restores the original position of the 3D View or the Object rotated. Instead fo the 3D view or the Object staying in the last position of the rotation.
  4. Save the animation: Save the animation

Examples

Captured screen with dimensions of 640px x 400px

Same dimensions as the previous image, this one is captured as 'Tile Screen'.

Animation mode: Object selected and direction BoundBox center Object.
The images must be assembled with a 3rd party application to create an animated .gif
such as GIMP or ScreenToGif

Animation Object Direction SubObject selected.
The images must be assembled with a 3rd party application that creates an animated .gif
such as GIMP or ScreenToGif

The FreeCAD window resized. The dimension may be different from the definition (depending on the Widget, title bar etc... used.)

Versions

Version=00.05: 2021/05/21 : adding code in Save file section for Linux Mint QFileDialog ignore the extension. Only the Path+name is displayed

global switchQFileDialogMint
                ####  mint
                if switchQFileDialogMint == True:   #
                    Filter = Filter[Filter.find("."):Filter.find(")")]
                    SaveName = SaveName + Filter
                ####  mint

Version=00.04: 2021/01/13 : adding mini ToolBar

Version=0.03: 2020/10/30 : create a tool bar for the image and new button for unique image

Version=0.02: 2020/05/04 : correct bug color button (self.PB_01_Color obsolete)

Version=0.01: 2020/03/21