Files
wg_cpso/CPSO/Forms/44_SurfaceInteraction/ViewFriction.cs

59 lines
2.2 KiB
C#
Raw Normal View History

2026-03-25 18:20:24 +08:00
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using DynamicTypeDescriptor;
using System.ComponentModel;
using CaeGlobals;
namespace CPSO.PropertyViews
{
[Serializable]
public class ViewFriction : ViewSurfaceInteractionProperty
{
// Variables
private CaeModel.Friction _friction;
// Properties
[Browsable(false)]
public override string Name
{
get { return "Friction"; }
}
//
[Category("Data")]
[OrderedDisplayName(0, 10, "Friction coefficient")]
[Description("The friction coefficient (µ > 0).")]
[TypeConverter(typeof(StringDoubleConverter))]
public double Coefficient { get { return _friction.Coefficient; } set { _friction.Coefficient = value; } }
//
[Category("Data")]
[OrderedDisplayName(1, 10, "Stick slope")]
[Description("The ratio between the shear stress and the relative tangential displacement in contact (λ > 0).")]
[TypeConverter(typeof(StringForcePerVolumeDefaultConverter))]
public double StickSlope { get { return _friction.StickSlope; } set { _friction.StickSlope = value; } }
//
[Browsable(false)]
public override CaeModel.SurfaceInteractionProperty Base
{
get { return _friction; }
}
// Constructors
public ViewFriction(CaeModel.Friction friction)
{
_friction = friction;
//
base.DynamicCustomTypeDescriptor = ProviderInstaller.Install(this);
//
StringForcePerVolumeDefaultConverter.SetInitialValue = CaeModel.Friction.InitialStickSlope;
}
// Methods
}
}