opynsim
Unofficial C++ Documentation
Loading...
Searching...
No Matches
libopynsim
solvers
model_warper
all_scaling_step_types.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <
libopynsim/solvers/model_warper/manually_scale_body_segments_scaling_step.h
>
4
#include <
libopynsim/solvers/model_warper/model_mass_to_subject_mass_scaling_step.h
>
5
#include <
libopynsim/solvers/model_warper/recalculate_wrap_cylinder_radius_from_station_scaling_step.h
>
6
#include <
libopynsim/solvers/model_warper/recalculate_wrap_cylinder_xyz_body_rotation_from_station_scaling_step.h
>
7
#include <
libopynsim/solvers/model_warper/recalculate_wrap_ellipsoid_dimensions_from_station_scaling_step.h
>
8
#include <
libopynsim/solvers/model_warper/thin_plate_spline_body_center_of_mass_scaling_step.h
>
9
#include <
libopynsim/solvers/model_warper/thin_plate_spline_mesh_substitution_scaling_step.h
>
10
#include <
libopynsim/solvers/model_warper/thin_plate_spline_meshes_scaling_step.h
>
11
#include <
libopynsim/solvers/model_warper/thin_plate_spline_offset_frame_translation_scaling_step.h
>
12
#include <
libopynsim/solvers/model_warper/thin_plate_spline_path_points_scaling_step.h
>
13
#include <
libopynsim/solvers/model_warper/thin_plate_spline_stations_scaling_step.h
>
14
#include <
libopynsim/solvers/model_warper/thin_plate_spline_wrap_cylinder_scaling_step.h
>
15
16
#include <
liboscar/utilities/typelist.h
>
17
18
#include <array>
19
#include <memory>
20
21
namespace
opyn
22
{
23
// Compile-time `Typelist` containing all `ScalingStep`s that this UI handles.
24
using
AllScalingStepTypes
=
osc::Typelist
<
25
ThinPlateSplineMeshesScalingStep
,
26
ThinPlateSplineStationsScalingStep
,
27
ThinPlateSplinePathPointsScalingStep
,
28
ThinPlateSplineBodyCenterOfMassScalingStep
,
29
ThinPlateSplineOffsetFrameTranslationScalingStep
,
30
ThinPlateSplineMeshSubstitutionScalingStep
,
31
ThinPlateSplineWrapCylinderScalingStep
,
32
ModelMassToSubjectMassScalingStep
,
33
ManuallyScaleBodySegmentsScalingStep
,
34
RecalculateWrapCylinderRadiusFromStationScalingStep
,
35
RecalculateWrapEllipsoidDimensionsFromStationScalingStep
,
36
RecalculateWrapCylinderXYZBodyRotationFromStationScalingStep
37
>;
38
39
// Returns a list of `ScalingStep` prototypes, so that downstream code is able to present
40
// them as available options etc.
41
const
auto
&
getScalingStepPrototypes
()
42
{
43
static
const
auto
s_ScalingStepPrototypes = []<
typename
... TScalingStep>(
osc::Typelist
<TScalingStep...>)
44
{
45
return
std::to_array<std::unique_ptr<ScalingStep>>({
46
std::make_unique<TScalingStep>()...
47
});
48
}(
AllScalingStepTypes
{});
49
50
return
s_ScalingStepPrototypes;
51
}
52
}
opyn::ManuallyScaleBodySegmentsScalingStep
Definition
manually_scale_body_segments_scaling_step.h:26
opyn::ModelMassToSubjectMassScalingStep
Definition
model_mass_to_subject_mass_scaling_step.h:21
opyn::RecalculateWrapCylinderRadiusFromStationScalingStep
Definition
recalculate_wrap_cylinder_radius_from_station_scaling_step.h:25
opyn::RecalculateWrapCylinderXYZBodyRotationFromStationScalingStep
Definition
recalculate_wrap_cylinder_xyz_body_rotation_from_station_scaling_step.h:28
opyn::RecalculateWrapEllipsoidDimensionsFromStationScalingStep
Definition
recalculate_wrap_ellipsoid_dimensions_from_station_scaling_step.h:24
opyn::ThinPlateSplineBodyCenterOfMassScalingStep
Definition
thin_plate_spline_body_center_of_mass_scaling_step.h:24
opyn::ThinPlateSplineMeshSubstitutionScalingStep
Definition
thin_plate_spline_mesh_substitution_scaling_step.h:26
opyn::ThinPlateSplineMeshesScalingStep
Definition
thin_plate_spline_meshes_scaling_step.h:24
opyn::ThinPlateSplineOffsetFrameTranslationScalingStep
Definition
thin_plate_spline_offset_frame_translation_scaling_step.h:24
opyn::ThinPlateSplinePathPointsScalingStep
Definition
thin_plate_spline_path_points_scaling_step.h:22
opyn::ThinPlateSplineStationsScalingStep
Definition
thin_plate_spline_stations_scaling_step.h:23
opyn::ThinPlateSplineWrapCylinderScalingStep
Definition
thin_plate_spline_wrap_cylinder_scaling_step.h:25
manually_scale_body_segments_scaling_step.h
model_mass_to_subject_mass_scaling_step.h
opyn
Definition
component_registry.h:14
opyn::getScalingStepPrototypes
const auto & getScalingStepPrototypes()
Definition
all_scaling_step_types.h:41
recalculate_wrap_cylinder_radius_from_station_scaling_step.h
recalculate_wrap_cylinder_xyz_body_rotation_from_station_scaling_step.h
recalculate_wrap_ellipsoid_dimensions_from_station_scaling_step.h
osc::Typelist
Definition
typelist.h:15
thin_plate_spline_body_center_of_mass_scaling_step.h
thin_plate_spline_mesh_substitution_scaling_step.h
thin_plate_spline_meshes_scaling_step.h
thin_plate_spline_offset_frame_translation_scaling_step.h
thin_plate_spline_path_points_scaling_step.h
thin_plate_spline_stations_scaling_step.h
thin_plate_spline_wrap_cylinder_scaling_step.h
typelist.h
Generated by
1.9.8