paraview-interface-save-screenshots

Sub-skill of paraview-interface: Save Screenshots (+5).

5 stars

Best use case

paraview-interface-save-screenshots is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Sub-skill of paraview-interface: Save Screenshots (+5).

Teams using paraview-interface-save-screenshots should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/save-screenshots/SKILL.md --create-dirs "https://raw.githubusercontent.com/vamseeachanta/workspace-hub/main/.agents/skills/_archive/engineering/cfd/paraview/save-screenshots/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/save-screenshots/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How paraview-interface-save-screenshots Compares

Feature / Agentparaview-interface-save-screenshotsStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Sub-skill of paraview-interface: Save Screenshots (+5).

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Save Screenshots (+5)

## Save Screenshots


```python
def save_screenshot(view, filepath, resolution=(1920, 1080), transparent=False):
    """Save render view as image."""
    view.ViewSize = list(resolution)
    SaveScreenshot(
        filepath, view,
        ImageResolution=list(resolution),
        TransparentBackground=1 if transparent else 0,
    )
    print(f"Saved: {filepath}")
```


## Save Animation


```python
def save_animation(view, output_dir, prefix='frame', resolution=(1920, 1080)):
    """Save animation frames as image sequence."""
    view.ViewSize = list(resolution)
    SaveAnimation(
        f'{output_dir}/{prefix}.png', view,
        ImageResolution=list(resolution),
        FrameWindow=[0, GetAnimationScene().NumberOfFrames - 1],
    )
```


## Extract Data to CSV


```python
def extract_line_data(source, point1, point2, num_points=100, output_csv='line_data.csv'):
    """Extract data along a line (plot over line)."""
    plot_line = PlotOverLine(registrationName='LineProbe', Input=source)
    plot_line.Point1 = point1
    plot_line.Point2 = point2
    plot_line.Resolution = num_points

    # Save to CSV
    SaveData(output_csv, proxy=plot_line,
             ChooseArraysToWrite=0,
             Precision=8)
    print(f"Line data saved: {output_csv}")
    return plot_line

def extract_surface_integral(source, array_name, output_csv='surface_data.csv'):
    """Integrate variable over a surface."""
    integrate = IntegrateVariables(registrationName='Integral', Input=source)
    SaveData(output_csv, proxy=integrate)
    return integrate
```


## Parse CSV Output


```python
import csv

def parse_paraview_csv(csv_path):
    """Parse ParaView CSV export."""
    data = {}
    with open(csv_path, 'r') as f:
        reader = csv.DictReader(f)
        for row in reader:
            for key, value in row.items():
                key = key.strip().strip('"')
                if key not in data:
                    data[key] = []
                try:
                    data[key].append(float(value))
                except ValueError:
                    data[key].append(value)
    return data
```


## Common Filter Pipeline


```python
def build_standard_cfd_pipeline(reader):
    """Build standard CFD visualization pipeline."""
    results = {}

    # Velocity magnitude slice
    slice_filter = Slice(registrationName='ZSlice', Input=reader)
    slice_filter.SliceType = 'Plane'
    slice_filter.SliceType.Origin = [0, 0, 0]
    slice_filter.SliceType.Normal = [0, 0, 1]
    results['z_slice'] = slice_filter

    # Streamlines
    stream = StreamTracer(registrationName='Streams', Input=reader)
    stream.SeedType = 'Line'
    stream.SeedType.Point1 = [-1, -1, 0]
    stream.SeedType.Point2 = [-1, 1, 0]
    stream.SeedType.Resolution = 50
    stream.MaximumStreamlineLength = 20.0
    results['streamlines'] = stream

    # Contour (iso-surface)
    contour = Contour(registrationName='PressureIso', Input=reader)
    contour.ContourBy = ['POINTS', 'p']
    contour.Isosurfaces = [0.0]
    results['pressure_contour'] = contour

    # Calculator (derived quantity)
    calc = Calculator(registrationName='VelMag', Input=reader)
    calc.Function = 'mag(U)'
    calc.ResultArrayName = 'VelocityMagnitude'
    results['vel_magnitude'] = calc

    return results
```


## Filter Reference


| Filter | Purpose | Key Parameters |
|--------|---------|----------------|
| `Slice` | Cut plane through volume | `SliceType`, `Origin`, `Normal` |
| `Contour` | Iso-surface extraction | `ContourBy`, `Isosurfaces` |
| `StreamTracer` | Flow streamlines | `SeedType`, `MaximumStreamlineLength` |
| `Calculator` | Derived quantities | `Function`, `ResultArrayName` |
| `Clip` | Remove half of domain | `ClipType`, `InsideOut` |
| `Threshold` | Filter by value range | `ThresholdRange`, `Scalars` |
| `Glyph` | Vector arrows | `GlyphType`, `ScaleFactor` |
| `WarpByVector` | Deform mesh by vector | `Vectors`, `ScaleFactor` |
| `ExtractSurface` | Volume to surface | — |
| `CellDatatoPointData` | Interpolate cell→point | — |
| `IntegrateVariables` | Area/volume integrals | — |
| `PlotOverLine` | Line probe for XY plots | `Point1`, `Point2`, `Resolution` |
| `TemporalStatistics` | Time-averaged fields | `ComputeAverage`, `ComputeMinimum` |

Related Skills

blender-interface

5
from vamseeachanta/workspace-hub

AI interface skill for Blender 3D — headless CLI execution, Python bpy API, mesh import/export, rendering, and integration with engineering analysis workflows.

cfd-pipeline-openfoam-to-paraview

5
from vamseeachanta/workspace-hub

Sub-skill of cfd-pipeline: OpenFOAM to ParaView (+1).

paraview-interface-verify-data-range

5
from vamseeachanta/workspace-hub

Sub-skill of paraview-interface: Verify Data Range (+2).

paraview-interface-python-script-structure-paraviewsimple

5
from vamseeachanta/workspace-hub

Sub-skill of paraview-interface: Python Script Structure (paraview.simple) (+5).

paraview-interface-openfoam-to-paraview-pipeline

5
from vamseeachanta/workspace-hub

Sub-skill of paraview-interface: OpenFOAM to ParaView Pipeline (+2).

paraview-interface-cli-execution

5
from vamseeachanta/workspace-hub

Sub-skill of paraview-interface: CLI Execution (+3).

paraview-interface

5
from vamseeachanta/workspace-hub

AI interface skill for ParaView scientific visualization — pvpython/pvbatch CLI execution, paraview.simple API, filter pipelines, OpenFOAM integration, and automated image/data export.

blender-interface-scene-setup-via-python-script

5
from vamseeachanta/workspace-hub

Sub-skill of blender-interface: Scene Setup via Python Script (+5).

blender-interface-render-output-locations

5
from vamseeachanta/workspace-hub

Sub-skill of blender-interface: Render Output Locations (+3).

blender-interface-orcaflex-results-to-blender-visualization

5
from vamseeachanta/workspace-hub

Sub-skill of blender-interface: OrcaFlex Results to Blender Visualization (+2).

blender-interface-mesh-quality-checks

5
from vamseeachanta/workspace-hub

Sub-skill of blender-interface: Mesh Quality Checks (+2).

blender-interface-common-failures

5
from vamseeachanta/workspace-hub

Sub-skill of blender-interface: Common Failures (+2).