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.
kev/Drawer/GVision/TestMicroStructure/StructureCalculateParameter.cs

71 lines
2.0 KiB
C#

1 month ago

using System;
using System.Runtime.InteropServices;
[Flags]
public enum StructureType
{
High = 1 << 0,
Low = 1 << 1,
FaultHigh = 1 << 2,
FaultLow = 1 << 3,
NoseHigh = 1 << 4,
NoseLow = 1 << 5,
StructrueAll = High | Low | FaultHigh | FaultLow | NoseHigh | NoseLow,
StructrueNone = 0,
}
[StructLayout(LayoutKind.Sequential, Pack = 0)]
public struct StructureCalculateParameter
{
// 最小面积
[MarshalAs(UnmanagedType.R8)]
public double m_dMinimumArea;
// Limit Number
[MarshalAs(UnmanagedType.I4)]
public System.Int32 m_nLimitNum;
// Fault Filter
[MarshalAs(UnmanagedType.U1)]
public bool m_bFaultFilter;
// 断层闭合距离
[MarshalAs(UnmanagedType.R8)]
public double m_dFaultCloseDis;
// 最大闭合距离
[MarshalAs(UnmanagedType.R8)]
public double m_dCloseDistance;
// 断层延伸长度
[MarshalAs(UnmanagedType.R8)]
public double m_dExtendDis;
// Offset Distance
[MarshalAs(UnmanagedType.R8)]
public double m_dOffsetDis;
// 最小角度
[MarshalAs(UnmanagedType.R8)]
public double m_dMiniAngle;
// Redundant
[MarshalAs(UnmanagedType.R8)]
public double m_dRedundant;
// Radius
[MarshalAs(UnmanagedType.R8)]
public double m_dRadius;
[MarshalAs(UnmanagedType.U1)]
public bool m_bSmooth; // 光滑半径
[MarshalAs(UnmanagedType.R8)]
public double m_dZoomin; // 放大系数
[MarshalAs(UnmanagedType.R8)]
public double m_dUnitSacle; // 鼻状隆起和沟槽重合比
[MarshalAs(UnmanagedType.R8)]
public double m_minDepth; // 最小幅度
[MarshalAs(UnmanagedType.R8)]
public double m_maxDepth; // 最大幅度
/// <summary>
/// The shape types
/// </summary>
[MarshalAs(UnmanagedType.I4)]
public StructureType m_ShapeTypes;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)]
public string CurveLayer;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)]
public string FaultageLayer;
};