Overview | All Modules | Tutorial | User's Guide | Programming Guide

COVISE Online Documentation

Module category: Filter


CuttingSurface extracts surfaces of different shape (planes, cylinders, spheres) and can also map isolines onto the plane. Linear interpolation is used to calculate the data values on the grid nodes of the resulting cutting surface.

Note: If you like colored output of CuttingSurface that you can connect directly to the Renderer, see CuttingSurfaceComp


CuttingSurface is available on all supported platforms.


Name Type Description
vertex Vector Normal of the plane, center of the sphere or one point on the axis of the cylinder.
point Vector One point on the cutting surface.


Scalar Distance of the origin to the plane or radius of the sphere or cylinder.
option Choice Select the shape of the surface: plane, sphere, cylinder-x, cylinder-y, cylinder-z. cylinder-x means a cylinder with its axis in the direction of the x axis.
gennormals Boolean Toggle the generation of normals. By default the generation of normals is turned off. The generated normals are available at the 3. output port named normalsOut. this port has to be connected to the 3. input port of the module Collect.


Boolean Toggle the generation of triangle strips. By default the generation of triangle strips is turned on.
genDummyS Boolean Toggle the generation of a dummy surface if the cutting surface doesn't intersect the object. By default the generation of the dummy surface strips is turned off.


Scalar Specifies the hight, the isolines are lifted above the cuttingsurface. If you don't specify an offset parts of the isolines can be occluded by the surface due to the limited accuracy of the Z-buffer. If you specify negative offsets, the lines appear on the backside of the plane respectively the inside of the sphere or cylinder.
numiso Scalar Specifies the number of isolines.
isostart Scalar Initial value for isolines.
isoend Scalar End value for isolines.
vertex_ratio Scalar Percentage of grid used for memory allocation. (Details below.)

Input Ports

Name Type(s) Description
meshIn UnstructuredGrid
input mesh
dataIn Float
input data
isoDataIn Float
Data for isolines
isoMinMaxIn MinMax_Data MinMax values for isolines

Output Ports

Name Type(s) Description
meshOut Polygons
dataOut Float
interpolated data
normalsOut Vec3 Surface normals
linesOut Lines Isolines

Tunable Parameter

The CuttingSurface module algorithm for unstructured grids has to allocate memory for the output vertices and the data interpolated on it. The size of this allocation is based on heuristics over several data sets and defaults to
    max_vert = VERTEX_RATIO  * num_vert_in ^ (2/3)
    VERTEX_RATIO = 4.0   by default.
However, this setting might be too low. In this case, the module terminates execution, submits a message, increases the ratio by 1.0 and re-executes itself. To prevent this procedure, establish a higher starting value (e.g. 9.0) by putting a section into your covise.config file:
   # Ratio of array size to number of input vertices in Percent

Example 1

Example 1 shows covise/net/tutorial_pressure_1.net.

Figure: covise/net/tutorial_pressure_1.net

RWCovise_1 reads in the grid. The module DomainSurface computes the edges of the outer surface of the grid and the module Renderer displays the edges as white lines.

RWCovise_2 reads in the pressure values on the grid points. CuttingSurface_1 computes a cutting plane with the normal (0.0 0.0 1.0) and the distance (0.05).

The module Colors_2 is in the map only for creating a colormap with the minimum and maximum of all pressure values.

The interpolated data on the cutting plane are mapped to colors with the module Colors_1. The module Colors_1 inherits the colormap and minimum and maximum from Colors_2.

The module Collect creates triangle strips from the coordinates and the colors and the Renderer displays the resulting plane as colored polygons.

The next image is a snapshot of the results in the Inventor Renderer.


Example 2

Example 2 shows covise/net/example/CuttingSurface_Normals.net.

Figure: covise/net/example/CuttingSurface_Normals.net

The next image is a snapshot of the results in the Inventor Renderer (parameter "option" = Cylinder).


Authors: Martin Aumüller, Ruth Lang, Daniela Rainer, Jürgen Schulze-Döbold, Andreas Werner, Peter Wolf, Uwe Wössner
Copyright © 1993-2016 HLRS, 2004-2014 RRZK, 2005-2014 Visenso
COVISE Version 2016.3