Skip to content

Commit b1c2b43

Browse files
committed
Changes in osi_common reversed and new structure in osi_object to specify emitting objects.
Signed-off-by: @lukas.elster <lukas.elster@tu-darmstadt.de>
1 parent 80f3220 commit b1c2b43

File tree

2 files changed

+34
-83
lines changed

2 files changed

+34
-83
lines changed

osi_common.proto

Lines changed: 0 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -516,77 +516,4 @@ message WavelengthData
516516
// \note This defines the number of wavelengths to be computed during simulation, not to be confused with samples_per_pixel.
517517
//
518518
optional double samples_number = 3;
519-
}
520-
521-
//
522-
// \brief Distribution of data points and data values
523-
//
524-
// Defines the breakpoints of the corresponding distribution and the corresponding distribution values.
525-
//
526-
message DistributionData
527-
{
528-
// Defines the type of the breakpoints for the distribution function.
529-
//
530-
optional Breakpoints breakpoints = 1;
531-
532-
// Defines the value of breakpoints of the distribution function for continuous or not equally distributed cases.
533-
//
534-
repeated double points = 2;
535-
536-
// Defines the start value, end value and the sample number if distribution has equally discretized breakpoints.
537-
// In case of BREAKPOINTS_SPHERICAL the first one is azimuth and the second is elevation direction.
538-
// In case of BREAKPOINTS_RECTANGULAR the first one is x- and the second is y-direction.
539-
//
540-
repeated double WaveLengthData = 3;
541-
542-
// Defines the type of the data distribution.
543-
//
544-
optional Distribution distribution = 4;
545-
546-
// Defines the normalized value of the distribution.
547-
// In case of DISTRIBUTION_EQUAL the value of all points is equal to the double data.
548-
// In case of DISTRIBUTION_GAUSSIAN there has to be two values in the following order:
549-
// expected value, variance
550-
// If the type is DISTRIBUTION_CUSTOM data corresponds to a Lookup-Table with points
551-
// defined via the breakpoints.
552-
// The maximum value of the distribution is defined in the osi message, in which this
553-
// message is used.
554-
//
555-
// Unit: %
556-
//
557-
repeated double data = 5;
558-
559-
// Definition of distribution types. The values of the data distribution is defined in the field data.
560-
//
561-
enum Breakpoints
562-
{
563-
// The breakpoints of the distribution is user-defined (e.g. breakpoints Lookup-Table).
564-
//
565-
BREAKPOINTS_CUSTOM = 0;
566-
567-
// The breakpoints of the distribution are in azimuth and elevation (spherical shape).
568-
//
569-
BREAKPOINTS_SPHERICAL = 1;
570-
571-
// The breakpoints of the distribution are in x- and y-coordinates (rectangular shape).
572-
//
573-
BREAKPOINTS_RECTANGULAR = 2;
574-
}
575-
576-
// Definition of distribution types. The values of the data distribution is defined in the field data.
577-
//
578-
enum Distribution
579-
{
580-
// The distribution corresponds to a user-defined distribution (e.g. Lookup-Table).
581-
//
582-
DISTRIBUTION_CUSTOM = 0;
583-
584-
// The distribution corresponds to an equal distribution.
585-
//
586-
DISTRIBUTION_EQUAL = 1;
587-
588-
// The distribution corresponds to a Gaussian distribution.
589-
//
590-
DISTRIBUTION_GAUSSIAN = 2;
591-
}
592519
}

osi_object.proto

Lines changed: 34 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -275,30 +275,54 @@ message StationaryObject
275275
}
276276

277277
//
278-
// Attributes of type emitting structure
278+
// \brief Attributes of type emitting structure
279279
//
280280
message EmittingStructureAttribute
281281
{
282-
// In use-cases where a spectral ray-tracer is used, this message
283-
// determines the range of the wavelength and its desired number
284-
// of samples.
282+
// This message determines the range of the wavelength and its
283+
// desired number of samples.
285284
//
286285
repeated WavelengthData wavelength_data = 1;
287286

288287
// Original intensities of emitted electromagnetic wave referred to a discrete
289-
// wavelength defined in WavelengthData. This maximum value is weighted based on the DistributionData.
288+
// wavelength defined in WavelengthData. This maximum value is weighted based on the IntensityDistribution.
290289
//
291290
// Unit: W/m^2
292291
//
293-
// \note The size of the message has to be equal to the the size of WavelengthData samples_number
292+
// \note max_intensity_per_wavelength.size() = WavelengthData.samples_number.size()
294293
//
295-
repeated double intensity_per_wavelength = 2;
294+
repeated double max_intensity_per_wavelength = 2;
296295

297-
// Intensities of emitted electromagnetic wave.
296+
// Distribution of the emitted electromagnetic wave's intensity based on the intensity_per_wavelength as
297+
// maximum value.
298298
//
299-
// Unit: %
299+
repeated IntensityDistribution emitted_intensity_distribution = 3;
300+
301+
//
302+
// \brief Definition of a intensity distribution with a horizontal and a vertical angle
303+
// and the corresponding intensity
300304
//
301-
repeated DistributionData EDF = 4;
305+
message IntensityDistribution
306+
{
307+
// Horizontal deflection (azimuth) of emission in emitting object
308+
// coordinates.
309+
//
310+
// Unit: rad
311+
optional double horizontal_angle = 1;
312+
313+
// Vertical deflection (elevation) of emission in emitting object
314+
// coordinates.
315+
//
316+
// Unit: rad
317+
optional double vertical_angle = 2;
318+
319+
// Emitted intensity of emitting object at this point for one specific wavelength.
320+
// The value corresponds to the intensity defined in max_intensity_per_wavelength.
321+
//
322+
// Unit: dB
323+
//
324+
optional double intensity = 3;
325+
}
302326
}
303327
}
304328
}

0 commit comments

Comments
 (0)