Skip to content

main

MayaSettings

Bases: BaseSettingsModel

Maya Project Settings.

Source code in server/settings/main.py
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
class MayaSettings(BaseSettingsModel):
    """Maya Project Settings."""

    use_cbid_workflow: bool = SettingsField(
        True, title="Use cbId workflow",
        description=(
            "When enabled, a per node `cbId` identifier will be created and "
            "validated for many product types. This is then used for look "
            "publishing and many others. By disabling this, the `cbId` "
            "attribute will still be created on scene save but it will not "
            "be validated."))

    open_workfile_post_initialization: bool = SettingsField(
        True, title="Open Workfile Post Initialization")
    explicit_plugins_loading: ExplicitPluginsLoadingModel = SettingsField(
        default_factory=ExplicitPluginsLoadingModel,
        title="Explicit Plugins Loading")
    imageio: ImageIOSettings = SettingsField(
        default_factory=ImageIOSettings, title="Color Management (imageio)")
    mel_workspace: str = SettingsField(
        title="Maya MEL Workspace", widget="textarea"
    )
    ext_mapping: list[ExtMappingItemModel] = SettingsField(
        default_factory=list, title="Extension Mapping")
    scene_units: UnitScaleModel = SettingsField(
        default_factory=UnitScaleModel,
        title="Scene Units",
        description="Set preferred Maya Scene Units"
    )
    dirmap: DirmapModel = SettingsField(
        default_factory=DirmapModel, title="Maya dirmap Settings")
    include_handles: IncludeHandlesModel = SettingsField(
        default_factory=IncludeHandlesModel,
        title="Include/Exclude Handles in default playback & render range"
    )
    scriptsmenu: ScriptsmenuModel = SettingsField(
        default_factory=ScriptsmenuModel,
        title="Scriptsmenu Settings"
    )
    render_settings: RenderSettingsModel = SettingsField(
        default_factory=RenderSettingsModel, title="Render Settings")
    create: CreatorsModel = SettingsField(
        default_factory=CreatorsModel, title="Creators")
    publish: PublishersModel = SettingsField(
        default_factory=PublishersModel, title="Publishers")
    load: LoadersModel = SettingsField(
        default_factory=LoadersModel, title="Loaders")
    workfile_build: ProfilesModel = SettingsField(
        default_factory=ProfilesModel, title="Workfile Build Settings")
    templated_workfile_build: TemplatedProfilesModel = SettingsField(
        default_factory=TemplatedProfilesModel,
        title="Templated Workfile Build Settings")

    @validator("ext_mapping")
    def validate_unique_outputs(cls, value):
        ensure_unique_names(value)
        return value

angular_unit_enum()

Get angular units enumerator.

Source code in server/settings/main.py
38
39
40
41
42
43
def angular_unit_enum():
    """Get angular units enumerator."""
    return [
        {"label": "degree", "value": "deg"},
        {"label": "radian", "value": "rad"},
    ]

linear_unit_enum()

Get linear units enumerator.

Source code in server/settings/main.py
24
25
26
27
28
29
30
31
32
33
34
35
def linear_unit_enum():
    """Get linear units enumerator."""
    return [
        {"label": "millimeter", "value": "mm"},
        {"label": "centimeter", "value": "cm"},
        {"label": "meter", "value": "m"},
        {"label": "kilometer", "value": "km"},
        {"label": "inch", "value": "in"},
        {"label": "foot", "value": "ft"},
        {"label": "yard", "value": "yd"},
        {"label": "mile", "value": "mi"}
    ]