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.

118 lines
3.2 KiB
C#

using FreeSql.DataAnnotations;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Txgy.EWS.Client.Entity;
using Txgy.Microseismic.BaseLib.Entitys;
namespace Txgy.EWS.Client.Models
{
public class GridItemEventResult
{
public bool IsSelected { get; set; }
[JsonProperty, Column(DbType = "varchar(254)")]
public string EventTime { get; set; }
[JsonProperty, Column(DbType = "int")]
public int LocSta { get; set; }
[JsonProperty]
public double ML { get; set; }
[JsonProperty, Column(DbType = "int")]
public int MLSta { get; set; }
[JsonProperty, Column(DbType = "varchar(254)")]
public string OriginTime { get; set; }
[JsonProperty, Column(DbType = "int")]
public int EventID { get; set; }
[JsonProperty]
public double RMS { get; set; }
[JsonProperty, Column(DbType = "int")]
public int WorkAreaID { get; set; }
[JsonProperty]
public double X { get; set; }
[JsonProperty]
public double Y { get; set; }
[JsonProperty]
public double Z { get; set; }
public double Energy { get; set; }
/// <summary>
/// 震源性质:1走滑2剪切3张性4未识别
/// </summary>
public int SourceChara { get; set; }
/// <summary>
/// 震源机制方向
/// </summary>
public double Direction { get; set; }
/// <summary>
/// 应力降
/// </summary>
public double StressDrop { get; set; }
/// <summary>
/// 主频
/// </summary>
public int DominantFreq { get; set; }
/// <summary>
/// 矩震级
/// </summary>
public double MW { get; set; }
public void SetEnergy()
{
Energy = Math.Round(63000.0 * Math.Pow(10, 1.47 * ML), 2);
}
public GridItemEventResult(RemoteRealtimeResultEntity re,bool transpose)
{
IsSelected = true;
WorkAreaID = re.WorkAreaID;
EventID = re.RTEventID;
EventTime = re.EventTime;
OriginTime = re.OriginTime;
RMS = re.RMS;
if (transpose)
{
X = re.Y;
Y = re.X;
}
else
{
X = re.X;
Y = re.Y;
}
Z = re.Z;
ML = re.ML;
LocSta = re.LocSta;
MLSta = re.MLSta;
Energy = re.Energy;
//SetEnergy();
}
public GridItemEventResult(MmEventEntity mee)
{
IsSelected = true;
WorkAreaID = mee.WorkAreaID;
EventID = mee.EventID;
EventTime = mee.EventTimeStr;
OriginTime = mee.OriginTime;
RMS = mee.RMS;
X = mee.X; Y = mee.Y; Z = mee.Z;
ML = mee.ML;
LocSta = mee.LocSta;
MLSta = mee.MLSta;
Energy = mee.Energy;
//SetEnergy();
}
}
}