You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

158 lines
4.2 KiB
C#

1 month ago
using GeoSigma.SigmaDrawerStyle;
using SigmaDrawerStyle;
using System.ComponentModel;
using System.Xml.Serialization;
namespace GeoSigma.SigmaDrawerElement
{
#pragma warning disable SA1402 // File may only contain a single type
#pragma warning disable SA1600 // Elements should be documented
#pragma warning disable SA1649 // File name should match first type name
/// <summary>
/// 射孔道
/// </summary>
[XmlRoot("Pcg")]
[TypeConverter(typeof(PropertySorter))]
public class WellShotInnerTrack :baseInTrackObj
{
private const string ShotTrackCategory = "\t\t设置子对象";
[XmlIgnore]
[Category(ShotTrackCategory)]
[DisplayName("顶深")]
[PropertyOrder(0)]
public double TopDepth
{
get => Perforation.Top;
set => Perforation.Top = value;
}
[XmlIgnore]
[Category(ShotTrackCategory)]
[DisplayName("底深")]
[PropertyOrder(1)]
public double BottomDepth
{
get => Perforation.Bottom;
set => Perforation.Bottom = value;
}
[XmlIgnore]
[Category(ShotTrackCategory)]
[DisplayName("层名")]
[PropertyOrder(2)]
public string LayerName
{
get => Perforation.Name;
set => Perforation.Name = value;
}
[XmlIgnore]
[Category(ShotTrackCategory)]
[DisplayName("射孔方式")]
[PropertyOrder(3)]
public string ShotType
{
get => Perforation.Method;
set => Perforation.Method = value;
}
[XmlAttribute]
[Browsable(false)]
public int Version { get; set; }
[XmlElement("Perforation")]
[Browsable(false)]
public Perforation Perforation { get; set; }
}
public class Perforation
{
[XmlAttribute("Name")]
public string Name { get; set; }
[XmlAttribute("Top")]
public double Top { get; set; }
[XmlAttribute("Bottom")]
public double Bottom { get; set; }
[XmlAttribute("BackColor")]
public string BackColor { get; set; }
[XmlAttribute("Align")]
public string Align { get; set; }
[XmlAttribute("Bullet")]
public string Bullet { get; set; }
[XmlAttribute("Date")]
public string Date { get; set; }
[XmlAttribute("Density")]
public double Density { get; set; }
[XmlAttribute("FluidDensity")]
public double FluidDensity { get; set; }
[XmlAttribute("FluidDepth")]
public double FluidDepth { get; set; }
[XmlAttribute("FluidType")]
public string FluidType { get; set; }
[XmlAttribute("Gun")]
public string Gun { get; set; }
[XmlAttribute("Method")]
public string Method { get; set; }
[XmlAttribute("LayerType")]
public string LayerType { get; set; }
[XmlElement("Font")]
public WellFontEx Font { get; set; }
[XmlElement("RenderStyle")]
public WellRenderStyle RenderStyle { get; set; }
}
public class WellShotInnerRenderStyle
{
[XmlAttribute("Type")]
public string Type { get; set; }
[XmlAttribute("LeftSpace")]
public double LeftSpace { get; set; }
[XmlAttribute("RightSpace")]
public double RightSpace { get; set; }
[XmlAttribute("ShowDepthText")]
public bool ShowDepthText { get; set; }
[XmlAttribute("FrameVertLinePos")]
public double FrameVertLinePos { get; set; }
[XmlAttribute("PatternBorderColor")]
public string PatternBorderColor { get; set; }
[XmlAttribute("PatternFillColor")]
public string PatternFillColor { get; set; }
[XmlAttribute("PatternShape")]
public string PatternShape { get; set; }
[XmlAttribute("Style")]
public string Style { get; set; }
[XmlAttribute("TextLineAlign")]
public string TextLineAlign { get; set; }
}
#pragma warning restore SA1649 // File name should match first type name
#pragma warning restore SA1600 // Elements should be documented
#pragma warning restore SA1402 // File may only contain a single type
}