Examples¶
The examples below can be copied and pasted directly into the macro editor. Functions that involve a dialog, such as IPA.File.GetFileNames(), open a file-selection screen when run. See Built-in functions for the details of each member.
Tip
When the editor's saved-macro list is empty, a richer set of samples (basic loops, math functions, geometry setup, azimuthal division, masking, sending to PDIndexer, etc.) is inserted automatically. Browsing those first is a good way to learn the style.
Convert several files to 1D profiles and save them (single-image files)¶
# Convert several files in the same folder into 1D profiles and save them
# (when each file contains a single image)
# First, get the file names (multiple allowed)
filelist = IPA.File.GetFileNames()
# Loop over filelist
for filename in filelist:
# If the extension is .stl
if filename.endswith('.stl'):
# Read the file
IPA.File.ReadImage(filename)
# Set True to find the center before Get Profile
IPA.Profile.FindCenterBeforeGetProfile = True
# Set True to mask spots before Get Profile
IPA.Profile.MaskSpotsBeforeGetProfile = True
# Set True to save the profile after Get Profile
IPA.Profile.SaveProfileAfterGetProfile = True
# Set True to save as CSV (also SaveProfileAsTSV, SaveProfileAsPDI, ...)
IPA.Profile.SaveProfileAsCSV = True
# Run Get Profile and save to the given file name
IPA.Profile.GetProfile(filename)
Convert several files to 1D profiles and save them (multi-image files)¶
# Convert several files in the same folder into 1D profiles and save them
# (when each file contains multiple images)
# First, get the file names (multiple allowed)
filelist = IPA.File.GetFileNames()
# Loop over filelist
for filename in filelist:
# If the extension is .his
if filename.endswith('.his'):
# Read the file
IPA.File.ReadImage(filename)
IPA.Profile.FindCenterBeforeGetProfile = True
IPA.Profile.MaskSpotsBeforeGetProfile = True
IPA.Profile.SaveProfileAfterGetProfile = True
IPA.Profile.SaveProfileAsCSV = True
# Loop over the number of contained images (IPA.Sequential.Count)
for num in range(IPA.Sequential.Count):
# Select the frame
IPA.Sequential.SelectedIndex = num
# Run Get Profile and save with the frame number appended
IPA.Profile.GetProfile(filename + '_' + str(num))
Batch-convert several files (stl, his, ...) to TIFF¶
# Batch-convert several files (stl, his, ...) in the same folder to TIFF
# Get the files (multiple allowed) with IPA.File.GetFileNames()
filelist = IPA.File.GetFileNames()
# Loop over filelist
for filename in filelist:
# If the extension is .his
if filename.endswith('.his'):
IPA.File.ReadImage(filename) # read the file
IPA.File.SaveImageAsTIFF(filename.replace('.his', '.tif')) # save as tif
# If the extension is .stl
if filename.endswith('.stl'):
IPA.File.ReadImage(filename) # read the file
IPA.File.SaveImageAsTIFF(filename.replace('.stl', '.tif')) # save as tif