Using the command interface
- How to issue commands
- Filtering the Objects
- Omitting the ObjectsMatcher from the command
- Matching Objects with an ObjectsMatcher
- Actions that output an ObjectList
- Filtering a SeparatedList with the Only Action
- Actions and Options
- Unpacking the Properties Action
- The Page* and Value* Properties Options
- Example: Narrow the Properties Options with the Page* Options
- Example: Determine Properties Arguments with the Value* Options
- The Export Option
- PairsList values that are SpacedLists
- See also
How to issue commands
COM and the console
Issue command interface commands either by using the COM method Exec or the console window.
Use COM to issue batch commands by executing a script with Echoview, whereas use the console window to execute commands within Echoview.
In either case, the syntax and effect of the commands are the same.
Issuing shorthand commands
You do not need to explicitly define all the elements of a command. The console can interpret shorthand versions. The Echoview Help file presents the full command while indicating the elements that can be omitted without changing the outcome.
Refer to omitting the ObjectList from the command and omitting the Action from the command to learn about the shorthand command rules.
Special characters
Reserved characters include the wildcard character * and | (the Separator).
Also note the characters for the value modifier Options, and the reserved and illegal characters for variable names. Variable names can be:
Reserved keywords
Keywords may be used with Property options to assign a default value or change the state of a setting.
- Default
- Assigns a default Property value. Refer to the ResetDynamicName example.
- None
- Assigns an empty string or an empty array or changes the state of a property. Refer to the ResetDynamicName example.
- Echoview
- Is the name of the Echoview application. If it is included in a Name or DynamicName, additional text is appended to differentiate it from the reserved keyword.
- EV file
- Is the name of the document. If it is included in a Name or DynamicName, additional text is appended to differentiate it from the reserved keyword.
Filtering the Objects
By default, the entire set of Objects is available to a command.
The first component of a console command is the ObjectsMatcher, which you use to filter the available Objects.
Matching Objects with an ObjectsMatcher
Match a single Object with its name.
> Fileset 1: Sv raw pings T2
Fileset 1: Sv raw pings T2
Match Object names with the wildcard * character.
> Fileset 1: Sv raw pings T*
Fileset 1: Sv raw pings T1 | Fileset 1: Sv raw pings T2 | Fileset 1: Sv raw pings T3
Match multiple Objects.
> Fileset 1: Sv raw pings T2 | Fileset 2: Sv raw pings T2 | Fileset 1: TS raw pings T2
Fileset 1: Sv raw pings T2 | Fileset 2: Sv raw pings T2 | Fileset 1: TS raw pings T2
Match all Objects (default behavior).
> *
Echoview | Ev File | Fileset 1: line data sounder detected bottom | Fileset 1: position GPS fixes | Fileset 1: Sv pings | Fileset 1: Transducer 1 | Platform 1
Names are case and space insensitive. You can omit a raw variable's fileset name when it is not required for disambiguation.
> fileset1: svrawpingst2 | fileset2:svrawpingst2 | tsrawpingst2
Fileset 1: Sv raw pings T2 | Fileset 2: Sv raw pings T2 | Fileset 1: TS raw pings T2
Omitting the ObjectsMatcher from the command
Generally, you may omit the ObjectsMatcher from the command. However, commands which modify Objects (such as those containing assignment and value modifier Options) require the ObjectsMatcher.
For example, issuing the following command in the console gives an error.
> GridXAxisSpacingInMinutes = | 1
ERROR | 'GridXAxisSpacingInMinutes =' must be preceded by a filter because it may create or modify more than one object.
Otherwise, if you do not specify the ObjectsMatcher, the command interface matches all available Objects. In this way,
Action
can be shorthand for
* | Action
and executes on all valid Objects in the ObjectList. Refer to the Action part for an example.
Global consequences of shorthand commands
Shorthand commands can yield unintentional results. In particular, the Properties Action can modify many or all your Variable Objects. And there may not be an easy way to restore the previous state. For example,
> * | GridXAxisSpacingInMinutes = | 1
applies a grid spacing of 1 minute to all raw and virtual variable echograms.
Hence, Actions (either standalone or with modifier Options) which modify Objects must be preceded by a filter or ObjectsMatcher. This rule does not apply to Actions which modify the Application or Document Objects.
Actions that output an ObjectList
Filter Actions, and the AppliedObjects, LineBreaks and Operands Actions return an ObjectList.
Filtering a SeparatedList with the Only Action
The Only Action has these kinds of Options for filtering. The result is always a SeparatedList. Also note a single Object in an objectlist.
Filtering with the name prefix
This works similarly to matching Objects with an ObjectsMatcher. For example,
> * | Only Sv*
Fileset 1: Sv raw pings T1
Filtering with indexes
First match all Objects
> *
Background noise removal | Bottom classification (Automatic) | Bottom classification (Manual) | Bottom line | Echoview | Ev File | ...
Then use indexes as Options of the Only Action. A negative index starts from the end of the List.
> * | Only 4 5 -3
Echoview | Ev File | Fileset 1: vessel logs
You can also specify index positions as a range, or several ranges.
> * | Only 0..4
Background noise removal | Bottom classification (Automatic) | Bottom classification (Manual) | Bottom line | Echoview
> * | Only 0..1 2..4
Background noise removal | Bottom classification (Automatic) | Bottom classification (Manual) | Bottom line | Echoview
Filtering with preset Options
If the input is an ObjectList the Option can also be one or more of the preset filters (refer to the table in the link).
Determine the virtual variables from the ObjectList of variables.
> Fileset 1: angular position raw pings T1 | Fileset 1: position GPS fixes | Fileset 1: Sv raw pings T2 | Background noise removal | Only VariablesVirtual
Background noise removal
Determine all raw variables or transducers.
> * | Only VariablesRaw Transducers
Fileset 1: Power dB pulse compressed wideband pings T1 | Fileset 1: Power dB wideband pings T1 | Fileset 1: Sv pulse compressed wideband pings T1 | Fileset 1: Sv wideband pings T1 | Fileset 1: T1 | Fileset 1: TS pulse compressed wideband pings T1 | Fileset 1: TS wideband pings T1
Determine all raw acoustic variables.
> * | Only VariablesRaw | Only VariablesAcoustic
Fileset 1: angular position raw pings T1 | Fileset 1: Power dB raw pings T1
Determine unavailable variables with invert.
> * | Only ! VariablesUsable
Fileset 1: Sv raw pings T1 | Fileset 1: TS raw pings T2
A single Object in an OBJECTLIST
The match for all Objects returns a list of objects that can be accessed by list index number. 0 is the first item in the list and -1 is the last item. -3 is the third last item, which for this example, is the Fileset 1: Sv pings variable.
> -3
Fileset 1: Sv pings
The prior example return is an ObjectList with a single item. The Command interface supports the use of an objectlist with a single item, as an object. As seen in the Properties list for -3:
> -3 | Properties
4DBackground | SeaAndSky |
4DConstrainMinimumSampleSize | true |
4DDownsamplePings | true |
4DPingVisualization | Spheres |
...
Actions and Options
The second element of a basic command interface command is the Action. Refer to the list of Actions.
See also: The filter action Only and its Options.
Omitting the Action from the command
You do not always need to specify the Action for an Option. If only one Action has the Option then
ObjectMatcher | Option
can be shorthand for
ObjectMatcher | Action Option
For example, the FixedDepthOperator Option is unique to the CreateLine Action. Since the ObjectsMatcher can also be omitted, you can create a Fixed depth line with
> FixedDepthOperator
The command interface ignores all the Objects in the ObjectList that do not support FixedDepthOperator.
Chaining commands
If the result of a command is an Object or ObjectList, you can use the output in another command.
Example: Change multiple PairsList values
The result of a Properties assignment command is an Object which you can immediately utilize
> Calibration subset | Properties GridXAxis = | TimeMinutes | Properties GridXAxisSpacingInMinutes = | 1
The above is equivalent to
> Calibration subset | Properties GridXAxis = | TimeMinutes
Calibration subset
> Calibration subset | Properties GridXAxisSpacingInMinutes = | 1
Example: Create a new line and immediately edit its Properties
Use matching to immediately set one or more properties of a new line
> Ev File | CreateLine FixedDepthOperator | Properties UseDefaultLineDisplaySettings = | False | Properties Depth = | 1.1 | Properties CustomLineDisplayThickness = | 3
The above is equivalent to
> Ev File | CreateLine FixedDepthOperator
Fixed depth 1
> Fixed depth 1 | Properties UseDefaultLineDisplaySettings = | False
Fixed depth 1
> Fixed depth 1 | Properties Depth = | 1.1
Fixed depth 1
> Fixed depth 1 | Properties CustomLineDisplayThickness = | 3
Unpacking the Properties Action
The Properties Action exposes many settings for EV File, Platform, Transducer, Surface, Exporter operator, Operator, Time series operator, region detection configuration and Variable Properties dialog boxes as Name | Value PairsList elements.
Use the Properties Information window to identify objects and properties that support read-write or read-only access through the Console or EvApplication.Exec(). Properties are grouped under categories corresponding to sections or pages in Properties dialog boxes. On the shortcut menu for a property, select Copy for Console to copy a Console-ready command to the clipboard.
Here are some examples.
- Querying a single Properties Option returns a single PairsList pair.
> Calibration subset | Properties SinglebeamFlipVertically
Calibration subset | false
- The result may include values that are SpacedLists.
Refer to PairsList values that are SpacedLists for examples on manipulating value arrays.
- Querying multiple Objects returns each Name | Value pair in the PairsList on a new line.
> sv* | Properties SinglebeamFlipVertically
Fileset 1: Sv raw pings T1 | false |
Fileset 1: Sv raw pings T2 | false |
...
Note that some Property values are read-only.
The Page* and Value* Properties Options
Use the Page* and Value* Options in the Console to navigate supported properties and determine the range and format of accepted values.
The available Page* Options depend on the objects in the current EV file. When no object is selected, use Page(Shift+Tab) to list the Page* Options for objects that currently exist in the EV file. For example, PageBottomClassification is available when the EV file contains a Bottom points variable.
PageName |
Properties dialog box |
Description |
Page4DDisplay |
4D Display page of Variable Properties |
Applies to multibeam raw and virtual variables. |
PageAlongtrackDisplay |
Alongtrack Display page of Time Series Properties |
Applies to time series variables displaying alongtrack data in a Cruisetrack window. |
PageAnalysis |
Analysis page of Variable Properties |
Applies to acoustic raw and virtual variables. |
PageAttitude |
Attitude page of Platform Properties |
Applies to a platform and sets up heading source. |
PageBottomClassification |
Bottom Classification page of EV File Properties |
Bottom classification properties. |
PageCalibration |
Calibration page of Variable Properties |
Applies to acoustic raw and virtual variables. |
PageClasses |
Classes page of EV File Properties |
Properties for Region classes, Species, Target class and Marker region creation. Properties for region display in echograms. |
PageCruisetrackDisplay |
Cruisetrack Display page of Variable Properties |
Applies to position (GPS) variables. |
PageData |
Data page of Variable Properties |
Applies to acoustic raw and virtual variables, for display and analysis thresholds. |
PageDetection |
Detection page of Fish Track Detection Configuration Properties Detection page of School Detection Configuration Properties Detection page of Multibeam School Detection Configuration Properties |
Applies to Region Detection Configuration objects via the object name. The region detection configuration Name and Notes properties are handled under PageNameAndNotes. |
PageEchogram |
Echogram page of EV File Properties |
EV file-level properties for Echogram mode, Show on echogram options and Multibeam replay rate. |
PageEchogramDisplay |
Echogram Display page of Variable Properties |
Applies to acoustic raw and virtual variables for the display of color schemes, display limits, and the integram on single beam, single target, and multibeam echograms. |
PageEvFile |
EV File page of EV File Properties |
EV file-level properties for file locations and workspace. |
PageExport |
Export page of EV File Properties |
EV file-level properties for analysis variables, output biomass units and data format. |
PageFilter |
Filter Targets page of Variable Properties |
Applies to acoustic raw and virtual single target variables. |
PageGraph |
Graph page of Variable Properties |
Applies to Bottom points data output by a bottom classification displayed as alongtrack. Properties affect the associated first graph. Subsequent concurrent graphs can override the first graph's axes selection. |
PageGrid |
Grid page of Variable Properties |
Applies to acoustic raw and virtual variables for echogram grid color, line and font. |
PageLinePick |
Line Pick page of EV File Properties |
EV file-level line pick algorithm properties. |
PageLinesOrSurfaces |
Line display on echogram for single beam raw and virtual variables. Surface intersection display on sector echogram for multibeam raw and virtual variables. |
|
PageMapping |
Mapping page of EV File Properties |
EV file-level mapping properties. |
PageMediaPosition |
Media Position page of Variable Properties |
Applies to media variables and provides properties for the platform, tow point, line, and media source. |
PageGeneral |
General page of Transducer Properties General page of Platform Properties |
Applies to transducer objects. Applies to platform objects. |
PageNameAndNotes |
Name and Notes page of Variable Properties Name and Notes page of Time Series Properties Name and Notes page of Exporter Properties Name and Notes page of virtual Surface Properties Name and Notes page of Region Detection Configuration Properties |
Applies to acoustic raw and virtual variables. Applies to acoustic raw and virtual time series or line variables. Applies to exporter objects. Applies to virtual surfaces, with PageOperator for the surface operator. Applies to region detection configuration objects. For these objects, PageNameAndNotes returns the Name and Notes properties; DynamicName is not supported. |
PageNotes |
Notes page of Surface Properties Notes page of Transducer Properties |
Applies to detected, surface-from-line, resampled, and imported surfaces. Applies to transducer objects. |
PageGeometry |
Geometry page of Transducer Properties |
Applies to transducer objects. |
PageOperator |
OperatorName page of Variable Properties OperatorName page of Exporter Properties OperatorName page of virtual Surface Properties |
Applies to virtual variables or exporters or virtual surfaces.
|
PagePingStatus |
Ping Status page of EV File Properties |
EV file-level properties for ping status. |
PagePosition |
Position page of Platform Properties |
Applies to platform objects. |
PageProjection |
Projection page of EV File Properties |
EV file-level properties for mapping projection. |
PageRegionDetection |
Region Detection page of EV File Properties |
EV file-level properties for preferred region detection configurations. |
PageRegionStyle |
Echogram display section of the Classes page of EV File Properties |
EV file-level properties for the display of region classes. |
PageRegions |
Regions page of Variable Properties |
Applies to acoustic raw and virtual variables for echogram region display and variable-level preferred region detection configuration. |
PageDisplay PageGeneral PageNotes PageRasterImages PageTime |
Detected, surface-from-line, resampled, or imported Surface Properties |
Applies to detected, surface-from-line, resampled, and imported surfaces. For more information, refer to Creating surfaces and Detecting surfaces. |
PageSurfaceDetection |
Surface Detection page of EV File Properties |
EV file-level properties for surface detection. |
PageTimeSeries |
Time Series OperatorName page of Time Series Properties |
Applies to virtual time series variables. |
PageTimeSeriesDisplay |
Display page of Time Series Properties |
Applies to raw and virtual time series variables. |
PageTimeSeriesOverlay |
Time Series Overlay page of Variable Properties |
Applies to single beam acoustic raw and virtual variables for the display of time series overlaid on an echogram. |
Example: Narrow the Properties Options with the Page* Options
Use Shift+Tab to discover the pages of the Properties dialog box available to the command interface.
> Calibration subset | Properties Page(Shift+Tab)
"Page" matches actions
Properties Page4dDisplay
Properties PageAlongtrackDisplay
Properties PageAnalysis
...
Then list the Pairs from a particular page.
> Calibration subset | Properties PageAnalysis
BackgroundNoiseAt1m | -999.0 |
BottomEchoThresholdAt1m | -125.0 |
BottomLine | None |
...
Note: Use ObjectName | Operands to list the operands of a virtual variable.
Example: Determine Properties Arguments with the Value* Options
Use the Value* Options to list attributes of Property values.
> Calibration subset | Properties value(Shift+Tab)
"Value" matches actions
Properties ValueDefault
Properties ValueMaximum
Properties ValueMinimum
Properties ValueOptions
Properties ValueUnits
List all choices for a value that accepts discrete settings.
> Calibration subset | Properties GridXAxis ValueOptions
Calibration subset | None TimeMinutes GPSDistanceNmi VesselLogDistanceNmi PingNumber GPSDistanceM VesselLogDistanceM WaterCurrentDistanceM TimeHours TimeDays
List the default, maximum or minimum value choices of a variable.
> Calibration subset | Properties GridXAxisSpacingInMinutes ValueMaximum
Calibration subset | 99999.99
> Calibration subset | Properties GridXAxisSpacingInMinutes ValueMinimum
Calibration subset | 0.01
> Calibration subset | Properties GridXAxisSpacingInMinutes ValueDefault
Calibration subset | 10.0
No data is a special value for some Options.
> Calibration subset | Properties GraphBeamXAxisMinimum ValueDefault
Calibration subset | No data
The Export Option
Output the Properties Options to a Export settings files (*.txt) file. The Export Option requires an Argument specifying the output path. For example,
> Ev File | Properties Export | C:\Users\EvFileSettings.txt
The format of the output file is
ObjectName PropertyName CurrentValue Units MinimumValue MaximumValue ValueOptions DefaultValue
The ObjectName is the name of the variable. ProperyName and CurrentValue are from the Name | Value PairsList.
PairsList values that are SpacedLists
Example: Obtain and modify values that are SpacedLists
Output the ping status colors as a SpacedList.
> Ev File | Properties PingStatusColors
Ev File | Blue Cyan Green Magenta Red Yellow White BlueDark CyanDark GreenDark
Reassign the ping status colors by specifying a new SpacedList.
> Ev File | Properties PingStatusColors = | Red Yellow Blue Green Cyan Magenta White BlueDark GreenDark CyanDark
Ev File
Now check the first item.
> Ev File | Properties PingStatusColors 0
Ev File | Red
Inspect items three to six.
> Ev File | Properties PingStatusColors 2..5
Ev File | Blue Green Cyan Magenta
Reassign items from index position 2 onward with an array of items, and immediately see the result.
> Ev File | Properties PingStatusColors 2 = | Yellow Green Magenta Red | Properties PingStatusColors
Ev File | Blue Cyan Yellow Green Magenta Red White BlueDark CyanDark GreenDark
You add or remove items by name, which you can find with the Value* Options.
> Ev File | Properties ExportAnalysisVariables = | None
Ev File
> ExportAnalysisVariables += | RegionId RegionClass
Ev File
> ExportAnalysisVariables
Ev File | RegionID RegionClass
> ExportAnalysisVariables -= | RegionClass
Ev File
> ExportAnalysisVariables
Ev File | RegionID
Example: Extending and contracting a variable-sized array
Add elements and check the result.
> Fileset 1: Sv pulse compressed wideband pings T1 | Properties CalibrationAssistantSphereFrequencyDistribution += | 10 20 30 40
Fileset 1: Sv pulse compressed wideband pings T1
> Fileset 1: Sv pulse compressed wideband pings T1 | CalibrationAssistantSphereFrequencyDistribution
Fileset 1: Sv pulse compressed wideband pings T1 | 10.0 20.0 30.0 40.0
You can overwrite and extend at the same time.
> Fileset 1: Sv pulse compressed wideband pings T1 | Properties CalibrationAssistantSphereFrequencyDistribution 2 = | 50 60
Fileset 1: Sv pulse compressed wideband pings T1
> Fileset 1: Sv pulse compressed wideband pings T1 | CalibrationAssistantSphereFrequencyDistribution
Fileset 1: Sv pulse compressed wideband pings T1 | 10.0 20.0 50.0 60.0
But you cannot leave a gap in the sequence.
> Fileset 1: Sv pulse compressed wideband pings T1 | Properties CalibrationAssistantSphereFrequencyDistribution 10 = | 70
ERROR | The index (10) is beyond the bounds ([0..3]) of Calibration assistant sphere frequency distribution.
Remove an item and check the result.
> Fileset 1: Sv pulse compressed wideband pings T1 | Properties CalibrationAssistantSphereFrequencyDistribution 3 -=
Fileset 1: Sv pulse compressed wideband pings T1
> Fileset 1: Sv pulse compressed wideband pings T1 | CalibrationAssistantSphereFrequencyDistribution
Fileset 1: Sv pulse compressed wideband pings T1 | 10.0 20.0 50.0 60.0
Example: Modify EV file search locations
The locations that Echoview searches for data files, calibration files and Python source files are variable-sized SpacedLists. Use the following EV File Property Options:
- DataFileLocations
- CalibrationFileLocations
- PythonFileLocations
List the current data file locations.
> Ev File | Properties DataFileLocations
Ev File | "%Data File Folder%" "%EV File Folder%"
Add a data file location. Enclose a path in double quotation marks if it contains spaces.
> Ev File | Properties DataFileLocations += | "D:\echoview_user\data"
Ev File
Remove the location at index position 0.
> Ev File | Properties DataFileLocations 0 -=
Ev File
Replace the current list with a new location.
> Ev File | Properties DataFileLocations = | "D:\new data location"
Ev File
Set the list to None to remove all locations, effectively restores locations to those of a new EV file.
> Ev File | Properties DataFileLocations = | None
Ev File
See also
About the command interface
About the console window
Exec
Using the console