Skip to main content

Speos RPC 2026 R1 SP02

Reference documentation

Last update: 12.06.2026

LTF/v1/LTF.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

Filename

Field Type Label Description
filename string

LightTransferData

Field Type Label Description
object_direction Vector3d
start_point Point3d
emissivity double
focus_distance double
divergence_X double
divergence_Y double
pupil_surface LightTransferData.PupilSurface

LightTransferData.PupilSurface

Field Type Label Description
disk PupilSurfaceDisk
ellipse PupilSurfaceEllipse
polygon PupilSurfacePolygon

LightTransferDataDistribution

Field Type Label Description
data LightTransferData repeated

Point2d

Field Type Label Description
x double
y double

Point3d

Field Type Label Description
x double
y double
z double

PupilSurfaceDisk

Field Type Label Description
radius double

PupilSurfaceEllipse

Field Type Label Description
alpha double
semi_major_axis double
semi_minor_axis double

PupilSurfacePolygon

Field Type Label Description
nb_points int32
points Point2d repeated

SpectralLightTransferDataDistribution

Field Type Label Description
wavelength_samples double repeated
sensor_sampling_type SensorSamplingType
sensor_samples_X double repeated
sensor_samples_Y double repeated
pupil_surface_type PupilSurfaceType
ltf_samples LightTransferDataDistribution repeated

Vector3d

Field Type Label Description
x double
y double
z double

PupilSurfaceType

Name Number Description
POINT 0
DISK 1
ELLIPSE 2
POLYGON 3

SensorSamplingType

the sensor sampling type : symmetric = polar coordinates asymmetric = cartesian coordinates

Name Number Description
SYMMETRIC 0
ASYMMETRIC 1

LightTransferFunctionService

Method Name Request Type Response Type Description
Load Filename .google.protobuf.Empty Serialization for *.OPTDistortion files
Save Filename .google.protobuf.Empty
Import SpectralLightTransferDataDistribution .google.protobuf.Empty Import/Export of LightTransferDataDistribution
Export .google.protobuf.Empty SpectralLightTransferDataDistribution

bsdf/v1/anisotropic_bsdf.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

AnisotropicBsdfData

Field Type Label Description
description string
anisotropy_vector AnisotropicBsdfData.Double3
reflection AnisotropicBsdfData.Bsdf
transmission AnisotropicBsdfData.Bsdf

AnisotropicBsdfData.Bsdf

Field Type Label Description
spectrum_incidence double spectrum information

radians in [0, pi/2]
spectrum_anisotropy double radians in [0, 2*pi]
spectrum AnisotropicBsdfData.Bsdf.WavelengthCoefficientPair repeated
anisotropic_samples AnisotropicBsdfData.Bsdf.AnisotropicSample repeated

AnisotropicBsdfData.Bsdf.AnisotropicSample

Field Type Label Description
anisotropic_sample double radians in [0, pi/2] or [0, pi] or [0, 2*pi]
incidence_samples AnisotropicBsdfData.Bsdf.AnisotropicSample.IncidenceSample repeated

AnisotropicBsdfData.Bsdf.AnisotropicSample.IncidenceSample

Field Type Label Description
incidence_sample double radians in [0, pi/2]
theta_samples double repeated intensity diagram

radians in [0, pi/2] for reflection // radians in [pi/2, pi] for transmission
phi_samples double repeated radians in [0, 2*pi]
bsdf_cos_theta double repeated 1/steradians
integral double reflection/transmission coefficient

AnisotropicBsdfData.Bsdf.WavelengthCoefficientPair

Field Type Label Description
wavelength double nanometers
coefficient double in [0, 1] interval

AnisotropicBsdfData.Double3

Field Type Label Description
x double
y double
z double

ConoscopicMap

Field Type Label Description
output_file_name string .xmp
wavelength double nanometers
anisotropic_angle double radians in [0, 2*pi]
side ConoscopicMap.BsdfSide
resolution int32

FileName

Field Type Label Description
file_name string

InterpolationEnhancementData

Field Type Label Description
anisotropic_samples InterpolationEnhancementData.AnisotropicSample repeated

InterpolationEnhancementData.AnisotropicSample

Field Type Label Description
incidence_samples InterpolationEnhancementData.AnisotropicSample.ConeData repeated

InterpolationEnhancementData.AnisotropicSample.ConeData

Field Type Label Description
cone_half_angle double radians in [0, pi/2]
cone_height double value >= 0

RefractiveIndices

Field Type Label Description
refractive_index_1 double
refractive_index_2 double

SpectrumImport

Field Type Label Description
incidence_angle double radians in [0, pi/2]
anisotropy_angle double radians in [0, 2*pi]
file_name string .spectrum

SpecularInterpolationEnhancementData

Field Type Label Description
reflection InterpolationEnhancementData
transmission InterpolationEnhancementData
refractive_index_1 double
refractive_index_2 double

Wavelength

Field Type Label Description
wavelength double in nanometers

ConoscopicMap.BsdfSide

Name Number Description
UNKNOWN 0
REFLECTION 1
TRANSMISSION 2

AnisotropicBsdfService

Method Name Request Type Response Type Description
Load FileName .google.protobuf.Empty serialization for native *.anisotropicbsdf files
Save FileName .google.protobuf.Empty
Import AnisotropicBsdfData .google.protobuf.Empty to and from AnisoptropicSpeosBsdf.AnisotropicBsdfData
Export .google.protobuf.Empty AnisotropicBsdfData
ImportFile FileName .google.protobuf.Empty to and from serialized AnisoptropicSpeosBsdf.AnisotropicBsdfData
ExportFile FileName .google.protobuf.Empty
GenerateSpecularInterpolationEnhancementData RefractiveIndices .google.protobuf.Empty interpolation enhancement for specular
GetSpecularInterpolationEnhancementData .google.protobuf.Empty SpecularInterpolationEnhancementData
SetSpecularInterpolationEnhancementData SpecularInterpolationEnhancementData .google.protobuf.Empty
GenerateRetroReflectionInterpolationEnhancementData .google.protobuf.Empty .google.protobuf.Empty interpolation enhancement for retro reflection
GetRetroReflectionInterpolationEnhancementData .google.protobuf.Empty InterpolationEnhancementData
SetRetroReflectionInterpolationEnhancementData InterpolationEnhancementData .google.protobuf.Empty
EnableWhiteSpecular Wavelength .google.protobuf.Empty white specular
DisableWhiteSpecular .google.protobuf.Empty .google.protobuf.Empty
ImportReflectionSpectrum SpectrumImport .google.protobuf.Empty spectrum import
ImportTransmissionSpectrum SpectrumImport .google.protobuf.Empty
FreezeAbsorptionReflectionTransmissionCoefficients .google.protobuf.Empty .google.protobuf.Empty constant absorption
ExportToConoscopicMap ConoscopicMap .google.protobuf.Empty export to conoscopic map

bsdf/v1/bsdf_creation.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

AnisotropicBsdfInputData

Field Type Label Description
input_anisotropic_bsdf_samples AnisotropicBsdfInputData.Sample repeated
fix_disparity bool
output_file_name string .anisotropicbsdf

AnisotropicBsdfInputData.Sample

Field Type Label Description
anisotropic_angle double radians in [0, 2*pi]
file_name string .anisotropicbsdf

Bsdf180InputData

Field Type Label Description
input_front_bsdf_file_name string .coated *.brdf *.anisotropicbsdf *.scattering
input_opposite_bsdf_file_name string .coated *.brdf *.anisotropicbsdf *.scattering
output_file_name string .bsdf180

SpectralBsdfInputData

Field Type Label Description
input_anisotropic_samples SpectralBsdfInputData.Sample repeated
output_file_name string .brdf

SpectralBsdfInputData.Sample

Field Type Label Description
wavelength double nanometers
file_name string .anisotropicbsdf

BsdfCreationService

Method Name Request Type Response Type Description
BuildBsdf180 Bsdf180InputData .google.protobuf.Empty create a bsdf180 file
BuildSpectralBsdf SpectralBsdfInputData .google.protobuf.Empty create spectral bsdf file
BuildAnisotropicBsdf AnisotropicBsdfInputData .google.protobuf.Empty build anisotropic bsdf file

bsdf/v1/spectral_bsdf.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

ConoscopicMap

Field Type Label Description
output_file_name string .xmp
wavelength double nanometers
side ConoscopicMap.BsdfSide
resolution int32

FileName

Field Type Label Description
file_name string

RefractiveIndices

Field Type Label Description
refractive_index_1 double
refractive_index_2 double

SpectralBsdfData

Field Type Label Description
description string
incidence_samples double repeated radians in [0, pi/2]
wavelength_samples double repeated nanometers
wavelength_incidence_samples SpectralBsdfData.WavelengthIncidence repeated

SpectralBsdfData.WavelengthIncidence

Field Type Label Description
reflection SpectralBsdfData.WavelengthIncidence.Diagram
transmission SpectralBsdfData.WavelengthIncidence.Diagram

SpectralBsdfData.WavelengthIncidence.Diagram

Field Type Label Description
theta_samples double repeated radians in [0, pi/2]
phi_samples double repeated radians in [0, 2*pi]
bsdf_cos_theta double repeated 1/steradians
integral double reflection/transmission coefficient in [0, 1] interval

SpecularInterpolationEnhancementData

Field Type Label Description
incidence_nb int32
wavelength_nb int32
refractive_index_1 double
refractive_index_2 double
wavelength_incidence_samples SpecularInterpolationEnhancementData.WavelengthIncidence repeated

SpecularInterpolationEnhancementData.WavelengthIncidence

Field Type Label Description
reflection SpecularInterpolationEnhancementData.WavelengthIncidence.ConeData
transmission SpecularInterpolationEnhancementData.WavelengthIncidence.ConeData

SpecularInterpolationEnhancementData.WavelengthIncidence.ConeData

Field Type Label Description
cone_half_angle double radians in [0, pi/2]
cone_height double value >= 0

ConoscopicMap.BsdfSide

Name Number Description
UNKNOWN 0
REFLECTION 1
TRANSMISSION 2

SpectralBsdfService

Method Name Request Type Response Type Description
Load FileName .google.protobuf.Empty serialization for native *.brdf files
Save FileName .google.protobuf.Empty
Import SpectralBsdfData .google.protobuf.Empty to and from SpectralSpeosBsdf.SpectralBsdfData
Export .google.protobuf.Empty SpectralBsdfData
ImportFile FileName .google.protobuf.Empty to and from serialized SpectralSpeosBsdf.SpectralBsdfData
ExportFile FileName .google.protobuf.Empty
GenerateSpecularInterpolationEnhancementData RefractiveIndices .google.protobuf.Empty interpolation enhancement for specular
GetSpecularInterpolationEnhancementData .google.protobuf.Empty SpecularInterpolationEnhancementData
SetSpecularInterpolationEnhancementData SpecularInterpolationEnhancementData .google.protobuf.Empty
ExportToConoscopicMap ConoscopicMap .google.protobuf.Empty export to conoscopic map

common/v1/data.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

DataBytes

raw buffer in bytes, to send any kind of data

Field Type Label Description
values bytes raw values
magnitude_size uint64 number of values needed to describe the magnitude (ex : simple value=1 / vector=3 / color_rgb=3 ...)
dimensions uint64 repeated size of dimensions where the magnitudes are applied = total number of dimension representation of the data, each value representing its dimension size
magnitude Magnitude magnitude of the value of what we have received
unit Unit units of the values

DataDoubles

arrays values of doubles

Field Type Label Description
values double repeated raw values
magnitude_size uint64 number of values needed to describe the magnitude (ex : simple value=1 / vector=3 / color_rgb=3 ...)
dimensions uint64 repeated size of dimensions where the magnitudes are applied = total number of dimension representation of the data, each value representing its dimension size
magnitude Magnitude magnitude of the value of what we have received
unit Unit units of the values

DataFloats

arrays values of floats

Field Type Label Description
values float repeated raw values
magnitude_size uint64 number of values needed to describe the magnitude (ex : simple value=1 / vector=3 / color_rgb=3 ...)
dimensions uint64 repeated size of dimensions where the magnitudes are applied = total number of dimension representation of the data, each value representing its dimension size
magnitude Magnitude magnitude of the value of what we have received
unit Unit units of the values

DataIntegers32

arrays values of integers

Field Type Label Description
values int32 repeated raw values
magnitude_size uint64 number of values needed to describe the magnitude (ex : simple value=1 / vector=3 / color_rgb=3 ...)
dimensions uint64 repeated size of dimensions where the magnitudes are applied = total number of dimension representation of the data, each value representing its dimension size
magnitude Magnitude magnitude of the value of what we have received
unit Unit units of the values

DataIntegers64

arrays values of integers

Field Type Label Description
values int64 repeated raw values
magnitude_size uint64 number of values needed to describe the magnitude (ex : simple value=1 / vector=3 / color_rgb=3 ...)
dimensions uint64 repeated size of dimensions where the magnitudes are applied = total number of dimension representation of the data, each value representing its dimension size
magnitude Magnitude magnitude of the value of what we have received
unit Unit units of the values

DataUIntegers32

arrays values of integers

Field Type Label Description
values uint32 repeated raw values
magnitude_size uint64 number of values needed to describe the magnitude (ex : simple value=1 / vector=3 / color_rgb=3 ...)
dimensions uint64 repeated size of dimensions where the magnitudes are applied = total number of dimension representation of the data, each value representing its dimension size
magnitude Magnitude magnitude of the value of what we have received
unit Unit units of the values

DataUIntegers64

arrays values of integers

Field Type Label Description
values uint64 repeated raw values
magnitude_size uint64 number of values needed to describe the magnitude (ex : simple value=1 / vector=3 / color_rgb=3 ...)
dimensions uint64 repeated size of dimensions where the magnitudes are applied = total number of dimension representation of the data, each value representing its dimension size
magnitude Magnitude magnitude of the value of what we have received
unit Unit units of the values

Magnitude

Magnitude represent a physical quantity

Name Number Description
irradiance 0 radiometric irradiance
illuminance 1 photometric irradiance
spectral_irradiance 2 spectral radiometric irradiance
spectral_illuminance 3 spectral photometric irradiance
radiance 4 radiometric radiance
luminance 5 photometric radiance
spectral_radiance 6 spectral radiometric radiance
spectral_luminance 7 spectral photometric radiance
radiant_intensity 8 radiometric intensity
luminous_intensity 9 photometric intensity
spectral_radiant_intensity 10 spectral radiometric intensity
spectral_luminous_intensity 11 spectral photometric intensity
exposure 12 radiometric exposure
luminous_exposure 13 photometric exposure
spectral_exposure 14 spectral radiometric exposure
spectral_luminous_exposure 15 spectral photometric exposure
radiant_flux 16 radiometric flux
luminous_flux 17 photometric flux
wavelength 26 wavelength
ratio 27 magnitude ratio
color 37 color
ray_sampling 38 rays sampling
distance 48 distance
dimension 49 dimension
plane_angle 50 plane angle
curvature 51 curvature
curvature_product 52 curvature product
photometric_power_density 62 photometric power density
radiometric_power_density 63 radiometric power density
spherical_probability_density 64 spherical probability density
temperature_elevation 74 temperature elevation
colorimetric_error 84 colorimetric error
signal_to_noise_ratio 85 SNR
precision 86 precision
relative_standard_error 87 relative standard error
refractive_power 97 refractive power
refractive_index 98 refractive index
absorption 99 absorption
x_color 109 xyY color space
y_color 110 xyY color space
u_color 111 uvY color space
v_color 112 uvY color space
u_prime_color 113 u'v'Y color space
v_prime_color 114 u'v'Y color space
u_star_color 115 Luv* color space
v_star_color 116 Luv* color space
a_star_color 117 Lab* color space
b_star_color 118 Lab* color space
uppercase_c_star_color 119 LCh color space
h_color 120 LCh color space
uppercase_x_color 121 XYZ color space
uppercase_y_color 122 XYZ color space
uppercase_z_color 123 XYZ color space
uppercase_l_star_color 124 Luv* color space
glare 134 glare

Unit

Units used in Speos data

Name Number Description
watts 0 W
watts_per_square_meters 1 W/(m2)
watts_per_steradians 2 W/(sr)
watts_per_nanometers 3 W/(nm)
watts_per_square_meters_steradians 4 W/(m2.sr)
watts_per_steradians_nanometers 5 W/(sr.nm)
watts_per_square_meters_nanometers 6 W/(m2.nm)
watts_per_square_foot 7 W/ft2
watts_per_square_foot_nanometer 8 W/(ft2.nm)
watts_per_square_centimeter 9 W/cm2
watts_per_square_foot_steradian 10 W/(ft2.sr)
watts_per_square_meter_steradian_nanometer 11 W/(m2.sr.nm)
watts_per_square_foot_steradian_nanometer 12 W/(ft2.sr.nm)
watts_per_cubic_meter 13 W/m3
watts_per_cubic_centimeter 14 W/cm3
joules 16 J
joules_per_nanometers 17 J/(nm)
joules_per_square_meters 18 J/(m2)
joules_per_square_meters_nanometers 19 J/(m2.nm)
joules_per_square_centimeter 20 J/cm2
joules_per_square_foot 21 J/ft2
joules_per_square_foot_nanometer 22 J/(ft2.nm)
luxes 29 lx
luxes_seconds 30 lx.s
luxes_per_nanometers 31 lx.s/(nm)
luxes_seconds_per_nanometers 32 lx.s/(nm)
candelas 42 cd
candelas_per_square_meters 43 cd/(m2)
candelas_per_nanometers 44 cd/(m2)
candelas_per_squaremeters_nanometers 45 cd/(m2.nm)
candelas_per_square_centimeter 46 cd/cm2
candelas_per_square_foot 47 cd/ft2
candelas_per_square_foot_nanometer 48 cd/(ft2.nm)
lumens_per_square_meters_nanometers 49 lm/(m2.nm)
lumens 55 lm
lumens_seconds 56 lm.s
lumens_per_nanometers 57 lm/(nm)
lumens_per_square_centimeter 59 lm/cm2
percent 60 %
lumens_per_cubic_meter 61 lm/m3
lumens_seconds_per_square_centimeter 62 lm.s/cm2
color_XYZ 70 XYZ CIE
color_xyY 71 xy CIE
color_uvY 72 uvY 1960 UCS CIE
color_uvY_prime 73 u'v'Y' 1976 UCS CIE
color_Luv 74 Luv CIELUV
color_Lab 75 Lab CIELAB
color_LCh 76 LCh CIELAB
color_rgb 77 rgb
color_rgba 79 rgba
foot_candles 90 fc
foot_candles_per_nanometer 91 fc/nm
foot_candles_seconds 92 fc.s
foot_candles_seconds_per_nanometer 93 fc.s/nm
foot_lamberts 94 fL
foot_lamberts_per_nanometer 95 fL/nm
nanometers 120 nm
micrometers 121 um
millimeters 122 mm
meters 123 m
radians 124 rad
degrees 125 deg
steradians 126 sr
ray_per_pixel 127 rays/pixel
feet 128 ft
inches 129 in
milliradians 130 mrad
arcminutes 131 '
arcseconds 132 ''
kelvin 133 K
diopters 134 D
millidiopters 135 mD
unit_precision 136 %
square_meters 140 m2
square_centimeters 141 cm2
square_millimeters 142 mm2
square_micrometers 143 micron2
square_nanometers 144 nm2
square_feet 145 ft2
square_inches 146 inch2
invert_meter 150 m-1
invert_millimeter 151 mm-1
invert_foot 152 ft-1
invert_inch 153 in-1
invert_steradian 154 sr-1
no_unit 160

file/v1/file_transfer.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

AddDependencies_Request

Field Type Label Description
uri string uri of the FileSystemItem to be completed with dependencies
dependency_uris string repeated FileSystemItem uris to be added as dependencies

AddDependencies_Response

Chunk

Field Type Label Description
binary bytes
size int64
file_name string file name. Mandatory in the first chunk exchanged.

Delete_Request

Field Type Label Description
uri string uri of the FileSystemItem to be deleted

Delete_Response

Download_Request

Field Type Label Description
uri string uri of the FileSystemItem to be downloaded

Download_Response

Used in File Transfer helpers

Field Type Label Description
info FileSystemItemInformation Information about the FileSystemItem downloaded
download_duration google.protobuf.Duration

FileSystemItemInformation

Field Type Label Description
uri string FileSystemItem uri
file_name string
file_size uint64

ListDependencies_Request

Field Type Label Description
uri string uri of the FileSystemItem

ListDependencies_Response

Field Type Label Description
dependency_infos FileSystemItemInformation repeated Information about the FileSystemItems noticed as dependencies

Reserve_Request

Field Type Label Description
file_name string FileSystemItem's name

Reserve_Response

Field Type Label Description
uri string uri of the FileSystemItem reserved

Upload_Response

Field Type Label Description
info FileSystemItemInformation Information about the FileSystemItem created
upload_duration google.protobuf.Duration

FileTransferService

Method Name Request Type Response Type Description
Reserve Reserve_Request Reserve_Response Reserve a FileSystemItem
Upload Chunk stream Upload_Response Upload a file Mandatory Client's Metadata: key: "file-size" - value: size of the file in bytes Optional Client's Metadata: key: "reserved-file-uri" - value: FileSystemItem reserved uri
Download Download_Request Chunk stream Download a FileSystemItem Server's' Initial Metadata: key: "file-size" - value: size of the file in bytes
Delete Delete_Request Delete_Response Delete a FileSystemItem
AddDependencies AddDependencies_Request AddDependencies_Response Add dependencies to a FileSystemItem
ListDependencies ListDependencies_Request ListDependencies_Response List all dependencies of a FileSystemItem

intensity/v1/intensity.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

Create_Request

Request to create a Intensity in IntensityTemplatesManager

Field Type Label Description
intensity_template IntensityTemplate Intensity containing its basic characteristics
guid string optional Optional field to specify the guid used in the database. If not set, a unique guid will be generated for that entry and sent back in the Create_Response.

Create_Response

Field Type Label Description
guid string Guid of the Intensity created in IntensityTemplatesManager

Delete_Request

Request to delete a Intensity in IntensityTemplatesManager

Field Type Label Description
guid string Guid of the Intensity to be deleted

Delete_Response

GetLibraryTypeInfo_Request

Request of GetLibraryTypeInfo

Field Type Label Description
guid string Guid of the IntensityTemplate to get information about intensity file (example: flux). Only for IntensityTemplate of type Library.

GetLibraryTypeInfo_Response

Response of GetLibraryTypeInfo

Field Type Label Description
flux common.v1.DataDoubles Flux of the intensity file

IntensityTemplate

Intensity with its basic characteristics

Field Type Label Description
name string Intensity name
description string Intensity descrition
metadata IntensityTemplate.MetadataEntry repeated User defined metadatas
library IntensityTemplate.Library From file
lambertian IntensityTemplate.Lambertian Deprecated (use cos instead) - Lambertian distribution
cos IntensityTemplate.Cos Lambert cosine law distribution
symmetric_gaussian IntensityTemplate.SymmetricGaussian Deprecated (use gaussian instead) - Symmetric gaussian distribution
asymmetric_gaussian IntensityTemplate.AsymmetricGaussian Deprecated (use gaussian instead) - Asymmetric gaussian distribution
gaussian IntensityTemplate.Gaussian Gaussian distribution

IntensityTemplate.AsymmetricGaussian

Field Type Label Description
FWHM_angle_x double Full Width in degrees following x at Half Maximum
FWHM_angle_y double Full Width in degrees following y at Half Maximum
total_angle double total angle in degrees of the emission of the light source

IntensityTemplate.Cos

Field Type Label Description
N double Order of cos law
total_angle double total angle in degrees of the emission of the light source

IntensityTemplate.Gaussian

Field Type Label Description
FWHM_angle_x double Full Width in degrees following x at Half Maximum
FWHM_angle_y double Full Width in degrees following y at Half Maximum
total_angle double total angle in degrees of the emission of the light source

IntensityTemplate.Lambertian

Field Type Label Description
total_angle double total angle in degrees of the emission of the light source

IntensityTemplate.Library

Field Type Label Description
intensity_file_uri string uri of the intensity file IES (.ies), Eulumdat (.ldt), speos intensities (.xmp)

IntensityTemplate.MetadataEntry

Field Type Label Description
key string
value string

IntensityTemplate.SymmetricGaussian

Field Type Label Description
FWHM_angle double Full Width in degrees at Half Maximum
total_angle double total angle in degrees of the emission of the light source

List_Request

List_Response

Field Type Label Description
guids string repeated Guids of the Intensities in IntensityTemplatesManager

Read_Request

Request to read a Intensity in IntensityTemplatesManager

Field Type Label Description
guid string Guid of the Intensity to be read

Read_Response

Field Type Label Description
intensity_template IntensityTemplate Intensity corresponding to the guid given in Read_Request

Update_Request

Request to update a Intensity in IntensityTemplatesManager

Field Type Label Description
guid string Guid of the Intensity to be updated
intensity_template IntensityTemplate Intensity that will be used for the update

Update_Response

IntensityTemplateActions

Actions available on a IntensityTemplate

Method Name Request Type Response Type Description
GetLibraryTypeInfo GetLibraryTypeInfo_Request GetLibraryTypeInfo_Response Get information about intensity library template

IntensityTemplatesManager

Method Name Request Type Response Type Description
Create Create_Request Create_Response Create a Intensity
Read Read_Request Read_Response Read a Intensity
Update Update_Request Update_Response Update a Intensity
Delete Delete_Request Delete_Response Delete a Intensity
List List_Request List_Response List all Intensities in manager

intensity_distributions/v1/base_map_template.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

LayerData

Field Type Label Description
layer_name string
initial_source_power double
initial_source_power_watt double
initial_source_power_lumen double
wavelength double repeated
value double repeated

Map

Field Type Label Description
x_nb int32 number of x samples
y_nb int32 number of y samples
layer_nb int32 number of layers
x_min double
x_max double
y_min double
y_max double
precision double
value_type ValueTypes
intensity_type IntensityTypes
unit_type UnitTypes
colorimetric_standard CIEStandard
coordinate_unit CoordinateUnits
map_type MapTypes
layer_type LayerTypes
layer LayerData repeated
is_finite_distance bool
finite_difference_sensor_radius double
detector_extent bool
rad_angular_resolution_radius double

CIEStandard

Name Number Description
CIE_STANDARD_UNKNOWN 0
CIE_STANDARD_1931 1
CIE_STANDARD_1964 2

CoordinateUnits

Name Number Description
OptisUnitDefault 0
OptisUnitMillimetre 1
OptisUnitDegree 2
OptisUnitRadian 3
OptisUnitFeet 4
OptisUnitMicrometre 5
OptisUnitNanometre 6
OptisUnitMetre 7
OptisUnitPercent 8
OptisUnitdB 9
OptisUnitInvertMillimetre 10
OptisUnitNoUnit 11
OptisUnitWave 12

IntensityTypes

Name Number Description
OptisIntensityOptis 0 Unsupported
OptisIntensitySAETypeA 1
OptisIntensitySAETypeB 2
OptisIntensityConoscopic 3

LayerTypes

Name Number Description
OptisMapLayerTypeNone 0
OptisMapLayerTypeSource 1
OptisMapLayerTypeSurface 2
OptisMapLayerTypeError 3 Unsupported
OptisMapLayerTypeSequence 4
OptisMapLayerTypePolarization 5
OptisMapLayerTypeIncidenceAngle 6

MapTypes

Name Number Description
OptisMapTypeBasic 0 Unsupported
OptisMapTypeLaser 1 Unsupported
OptisMapTypeSpectral 2
OptisMapTypeExtended 3
OptisMapTypeUnknown 4
OptisMapTypeGainMatrix 5
OptisMapTypeRays 6
OptisMapTypeFTM 7
OptisMapTypeOptisVR 8
OptisMapType3D 9

UnitTypes

Name Number Description
OptisUnitTypeRadiometric 0
OptisUnitTypePhotometric 1
OptisUnitTypeTemperature 2
OptisUnitTypeUnknown 3
OptisUnitTypeFTM 4 Unsupported
OptisUnitTypeDegree 5
OptisUnitTypeInverseMeter 6
OptisUnitTypeInverseSquareMeter 7
OptisUnitTypePercent 8
OptisUnitTypeDiopter 9
OptisUnitTypeMeter 10
OptisUnitTypeInverseSteradian 11

ValueTypes

Name Number Description
OptisValueTypeIrradiance 0
OptisValueTypeIntensity 1
OptisValueTypeRadiance 2
OptisValueTypeVisual 3
OptisValueTypeSel 4 Unsupported
OptisValueTypeLaserPhase 5 Unsupported
OptisValueTypeLaserPhasePlane 6 Unsupported
OptisValueTypeDirectionalIrradiance 7
OptisValueTypeGain 8 Unsupported
OptisValueTypeWaveFront 9 Unsupported
OptisValueTypeFTM 10 Unsupported
OptisValueTypeRP 11 Unsupported
OptisValueTypePowerDensity 12
OptisValueTypePopulation 13
OptisValueTypeTemperature 14
OptisValueTypeAngle 15
OptisValueTypeCurvature 16
OptisValueTypeCurvatureProduct 17
OptisValueTypePercentage 18
OptisValueTypeUnknown 19
OptisValueTypeRefractivePower 20
OptisValueTypeFlyThrough 21
OptisValueTypeColorimetricError 22
OptisValueTypeConoscopicRadiance 23
OptisValueTypeSNR 24
OptisValueTypeSNRIntensity 25
OptisValueTypeSNRDirectionalIrradiance 26
OptisValueTypePrecision 27
OptisValueTypePrecisionIntensity 28
OptisValueTypePrecisionDirectionalIrradiance 29
OptisValueTypeDistance 30
OptisValueTypeEyeSensorRadiance 31
OptisValueTypeSphericalProbabilityDensity 32
OptisValueTypeRSE 33
OptisValueTypeRSEIntensity 34
OptisValueTypeExposure 35

intensity_distributions/v1/eulumdat.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

EulumdatFileInformation

Field Type Label Description
company_identification string
measurement_report_number string
luminaire_name string
luminaire_number string
file_name string
date string

EulumdatIntensityData

Field Type Label Description
number_lamps int32 integer > 0
type_lamps string
total_luminous_flux double double > 0
color_temperature string
color_rendering_index string
wattage_including_ballast double

EulumdatIntensityDistribution

Field Type Label Description
description string
file_info EulumdatFileInformation
type_indicator int32
symmetry_indicator int32
c_plane_number int32
distance_c_planes double
g_angle_number int32
distance_g_angle double
diameter_luminaire double (mm)
width_luminaire double (mm)
height_luminaire double (mm)
diameter_luminous_area double (mm)
width_luminous_area double (mm)
height_luminous_area_c0 double (mm)
height_luminous_area_c90 double (mm)
height_luminous_area_c180 double (mm)
height_luminous_area_c270 double (mm)
downward_flux_fraction double Percentage between 0% and 100%
light_ouput_ratio double Percentage between 0% and 100%
conversion_factor double
measurement_tilt double
number_standard_set_lamps int32
lamp_distribution EulumdatIntensityData repeated
direct_ratio double repeated
c_plane double repeated
g_angle double repeated
luminous_intensity_per_klm double repeated (cd/klm)

Export_Request

Import_Response

Load_Request

Field Type Label Description
file_uri string

Load_Response

Save_Request

Field Type Label Description
file_uri string

Save_Response

EulumdatIntensityService

service to manage eulumdat file

Method Name Request Type Response Type Description
Load Load_Request Load_Response Load CEulumdat from filename
Save Save_Request Save_Response Save CEulumdat to filename
Import EulumdatIntensityDistribution Import_Response import EulumdatIntensityDistribution to CEulumdat
Export Export_Request EulumdatIntensityDistribution export CEulumdat to EulumdatIntensityDistribution

intensity_distributions/v1/extended_map_template.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

ExtendedMap

Field Type Label Description
base_data Map
value Values

Values

Field Type Label Description
layer Values.Layers repeated map layers

Values.Layers

Field Type Label Description
y Values.Layers.ys repeated y samples of the map

Values.Layers.ys

Field Type Label Description
x double repeated x samples of the map

intensity_distributions/v1/ies.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

Export_Request

IesIntensityDistribution

Field Type Label Description
norme_version int32
key_words string repeated
unit int32 feet or meters
nb_vertical_angle int32
nb_horizontal_angle int32
tilt_type int32 tilt_type set to 1 means None.
tilt_geometry int32
nb_lamp int32 integer > 0
photo_type int32
lumen_lamp double
multiplier double
width double (feet) or (meters) according to 'int32' unit type.
length double (feet)
height double (feet)
ballast double float > 0
future_use double float > 0
input_watt double float > 0
vertical_angle double repeated
horizontal_angle double repeated
candela_value double repeated
tilt_angle double repeated
tilt_mult_factor double repeated
local_vert double
tilt_nb_pair_angle int32

Import_Response

Load_Request

Field Type Label Description
file_uri string

Load_Response

Save_Request

Field Type Label Description
file_uri string

Save_Response

IesIntensityService

service to manage IES files

Method Name Request Type Response Type Description
Load Load_Request Load_Response serialization for native files
Save Save_Request Save_Response
Import IesIntensityDistribution Import_Response import export of IesIntensityDistribution to CIES
Export Export_Request IesIntensityDistribution

intensity_distributions/v1/spectral_map_template.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

ColorValues

Field Type Label Description
layer ColorValues.Layers repeated map layers

ColorValues.Layers

Field Type Label Description
y ColorValues.Layers.ys repeated y samples of the map

ColorValues.Layers.ys

Field Type Label Description
x ColorValues.Layers.ys.xs repeated x samples of the map

ColorValues.Layers.ys.xs

Field Type Label Description
color_x float
color_y float
color_z float
radio float

Depth

Field Type Label Description
y Depth.ys repeated y samples of the map

Depth.ys

Field Type Label Description
x float repeated x samples of the map

SpectralMap

Field Type Label Description
base_data Map
wavelength_nb int32 Integer >= 3
wavelength_min double Range is between 100nm and 100000nm
wavelength_max double Range is between 100nm and 100000nm
spectral_value SpectralValues spectral values
color_value ColorValues colorimetric and radiometric data
depth_value Depth
spectral_data_loaded bool spectral data is not always loaded unless explicitly specified
depth_data_loaded bool depth data not always filled out

SpectralValues

Field Type Label Description
layer SpectralValues.Layers repeated map layers

SpectralValues.Layers

Field Type Label Description
wavelength SpectralValues.Layers.Wavelengths repeated wavelength

SpectralValues.Layers.Wavelengths

Field Type Label Description
y SpectralValues.Layers.Wavelengths.ys repeated y samples of the map

SpectralValues.Layers.Wavelengths.ys

Field Type Label Description
x float repeated x samples of the map

intensity_distributions/v1/xmp.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

Export_Request

Import_Response

Load_Request

Field Type Label Description
file_uri string

Load_Response

Save_Request

Field Type Label Description
file_uri string

Save_Response

XmpDistribution

xmp map definition

Field Type Label Description
extended_map ExtendedMap
spectral_map SpectralMap

XmpIntensityService

service to manage XMP files

Method Name Request Type Response Type Description
Load Load_Request Load_Response Load XMP intensity distributions from file
Save Save_Request Save_Response Save XMP intensity distributions to file
Import XmpDistribution Import_Response import XmpDistribution to COptisMap
Export Export_Request XmpDistribution export COPtisMap to XmpDistribution

job/v2/job.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

Create_Request

Request to create a Job in JobsManager

Field Type Label Description
job Job Job characteristics
guid string optional Optional field to specify the guid used in the database. If not set, a unique guid will be generated for that entry and sent back in the Create_Response.

Create_Response

Field Type Label Description
guid string Guid of the Job created in JobsManager

Delete_Request

Request to delete a Job in JobsManager

Field Type Label Description
guid string Guid of the Job to be deleted

Delete_Response

GetError_Request

Field Type Label Description
guid string Guid of the Job in JobsManager.

GetError_Response

Field Type Label Description
name string
category string
severity int32
request string
diagnostic string
advice string
error_file string
error_line int32

GetInformation_Request

Field Type Label Description
guid string Guid of the Job in JobsManager.

GetInformation_Response

Field Type Label Description
title string
name string
infos string
progress double value between 0.0 and 1.0
elapsed_time google.protobuf.Duration
remaining_time google.protobuf.Duration
process_unit_models string repeated Depending on the Job::Type, list of the CPU or GPU models
rays_number uint64 Number of rays emitted since the (re)start of the simulation
rays_number_per_second uint64 Number of rays emitted in the last second

GetProgressStatus_Request

Field Type Label Description
guid string Guid of the Job in JobsManager.

GetProgressStatus_Response

Field Type Label Description
title string
name string
infos string
progress double value between 0.0 and 1.0
elapsed_time google.protobuf.Duration
remaining_time google.protobuf.Duration
process_unit_models string repeated Depending on the Job::Type, list of the CPU or GPU models
rays_number uint64 Number of rays emitted since the (re)start of the simulation
rays_number_per_second uint64 Number of rays emitted in the last second

GetRayPaths_Request

Field Type Label Description
guid string Guid of the Job in JobsManager.
raw_data bool optional Boolean to get the wavelengths in response stream
display_data bool optional Boolean to get the colors (RGB24 format) in response stream

GetResults_Request

Field Type Label Description
guid string Guid of the Job in JobsManager.

GetResults_Response

Field Type Label Description
results Result repeated List of the Job results

GetState_Request

Field Type Label Description
guid string Guid of the Job in JobsManager.

GetState_Response

Field Type Label Description
state Job.State

Job

Field Type Label Description
name string Job name
description string Job descrition
metadata Job.MetadataEntry repeated User defined metadatas
scene_guid string Guid of the Scene in ScenesManager
simulation_path string Simulation path in the scene that will be used by the job
job_type Job.Type Type of the job : CPU, GPU
direct_mc_simulation_properties Job.DirectMCSimulationProperties Properties to be filled for simulation based on DirectMCSimulationTemplate
inverse_mc_simulation_properties Job.InverseMCSimulationProperties Properties to be filled for simulation based on InverseMCSimulationTemplate
interactive_simulation_properties Job.InteractiveSimulationProperties Properties to be filled for simulation based on Interactive
virtualbsdfbench_simulation_properties Job.VirtualBSDFBenchSimulationProperties Properties to be filled for simulation based on VirtualBSDFBench

Job.DirectMCSimulationProperties

If several stop conditions are set, the first condition reached ends the simulation. If no stop condition is set, the simulation ends when you stop the process.

Field Type Label Description
stop_condition_rays_number int64 optional To stop the simulation after a certain number of rays were sent
stop_condition_duration int64 optional To stop the simulation after a certain duration
automatic_save_frequency int32 Define a backup interval (s). This option is useful when computing long simulations. Note: A reduced number of save operations naturally increases the simulation performance. 0 disables intermediary backup saves.

Job.InteractiveSimulationProperties

Field Type Label Description
rays_number_per_sources Job.InteractiveSimulationProperties.RaysNumberPerSource repeated If a source present in Scene::SimulationInstance is not mentioned here, its rays_nb is defaulted to 100.
light_expert bool To generate a light expert file.
impact_report bool To integrate details like number of impacts, position and surface state to the HTML simulation report.

Job.InteractiveSimulationProperties.RaysNumberPerSource

Field Type Label Description
source_path string Path to the source. Hint: same path that was given in Scene::SimulationInstance
rays_nb uint32 optional Number of rays sent by the source referenced via its source_path. Default 100

Job.InverseMCSimulationProperties

If several stop conditions are set, the first condition reached ends the simulation. If no stop condition is set, the simulation ends when you stop the process.

Field Type Label Description
optimized_propagation_none Job.InverseMCSimulationProperties.OptimizedPropagationNone No optimization. Do not forget to fill stop conditions if needed.
optimized_propagation_relative Job.InverseMCSimulationProperties.OptimizedPropagationRelative
optimized_propagation_absolute Job.InverseMCSimulationProperties.OptimizedPropagationAbsolute
stop_condition_duration int64 optional To stop the simulation after a certain duration
automatic_save_frequency int32 Define a backup interval (s). This option is useful when computing long simulations. Note: A reduced number of save operations naturally increases the simulation performance. 0 disables intermediary backup saves.
timeline Job.Timeline Timeline activation. This parameter is linked to trajectory_file_uri of scene's CameraProperties, flux_variation_file_uri of SourceTemplate (type Surface), and trajectory_file_uri of Scene's SceneInstance.

Job.InverseMCSimulationProperties.OptimizedPropagationAbsolute

The algorithm adapts the number of passes per pixel to send the optimal number of rays according to the signal each pixel needs. As a result, the SNR is adequate in areas where pixels need more rays, thus giving a balanced image. The Optimized propagation algorithm is only compatible with the Radiance sensors.

Field Type Label Description
min_pass_number uint32 Minimum number of passes without pass optimization.
stop_condition_absolute_value uint32 Absolute photometric value of pixel standard deviation threshold

Job.InverseMCSimulationProperties.OptimizedPropagationNone

No optimization : the same number of passes is used for each pixel of the image

Field Type Label Description
stop_condition_passes_number uint32 optional To stop the simulation after a certain number of passes

Job.InverseMCSimulationProperties.OptimizedPropagationRelative

The algorithm adapts the number of passes per pixel to send the optimal number of rays according to the signal each pixel needs. As a result, the SNR is adequate in areas where pixels need more rays, thus giving a balanced image. The Optimized propagation algorithm is only compatible with the Radiance sensors.

Field Type Label Description
min_pass_number uint32 Minimum number of passes without pass optimization.
stop_condition_relative_value uint32 Relative pixel standard deviation threshold, in percent. Value expected from 0 to 100.

Job.MetadataEntry

Field Type Label Description
key string
value string

Job.Timeline

If timeline is applied to the job, fill Timeline message.

Field Type Label Description
start_time double Define the start time (s).

Job.VirtualBSDFBenchSimulationProperties

If no stop condition is set, the simulation ends when you stop the process.

Field Type Label Description
stop_condition_rays_number int64 Number of rays sent per configuration, meaning number of rays per angle incident (and wavelength in iridescence case)

List_Request

List_Response

Field Type Label Description
guids string repeated Guids of the Jobs in JobsManager

Read_Request

Request to read a Job in JobsManager

Field Type Label Description
guid string Guid of the Job to be read

Read_Response

Field Type Label Description
job Job Job corresponding to the guid given in Read_Request

Result

Field Type Label Description
path string Result path on the server
upload_response file.v1.Upload_Response Result uploaded to server's file system (via FileTransferService) -> returns Upload_Response

SaveFile_Request

Field Type Label Description
guid string Guid of the Job in JobsManager.
file_uri string URI of the *.speos file to save. (Local path or guid from FileTransferService).

SaveFile_Response

Start_Request

Field Type Label Description
guid string Guid of the Job in JobsManager.

Start_Response

Stop_Request

Field Type Label Description
guid string Guid of the Job in JobsManager.

Stop_Response

Update_Request

Request to update a Job in JobsManager

Field Type Label Description
guid string Guid of the Job to be updated
job Job Job that will be used for the update

Update_Response

Job.State

Name Number Description
QUEUED 0
RUNNING 1
PAUSED 2
STOPPED 3
FINISHED 4
IN_ERROR 5

Job.Type

Name Number Description
CPU 0
GPU 1

JobActions

Service to handle a job

Method Name Request Type Response Type Description
GetState GetState_Request GetState_Response Get the state of a Job
Start Start_Request Start_Response Start a Job
Stop Stop_Request Stop_Response Stop a Job
GetError GetError_Request GetError_Response Get error of a Job
GetResults GetResults_Request GetResults_Response Get the results of a Job
GetInformation GetInformation_Request GetInformation_Response Get Information about a Job
GetRayPaths GetRayPaths_Request results.v1.RayPath stream Get RayPaths generated by a Job based on an interactive simulation
GetProgressStatus GetProgressStatus_Request GetProgressStatus_Response Get progress status about a Job
SaveFile SaveFile_Request SaveFile_Response Save a Job into .speos file

JobsManager

Method Name Request Type Response Type Description
Create Create_Request Create_Response Create a Job
Read Read_Request Read_Response Read a Job
Update Update_Request Update_Response Update a Job
Delete Delete_Request Delete_Response Delete a Job
List List_Request List_Response List all Jobs in manager

lpf/v2/lpf_file_reader.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

CloseLpfFileName_Request_Mono

CloseLpfFileName_Request_Multi

Field Type Label Description
lpf_reader_guid string

CloseLpfFileName_Response

ComputeUniqueFaceId_Request_Mono

Field Type Label Description
body_context_id uint32
face_id uint32

ComputeUniqueFaceId_Request_Multi

Field Type Label Description
lpf_reader_guid string
body_context_id uint32
face_id uint32

ComputeUniqueFaceId_Response

Field Type Label Description
unique_face_id uint32

Create_Request_Multi

Create_Response

Field Type Label Description
lpf_reader_guid string

Delete_Request_Multi

Field Type Label Description
lpf_reader_guid string

Delete_Response

DoubletDouble

Field Type Label Description
x double
y double

GetInformation_Request_Mono

GetInformation_Request_Multi

Field Type Label Description
lpf_reader_guid string

GetInformation_Response

Field Type Label Description
nb_of_traces int64
nb_of_xmps uint32
has_sensor_contributions bool
sensor_names string repeated The sensor position in the repeated field sensor_names gives the sensor_id

InitLpfFileName_Request_Mono

Field Type Label Description
lpf_file_uri string This can be uri returned by the server when uploading the file, or a local path (in this case the file has to be accessible by the server)

InitLpfFileName_Request_Multi

Field Type Label Description
lpf_reader_guid string
lpf_file_uri string This can be uri returned by the server when uploading the file, or a local path (in this case the file has to be accessible by the server)

InitLpfFileName_Response

RayPath

Field Type Label Description
impacts TripletFloat repeated
wavelengths double repeated
body_context_ids uint32 repeated
unique_face_ids uint32 repeated
interaction_statuses RayPath.PhotonStatus repeated
lastDirection TripletFloat
sensor_contributions RayPath.SensorContribution repeated

RayPath.SensorContribution

Field Type Label Description
sensor_id uint32 The sensor_id corresponds to the position of the sensor in the repeated field GetInformation_Response::sensor_names
coordinates DoubletDouble

Read_Request_Mono

Read_Request_Multi

Field Type Label Description
lpf_reader_guid string

TripletFloat

Field Type Label Description
x float
y float
z float

RayPath.PhotonStatus

Name Number Description
StatusAbsorbed 0
StatusSpecularTransmitted 1
StatusGaussianTransmitted 2
StatusLambertianTransmitted 3
StatusVolumicDiffused 4
StatusJustEmitted 5
StatusDiracTransmitted 6
StatusError 7
StatusErrorVolumicBodyNotClosed 8
StatusErrorVolumeConflict 9
StatusError2DTangency 10
StatusError2DIntersect3DWarning 11
StatusErrorNonOpticalMaterial 12
StatusErrorIntersection 13
StatusErrorNonOpticalMaterialAtEmission 14
StatusError3DTextureSupportTangency 15
StatusLast 16
StatusFirst -7
StatusDiracReflected -6
StatusReserved -5
StatusGrinStep -4
StatusLambertianReflected -3
StatusGaussianReflected -2
StatusSpecularReflected -1

LpfFileReader_Mono

service to read lpf file - server can handle one reading - call CloseLpfFileName then InitLpfFileName to start another reading.

Method Name Request Type Response Type Description
InitLpfFileName InitLpfFileName_Request_Mono InitLpfFileName_Response Init the lpf file with its path - returns nothing
GetInformation GetInformation_Request_Mono GetInformation_Response Get information about the lpf file, for example number of traces, number of xmps...
CloseLpfFileName CloseLpfFileName_Request_Mono CloseLpfFileName_Response Close the lpf file - returns nothing
Read Read_Request_Mono RayPath stream Read lpf file and get all the ray paths
ComputeUniqueFaceId ComputeUniqueFaceId_Request_Mono ComputeUniqueFaceId_Response Compute a unique face id from bodyContextId and faceId

LpfFileReader_Multi

service to read lpf file - server can handle several reading.

Method Name Request Type Response Type Description
Create Create_Request_Multi Create_Response Create a lpf file reader - returns its guid
InitLpfFileName InitLpfFileName_Request_Multi InitLpfFileName_Response Init the lpf file with its path - returns nothing
GetInformation GetInformation_Request_Multi GetInformation_Response Get information about the lpf file, for example number of traces, number of xmps...
CloseLpfFileName CloseLpfFileName_Request_Multi CloseLpfFileName_Response Close the lpf file - returns nothing
Read Read_Request_Multi RayPath stream Read lpf file and get all the ray paths
ComputeUniqueFaceId ComputeUniqueFaceId_Request_Multi ComputeUniqueFaceId_Response Compute a unique face id from bodyContextId and faceId
Delete Delete_Request_Multi Delete_Response Delete a lpf file reader - returns nothing

part/v1/body.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

Body

Body definition made of faces

Field Type Label Description
name string Unique identifier in its Part
display_name string User name to be displayed
description string
metadata Body.MetadataEntry repeated User defined metadata
face_guids string repeated List of faces constituting the body

Body.MetadataEntry

Field Type Label Description
key string
value string

Create_Request

Request to create a body

Field Type Label Description
body Body body to create
guid string optional Optional field to specify the guid used in the database. If not set, a unique guid will be generated for that entry and sent back in the Create_Response.

Create_Response

Response to create a body

Field Type Label Description
guid string Guid of the created body

Delete_Request

Request to delete a body

Field Type Label Description
guid string Guid of the body to be deleted

Delete_Response

Response to delete a body

List_Request

Request to list all bodies

List_Response

Response to list all bodies

Field Type Label Description
guids string repeated Guids of all bodies

ReadAll_Request

Request to read all bodies

ReadAll_Response

Response to read all bodies

Field Type Label Description
bodies ReadAll_Response.BodiesEntry repeated Read bodies with their Guids

ReadAll_Response.BodiesEntry

Field Type Label Description
key string
value Body

Read_Request

Request to read a body

Field Type Label Description
guid string Guid of the body to be read

Read_Response

Response to read a body

Field Type Label Description
body Body body corresponding to the guid given in Read_Request

Update_Request

Request to update a body

Field Type Label Description
guid string Guid of the body to be updated
body Body New body that will be used for the update

Update_Response

Response to update a body

BodiesManager

Method Name Request Type Response Type Description
Create Create_Request Create_Response Create a new body
Read Read_Request Read_Response Read a body
Update Update_Request Update_Response Update a body
Delete Delete_Request Delete_Response Delete a body
List List_Request List_Response List all bodies in manager
ReadAll ReadAll_Request ReadAll_Response Read the whole database, use a field mask in message grpc request metadata (key = read_masks) to only get needed fields. i.e.: bodies.*.name -> would only return the names of the bodies in the message

BodyActions

Actions available on a body

Method Name Request Type Response Type Description

part/v1/face.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

Chunk

Chunk of a Face

Field Type Label Description
face_header Chunk.FaceHeader Common face data - Field used only in first Chunk (to take advantage of vectors sizes) - If several faces are uploaded/downloaded, then this message determines the start of a new face streaming.
vertices Chunk.Vertices coordinates of all points (p1x p1y p1z p2x p2y p2z ...)
facets Chunk.Facets indexes of points for all triangles (t1_1 t1_2 t1_3 t2_1 t2_2 t2_3 ...)
normals Chunk.Normals normal vector for all points (n1x n1y n1z n2x n2y n2z ...)
vertices_data Chunk.VerticesData List of data applied to vertices (like texture coordinates uv)
facets_data Chunk.FacetsData List of data applied to facets (like temperature)

Chunk.FaceHeader

Field Type Label Description
guid string Guid of a FacesManager element - Used for FaceActions.Upload rpc
name string
display_name string
description string
metadata Chunk.FaceHeader.MetadataEntry repeated
sizes int32 repeated vectors sizes in Face: (vertices_normals_size, facets_size, vertices_data_size, facets_data_size) - vertices and normals vectors have same size, therefore they are grouped in vertices_normals_size

Chunk.FaceHeader.MetadataEntry

Field Type Label Description
key string
value string

Chunk.Facets

Field Type Label Description
data uint32 repeated

Chunk.FacetsData

Field Type Label Description
new_layer bool Boolean to express a new layer (MeshData) for facets_data.
name string Identifier name (uv, temperature...)
size int32 Total size for vector in MeshData: data_size
data float repeated Raw data for each facet

Chunk.Normals

Field Type Label Description
data float repeated

Chunk.Vertices

Field Type Label Description
data float repeated

Chunk.VerticesData

Field Type Label Description
new_layer bool Boolean to express a new layer (MeshData) for vertices_data.
name string Identifier name (uv, temperature...)
size int32 Total size for vector in MeshData: data_size
data float repeated Raw data for each vertice

Create_Request

Request to create a face

Field Type Label Description
face Face face to create
guid string optional Optional field to specify the guid used in the database. If not set, a unique guid will be generated for that entry and sent back in the Create_Response.

Create_Response

Response to create a face

Field Type Label Description
guid string Guid of the created face

Delete_Request

Request to delete a face

Field Type Label Description
guid string Guid of the face to be deleted

Delete_Response

Response to delete a face

Download_Request

Field Type Label Description
guid string Guid of a FacesManager element
guids string repeated Guids of FacesManager elements to download.
only_face_header bool optional If this optional boolean is set to true, only the FaceHeader will be returned in answer stream.

Face

Face definition with meshing information

Field Type Label Description
name string Unique identifier in its Body
display_name string User name to be displayed
description string
metadata Face.MetadataEntry repeated user defined metadata
vertices float repeated coordinates of all points (p1x p1y p1z p2x p2y p2z ...)
facets uint32 repeated indexes of points for all triangles (t1_1 t1_2 t1_3 t2_1 t2_2 t2_3 ...)
normals float repeated normal vector for all points (n1x n1y n1z n2x n2y n2z ...)
vertices_data Face.MeshData repeated List of data applied to vertices (like texture coordinates uv)
facets_data Face.MeshData repeated List of data applied to facets (like temperature)

Face.MeshData

Store named data on meshed

Field Type Label Description
name string Identifier name (uv, temperature...)
data float repeated Raw data for each mesh

Face.MetadataEntry

Field Type Label Description
key string
value string

List_Request

Request to list all faces

List_Response

Response to list all faces

Field Type Label Description
guids string repeated Guids of all faces

Read_Request

Request to read a face

Field Type Label Description
guid string Guid of the face to be read

Read_Response

Response to read a face

Field Type Label Description
face Face face corresponding to the guid given in Read_Request

ReserveFace_Request

Field Type Label Description
faces Face repeated repeated face headers

ReserveFace_Response

Field Type Label Description
guids string repeated guids of the created faces, in the order sent

Update_Request

Request to update a face

Field Type Label Description
guid string Guid of the face to be updated
face Face New face that will be used for the update

Update_Response

Response to update a face

Upload_Response

FaceActions

Actions available on a face

Method Name Request Type Response Type Description
ReserveFaces ReserveFace_Request stream ReserveFace_Response stream allocate faces before uploading them. to have maximum benefit, only the name, description and metadata should be filled
Upload Chunk stream Upload_Response Update a face via streaming
Download Download_Request Chunk stream Read a face via streaming

FacesManager

Method Name Request Type Response Type Description
Create Create_Request Create_Response Create a new face
Read Read_Request Read_Response Read a face
Update Update_Request Update_Response Update a face
Delete Delete_Request Delete_Response Delete a face
List List_Request List_Response List all faces in manager

part/v1/part.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

Create_Request

Request to create an element

Field Type Label Description
part Part Element to create
guid string optional Optional field to specify the guid used in the database. If not set, a unique guid will be generated for that entry and sent back in the Create_Response.

Create_Response

Response to create an element

Field Type Label Description
guid string Guid of the created element

Delete_Request

Request to delete an element

Field Type Label Description
guid string Guid of the element to be deleted

Delete_Response

Response to delete an element

List_Request

Request to list all elements

List_Response

Response to list all elements

Field Type Label Description
guids string repeated Guids of all Parts

Part

Part definition, a Part is related to a CAD part file (scdocx, prt, ...) made of meshed bodies and faces

Field Type Label Description
name string
description string
metadata Part.MetadataEntry repeated User defined metadata
body_guids string repeated List of bodies constituting the part
parts Part.PartInstance repeated List of sub parts

Part.MetadataEntry

Field Type Label Description
key string
value string

Part.PartInstance

Instance of Part in parent coordinates system

Field Type Label Description
name string Unique identifier in its Part
display_name string User name to be displayed
description string
metadata Part.PartInstance.MetadataEntry repeated User defined metadata
part_guid string Guid of Part in PartsManager
axis_system double repeated Part position relative to parent reference (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz). If the coordinate system is not orthonormal, it will be automatically orthonormalized

Part.PartInstance.MetadataEntry

Field Type Label Description
key string
value string

ReadAll_Request

Request to read all parts

ReadAll_Response

Response to read all parts

Field Type Label Description
parts ReadAll_Response.PartsEntry repeated Read parts with their Guids

ReadAll_Response.PartsEntry

Field Type Label Description
key string
value Part

Read_Request

Request to read an element

Field Type Label Description
guid string Guid of the element to be read

Read_Response

Response to read an element

Field Type Label Description
part Part Element corresponding to the guid given in Read_Request

Update_Request

Request to update an element

Field Type Label Description
guid string Guid of the PartTemplate to be updated
part Part New element that will be used for the update

Update_Response

Response to update an element

PartActions

Actions available on a Part

Method Name Request Type Response Type Description

PartsManager

Service to manage geometrical objects

Method Name Request Type Response Type Description
Create Create_Request Create_Response Create a new part
Read Read_Request Read_Response Read a part
Update Update_Request Update_Response Update a part
Delete Delete_Request Delete_Response Delete a part
List List_Request List_Response List all parts in manager
ReadAll ReadAll_Request ReadAll_Response Read the whole database, use a field mask in message grpc request metadata (key = read_masks) to only get needed fields. i.e.: parts.*.name -> would only return the names of the bodies in the message

results/v1/map.proto

ExportXMPToImage_Request

Field Type Label Description
xmp_file_uri string Uri of the XMP file to export to PNG image. (Local path or guid from FileTransferService).
image_file_uri string Uri of the image exported. (Local path or guid from FileTransferService). If pointing to folder or empty filename reserved from FileTransferService, filename will be the one of the XMP file and the guid provided will point to the generated file. If extension is not PNG, ".png" will be added at the end of filename.

ExportXMPToImage_Response

MergeSpeos360ToStereoSpeos360_Request

Field Type Label Description
map_left_to_merge_uri string Absolute path to left Speos360 file to merge.
map_right_to_merge_uri string Absolute path to right Speos360 file to merge.
map_merged_uri string Absolute path to merged stereoscopic Speos360 file.

MergeSpeos360ToStereoSpeos360_Response

MergeXMPsToXMPOrSpeos360_Request

Field Type Label Description
map_to_merge_uri string repeated List of absolute path to XMP files to merge.
map_merged_uri string Absolute path to merged XMP or Speos360 file.
axis_system double repeated Optional axis system to force orientation in merged Speos360 file.

MergeXMPsToXMPOrSpeos360_Response

SplitSpeos360IntoXMPs_Request

Field Type Label Description
file_uri string Uri of the speos360 file to split.

SplitSpeos360IntoXMPs_Response

Field Type Label Description
splitted_map_uri string repeated List of uris to XMP files.

MapActions

Actions available with XMP and Speos360 result file.

Method Name Request Type Response Type Description
MergeXMPsToXMPOrSpeos360 MergeXMPsToXMPOrSpeos360_Request MergeXMPsToXMPOrSpeos360_Response Merge list of XMP files into a XMP or Speos360 file. [Unsupported]
MergeSpeos360ToStereoSpeos360 MergeSpeos360ToStereoSpeos360_Request MergeSpeos360ToStereoSpeos360_Response Merge left and right speos360 files into a stereoscopic Speos360 file. [Unsupported]
SplitSpeos360IntoXMPs SplitSpeos360IntoXMPs_Request SplitSpeos360IntoXMPs_Response Split a Speos360 file into a list of XMP files. [Unsupported]
ExportXMPToImage ExportXMPToImage_Request ExportXMPToImage_Response Export XMP to PNG

results/v1/ray_path.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

RayPath

Field Type Label Description
impacts_coordinates float repeated Impacts coordinates of this RayPath. (i0x, i0y, i0z, i1x, i1y, i1z, ..., iNx, iNy, iNz) with N+1 impacts
wavelengths double repeated Wavelength at each impact.
body_context_ids uint32 repeated ID of the body impacted at each impact.
unique_face_ids uint32 repeated ID of the face impacted at each impact.
interaction_statuses RayPath.PhotonStatus repeated Interaction type at each impact with the elements encountered.
last_direction float repeated Direction after the last impact. (x, y, z)
colors common.v1.DataBytes The color in RGB24 format at each impact

RayPath.PhotonStatus

Name Number Description
StatusAbsorbed 0
StatusSpecularTransmitted 1
StatusGaussianTransmitted 2
StatusLambertianTransmitted 3
StatusVolumicDiffused 4
StatusJustEmitted 5
StatusDiracTransmitted 6
StatusError 7
StatusErrorVolumicBodyNotClosed 8
StatusErrorVolumeConflict 9
StatusError2DTangency 10
StatusError2DIntersect3DWarning 11
StatusErrorNonOpticalMaterial 12
StatusErrorIntersection 13
StatusErrorNonOpticalMaterialAtEmission 14
StatusError3DTextureSupportTangency 15
StatusLast 16
StatusFirst -7
StatusDiracReflected -6
StatusReserved -5
StatusGrinStep -4
StatusLambertianReflected -3
StatusGaussianReflected -2
StatusSpecularReflected -1

scene/v1/scene.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

Create_Request

Request to create a Scene in ScenesManager

Field Type Label Description
scene Scene

Create_Response

Field Type Label Description
guid string Guid of the Scene created in ScenesManager

Delete_Request

Request to delete a Scene in ScenesManager

Field Type Label Description
guid string Guid of the Scene to be deleted

Delete_Response

GetSourceRayPaths_Request

Field Type Label Description
guid string Guid of a ScenesManager element
source_path string path to the source in the Scene : "" for a specific source in the current scene, or "/" for a specific source in a specific sub scene
rays_nb uint32 optional Number of rays sent by the source. Default 100
raw_data bool optional Boolean to get the wavelengths in response stream
display_data bool optional Boolean to get the colors (RGB24 format) in response stream

List_Request

List_Response

Field Type Label Description
guids string repeated Guids of the Scenes in ScenesManager

LoadFile_Request

Request to LoadFile service

Field Type Label Description
guid string Guid of a ScenesManager element to update
file_uri string File uri (path or guid from FileTransferService)

LoadFile_Response

Response to LoadFile service

Read_Request

Request to read a Scene in ScenesManager

Field Type Label Description
guid string Guid of the Scene to be read

Read_Response

Field Type Label Description
scene Scene Scene corresponding to the guid given in Read_Request

SaveFile_Request

Request to SaveFile service. Warning: SaveFile is not supported.

Field Type Label Description
guid string Guid of a ScenesManager element to save
file_uri string File uri (path or guid from FileTransferService)

SaveFile_Response

Response to SaveFile service. Warning: SaveFile is not supported.

Scene

Optical scene definition made of parts, optical properties, sources, sensors and simulations

Field Type Label Description
name string
description string
metadata Scene.MetadataEntry repeated User defined metadata
part_guid string Guid from PartsManager of the geometrical part included inside the scene
vops Scene.VOPInstance repeated The volume materials applied on geometries
sops Scene.SOPInstance repeated The surface materials applied on geometries
sources Scene.SourceInstance repeated The sources added in the scene
sensors Scene.SensorInstance repeated The sensors added in the scene
simulations Scene.SimulationInstance repeated The simulations added in the scene
scenes Scene.SceneInstance repeated Sub scenes

Scene.GeoPaths

Geometry path of object that will include the specific property (can be sub-scene/part/body/face). Empty or "" for all geometries, or in the format : /// (no name by default for root scene and root part). "part1" -> part1 of the root part in the root scene "part1/body1/face1" -> face1 in body1 in part1 of the root part in the root scene "subScene1" -> root part in the sub scene subScene1 "subScene1/part2" -> part2 of the sub scene subScene1

Field Type Label Description
geo_paths string repeated list of geo paths

Scene.MetadataEntry

Field Type Label Description
key string
value string

Scene.SOPInstance

Instance of a SOP to apply on geometries of the scene

Field Type Label Description
name string
description string
metadata Scene.SOPInstance.MetadataEntry repeated User defined metadata
sop_guid string Guid of the element to instantiate
geometries Scene.GeoPaths Geometries that will use this material

Scene.SOPInstance.MetadataEntry

Field Type Label Description
key string
value string

Scene.SceneInstance

Field Type Label Description
name string
description string
metadata Scene.SceneInstance.MetadataEntry repeated User defined metadata
scene_guid string Guid of the element to instantiate
axis_system double repeated Scene position relative to parent PartTemplate reference (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz)

Scene.SceneInstance.MetadataEntry

Field Type Label Description
key string
value string

Scene.SensorInstance

Instance of a sensor to add in the scene

Field Type Label Description
name string
description string
metadata Scene.SensorInstance.MetadataEntry repeated User defined metadata
sensor_guid string Guid of the SensorTemplate in SensorTemplatesManager to instantiate
result_file_name string Result file name without extention. Result files of the sensor will be based on this name.
camera_sensor_properties Scene.SensorInstance.CameraSensorProperties To be filled if the sensor_guid corresponds to a SensorTemplate of type CameraSensorTemplate
irradiance_sensor_properties Scene.SensorInstance.IrradianceSensorProperties To be filled if the sensor_guid corresponds to a SensorTemplate of type IrradianceSensorTemplate
radiance_sensor_properties Scene.SensorInstance.RadianceSensorProperties To be filled if the sensor_guid corresponds to a SensorTemplate of type SensorTemplate::Radiance

Scene.SensorInstance.CameraSensorProperties

Field Type Label Description
axis_system double repeated Position of the sensor (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz)
trajectory_file_uri string Trajectory file, used to define the positions and orientations of the Camera sensor in time.
layer_type_none Scene.SensorInstance.LayerTypeNone Layer type : None
layer_type_source Scene.SensorInstance.LayerTypeSource Layer type : Source

Scene.SensorInstance.IrradianceSensorProperties

Field Type Label Description
axis_system double repeated Position of the sensor (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz)
ray_file_type Scene.SensorInstance.EnumRayFileType Choose type of ray file generated after the simulation.
layer_type_none Scene.SensorInstance.LayerTypeNone Layer type : None
layer_type_source Scene.SensorInstance.LayerTypeSource Layer type : Source
layer_type_face Scene.SensorInstance.LayerTypeFace Layer type : Face
layer_type_sequence Scene.SensorInstance.LayerTypeSequence Layer type : Sequence
layer_type_polarization Scene.SensorInstance.LayerTypePolarization Layer type : Polarization
layer_type_incidence_angle Scene.SensorInstance.LayerTypeIncidenceAngle Layer type : Incidence angle
integration_direction double repeated Sensor global integration direction [x,y,z], optional (default direction is normal to sensor plane (anti-normal of the sensor)) and only settable for sensor template with IlluminanceTypePlanar or IlluminanceTypeSemiCylindrical as illuminance_type
output_face_geometries Scene.GeoPaths List of output faces for inverse simulation optimization

Scene.SensorInstance.LayerTypeFace

Includes one layer per surface selected in the result.

Field Type Label Description
sca_filtering_mode Scene.SensorInstance.LayerTypeFace.EnumSCAFilteringType
layers Scene.SensorInstance.LayerTypeFace.Layer repeated Layers that will be taken into account in the result.

Scene.SensorInstance.LayerTypeFace.Layer

Field Type Label Description
name string Name of the layer
geometries Scene.GeoPaths Surface selected.

Scene.SensorInstance.LayerTypeIncidenceAngle

Includes one layer per range of incident angles.

Field Type Label Description
sampling uint32

Scene.SensorInstance.LayerTypeNone

Includes the simulation's results in one layer.

Scene.SensorInstance.LayerTypePolarization

Includes one layer per Stokes parameter using the polarization parameter.

Scene.SensorInstance.LayerTypeSequence

Includes one layer per sequence in the result.

Field Type Label Description
maximum_nb_of_sequence uint32
define_sequence_per Scene.SensorInstance.LayerTypeSequence.EnumSequenceType

Scene.SensorInstance.LayerTypeSource

Includes one layer per active source in the result.

Scene.SensorInstance.MetadataEntry

Field Type Label Description
key string
value string

Scene.SensorInstance.RadianceSensorProperties

Field Type Label Description
axis_system double repeated Position of the sensor (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz)
observer_point double repeated Position of the observer point (Ox Oy Oz), optional (default: focal length is used)
layer_type_none Scene.SensorInstance.LayerTypeNone Layer type : None
layer_type_source Scene.SensorInstance.LayerTypeSource Layer type : Source
layer_type_face Scene.SensorInstance.LayerTypeFace Layer type : Face
layer_type_sequence Scene.SensorInstance.LayerTypeSequence Layer type : Sequence

Scene.SimulationInstance

Instance of a simulation to add in the scene

Field Type Label Description
name string
description string
metadata Scene.SimulationInstance.MetadataEntry repeated User defined metadata
simulation_guid string Guid of the element to instantiate
sensor_paths string repeated Sensors that this simulation will include (empty or "" for all sensors, "" for a specific sensor in the current scene, or "/" for a specific sensor in a specific sub scene)
source_paths string repeated Sources that this simulation will include (empty or "" for all sources, "" for a specific source in the current scene, or "/" for a specific source in a specific sub scene)
geometries Scene.GeoPaths Geometries that this simulation will include (empty to select the root part and all the subscenes)

Scene.SimulationInstance.MetadataEntry

Field Type Label Description
key string
value string

Scene.SourceInstance

Instance of a source to add in the scene

Field Type Label Description
name string
description string
metadata Scene.SourceInstance.MetadataEntry repeated User defined metadata
source_guid string Guid of the SourceTemplate in SourceTemplatesManager to instantiate
luminaire_properties Scene.SourceInstance.LuminaireProperties To be filled if the source_guid corresponds to a SourceTemplate of type Luminaire
surface_properties Scene.SourceInstance.SurfaceProperties To be filled if the source_guid corresponds to a SourceTemplate of type Surface
rayfile_properties Scene.SourceInstance.RayFileProperties To be filled if the source_guid corresponds to a SourceTemplate of type RayFile

Scene.SourceInstance.IntensityProperties

Field Type Label Description
library_properties Scene.SourceInstance.IntensityProperties.LibraryProperties To be filled if the intensity_guid of the source template corresponds to an IntensityTemplate of type Library
asymmetric_gaussian_properties Scene.SourceInstance.IntensityProperties.AsymmetricGaussianProperties Deprecated (use gaussian_properties instead) - To be filled if the intensity_guid of the source template corresponds to an IntensityTemplate of type AsymmetricGaussian
gaussian_properties Scene.SourceInstance.IntensityProperties.GaussianProperties To be filled if the intensity_guid of the source template corresponds to an IntensityTemplate of type Gaussian

Scene.SourceInstance.IntensityProperties.AsymmetricGaussianProperties

Field Type Label Description
axis_system double repeated orientation (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz)

Scene.SourceInstance.IntensityProperties.GaussianProperties

Field Type Label Description
axis_system double repeated optional - orientation of the intensity distribution (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz) - if not filled : normal to surface map.

Scene.SourceInstance.IntensityProperties.LibraryProperties

Field Type Label Description
exit_geometries Scene.GeoPaths Exit Geometries that will use this surface source
axis_system Scene.SourceInstance.IntensityProperties.LibraryProperties.AxisSystem orientation (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz)
normal_to_surface Scene.SourceInstance.IntensityProperties.LibraryProperties.NormalToSurface Define the intensity distribution as normal to the selected surface.
normal_to_uv_map Scene.SourceInstance.IntensityProperties.LibraryProperties.NormalToUVMap Define the intensity distribution as normal to the selected emissive surface and its orientation on the emissive surface.

Scene.SourceInstance.IntensityProperties.LibraryProperties.AxisSystem

Field Type Label Description
values double repeated orientation (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz)

Scene.SourceInstance.IntensityProperties.LibraryProperties.NormalToSurface

Define the intensity distribution as normal to the selected surface.

Scene.SourceInstance.IntensityProperties.LibraryProperties.NormalToUVMap

Define the intensity distribution as normal to the selected emissive surface and its orientation on the emissive surface.

Scene.SourceInstance.LuminaireProperties

Field Type Label Description
axis_system double repeated Position of the source (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz)

Scene.SourceInstance.MetadataEntry

Field Type Label Description
key string
value string

Scene.SourceInstance.RayFileProperties

Field Type Label Description
axis_system double repeated Position of the source (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz)
exit_geometries Scene.GeoPaths Exit Geometries that will use this rayfile source

Scene.SourceInstance.SurfaceProperties

Field Type Label Description
exitance_constant_properties Scene.SourceInstance.SurfaceProperties.ExitanceConstantProperties To be filled if the Surface SourceTemplate has ExitanceConstant
exitance_variable_properties Scene.SourceInstance.SurfaceProperties.ExitanceVariableProperties To be filled if the Surface SourceTemplate has ExitanceVariable
intensity_properties Scene.SourceInstance.IntensityProperties

Scene.SourceInstance.SurfaceProperties.ExitanceConstantProperties

Field Type Label Description
geo_paths Scene.SourceInstance.SurfaceProperties.ExitanceConstantProperties.GeoPath repeated

Scene.SourceInstance.SurfaceProperties.ExitanceConstantProperties.GeoPath

Field Type Label Description
geo_path string Geometry that will use this surface source ("" for a whole body, or "/" for a specific face)
reverse_normal bool optional optional - if not set or false : normal is not reversed.

Scene.SourceInstance.SurfaceProperties.ExitanceVariableProperties

Field Type Label Description
axis_plane double repeated Position of the exitance map (Ox Oy Oz Xx Xy Xz Yx Yy Yz)

Scene.VOPInstance

Instance of a VOP to apply on geometries of the scene

Field Type Label Description
name string
description string
metadata Scene.VOPInstance.MetadataEntry repeated User defined metadata
vop_guid string Guid of the element to instantiate
geometries Scene.GeoPaths Geometries that will use this material

Scene.VOPInstance.MetadataEntry

Field Type Label Description
key string
value string

Update_Request

Request to update a Scene in ScenesManager

Field Type Label Description
guid string Guid of the Scene to be updated
scene Scene Scene that will be used for the update

Update_Response

Scene.SensorInstance.EnumRayFileType

Ray file types available

Name Number Description
RayFileNone 0 Generates no ray file.
RayFileClassic 1 Generates a ray file without polarization data.
RayFilePolarization 2 Generates a ray file with the polarization data for each ray.
RayFileTM25 3 Generates a .tm25ray file with polarization data for each ray.
RayFileTM25NoPolarization 4 Generates a .tm25ray file without polarization data.

Scene.SensorInstance.LayerTypeFace.EnumSCAFilteringType

Name Number Description
LastImpact 0
IntersectedOneTime 1

Scene.SensorInstance.LayerTypeSequence.EnumSequenceType

Name Number Description
Geometries 0
Faces 1

SceneActions

Actions available on a Scene

Method Name Request Type Response Type Description
LoadFile LoadFile_Request LoadFile_Response Load .speos file
SaveFile SaveFile_Request SaveFile_Response Save .speos file. Warning: SaveFile is not supported.
GetSourceRayPaths GetSourceRayPaths_Request results.v1.RayPath stream Get RayPaths generated by a source

ScenesManager

Manager for Scenes

Method Name Request Type Response Type Description
Create Create_Request Create_Response Create a Scene
Read Read_Request Read_Response Read a Scene
Update Update_Request Update_Response Update a Scene
Delete Delete_Request Delete_Response Delete a Scene
List List_Request List_Response List all Scenes in manager

scene/v2/scene.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

Create_Request

Request to create a Scene in ScenesManager

Field Type Label Description
scene Scene
guid string optional Optional field to specify the guid used in the database. If not set, a unique guid will be generated for that entry and sent back in the Create_Response.

Create_Response

Field Type Label Description
guid string Guid of the Scene created in ScenesManager

Delete_Request

Request to delete a Scene in ScenesManager

Field Type Label Description
guid string Guid of the Scene to be deleted

Delete_Response

GetSourceRayPaths_Request

Field Type Label Description
guid string Guid of a ScenesManager element
source_path string path to the source in the Scene : "" for a specific source in the current scene, or "/" for a specific source in a specific sub scene
rays_nb uint32 optional Number of rays sent by the source. Default 100
raw_data bool optional Boolean to get the wavelengths in response stream
display_data bool optional Boolean to get the colors (RGB24 format) in response stream

List_Request

List_Response

Field Type Label Description
guids string repeated Guids of the Scenes in ScenesManager

LoadFile_Request

Request to LoadFile service

Field Type Label Description
guid string Guid of a ScenesManager element to update
file_uri string File uri (path or guid from FileTransferService)
password string Password needed to open the speos lightbox file (only necessary if user protects the speos light box with a password)

LoadFile_Response

Response to LoadFile service

Read_Request

Request to read a Scene in ScenesManager

Field Type Label Description
guid string Guid of the Scene to be read

Read_Response

Field Type Label Description
scene Scene Scene corresponding to the guid given in Read_Request

SaveFile_Request

Request to SaveFile service.

Field Type Label Description
guid string Guid of a ScenesManager element to save
file_uri string File uri (path or guid from FileTransferService)
password string Password to be defined if the user wants to protect a Speos Lightbox file. If not, then keep this field empty.
is_black_boxed bool Flag to save the scene into a black-boxed Speos Lightbox. If the scene is already tagged as black-boxed, this flag is ignored.

SaveFile_Response

Response to SaveFile service.

Scene

Optical scene definition made of parts, optical properties, sources, sensors and simulations

Field Type Label Description
name string
description string
metadata Scene.MetadataEntry repeated User defined metadata
part_guid string Guid from PartsManager of the geometrical part included inside the scene
sub_scene_anchor_axis_system double repeated Only used for sub-scene - Represents the axis system to be attached to the one describing the scene instance. If the coordinate system is not orthonormal, it will be automatically orthonormalized
sources Scene.SourceInstance repeated The sources added in the scene
sensors Scene.SensorInstance repeated The sensors added in the scene
simulations Scene.SimulationInstance repeated The simulations added in the scene
materials Scene.MaterialInstance repeated The materials (volume + surface) applied on geometries
scenes Scene.SceneInstance repeated Sub scenes
ground Scene.GroundPlane Optional - Only usable when there is at least one Ambient Environment Source Template that has selected a HDR image file.

Scene.GeoPath

Field Type Label Description
geo_path string Geometry that will be used ("" for a whole body, or "/" for a specific face)
reverse_normal bool optional optional - if not set or false : normal is not reversed.

Scene.GeoPaths

Geometry path of object that will include the specific property (can be sub-scene/part/body/face). geo_path in the format : "///" (no name by default for root scene and root part). "body0" -> body0 of the root part in the root scene "body0/face0" -> face0 in body0 of the root part in the root scene "part1" -> part1 of the root part in the root scene "part1/body1/face1" -> face1 in body1 in part1 of the root part in the root scene "subScene1" -> root part in the sub scene subScene1 "subScene1/part2" -> part2 of the sub scene subScene1 Particularities: If the object GeoPaths is defined and geo_paths left empty, this means "All geometry selected". If the object GeoPaths is NOT defined, this means "No geometry selected".

Field Type Label Description
geo_paths string repeated list of geo paths

Scene.GroundPlane

Field Type Label Description
ground_origin double repeated 3D point in the geometry. HDR image is displayed on the ground plane
zenith_direction double repeated line normal to the ground or Z direction
ground_height double height of the environment shooting (unit mm)

Scene.MaterialInstance

Instance of a material to apply on geometries of the scene

Field Type Label Description
name string Unique identifier in the scene
display_name string User name to be displayed
description string
metadata Scene.MaterialInstance.MetadataEntry repeated User defined metadata
vop_guid string optional optional - Guid of the volume optical property to instantiate
non_homogeneous_properties Scene.MaterialInstance.NonHomogeneousProperties To be filled if the vop_guid corresponds to a VOPTemplate of type NonHomogeneous
sop_guids string repeated Deprecated - Better use sop oneof field (either sop_guid or texture)
sop_guid string Guid of the surface optical property to instantiate
texture Scene.MaterialInstance.Texture Surface optical property to instantiate using texture (can be composed of several layers)
geometries Scene.GeoPaths Geometries that will use this material

Scene.MaterialInstance.MetadataEntry

Field Type Label Description
key string
value string

Scene.MaterialInstance.NonHomogeneousProperties

Field Type Label Description
axis_system double repeated Position of the non homogeneous vop (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz). If the coordinate system is not orthonormal, it will be automatically orthonormalized

Scene.MaterialInstance.Texture

Field Type Label Description
layers Scene.MaterialInstance.Texture.Layer repeated List of texture layers (also called multi texture in case of several layers)

Scene.MaterialInstance.Texture.Layer

Field Type Label Description
sop_guid string Guid of the surface optical property to bind to geometry
image_properties Scene.MaterialInstance.Texture.Layer.TextureMappingInfo To be filled if the SOPTemplate/Texture contains image field
normal_map_properties Scene.MaterialInstance.Texture.Layer.TextureMappingInfo To be filled if the SOPTemplate/Texture contains normal_map field
anisotropy_map_properties Scene.MaterialInstance.Texture.Layer.TextureMappingInfo To be filled if the SOPTemplate is anisotropic (for example an anisotropicbsdf as Library file uri)

Scene.MaterialInstance.Texture.Layer.TextureMappingInfo

Field Type Label Description
mapping_operator Scene.MaterialInstance.Texture.MappingOperator Mapping operator to create UV mapping in corresponding face
vertices_data_index uint32 Index in face's vertices_data where UV mapping is stored

Scene.MaterialInstance.Texture.MappingOperator

Field Type Label Description
planar Scene.MaterialInstance.Texture.MappingOperator.Planar
cubic Scene.MaterialInstance.Texture.MappingOperator.Cubic
spherical Scene.MaterialInstance.Texture.MappingOperator.Spherical
cylindrical Scene.MaterialInstance.Texture.MappingOperator.Cylindrical
axis_system double repeated Reference for the mapping operator (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz)
u_offset double Shift on U direction (mm)
v_offset double Shift on V direction (mm)
u_scale_factor double Scale factor on U dimension
v_scale_factor double Scale factor on V dimension
u_length double Dimension on U direction (mm)
v_length double optional Optional - Dimension on V direction (mm). If not filled, then the image ratio is used to define v_length from u_length.
rotation double Rotation of UVs (degree) ]-360, 360[

Scene.MaterialInstance.Texture.MappingOperator.Cubic

Scene.MaterialInstance.Texture.MappingOperator.Cylindrical

Field Type Label Description
base_perimeter double

Scene.MaterialInstance.Texture.MappingOperator.Planar

Scene.MaterialInstance.Texture.MappingOperator.Spherical

Field Type Label Description
sphere_perimeter double

Scene.MetadataEntry

Field Type Label Description
key string
value string

Scene.SceneInstance

Field Type Label Description
name string Unique identifier in the scene
display_name string User name to be displayed
description string
metadata Scene.SceneInstance.MetadataEntry repeated User defined metadata
scene_guid string Guid of the element to instantiate
axis_system double repeated Scene position relative to parent PartTemplate reference (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz). If the coordinate system is not orthonormal, it will be automatically orthonormalized
trajectory_file_uri string Trajectory file, used to define the positions and orientations of the Scene instance in time.

Scene.SceneInstance.MetadataEntry

Field Type Label Description
key string
value string

Scene.SensorInstance

Instance of a sensor to add in the scene

Field Type Label Description
name string Unique identifier in the scene
display_name string User name to be displayed
description string
metadata Scene.SensorInstance.MetadataEntry repeated User defined metadata
sensor_guid string Guid of the SensorTemplate in SensorTemplatesManager to instantiate
result_file_name string Result file name without extention. Result files of the sensor will be based on this name.
camera_properties Scene.SensorInstance.CameraProperties To be filled if the sensor_guid corresponds to a SensorTemplate of type CameraSensorTemplate
irradiance_properties Scene.SensorInstance.IrradianceProperties To be filled if the sensor_guid corresponds to a SensorTemplate of type IrradianceSensorTemplate
radiance_properties Scene.SensorInstance.RadianceProperties To be filled if the sensor_guid corresponds to a SensorTemplate of type SensorTemplate::Radiance
intensity_properties Scene.SensorInstance.IntensityProperties To be filled if the sensor_guid corresponds to a SensorTemplate of type IntensitySensorTemplate
polar_intensity_properties Scene.SensorInstance.PolarIntensityProperties To be filled if the sensor_guid corresponds to a SensorTemplate of type PolarIntensitySensorTemplate
irradiance_3d_properties Scene.SensorInstance.Irradiance3DProperties To be filled if the sensor_guid corresponds to a SensorTemplate of type SensorTemplate::Irradiance3D
observer_properties Scene.SensorInstance.ObserverProperties To be filled if the sensor_guid corresponds to a SensorTemplate of type SensorTemplate::Observer
immersive_properties Scene.SensorInstance.ImmersiveProperties To be filled if the sensor_guid corresponds to a SensorTemplate of type SensorTemplate::Immersive
lxp_properties Scene.SensorInstance.LXPProperties To activate lxp feature, we must fill this field

Scene.SensorInstance.CameraProperties

Field Type Label Description
axis_system double repeated Position of the sensor (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz). If the coordinate system is not orthonormal, it will be automatically orthonormalized
trajectory_file_uri string Trajectory file, used to define the positions and orientations of the Camera sensor in time.
layer_type_none Scene.SensorInstance.LayerTypeNone Layer type : None
layer_type_source Scene.SensorInstance.LayerTypeSource Layer type : Source

Scene.SensorInstance.ImmersiveProperties

Field Type Label Description
axis_system double repeated Position of the sensor (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz). X corresponds to Front direction. Y corresponds to Top direction. Z corresponds to Right direction.
layer_type_none Scene.SensorInstance.LayerTypeNone Layer type : None.
layer_type_source Scene.SensorInstance.LayerTypeSource Layer type : Source.

Scene.SensorInstance.IntensityProperties

Field Type Label Description
axis_system double repeated Position of the sensor (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz). If the coordinate system is not orthonormal, it will be automatically orthonormalized
layer_type_none Scene.SensorInstance.LayerTypeNone Layer type: None
layer_type_source Scene.SensorInstance.LayerTypeSource Layer type: Source
layer_type_face Scene.SensorInstance.LayerTypeFace Layer type: Face
layer_type_sequence Scene.SensorInstance.LayerTypeSequence Layer type: Sequence

Scene.SensorInstance.Irradiance3DProperties

Field Type Label Description
ray_file_type Scene.SensorInstance.EnumRayFileType Choose type of ray file generated after the simulation.
layer_type_none Scene.SensorInstance.LayerTypeNone Layer type : None
layer_type_source Scene.SensorInstance.LayerTypeSource Layer type : Source
geometries Scene.GeoPaths Geometries that will use this sensor

Scene.SensorInstance.IrradianceProperties

Field Type Label Description
axis_system double repeated Position of the sensor (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz). If the coordinate system is not orthonormal, it will be automatically orthonormalized
ray_file_type Scene.SensorInstance.EnumRayFileType Choose type of ray file generated after the simulation.
layer_type_none Scene.SensorInstance.LayerTypeNone Layer type : None
layer_type_source Scene.SensorInstance.LayerTypeSource Layer type : Source
layer_type_face Scene.SensorInstance.LayerTypeFace Layer type : Face
layer_type_sequence Scene.SensorInstance.LayerTypeSequence Layer type : Sequence
layer_type_polarization Scene.SensorInstance.LayerTypePolarization Layer type : Polarization
layer_type_incidence_angle Scene.SensorInstance.LayerTypeIncidenceAngle Layer type : Incidence angle
integration_direction double repeated Sensor global integration direction [x,y,z], optional (default direction is Z axis of axis_system). Note: Contrary to any visualization of integration directions within Speos Software or its documentation the integration direction must be set in the anti-rays direction to integrate their signal. Integration direction is only settable for sensor template with IlluminanceTypePlanar or IlluminanceTypeSemiCylindrical as illuminance_type.
output_face_geometries Scene.GeoPaths List of output faces for inverse simulation optimization

Scene.SensorInstance.LXPProperties

Field Type Label Description
nb_max_paths uint32 The Maximum paths corresponds to the maximum number of rays the Light Expert file (*.lpf or *.lp3) can contain.

Scene.SensorInstance.LayerTypeFace

Includes one layer per surface selected in the result.

Field Type Label Description
sca_filtering_mode Scene.SensorInstance.LayerTypeFace.EnumSCAFilteringType
layers Scene.SensorInstance.LayerTypeFace.Layer repeated Layers that will be taken into account in the result.

Scene.SensorInstance.LayerTypeFace.Layer

Field Type Label Description
name string Name of the layer
geometries Scene.GeoPaths Surface selected.

Scene.SensorInstance.LayerTypeIncidenceAngle

Includes one layer per range of incident angles.

Field Type Label Description
sampling uint32

Scene.SensorInstance.LayerTypeNone

Includes the simulation's results in one layer.

Scene.SensorInstance.LayerTypePolarization

Includes one layer per Stokes parameter using the polarization parameter.

Scene.SensorInstance.LayerTypeSequence

Includes one layer per sequence in the result.

Field Type Label Description
maximum_nb_of_sequence uint32
define_sequence_per Scene.SensorInstance.LayerTypeSequence.EnumSequenceType

Scene.SensorInstance.LayerTypeSource

Includes one layer per active source in the result.

Scene.SensorInstance.MetadataEntry

Field Type Label Description
key string
value string

Scene.SensorInstance.ObserverProperties

Field Type Label Description
axis_system double repeated Position of the observed object/scene. (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz). X corresponds to Horizontal direction. Y corresponds to Vertical direction.
layer_type_none Scene.SensorInstance.LayerTypeNone Layer type : None.
layer_type_source Scene.SensorInstance.LayerTypeSource Layer type : Source.

Scene.SensorInstance.PolarIntensityProperties

Field Type Label Description
axis_system double repeated Position of the sensor (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz). If the coordinate system is not orthonormal, it will be automatically orthonormalized

Scene.SensorInstance.RadianceProperties

Field Type Label Description
axis_system double repeated Position of the sensor (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz). If the coordinate system is not orthonormal, it will be automatically orthonormalized
observer_point double repeated Position of the observer point (Ox Oy Oz), optional (default: focal length is used)
layer_type_none Scene.SensorInstance.LayerTypeNone Layer type : None
layer_type_source Scene.SensorInstance.LayerTypeSource Layer type : Source
layer_type_face Scene.SensorInstance.LayerTypeFace Layer type : Face
layer_type_sequence Scene.SensorInstance.LayerTypeSequence Layer type : Sequence

Scene.SimulationInstance

Instance of a simulation to add in the scene

Field Type Label Description
name string Unique identifier in the scene
display_name string User name to be displayed
description string
metadata Scene.SimulationInstance.MetadataEntry repeated User defined metadata
simulation_guid string Guid of the element to instantiate
sensor_paths string repeated Sensors that this simulation will include (empty for no sensor, [""] for all sensors, "" for a specific sensor in the current scene, or "/" for a specific sensor in a specific sub scene)
source_paths string repeated Sources that this simulation will include (empty for no source, [""] for all sources, "" for a specific source in the current scene, or "/" for a specific source in a specific sub scene)
source_groups Scene.SimulationInstance.SourceGroup repeated Source groups that this simulation will include, only sources which are in source_path can be added to a source group. All sources with in one source group will be grouped in one layer in the result, when sensor layering is LayerTypeSource.
geometries Scene.GeoPaths Geometries that this simulation will include - Not yet functional (All geometries are included by default in each simulation)
vbb_properties Scene.SimulationInstance.VirtualBSDFBenchProperties To be filled if the simulation_guid corresponds to a SimulationTemplate of type VirtualBSDFBench

Scene.SimulationInstance.MetadataEntry

Field Type Label Description
key string
value string

Scene.SimulationInstance.SourceGroup

Field Type Label Description
name string Group name for the source
source_paths string repeated Sources that belong to this group, selection can be done by "" for a specific source in the current scene, or "/" for a specific source in a specific sub scene

Scene.SimulationInstance.VirtualBSDFBenchProperties

Field Type Label Description
axis_system double repeated Axis system of measurement (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz), O will be the measurement position, Z will be the normal axis (theta angle reference) and X the orientation on the surface (phi angle reference)
analysis_x_ratio double Ratio to reduce the analysis area following x, must be in range ]0., 100.]
analysis_y_ratio double Ratio to reduce the analysis area following y, must be in range ]0., 100.]

Scene.SourceInstance

Instance of a source to add in the scene

Field Type Label Description
name string Unique identifier in the scene
display_name string User name to be displayed
description string
metadata Scene.SourceInstance.MetadataEntry repeated User defined metadata
source_guid string Guid of the SourceTemplate in SourceTemplatesManager to instantiate
luminaire_properties Scene.SourceInstance.LuminaireProperties To be filled if the source_guid corresponds to a SourceTemplate of type Luminaire
surface_properties Scene.SourceInstance.SurfaceProperties To be filled if the source_guid corresponds to a SourceTemplate of type Surface
rayfile_properties Scene.SourceInstance.RayFileProperties To be filled if the source_guid corresponds to a SourceTemplate of type RayFile
thermic_properties Scene.SourceInstance.ThermicProperties To be filled if the source_guid corresponds to a SourceTemplate of type Thermic Source
display_properties Scene.SourceInstance.DisplayProperties To be filled if the source_guid corresponds to a SourceTemplate of type Display
ambient_properties Scene.SourceInstance.AmbientProperties To be filled if the source_guid corresponds to a SourceTemplate of type Ambient

Scene.SourceInstance.AmbientProperties

Field Type Label Description
zenith_direction double repeated line normal to the ground or Z direction
reverse_zenith bool optional - if not set or false : normal is not reversed
uniform_ambient_properties Scene.SourceInstance.AmbientProperties.UniformAmbientProperties
cie_overcast_properties Scene.SourceInstance.AmbientProperties.CieOvercastProperties
cie_general_properties Scene.SourceInstance.AmbientProperties.CieGeneralProperties
natural_light_properties Scene.SourceInstance.AmbientProperties.NaturalLightProperties
us_standard_properties Scene.SourceInstance.AmbientProperties.UsStandardProperties
environment_map_properties Scene.SourceInstance.AmbientProperties.EnvironmentMapProperties

Scene.SourceInstance.AmbientProperties.CieGeneralProperties

Field Type Label Description
north_direction double repeated (X Y Z) Direction to the North
reverse_north bool optional - if not set or false : normal is not reversed
sun_axis_system Scene.SourceInstance.AmbientProperties.SunAxisSystem Set the Sun direction

Scene.SourceInstance.AmbientProperties.CieOvercastProperties

Scene.SourceInstance.AmbientProperties.EnvironmentMapProperties

Field Type Label Description
north_direction double repeated (X Y Z) Direction to the North
reverse_north bool optional - if not set or false : normal is not reversed

Scene.SourceInstance.AmbientProperties.ManualSun

Field Type Label Description
sun_direction double repeated (X Y Z) direction to the sun
reverse_sun bool optional - if not set or false : normal is not reversed

Scene.SourceInstance.AmbientProperties.NaturalLightProperties

Field Type Label Description
north_direction double repeated (X Y Z) Direction to the North
reverse_north bool optional - if not set or false : normal is not reversed
sun_axis_system Scene.SourceInstance.AmbientProperties.SunAxisSystem Set the Sun direction

Scene.SourceInstance.AmbientProperties.SunAxisSystem

Field Type Label Description
automatic_sun Scene.SourceInstance.AmbientProperties.SunAxisSystem.AutomaticSun calculates the sun position according to the north direction and time zone location set
manual_sun Scene.SourceInstance.AmbientProperties.ManualSun sets the sun position and direction from scene

Scene.SourceInstance.AmbientProperties.SunAxisSystem.AutomaticSun

Field Type Label Description
time_zone_uri string
year int32
month int32
day int32
hour int32
minute int32
longitude float
latitude float

Scene.SourceInstance.AmbientProperties.UniformAmbientProperties

Field Type Label Description
manual_sun Scene.SourceInstance.AmbientProperties.ManualSun sets the sun position and direction from scene

Scene.SourceInstance.AmbientProperties.UsStandardProperties

Field Type Label Description
north_direction double repeated (X Y Z) Direction to the North
reverse_north bool optional - if not set or false : normal is not reversed
sun_axis_system Scene.SourceInstance.AmbientProperties.SunAxisSystem Set the Sun direction

Scene.SourceInstance.DisplayProperties

Field Type Label Description
axis_system double repeated Position of the source (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz). If the coordinate system is not orthonormal, it will be automatically orthonormalized
intensity_properties Scene.SourceInstance.IntensityProperties

Scene.SourceInstance.IntensityProperties

Field Type Label Description
library_properties Scene.SourceInstance.IntensityProperties.LibraryProperties To be filled if the intensity_guid of the source template corresponds to an IntensityTemplate of type Library
gaussian_properties Scene.SourceInstance.IntensityProperties.GaussianProperties To be filled if the intensity_guid of the source template corresponds to an IntensityTemplate of type Gaussian

Scene.SourceInstance.IntensityProperties.GaussianProperties

Field Type Label Description
axis_system double repeated optional - orientation of the intensity distribution (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz) - if not filled : normal to surface map. If the coordinate system is not orthonormal, it will be automatically orthonormalized

Scene.SourceInstance.IntensityProperties.LibraryProperties

Field Type Label Description
exit_geometries Scene.GeoPaths Exit Geometries that will use this surface source
axis_system Scene.SourceInstance.IntensityProperties.LibraryProperties.AxisSystem orientation (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz). If the coordinate system is not orthonormal, it will be automatically orthonormalized
normal_to_surface Scene.SourceInstance.IntensityProperties.LibraryProperties.NormalToSurface Define the intensity distribution as normal to the selected surface.
normal_to_uv_map Scene.SourceInstance.IntensityProperties.LibraryProperties.NormalToUVMap Define the intensity distribution as normal to the selected emissive surface and its orientation on the emissive surface.

Scene.SourceInstance.IntensityProperties.LibraryProperties.AxisSystem

Field Type Label Description
values double repeated orientation (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz)

Scene.SourceInstance.IntensityProperties.LibraryProperties.NormalToSurface

Define the intensity distribution as normal to the selected surface.

Scene.SourceInstance.IntensityProperties.LibraryProperties.NormalToUVMap

Define the intensity distribution as normal to the selected emissive surface and its orientation on the emissive surface.

Scene.SourceInstance.LuminaireProperties

Field Type Label Description
axis_system double repeated Position of the source (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz). If the coordinate system is not orthonormal, it will be automatically orthonormalized

Scene.SourceInstance.MetadataEntry

Field Type Label Description
key string
value string

Scene.SourceInstance.RayFileProperties

Field Type Label Description
axis_system double repeated Position of the source (Ox Oy Oz Xx Xy Xz Yx Yy Yz Zx Zy Zz)
exit_geometries Scene.GeoPaths Exit Geometries that will use this rayfile source

Scene.SourceInstance.SurfaceProperties

Field Type Label Description
exitance_constant_properties Scene.SourceInstance.SurfaceProperties.ExitanceConstantProperties To be filled if the Surface SourceTemplate has ExitanceConstant
exitance_variable_properties Scene.SourceInstance.SurfaceProperties.ExitanceVariableProperties To be filled if the Surface SourceTemplate has ExitanceVariable
intensity_properties Scene.SourceInstance.IntensityProperties

Scene.SourceInstance.SurfaceProperties.ExitanceConstantProperties

Field Type Label Description
geo_paths Scene.GeoPath repeated

Scene.SourceInstance.SurfaceProperties.ExitanceVariableProperties

Field Type Label Description
axis_plane double repeated Position of the exitance map (Ox Oy Oz Xx Xy Xz Yx Yy Yz). If the coordinate system is not orthonormal, it will be automatically orthonormalized

Scene.SourceInstance.ThermicProperties

Field Type Label Description
emissive_faces_properties Scene.SourceInstance.ThermicProperties.EmissiveFacesProperties source emits from faces
temperature_field_properties Scene.SourceInstance.ThermicProperties.TemperatureFieldProperties a specific OPTTemperature file is required (mesh + triangle temperature in Kelvin)

Scene.SourceInstance.ThermicProperties.EmissiveFacesProperties

Field Type Label Description
geo_paths Scene.GeoPath repeated the list of emitting faces of the source

Scene.SourceInstance.ThermicProperties.TemperatureFieldProperties

Field Type Label Description
axis_plane double repeated Position of the exitance map (Ox Oy Oz Xx Xy Xz Yx Yy Yz). If the coordinate system is not orthonormal, it will be automatically orthonormalized

Update_Request

Request to update a Scene in ScenesManager

Field Type Label Description
guid string Guid of the Scene to be updated
scene Scene Scene that will be used for the update

Update_Response

Scene.SensorInstance.EnumRayFileType

Ray file types available

Name Number Description
RayFileNone 0 Generates no ray file.
RayFileClassic 1 Generates a ray file without polarization data.
RayFilePolarization 2 Generates a ray file with the polarization data for each ray.
RayFileTM25 3 Generates a .tm25ray file with polarization data for each ray.
RayFileTM25NoPolarization 4 Generates a .tm25ray file without polarization data.

Scene.SensorInstance.LayerTypeFace.EnumSCAFilteringType

Name Number Description
LastImpact 0
IntersectedOneTime 1

Scene.SensorInstance.LayerTypeSequence.EnumSequenceType

Name Number Description
Geometries 0
Faces 1

SceneActions

Actions available on a Scene

Method Name Request Type Response Type Description
LoadFile LoadFile_Request LoadFile_Response Load .speos, .SPEOSLightBox file
SaveFile SaveFile_Request SaveFile_Response Save .SPEOSLightBox file.
GetSourceRayPaths GetSourceRayPaths_Request results.v1.RayPath stream Get RayPaths generated by a source

ScenesManager

Manager for Scenes

Method Name Request Type Response Type Description
Create Create_Request Create_Response Create a Scene
Read Read_Request Read_Response Read a Scene
Update Update_Request Update_Response Update a Scene
Delete Delete_Request Delete_Response Delete a Scene
List List_Request List_Response List all Scenes in manager

sensor/v1/camera_sensor.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

CameraSensorTemplate

Field Type Label Description
sensor_mode_geometric SensorCameraModeGeometric Sensor mode : Geometric
sensor_mode_photometric SensorCameraModePhotometric Sensor mode : Photometric
focal_length double Distance between the center of the optical system and the focus. (mm)
imager_distance double Imager distance in mm, the imager is located at the focal point. The Imager distance has no impact on the result.
f_number double F-number represents the aperture of the front lens. F number has no impact on the result.
distorsion_file_uri string Will be deprecated soon due to typo error - better use distortion_file_uri
distortion_file_uri string Optical aberration that deforms and bends straight lines. The distortion is expressed in a .OPTDistortion file.
horz_pixel uint32 Defines the horizontal pixels number corresponding to the camera resolution.
vert_pixel uint32 Defines the vertical pixels number corresponding to the camera resolution.
width double Defines the sensor's width in mm.
height double Defines the sensor's height in mm.

SensorCameraBalanceModeDisplay

Spectral results are converted in a three-channel result. Then a post-treatment is realized to take the distortion induced by the display devices into account. With this method, displayed results are similar to what the camera really gets.

Field Type Label Description
red_display_file_uri string
green_display_file_uri string
blue_display_file_uri string

SensorCameraBalanceModeGreyworld

The grey world assumption states that the content of the image is grey on average. This method converts spectral results in a three-channel result with the basic conversion. Then it computes and applies coefficients to the red, green and blue images to make sure their averages are equal.

SensorCameraBalanceModeNone

The spectral transmittance of the optical system and the spectral sensitivity for each channel are applied to the detected spectral image before the conversion in a three-channel result. This method is referred to as the basic conversion.

SensorCameraBalanceModeUserwhite

In addition to the basic treatment, it allows you to apply your own coefficients to the red, green, blue images.

Field Type Label Description
red_gain double
green_gain double
blue_gain double

SensorCameraColorModeColor

Simulation results are available in color according to the White Balance mode.

Field Type Label Description
red_spectrum_file_uri string
green_spectrum_file_uri string
blue_spectrum_file_uri string
balance_mode_none SensorCameraBalanceModeNone Balance mode : None
balance_mode_greyworld SensorCameraBalanceModeGreyworld Balance mode : Greyworld
balance_mode_userwhite SensorCameraBalanceModeUserwhite Balance mode : Userwhite
balance_mode_display SensorCameraBalanceModeDisplay Balance mode : Display

SensorCameraColorModeMonochromatic

Simulation results are available in grey scale.

Field Type Label Description
spectrum_file_uri string

SensorCameraModeGeometric

Simplified version of the Camera Sensor definition parameters

SensorCameraModePhotometric

Allows to set every Camera Sensor parameters, including the photometric definition parameters

Field Type Label Description
acquisition_integration double Acquisition integration in s
acquisition_lag_time double Acquisition lag time in s
transmittance_file_uri string Amount of light of the source that passes through the lens and reaches the sensor. The transmittance is expressed in a .spectrum file.
gamma_correction float Compensation of the curve before the display on the screen.
png_bits EnumSensorCameraPNGBits Choose between 8, 10, 12 and 16-bit.
color_mode_color SensorCameraColorModeColor Color mode : Color
color_mode_monochromatic SensorCameraColorModeMonochromatic Color mode : Monochromatic
wavelengths_range WavelengthsRange Spectral range to use for simulation.

EnumSensorCameraPNGBits

Name Number Description
PNG_08 0
PNG_10 1
PNG_12 2
PNG_16 3

sensor/v1/common.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

AngularRange

Angular range and sampling along two directions.

Field Type Label Description
x_start double Start angle along X direction (deg).
x_end double End angle along X direction (deg).
x_sampling uint32 Sampling along X direction.
y_start double Start angle along Y direction (deg).
y_end double End angle along Y direction (deg).
y_sampling uint32 Sampling along Y direction.

ConoscopicIntensityDimensions

Dimensions of the conoscopic intensity sensor

Field Type Label Description
theta_max double Maximum theta angle (deg).
sampling uint32 Number of pixels along Theta.

FromSensorLookingAtSource

FromSourceLookingAtSensor

Intensity result viewing direction

IlluminanceTypeCylindrical

Illuminance sensor with cylindrical integration type.

IlluminanceTypeHemispherical

Illuminance sensor with hemispherical integration type.

IlluminanceTypePlanar

Integration made orthogonally with the sensor plane.

IlluminanceTypeRadial

Illuminance sensor with radial integration type.

IlluminanceTypeSemiCylindrical

Illuminance sensor with semi cylindrical integration type.

IntensityDimensions

Dimensions of the non conoscopic intensity sensor

Field Type Label Description
x_start double Start angle along X direction (deg).
x_end double End angle along X direction (deg).
x_sampling uint32 Number of pixels along X direction.
y_start double Start angle along Y direction (deg).
y_end double End angle along Y direction (deg).
y_sampling uint32 Number of pixels along Y direction.

IntensityOrientationConoscopic

The sensor considers conoscopic orientation.

Field Type Label Description
conoscopic_intensity_dimensions ConoscopicIntensityDimensions Dimensions for non conoscopic sensor

IntensityOrientationXAsMeridian

The sensor considers X direction as meridian and Y direction as parallel.

Field Type Label Description
intensity_dimensions IntensityDimensions Dimensions for non conoscopic sensor

IntensityOrientationXAsParallel

The sensor considers X direction as parallel and Y direction as meridian.

Field Type Label Description
intensity_dimensions IntensityDimensions Dimensions for non conoscopic sensor

PolarIntensityDimensions

Dimensions of the conoscopic intensity sensor

Field Type Label Description
horizontal_sampling int32 Number of horizontal samples of the intensity file (IESNA or EULUMDAT).
vertical_sampling int32 Number of vertical samples of the intensity file (IESNA or EULUMDAT).

PolarIntensityEulumdat

The polar intensity sensor generates an Eulumdat file.

PolarIntensityIesnaA

The polar intensity sensor generates an Iesna A type file.

PolarIntensityIesnaB

The polar intensity sensor generates an Iesna B type file.

PolarIntensityIesnaC

The polar intensity sensor generates an Iesna C type file.

SensorDimensions

Dimensions of the sensor

Field Type Label Description
x_start double Start distance from center along X direction (mm).
x_end double End distance from center along X direction (mm).
x_sampling uint32 Number of pixels along X direction.
y_start double Start distance from center along Y direction (mm).
y_end double End distance from center along Y direction (mm).
y_sampling uint32 Number of pixels along Y direction.

SensorNearField

Near field intensity or polar intensity sensor

Field Type Label Description
cell_distance double Distance of the cell from the center of the intensity sensor (mm).
cell_integration_angle double Integration angle of the cell (deg). Used with cell_distance to calculate the cell diameter.

SensorTypeColorimetric

Color results without any spectral data or layer separation.

Field Type Label Description
wavelengths_range WavelengthsRange Spectral range to use for simulation.

SensorTypePhotometric

The sensor considers the visible spectrum and gets the results.

SensorTypeRadiometric

The sensor considers the entire spectrum and gets the results.

SensorTypeSpectral

Color results and spectral data separated by wavelength.

Field Type Label Description
wavelengths_range WavelengthsRange Spectral range to use for simulation.

WavelengthsRange

Spectral range to use for simulation.

Field Type Label Description
w_start double Defines the minimum wavelength. (nm)
w_end double Defines the maximum wavelength. (nm)
w_sampling uint32 Defines the number of wavelengths to be taken into account between the minimum and maximum wavelengths set.

sensor/v1/irradiance_sensor.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

IrradianceSensorTemplate

Field Type Label Description
sensor_type_photometric SensorTypePhotometric Sensor type : Photometric
sensor_type_colorimetric SensorTypeColorimetric Sensor type : Colorimetric
sensor_type_radiometric SensorTypeRadiometric Sensor type : Radiometric
sensor_type_spectral SensorTypeSpectral Sensor type : Spectral
illuminance_type_planar IlluminanceTypePlanar Illuminance type : Planar
illuminance_type_radial IlluminanceTypeRadial Illuminance type : Radial
illuminance_type_hemispherical IlluminanceTypeHemispherical Illuminance type : Hemispherical
illuminance_type_cylindrical IlluminanceTypeCylindrical Illuminance type : Cylindrical
illuminance_type_semi_cylindrical IlluminanceTypeSemiCylindrical Illuminance type : SemiCylindrical
dimensions SensorDimensions Dimensions of the sensor

sensor/v1/sensor.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

Create_Request

Request to create a SensorTemplate in SensorTemplatesManager

Field Type Label Description
sensor_template SensorTemplate SensorTemplate containing its basic characteristics
guid string optional Optional field to specify the guid used in the database. If not set, a unique guid will be generated for that entry and sent back in the Create_Response.

Create_Response

Field Type Label Description
guid string Guid of the SensorTemplate created in SensorTemplatesManager

Delete_Request

Request to delete a SensorTemplate in SensorTemplatesManager

Field Type Label Description
guid string Guid of the SensorTemplate to be deleted

Delete_Response

List_Request

List_Response

Field Type Label Description
guids string repeated Guids of the SensorTemplates in SensorTemplatesManager

Read_Request

Request to read a SensorTemplate in SensorTemplatesManager

Field Type Label Description
guid string Guid of the SensorTemplate to be read

Read_Response

Field Type Label Description
sensor_template SensorTemplate SensorTemplate corresponding to the guid given in Read_Request

SensorTemplate

Sensor template with its basic characteristics

Field Type Label Description
name string SensorTemplate name
description string SensorTemplate description
metadata SensorTemplate.MetadataEntry repeated User defined metadata
camera_sensor_template CameraSensorTemplate
irradiance_sensor_template IrradianceSensorTemplate
radiance_sensor_template SensorTemplate.Radiance
intensity_sensor_template SensorTemplate.Intensity
polar_intensity_sensor_template SensorTemplate.PolarIntensity
irradiance_3d SensorTemplate.Irradiance3D
observer_sensor_template SensorTemplate.Observer
immersive_sensor_template SensorTemplate.Immersive

SensorTemplate.Immersive

Field Type Label Description
sampling uint32 Sampling (horizontal and vertical number of pixels) for a face.
stereo SensorTemplate.Stereo Activates stereo. When not set, stereo is disabled for the sensor.
integration_angle double Integration angle in degrees for direct simulations.
wavelengths_range WavelengthsRange Spectral range to use for simulation.
exclude_faces SensorTemplate.Immersive.ExcludeFaces Possibility to exclude some faces.

SensorTemplate.Immersive.ExcludeFaces

Field Type Label Description
front bool Exclude front face if true.
back bool Exclude back face if true.
left bool Exclude left face if true.
right bool Exclude right face if true.
top bool Exclude top face if true.
bottom bool Exclude bottom face if true.

SensorTemplate.Intensity

Carthesian intensity sensor, generating a XMP result

Field Type Label Description
sensor_type_photometric SensorTypePhotometric Sensor type: Photometric
sensor_type_colorimetric SensorTypeColorimetric Sensor type: Colorimetric
sensor_type_radiometric SensorTypeRadiometric Sensor type: Radiometric
sensor_type_spectral SensorTypeSpectral Sensor type: Spectral
intensity_orientation_x_as_meridian IntensityOrientationXAsMeridian Orientation type: X As Meridian, Y as Parallel
intensity_orientation_x_as_parallel IntensityOrientationXAsParallel Orientation type: X As Parallel, Y as Meridian
intensity_orientation_conoscopic IntensityOrientationConoscopic Orientation type: Conoscopic
near_field SensorNearField Activates Near field. When not set, near field is disabled for the sensor
from_source_looking_at_sensor FromSourceLookingAtSensor Viewing direction from source looking at sensor
from_sensor_looking_at_source FromSensorLookingAtSource Viewing direction from sensor looking at source

SensorTemplate.Irradiance3D

Field Type Label Description
type_photometric SensorTemplate.Irradiance3D.TypePhotometric Sensor type : Photometric
type_colorimetric SensorTemplate.Irradiance3D.TypeColorimetric Sensor type : Colorimetric
type_radiometric SensorTemplate.Irradiance3D.TypeRadiometric Sensor type : Radiometric

SensorTemplate.Irradiance3D.IntegrationTypePlanar

Integration made orthogonally with the sensor plane.

Field Type Label Description
reflection bool Reflection is taking into account for the integrating faces of the sensor.
transmission bool Transmission is taking into account for the integrating faces of the sensor.
absorption bool Absorption is taking into account for the integrating faces of the sensor.

SensorTemplate.Irradiance3D.IntegrationTypeRadial

SensorTemplate.Irradiance3D.TypeColorimetric

Color results without any spectral data or layer separation (in lx or W//m2).

Field Type Label Description
wavelength_start double (nm)
wavelength_end double (nm)
integration_type SensorTemplate.Irradiance3D.TypeColorimetric.IntegrationType will determine the integration type of the sensor between radial and planar

SensorTemplate.Irradiance3D.TypePhotometric

The sensor considers the visible spectrum and gets the results in lm/m2 or lx.

Field Type Label Description
integration_type_radial SensorTemplate.Irradiance3D.IntegrationTypeRadial Integration type : Radial
integration_type_planar SensorTemplate.Irradiance3D.IntegrationTypePlanar Integration type : Planar

SensorTemplate.Irradiance3D.TypeRadiometric

The sensor considers the entire spectrum and gets the results in W/m2.

Field Type Label Description
integration_type_radial SensorTemplate.Irradiance3D.IntegrationTypeRadial Integration type : Radial
integration_type_planar SensorTemplate.Irradiance3D.IntegrationTypePlanar Integration type : Planar

SensorTemplate.MetadataEntry

Field Type Label Description
key string
value string

SensorTemplate.Observer

Field Type Label Description
focal double Distance between the sensor radiance plan and the observer point. The larger the focal, the closer to the object. (mm)
integration_angle double Integration angle in degrees for direct simulations.
wavelengths_range WavelengthsRange Spectral range to use for simulation.
dimensions SensorDimensions Dimensions of the sensor.
stereo SensorTemplate.Stereo Activates stereo. When not set, stereo is disabled for the sensor.
distance double Radius of the sphere on which the sensors will be placed. (mm)
sensors_locations AngularRange Locations of the sensors on the sphere. X corresponds to Horizontal direction. Y corresponds to Vertical direction.

SensorTemplate.PolarIntensity

Field Type Label Description
iesna_a PolarIntensityIesnaA Sensor format: Iesna A type
iesna_b PolarIntensityIesnaB Sensor format: Iesna B type
iesna_c PolarIntensityIesnaC Sensor format: Iesna C type
eulumdat PolarIntensityEulumdat Sensor format: Eulumdat
dimensions PolarIntensityDimensions Horizontal and vertical samplings. Dimensions are fixed by the format or the adaptive sampling file
adaptive_sampling_uri string Path to the adaptive sampling file
far_field SensorTemplate.PolarIntensity.SensorFarField Far field, only used when near field is disabled for the sensor. It permits to set the integration angle.
near_field SensorNearField Near field parameters: cell distance and diameter. Integration angle needs to be calculated from these parameters.

SensorTemplate.PolarIntensity.SensorFarField

Field Type Label Description
integration_angle double Integration angle (deg)

SensorTemplate.Radiance

Field Type Label Description
sensor_type_photometric SensorTypePhotometric Sensor type : Photometric
sensor_type_colorimetric SensorTypeColorimetric Sensor type : Colorimetric
sensor_type_radiometric SensorTypeRadiometric Sensor type : Radiometric
sensor_type_spectral SensorTypeSpectral Sensor type : Spectral
focal double Observer type : focal (mm)
integration_angle double Integration angle, in degree
dimensions SensorDimensions Dimensions of the sensor

SensorTemplate.Stereo

Field Type Label Description
interocular_distance double distance between viewpoints in mm. To use, make sure that front direction is horizontal and top vertical

Update_Request

Request to update a SensorTemplate in SensorTemplatesManager

Field Type Label Description
guid string Guid of the SensorTemplate to be updated
sensor_template SensorTemplate SensorTemplate that will be used for the update

Update_Response

SensorTemplate.Irradiance3D.TypeColorimetric.IntegrationType

Defines how the illuminance is integrated in the sensor

Name Number Description
Radial 0 Integration type : Radial
Planar 1 Integration type : Planar

SensorTemplatesManager

Method Name Request Type Response Type Description
Create Create_Request Create_Response Create a SensorTemplate
Read Read_Request Read_Response Read a SensorTemplate
Update Update_Request Update_Response Update a SensorTemplate
Delete Delete_Request Delete_Response Delete a SensorTemplate
List List_Request List_Response List all SensorTemplates in manager

server_info/v1/server_info.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

GetVersion_Request

GetVersion_Response

Field Type Label Description
version string Version of the server. Format: "major.minor.patch.build". Example "2025.2.1.31394".

ServerInfo

Method Name Request Type Response Type Description
GetVersion GetVersion_Request GetVersion_Response Get the server version

simulation/v1/simulation_template.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

Create_Request

Request to create a SimulationTemplate in SimulationTemplatesManager

Field Type Label Description
simulation_template SimulationTemplate SimulationTemplate containing its basic characteristics
guid string optional Optional field to specify the guid used in the database. If not set, a unique guid will be generated for that entry and sent back in the Create_Response.

Create_Response

Field Type Label Description
guid string Guid of the SimulationTemplate created in SimulationTemplatesManager

Delete_Request

Request to delete a SimulationTemplate in SimulationTemplatesManager

Field Type Label Description
guid string Guid of the SimulationTemplate to be deleted

Delete_Response

DirectMCSimulationTemplate

Field Type Label Description
geom_distance_tolerance double Maximum distance in mm to consider two faces as tangent
max_impact int32 To define a value to determine the maximum number of ray impacts during propagation. When a ray has interacted N times with the geometry, the propagation of the ray stops.
weight Weight To activate Weight. The Weight represents the ray energy. In real life, a ray looses some energy (power) when it interacts with an object.
colorimetric_standard EnumColorimetricStandard To define the Colorimetric Standard
dispersion bool To activate the dispersion calculation.
fast_transmission_gathering bool To accelerate the simulation by neglecting the light refraction that occurs when the light is being transmitted through a transparent surface.
ambient_material_uri string To select an ambient material *.material
texture Texture To activate texture.

InverseMCSimulationTemplate

Field Type Label Description
geom_distance_tolerance double Maximum distance in mm to consider two faces as tangent.
max_impact int32 To define a value to determine the maximum number of ray impacts during propagation. When a ray has interacted N times with the geometry, the propagation of the ray stops.
weight Weight To activate Weight. The Weight represents the ray energy. In real life, a ray looses some energy (power) when it interacts with an object.
colorimetric_standard EnumColorimetricStandard To define the Colorimetric Standard
dispersion bool To activate the dispersion calculation.
splitting bool To split each propagated ray into several paths at their first impact after leaving the observer point.
number_of_gathering_rays_per_source uint32 This number pilots the number of shadow rays to target at each source.
maximum_gathering_error uint32 Deprecated - Better use maximum_gathering_error_percentage.
maximum_gathering_error_percentage double This value defines the level below which a source can be neglected. 0, the default value means that no approximation will be done.
fast_transmission_gathering bool To accelerate the simulation by neglecting the light refraction that occurs when the light is being transmitted through a transparent surface.
ambient_material_uri string To select an ambient material *.material
texture Texture To activate texture.

List_Request

List_Response

Field Type Label Description
guids string repeated Guids of the SimulationTemplates in SimulationTemplatesManager

Read_Request

Request to read a SimulationTemplate in SimulationTemplatesManager

Field Type Label Description
guid string Guid of the SimulationTemplate to be read

Read_Response

Field Type Label Description
simulation_template SimulationTemplate SimulationTemplate corresponding to the guid given in Read_Request

SimulationTemplate

Simulation template with its basic characteristics

Field Type Label Description
name string Simulation name
description string Simulation description
metadata SimulationTemplate.MetadataEntry repeated User defined metadata
direct_mc_simulation_template DirectMCSimulationTemplate
inverse_mc_simulation_template InverseMCSimulationTemplate
interactive_simulation_template SimulationTemplate.Interactive
virtual_bsdf_bench_simulation_template SimulationTemplate.VirtualBSDFBench

SimulationTemplate.Interactive

Field Type Label Description
geom_distance_tolerance double Maximum distance in mm to consider two faces as tangent.
max_impact int32 Defines a value to determine the maximum number of ray impacts during propagation. When a ray has interacted N times with the geometry, the propagation of the ray stops.
weight Weight Activates Weight. Highly recommended to fill
colorimetric_standard EnumColorimetricStandard Default Colorimetric Standard
ambient_material_uri string To define the environment in which the light will propagate (water, fog, smoke etc.). It is expressed in a .material file
texture Texture To activate texture.

SimulationTemplate.MetadataEntry

Field Type Label Description
key string
value string

SimulationTemplate.VirtualBSDFBench

Virtual BSDF Bench

Field Type Label Description
geom_distance_tolerance double Maximum distance in mm to consider two faces as tangent.
max_impact int32 Defines a value to determine the maximum number of ray impacts during propagation. When a ray has interacted N times with the geometry, the propagation of the ray stops.
weight Weight Activates Weight. It is highly recommended to activate.
colorimetric_standard EnumColorimetricStandard Default Colorimetric Standard
texture Texture Activates texture.
roughness_only SimulationTemplate.VirtualBSDFBench.RoughnessOnly BSDF depends on surface roughness only
all_characteristics SimulationTemplate.VirtualBSDFBench.AllCharacteristics BSDF depends on all properties
wavelengths_range sensor.v1.WavelengthsRange
sensor SimulationTemplate.VirtualBSDFBench.Sensor Sensor definition

SimulationTemplate.VirtualBSDFBench.AllCharacteristics

Field Type Label Description
is_bsdf180 bool Corresponds to the parameter "BSDF depends on light incidence side". When set to true, the Theta sampling for the source is defined on [0,180] instead of [0,90].
iridescence SimulationTemplate.VirtualBSDFBench.AllCharacteristics.Iridescence Color depends on viewing direction
no_iridescence SimulationTemplate.VirtualBSDFBench.AllCharacteristics.NoIridescence Color does not depend on viewing direction
sensor_reflection_and_transmission bool When set to true, it measures the reflection and transmission (theta in [0,180]). When set to false, it measures the reflection only (theta in [0,90]).

SimulationTemplate.VirtualBSDFBench.AllCharacteristics.Iridescence

Field Type Label Description
uniform_isotropic SimulationTemplate.VirtualBSDFBench.SourceSamplingUniformIsotropic
adaptive SimulationTemplate.VirtualBSDFBench.SourceSamplingAdaptive

SimulationTemplate.VirtualBSDFBench.AllCharacteristics.NoIridescence

Field Type Label Description
isotropic SimulationTemplate.VirtualBSDFBench.AllCharacteristics.NoIridescence.Isotropic
anisotropic SimulationTemplate.VirtualBSDFBench.AllCharacteristics.NoIridescence.Anisotropic

SimulationTemplate.VirtualBSDFBench.AllCharacteristics.NoIridescence.Anisotropic

Field Type Label Description
uniform_anisotropic SimulationTemplate.VirtualBSDFBench.SourceSamplingUniformAnisotropic
adaptive SimulationTemplate.VirtualBSDFBench.SourceSamplingAdaptive

SimulationTemplate.VirtualBSDFBench.AllCharacteristics.NoIridescence.Isotropic

Field Type Label Description
uniform_isotropic SimulationTemplate.VirtualBSDFBench.SourceSamplingUniformIsotropic
adaptive SimulationTemplate.VirtualBSDFBench.SourceSamplingAdaptive

SimulationTemplate.VirtualBSDFBench.RoughnessOnly

Field Type Label Description
uniform_isotropic SimulationTemplate.VirtualBSDFBench.SourceSamplingUniformIsotropic oneof with adaptive
adaptive SimulationTemplate.VirtualBSDFBench.SourceSamplingAdaptive

SimulationTemplate.VirtualBSDFBench.Sensor

Field Type Label Description
integration_angle double
uniform SimulationTemplate.VirtualBSDFBench.Sensor.SensorSamplingUniform
automatic SimulationTemplate.VirtualBSDFBench.Sensor.SensorSamplingAutomatic

SimulationTemplate.VirtualBSDFBench.Sensor.SensorSamplingAutomatic

SimulationTemplate.VirtualBSDFBench.Sensor.SensorSamplingUniform

Field Type Label Description
theta_sampling uint32 Number of samples created along the polar angle Theta (around the normal Z-axis) in the range [0,90] degrees. Each sample represents the position of the sensor on Theta.
phi_sampling uint32 Number of samples created along the azimuthal angle Phi (around the X-axis). Each sample represents the position of the sensor on Phi.

SimulationTemplate.VirtualBSDFBench.SourceSamplingAdaptive

Field Type Label Description
file_uri string uri of incident sampling file

SimulationTemplate.VirtualBSDFBench.SourceSamplingUniformAnisotropic

Field Type Label Description
theta_sampling uint32 Number of samples created along the polar angle Theta (around the normal Z-axis) in the range [0,90] degrees, with a minimum value of 2 degrees. Each sample represents the position of the source on Theta.
phi_sampling uint32 Number of samples created along the azimuthal angle Phi (around the X-axis). Each sample represents the position of the source on Phi.
symmetry_type SimulationTemplate.VirtualBSDFBench.SourceSamplingUniformAnisotropic.PhiSymmetry Define symmetry type. Not needed if there is no symmetry in measure.

SimulationTemplate.VirtualBSDFBench.SourceSamplingUniformIsotropic

Field Type Label Description
theta_sampling uint32 Number of samples created along the polar angle Theta (around the normal Z-axis) in the range [0,90] degrees, with a minimum value of 2 degrees. Each sample represents the position of the source on Theta.

Texture

If texture has been applied in the scene, fill Texture message.

Field Type Label Description
texture_normalization Texture.TextureNormalization Rendering of the texture.
normal_map bool To activate normal map.

Update_Request

Request to update a SimulationTemplate in SimulationTemplatesManager

Field Type Label Description
guid string Guid of the SimulationTemplate to be updated
simulation_template SimulationTemplate SimulationTemplate that will be used for the update

Update_Response

Weight

The Weight represents the ray energy. In real life, a ray looses some energy (power) when it interacts with an object. Activating weight means that the Weight message is present. When weight is not activated, rays' energy stays constant and probability laws dictate if rays continue or stop propagating. When weight is activated, rays' energy evolves with interactions until rays reach the sensors. It is highly recommended to activate Weight, except in Interactive simulation. Not activating Weight is useful to understand certain phenomena as absorption.

Field Type Label Description
minimum_energy_percentage double The Minimum energy percentage parameter defines the minimum energy ratio to continue to propagate a ray with weight. 1 = 100%.

EnumColorimetricStandard

Default Colorimetric Standard

Name Number Description
CIE_1931 0 2 degrees CIE Standard Colorimetric Observer Data.
CIE_1964 1 10 degrees CIE Standard Colorimetric Observer Data.

SimulationTemplate.VirtualBSDFBench.SourceSamplingUniformAnisotropic.PhiSymmetry

Name Number Description
PHI_SYMMETRY_UNSPECIFIED 0
PHI_SYMMETRY_NONE 1
PHI_SYMMETRY_1_PLANE 2 Symmetry to plane 0 - 180
PHI_SYMMETRY_2_PLANES 3 Symmetry to planes 0 - 180 and 90 - 270

Texture.TextureNormalization

Name Number Description
TEXTURE_NORMALIZATION_UNSPECIFIED 0
TEXTURE_NORMALIZATION_NONE 1 The simulation result uses both the image texture and the texture mapping optical properties.
TEXTURE_NORMALIZATION_COLOR_FROM_TEXTURE 2 The simulation result uses the color and the color lightness of the image texture.
TEXTURE_NORMALIZATION_COLOR_FROM_BSDF 3 The simulation result uses the BSDF information of the texture mapping optical properties.

SimulationTemplatesManager

Method Name Request Type Response Type Description
Create Create_Request Create_Response Create a SimulationTemplate
Read Read_Request Read_Response Read a SimulationTemplate
Update Update_Request Update_Response Update a SimulationTemplate
Delete Delete_Request Delete_Response Delete a SimulationTemplate
List List_Request List_Response List all SimulationTemplates in manager

sop/v1/sop.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

Create_Request

Request to create a SOPTemplate in SOPTemplatesManager

Field Type Label Description
sop_template SOPTemplate SOPTemplate containing its basic characteristics
guid string optional Optional field to specify the guid used in the database. If not set, a unique guid will be generated for that entry and sent back in the Create_Response.

Create_Response

Field Type Label Description
guid string Guid of the SOPTemplate created in SOPTemplatesManager

Delete_Request

Request to delete a SOPTemplate in SOPTemplatesManager

Field Type Label Description
guid string Guid of the SOPTemplate to be deleted

Delete_Response

List_Request

List_Response

Field Type Label Description
guids string repeated Guids of the SOPTemplates in SOPTemplatesManager

Read_Request

Request to read a SOPTemplate in SOPTemplatesManager

Field Type Label Description
guid string Guid of the SOPTemplate to be read

Read_Response

Field Type Label Description
sop_template SOPTemplate SOPTemplate corresponding to the guid given in Read_Request

SOPTemplate

SOP: Surface Optical Properties Defines the behavior of light rays when they hit the surface of a body.

Field Type Label Description
name string SOPTemplate name
description string SOPTemplate description
metadata SOPTemplate.MetadataEntry repeated User defined metadata
mirror SOPTemplate.Mirror Perfect specular surface
optical_polished SOPTemplate.OpticalPolished Transparent or perfectly polished material (glass, plastic)
library SOPTemplate.Library Based on surface optical properties file
plugin SOPTemplate.Plugin Custom made plug-in
texture SOPTemplate.Texture Define to activate texture - optional

SOPTemplate.Library

Field Type Label Description
sop_file_uri string Surface optical properties file, *.scattering, *.bsdf, *.brdf, *.coated, ...

SOPTemplate.MetadataEntry

Field Type Label Description
key string
value string

SOPTemplate.Mirror

Perfect specular surface

Field Type Label Description
reflectance double Reflectance, expected from 0. to 100. in %

SOPTemplate.OpticalPolished

Transparent or perfectly polished material (glass, plastic)

SOPTemplate.Plugin

Custom made plug-in

Field Type Label Description
plugin_sop_file_uri string .sop plug-in
parameters_file_uri string parameters file needed for the plug-in

SOPTemplate.Texture

Activate texture

Field Type Label Description
image SOPTemplate.Texture.Image
normal_map SOPTemplate.Texture.NormalMap

SOPTemplate.Texture.Image

Field Type Label Description
bitmap_file_uri string Bitmap
repeat_along_u bool Activate/deactivate the repeatability of the texture image on U axe.
repeat_along_v bool Activate/deactivate the repeatability of the texture image on V axe.

SOPTemplate.Texture.NormalMap

Field Type Label Description
from_image SOPTemplate.Texture.NormalMap.FromImage
from_normal_map SOPTemplate.Texture.NormalMap.FromNormalMap
roughness float
repeat_along_u bool Activate/deactivate the repeatability of the texture normal map on U axe.
repeat_along_v bool Activate/deactivate the repeatability of the texture normal map on V axe.

SOPTemplate.Texture.NormalMap.FromImage

Field Type Label Description
bitmap_file_uri string Bitmap used to build normal map.

SOPTemplate.Texture.NormalMap.FromNormalMap

Field Type Label Description
normal_map_file_uri string Normal map file.

Update_Request

Request to update a SOPTemplate in SOPTemplatesManager

Field Type Label Description
guid string Guid of the SOPTemplate to be updated
sop_template SOPTemplate SOPTemplate that will be used for the update

Update_Response

SOPTemplateActions

Actions available on a SOPTemplate

Method Name Request Type Response Type Description

SOPTemplatesManager

Manager for SOPTemplates (SOP: Surface Optical Properties)

Method Name Request Type Response Type Description
Create Create_Request Create_Response Create a SOPTemplate
Read Read_Request Read_Response Read a SOPTemplate
Update Update_Request Update_Response Update a SOPTemplate
Delete Delete_Request Delete_Response Delete a SOPTemplate
List List_Request List_Response List all SOPTemplates in manager

source/v1/source.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

Create_Request

Request to create a SourceTemplate in SourceTemplatesManager

Field Type Label Description
source_template SourceTemplate SourceTemplate containing its basic characteristics
guid string optional Optional field to specify the guid used in the database. If not set, a unique guid will be generated for that entry and sent back in the Create_Response.

Create_Response

Field Type Label Description
guid string Guid of the SourceTemplate created in SourceTemplatesManager

Delete_Request

Request to delete a SourceTemplate in SourceTemplatesManager

Field Type Label Description
guid string Guid of the SourceTemplate to be deleted

Delete_Response

GetRayFileInfo_Request

Request of GetRayFileInfo

Field Type Label Description
guid string Guid of the SourceTemplate to get information about ray file (example: flux). Only for SourceTemplate of type RayFile.

GetRayFileInfo_Response

Response of GetRayFileInfo

Field Type Label Description
flux common.v1.DataDoubles Flux of the ray file
has_spectral_data bool The ray file contains Spectrum information

List_Request

List_Response

Field Type Label Description
guids string repeated Guids of the SourceTemplates in SourceTemplatesManager

Read_Request

Request to read a SourceTemplate in SourceTemplatesManager

Field Type Label Description
guid string Guid of the SourceTemplate to be read

Read_Response

Field Type Label Description
source_template SourceTemplate SourceTemplate corresponding to the guid given in Read_Request

SourceTemplate

Source template with its basic characteristics

Field Type Label Description
name string SourceTemplate name
description string SourceTemplate description
metadata SourceTemplate.MetadataEntry repeated User defined metadata
luminaire SourceTemplate.Luminaire
surface SourceTemplate.Surface
rayfile SourceTemplate.RayFile
thermic SourceTemplate.Thermic
display SourceTemplate.Display
ambient SourceTemplate.Ambient

SourceTemplate.Ambient

Field Type Label Description
uniform_ambient SourceTemplate.Ambient.UniformAmbient sets a specific and common luminance for the entire sky without any contribution of the sun. The sun has a specific value calculated according to its position
cie_overcast SourceTemplate.Ambient.CieOvercast generates a specific distribution for the sky according to a luminance value and CIE standard overcast model
cie_general SourceTemplate.Ambient.CieGeneral generates a specific distribution for the sky according to a luminance value and sky model
natural_light SourceTemplate.Ambient.NaturalLight generates natural lighting based on a day time or night time model
us_standard SourceTemplate.Ambient.UsStandard The U.S. Standard Atmosphere Ambient Source follows a specific atmospheric model to simulate a sky radiation ranging from 280nm into ultraviolet to 4μm into infrared.
environment_map SourceTemplate.Ambient.EnvironmentMap creates a background using an image file

SourceTemplate.Ambient.CieGeneral

Field Type Label Description
luminance double Luminance in cd per squared meter
cie_type SourceTemplate.Ambient.CieGeneral.CieType sky model

SourceTemplate.Ambient.CieOvercast

Field Type Label Description
luminance double Luminance in cd per squared meter
spectrum_guid string blackbody or library spectra only

SourceTemplate.Ambient.EnvironmentMap

Field Type Label Description
luminance double Luminance in cd per squared meter
image_uri string image file or HDRI. HDRIs have relative luminance values, so the lumiance value will be applied to the (1,1,1) pixels and all other colors will be defined relatively
predefined_color_space SourceTemplate.PredefinedColorSpace pre-defined color space
user_defined_rgb_space SourceTemplate.UserDefinedRGBSpace custom RGB space with either pre-defined or custom white point

SourceTemplate.Ambient.NaturalLight

Field Type Label Description
turbidity double cloudiness of the environment. The lower the value the clearer the environment. Varies between 1.9 and 9.9
with_sky bool if false, only the sun is used in the simulation. If true, both ambient sky model and sun are used in the simulation

SourceTemplate.Ambient.UniformAmbient

Field Type Label Description
luminance double Luminance in cd per squared meter
mirrored_extent bool if true then the ambient light covers all space, if false only covers the upper half space
spectrum_guid string blackbody or library spectra only

SourceTemplate.Ambient.UsStandard

SourceTemplate.Display

Field Type Label Description
image_file_uri string png,jpeg,bmp,tiff or rgb format file uri
source_dimensions SourceTemplate.SourceDimensions horizontal and vertical dimensions (mm)
luminous_flux double luminace in cd/m2
contrast_ratio int32 optional Contrast ratio, infitine if not defined
intensity_guid string Intensity guid in intensity manager
pre_defined_color_space SourceTemplate.PredefinedColorSpace pre-defined color space
user_defined_rbg_space SourceTemplate.UserDefinedRGBSpace custom rgb color space with pre-defined or custom withe point

SourceTemplate.FromIntensityFile

Take flux from intensity file provided

SourceTemplate.FromRayFile

SourceTemplate.Luminaire

Field Type Label Description
flux_from_intensity_file SourceTemplate.FromIntensityFile Take flux from intensity file provided
luminous_flux SourceTemplate.Luminous Luminous flux in lumens, value >=0
radiant_flux SourceTemplate.Radiant Radiant flux in watts, value >=0
intensity_file_uri string IES or EULUMDAT format file uri
spectrum_guid string Spectrum guid in spectrum manager

SourceTemplate.Luminous

Field Type Label Description
luminous_value double Luminous flux in lumens

SourceTemplate.LuminousIntensity

Field Type Label Description
luminous_intensity_value double Luminous intensity in candelas

SourceTemplate.MetadataEntry

Field Type Label Description
key string
value string

SourceTemplate.PredefinedColorSpace

Field Type Label Description
color_space_type SourceTemplate.PredefinedColorSpace.ColorSpaceType pre-defined color space type

SourceTemplate.PredefinedWhitePoint

color space can be used for both ambient sources and display sources

Field Type Label Description
white_point_type SourceTemplate.PredefinedWhitePoint.WhitePointType pre-defined white point type

SourceTemplate.Radiant

Field Type Label Description
radiant_value double Radiant flux in watts

SourceTemplate.RayFile

Field Type Label Description
ray_file_uri string Rayfile format file uri (.ray or .tm25ray files expected)
flux_from_ray_file SourceTemplate.FromRayFile Take flux from ray file provided
luminous_flux SourceTemplate.Luminous Luminous flux in lumens, value >=0
radiant_flux SourceTemplate.Radiant Radiant flux in watts, value >=0
spectrum_from_ray_file SourceTemplate.RayFile.SpectrumFromRayFile Take spectrum from ray file provided
spectrum_guid string Spectrum guid in spectrum manager

SourceTemplate.RayFile.SpectrumFromRayFile

Spectrum messages

SourceTemplate.SourceDimensions

source dimensions

Field Type Label Description
x_start double (mm)
x_end double (mm)
y_start double (mm)
y_end double (mm)

SourceTemplate.Surface

Field Type Label Description
flux_from_intensity_file SourceTemplate.FromIntensityFile Take flux from intensity file provided
luminous_flux SourceTemplate.Luminous Luminous flux in lumens
radiant_flux SourceTemplate.Radiant Radiant flux in watts
luminous_intensity_flux SourceTemplate.LuminousIntensity Luminous intensity in candelas
intensity_guid string Intensity guid in intensity manager
exitance_constant SourceTemplate.Surface.ExitanceConstant Constant
exitance_variable SourceTemplate.Surface.ExitanceVariable Taken from XMP map
spectrum_from_xmp_file SourceTemplate.Surface.SpectrumFromXMPFile Take spectrum from xmp file provided
spectrum_guid string Spectrum guid in spectrum manager
timeline SourceTemplate.Surface.Timeline Define timeline parameters

SourceTemplate.Surface.ExitanceConstant

SourceTemplate.Surface.ExitanceVariable

Exitance messages

Field Type Label Description
exitance_xmp_file_uri string XMP file describing exitance, if spectral, spectrum is not needed in source definition

SourceTemplate.Surface.SpectrumFromXMPFile

Take spectrum from xmp file provided

SourceTemplate.Surface.Timeline

Define the variation of the source's power in time and represent flickering Surface source

Field Type Label Description
flux_variation_file_uri string Flux variation file, used to define the samples for one period representing the variation of the relative flux of the source with time.
relative_lag double Relative lag (percentage, default value of 0%) represents the relative time along the period when the source starts to emit light. That means the relative lag includes a temporal shift of the time period.

SourceTemplate.Thermic

Field Type Label Description
emissives_faces SourceTemplate.Thermic.EmissiveFaces black body with temperature on each face
temperature_field SourceTemplate.Thermic.TemperatureField file with meshed data and triangle temperature
intensity_guid string Intensity guid in intensity manager Lambertian or cos only

SourceTemplate.Thermic.EmissiveFaces

Field Type Label Description
temperature double the temperature in Kelvin of the blackbody (Kirchhoff's law) for every face

SourceTemplate.Thermic.TemperatureField

Field Type Label Description
temperature_field_uri string file with meshed data and temperature for each triangle
sop_guid string SOP for geometry, must have absorption, required with temperature field

SourceTemplate.UserDefinedRGBSpace

Field Type Label Description
pre_defined_white_point SourceTemplate.PredefinedWhitePoint pre-defined white point
user_defined_white_point SourceTemplate.UserDefinedWhitePoint custom Y and X white point coordinates
red_spectrum_guid string red Spectrum guid in spectrum manager
green_spectrum_guid string green Spectrum guid in spectrum manager
blue_spectrum_guid string blue Spectrum guid in spectrum manager

SourceTemplate.UserDefinedWhitePoint

Field Type Label Description
white_point double repeated X and Y coordinates of the white point.

Update_Request

Request to update a SourceTemplate in SourceTemplatesManager

Field Type Label Description
guid string Guid of the SourceTemplate to be updated
source_template SourceTemplate SourceTemplate that will be used for the update

Update_Response

SourceTemplate.Ambient.CieGeneral.CieType

Name Number Description
standard_overcast 0
overcast_steep_gradation 1
overcast_azimuthal_uniformity 2
overcast_slight_brightening 3
uniform_luminance 4
cloudy_slight_brightening 5
cloudy_nogradation_circumsolar 6
cloudy_solar_corona 7
cloudy_obscured_sun 8
cloudy_circumsolar_region 9
white_blue_distinct 10
standard_low_luminance 11
standard_polluted_atmosphere 12
cloudless_turbid_corona 13
white_blue_broad 14

SourceTemplate.PredefinedColorSpace.ColorSpaceType

Name Number Description
sRGB 0 standard and most commonly used model
AdobeRGB 1 larger gamut

SourceTemplate.PredefinedWhitePoint.WhitePointType

Name Number Description
C 0 average daylight illuminant
D50 1 natural horizon light
D65 2 standard daylight illuminant
E 3 illuminant that gives equal weight to all wavelengths

SourceTemplateActions

Actions available on a SourceTemplate

Method Name Request Type Response Type Description
GetRayFileInfo GetRayFileInfo_Request GetRayFileInfo_Response Get Flux from ray file

SourceTemplatesManager

Manager for SourceTemplates

Method Name Request Type Response Type Description
Create Create_Request Create_Response Create a SourceTemplate
Read Read_Request Read_Response Read a SourceTemplate
Update Update_Request Update_Response Update a SourceTemplate
Delete Delete_Request Delete_Response Delete a SourceTemplate
List List_Request List_Response List all SourceTemplates in manager

spectrum/v1/spectrum.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

Create_Request

Request to create a Spectrum in SpectrumsManager

Field Type Label Description
spectrum Spectrum Spectrum containing its basic characteristics
guid string optional Optional field to specify the guid used in the database. If not set, a unique guid will be generated for that entry and sent back in the Create_Response.

Create_Response

Field Type Label Description
guid string Guid of the Spectrum created in SpectrumsManager

Delete_Request

Request to delete a Spectrum in SpectrumsManager

Field Type Label Description
guid string Guid of the Spectrum to be deleted

Delete_Response

List_Request

List_Response

Field Type Label Description
guids string repeated Guids of the Spectrums in SpectrumsManager

Read_Request

Request to read a Spectrum in SpectrumsManager

Field Type Label Description
guid string Guid of the Spectrum to be read

Read_Response

Field Type Label Description
spectrum Spectrum Spectrum corresponding to the guid given in Read_Request

Spectrum

Spectrum with its basic characteristics

Field Type Label Description
name string Spectrum name
description string Spectrum description
metadata Spectrum.MetadataEntry repeated User defined metadata
monochromatic Spectrum.Monochromatic
blackbody Spectrum.BlackBody
sampled Spectrum.Sampled
library Spectrum.Library
predefined Spectrum.Predefined

Spectrum.BlackBody

Field Type Label Description
temperature double Temperature of the blackbody, in K

Spectrum.DaylightFluorescent

Spectrum.Halogen

Spectrum.HighPressureSodium

Spectrum.Incandescent

Spectrum.Library

Field Type Label Description
file_uri string uri of the spectrum file

Spectrum.MetadataEntry

Field Type Label Description
key string
value string

Spectrum.MetalHalide

Spectrum.Monochromatic

Field Type Label Description
wavelength double Wavelength of the monochromatic spectrum, in nm

Spectrum.Predefined

Predefined sampled spectrums

Field Type Label Description
incandescent Spectrum.Incandescent
warmwhitefluorescent Spectrum.WarmWhiteFluorescent
daylightfluorescent Spectrum.DaylightFluorescent
whiteLED Spectrum.WhiteLED
halogen Spectrum.Halogen
metalhalide Spectrum.MetalHalide
highpressuresodium Spectrum.HighPressureSodium

Spectrum.Sampled

Field Type Label Description
wavelengths double repeated List of wavelengths, in nm
values double repeated List of values, expected from 0. to 100. in %

Spectrum.WarmWhiteFluorescent

Spectrum.WhiteLED

Update_Request

Request to update a Spectrum in SpectrumsManager

Field Type Label Description
guid string Guid of the Spectrum to be updated
spectrum Spectrum Spectrum that will be used for the update

Update_Response

SpectrumsManager

Method Name Request Type Response Type Description
Create Create_Request Create_Response Create a Spectrum
Read Read_Request Read_Response Read a Spectrum
Update Update_Request Update_Response Update a Spectrum
Delete Delete_Request Delete_Response Delete a Spectrum
List List_Request List_Response List all Spectrums in manager

vop/v1/vop.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

Create_Request

Request to create a VOPTemplate in VOPTemplatesManager

Field Type Label Description
vop_template VOPTemplate VOPTemplate containing its basic characteristics
guid string optional Optional field to specify the guid used in the database. If not set, a unique guid will be generated for that entry and sent back in the Create_Response.

Create_Response

Field Type Label Description
guid string Guid of the VOPTemplate created in VOPTemplatesManager

Delete_Request

Request to delete a VOPTemplate in VOPTemplatesManager

Field Type Label Description
guid string Guid of the VOPTemplate to be deleted

Delete_Response

List_Request

List_Response

Field Type Label Description
guids string repeated Guids of the VOPTemplates in VOPTemplatesManager

Read_Request

Request to read a VOPTemplate in VOPTemplatesManager

Field Type Label Description
guid string Guid of the VOPTemplate to be read

Read_Response

Field Type Label Description
vop_template VOPTemplate VOPTemplate corresponding to the guid given in Read_Request

Update_Request

Request to update a VOPTemplate in VOPTemplatesManager

Field Type Label Description
guid string Guid of the VOPTemplate to be updated
vop_template VOPTemplate VOPTemplate that will be used for the update

Update_Response

VOPTemplate

VOP: Volume Optical Properties Defines the behavior of light rays when they are propagated in a body.

Field Type Label Description
name string VOPTemplate name
description string VOPTemplate description
metadata VOPTemplate.MetadataEntry repeated User defined metadatas
opaque VOPTemplate.Opaque Non-transparent material
optic VOPTemplate.Optic Transparent colorless material without bulk scattering
library VOPTemplate.Library Based on *.material file
non_homogeneous VOPTemplate.NonHomogeneous Material with non-homogeneous refractive index

VOPTemplate.Library

Field Type Label Description
material_file_uri string .material file

VOPTemplate.MetadataEntry

Field Type Label Description
key string
value string

VOPTemplate.NonHomogeneous

Material with non-homogeneous refractive index

Field Type Label Description
gradedmaterial_file_uri string .gradedmaterial file that describes the spectral variations of refractive index and absorption with respect to position in space

VOPTemplate.Opaque

Non-transparent material

VOPTemplate.Optic

Transparent colorless material without bulk scattering

Field Type Label Description
index double Refractive index
absorption double
constringence double optional Abbe number

VOPTemplateActions

Actions available on a VOPTemplate

Method Name Request Type Response Type Description

VOPTemplatesManager

Manager for VOPTemplates (VOP: Volume Optical Properties)

Method Name Request Type Response Type Description
Create Create_Request Create_Response Create a VOPTemplate
Read Read_Request Read_Response Read a VOPTemplate
Update Update_Request Update_Response Update a VOPTemplate
Delete Delete_Request Delete_Response Delete a VOPTemplate
List List_Request List_Response List all VOPTemplates in manager

xmp/v1/xmp_file.proto

(c) 2026 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

Coordinate2d

Field Type Label Description
pixel_x uint32
pixel_y uint32

FileName

Field Type Label Description
file_name string .xmp

Pixel

Field Type Label Description
nb_pixel uint32

Value

Field Type Label Description
value float

XmpFileService_Mono

service to manage xmp file

Method Name Request Type Response Type Description
CreateXMPFileInfo FileName .google.protobuf.Empty Create Xmp file Info @param[in] FileName The Path to the Xmp file.
BuildMapRelativeStandardError .google.protobuf.Empty .google.protobuf.Empty Build Relative Standard Error accessor Xmp file
GetValueRelativeStandardError Coordinate2d Value Get Value Relative Standard Error file
GetNbPixelXRelativeStandardError .google.protobuf.Empty Pixel Get Nb pixel X Relative Standard Error file
GetNbPixelYRelativeStandardError .google.protobuf.Empty Pixel Get Nb pixel Y Relative Standard Error file
ExportXmpFileRelativeStandardError FileName .google.protobuf.Empty Export Xmp File Relative Standard Error

Scalar Value Types

.proto Type Notes C++ Java Python Go C# PHP Ruby
double double double float float64 double float Float
float float float float float32 float float Float
int32 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. int32 int int int32 int integer Bignum or Fixnum (as required)
int64 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. int64 long int/long int64 long integer/string Bignum
uint32 Uses variable-length encoding. uint32 int int/long uint32 uint integer Bignum or Fixnum (as required)
uint64 Uses variable-length encoding. uint64 long int/long uint64 ulong integer/string Bignum or Fixnum (as required)
sint32 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. int32 int int int32 int integer Bignum or Fixnum (as required)
sint64 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. int64 long int/long int64 long integer/string Bignum
fixed32 Always four bytes. More efficient than uint32 if values are often greater than 2^28. uint32 int int uint32 uint integer Bignum or Fixnum (as required)
fixed64 Always eight bytes. More efficient than uint64 if values are often greater than 2^56. uint64 long int/long uint64 ulong integer/string Bignum
sfixed32 Always four bytes. int32 int int int32 int integer Bignum or Fixnum (as required)
sfixed64 Always eight bytes. int64 long int/long int64 long integer/string Bignum
bool bool boolean boolean bool bool boolean TrueClass/FalseClass
string A string must always contain UTF-8 encoded or 7-bit ASCII text. string String str/unicode string string string String (UTF-8)
bytes May contain any arbitrary sequence of bytes. string ByteString str []byte ByteString string String (ASCII-8BIT)

Connect with Ansys