### Navigation

- ☰
- PyTecplot-0.8 »
- Reference »

# Macros

- tecplot.macro
- macro.execute_command()
- macro.execute_extended_command()
- macro.execute_file()

## tecplot.macro

## macro.execute_command()

`tecplot.macro.``execute_command`(command)

  Runs a series of tecplot macro commands.

  Parameters: | command (`string`) – The macro commands to be run.
  Raises: | `TecplotMacroError` – Message will specify the command that failed.

  Warning

  Zero-based Indexing

  It is important to know that all indexing in PyTecplot scripts are zero-based. This is a departure from the macro language which is one-based. This is to keep with the expectations when working in the python language. However, PyTecplot does not modify strings that are passed to the Tecplot Engine. This means that one-based indexing should be used when running macro commands from python or when using `execute_equation()`.

  This command splits the input into individual commands and runs them one at a time. See the Tecplot Macro Scripting Guide for details about Tecplot 360‘s macro language.

  Warning

  The $!VARSET command is not supported. Tecplot Macro variables should be converted to Python variables.

  Warning

  Currently, only commands that do not require raw data, by use of the `RAWDATA` macro directive, are accepted.

  Warning

  Intrinsic variables (that is, variables with pipes such as `|DATASETFNAME|`) are not supported. If you need to use an intrinsic variable in the macro command, add the macro command to a text file and call `execute_file`.

  See the Tecplot Macro Scripting Guide for more information about raw data and intrinsic variables.

  The following command will perform the same operations as the Hello, World! example:

      >>> tecplot.macro.execute_command(r'''
      ...   $!ATTACHTEXT
      ...     ANCHORPOS { X = 35 Y = 50 }
      ...     TEXTSHAPE { HEIGHT = 35 }
      ...     TEXT = 'Hello, World!'
      ...   $!EXPORTSETUP EXPORTFNAME = 'hello_world.png'
      ...   $!EXPORT
      ...     EXPORTREGION = CURRENTFRAME
      ... ''')

## macro.execute_extended_command()

`tecplot.macro.``execute_extended_command`(procid, cmd)

  Runs a tecplot macro command defined in an addon.

  Parameters: | procid (`string`) – Registered name of the addon. cmd (`string`) – The command to run.
  Raises: | `TecplotMacroError`

  Warning

  Zero-based Indexing

  It is important to know that all indexing in PyTecplot scripts are zero-based. This is a departure from the macro language which is one-based. This is to keep with the expectations when working in the python language. However, PyTecplot does not modify strings that are passed to the Tecplot Engine. This means that one-based indexing should be used when running macro commands from python or when using `execute_equation()`.

  In general, the command string is formatted prior to being fed into the Tecplot Engine so liberal use of whitespace, including new-lines, are acceptable.

  Example:

      >>> tecplot.macro.execute_extended_command(
      ...     'Multi Frame Manager',
      ...     'TILEFRAMESSQUARE')

## macro.execute_file()

`tecplot.macro.``execute_file`(filename)

  Run a macro file.

  Parameters: | filename (`string`) – The file to be run.
  Raises: | `TecplotMacroError`

  Warning

  Zero-based Indexing

  It is important to know that all indexing in PyTecplot scripts are zero-based. This is a departure from the macro language which is one-based. This is to keep with the expectations when working in the python language. However, PyTecplot does not modify strings that are passed to the Tecplot Engine. This means that one-based indexing should be used when running macro commands from python or when using `execute_equation()`.

  Example:

      >>> tecplot.macro.execute_file('/path/to/macro_file.mcr')

### Navigation

- index
- modules |
- next |
- previous |