Std ViewScreenShot

From FreeCAD Documentation
Revision as of 22:01, 23 March 2020 by FuzzyBot (talk | contribs) (Updating to match new version of source page)

Std_ViewScreenShot

Ubicación en el Menú
Herramientas -> Guardar imagen...
Entornos de trabajo
Todos
Atajo de teclado por defecto
Ninguno
Introducido en versión
-
Ver también
...

Description

Sinopsis

Este comando abre un letrero de diálogo para guardar el contenido actual de la vista 3D en un archivo que puede ser de diversos formatos de imagen. Adicionalmente, puedes cambiar el ratio de aspecto y la resolución de la captura de pantalla utilizando el botón de "Opciones" para tener acceso a más parámetros.

Este comando también puede utilizar el campo de comentario de imagen de algunos tipos de imágenes, como PNG o JPEG para guardar información MIBA con la imagen.

Usage

  1. There are several ways to invoke this command:

Result: A dialog will open requesting some parameters

Options

Formatos de imagen

FreeCAD utiliza los tipos construidos en QT y algún plugin de QT en el directorio bin/imageformates para guardar las imágenes. Así que dependerá de tu plataforma los tipos de formatos que puedas escoger.

Tamaño de imagen

Los parámetros de tamaño de imagen están definidos por el tamaño de la pantalla de la vista 3D activa. Pero puedes cambiarlos a cualquier valor que quieras. Algunos drivers OpenGL no permiten renderizar a más de 8000 pixels. Depende de tu sistema.

Con los cuatro botones puedes cambiar el aspecto a un valor determinado.

Imagen de fondo

Con este combo box puedes seleccionar la imagen de fondo de la imagen que crees.

  • Actual utiliza la imagen de fondo de la vista actual (como se ha seleccionado en las preferencias)
  • Blanco crea una imagen con el fondo blanco (por ejemplo para su impresión)
  • Negro imagen de fondo negra
  • Transparente crea un fondo transparente en los formatos de imagen que soportan transparencia
Creation method

With this combo box you can set how the image data is collected (rendered):

  • Framebuffer (custom): It uses the same technique as Framebuffer (as is). Additionally it allows to set custom sizes and the background.
  • Framebuffer (as is): If multi-sampling anti-aliasing is off, it reads the image directly from the graphic renderer. If multi-sampling is on, it renders to a framebuffer and gets the image from there. (The key part of this method is Qt's QOpenGLFramebufferObject class.)
  • Offscreen (new): This is the default method. It is a replacement/alternative for the Offscreen (old) rendering. Additionally it supports multi-sampling. (The most important classes are Qt's QOffscreenSurface and QOpenGLFramebufferObject.)
  • Offscreen (old): It only uses functions from the library Coin3d. This method does not support multi-sampling, relies heavily on graphic driver and on many modern Linux systems it does not work. It is a real off-screen rendering method that doesn't require an OpenGL window.

To turn on multi-sampling (anti-aliasing), use the option Anti-Aliasing in the preferences.

Comentarios

Algunos formatos de imágenes pueden transportar un comentario con las imágenes. En caso de que selecciones uno de estos formatos puedes introducir un comentario o utilizar el campo Comentario para la información MIBA.

Archivos de guión

También es posible guardar la imagen desde Python:

Gui.ActiveDocument.ActiveView.saveImage('C:/temp/test.png',1656,783,'Current')

Este archivo de guión crea una serie de imágenes de diferentes tamaños y de diferentes puntos de vista. El tipo de la cámara, por ejemplo ortográfica o perspectiva también se puede cambiar.

import Part,PartGui
# loading test part
Part.open("C:/Documents and Settings/jriegel/My Documents/Projects/FreeCAD/data/Blade.stp")
OutDir = 'c:/temp/'
 
# creating images with different Views, Cameras and sizes
for p in ["PerspectiveCamera","OrthographicCamera"]:
    Gui.SendMsgToActiveView(p)
    for f in ["ViewAxo","ViewFront","ViewTop"]:
        Gui.SendMsgToActiveView(f)
        for x,y in [[500,500],[1000,3000],[3000,1000],[3000,3000],[8000,8000]]:
            Gui.ActiveDocument.ActiveView.saveImage(OutDir + "Blade_" + p +"_" + f + "_" + `x` + "_" + `y` + ".jpg",x,y,"White")
            Gui.ActiveDocument.ActiveView.saveImage(OutDir + "Blade_" + p +"_" + f + "_" + `x` + "_" + `y` + ".png",x,y,"Transparent")

# close active document
App.closeDocument(App.ActiveDocument.Name)