using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.Input; namespace ShrlAlgoToolkit.RevitAddins.RvIndependent.MetroTunnel { public partial class MetroTunnelViewModel : ObservableObject { [ObservableProperty] public partial int AssembleSelectedIndex { get; set; } /// /// 后环邻接块 /// [ObservableProperty] public partial double BackTubeAngle { get; set; } = 50.0; /// /// 前环邻接块跨度 /// [ObservableProperty] public partial double FrontTubeAngle { get; set; } = 60; [ObservableProperty] public partial double StaggerAngle { get; set; } = 10; /// /// 标准块 /// [ObservableProperty] public partial double StandardTubeAngle { get; set; } = 67.5; [ObservableProperty] public partial double StartAngle { get; set; } = 10.0; [ObservableProperty] public partial double TubeOuterDiameter { get; set; } = 6000; [ObservableProperty] public partial double TubeThickness { get; set; } = 300.0; [ObservableProperty] public partial double TubeWidth { get; set; } = 2000.0; [RelayCommand] private static void Confirm(object obj) { if (obj is System.Windows.Window window) { window.DialogResult = true; } } } }