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/BatchCreateMap/ModelCreateCurvature.cs

77 lines
4.5 KiB
C#

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;
namespace Construction.BatchCreateMap
{
public class ModelCreateCurvature
{
//#if DEBUG
// //const string DLL_FILE = @"C:\GeoIntelligent\Code\dirgdf\bin\Debug\WellCalibrate.dll";
// public const string DLL_FILE = "ModelCreateIDW.dll";
//#else
// public const string DLL_FILE = "ModelCreateIDW.dll";
//#endif
// [DllImport(DLL_FILE, EntryPoint = "IDWModelCreate", ExactSpelling = false, CallingConvention = CallingConvention.Cdecl)]
// public static extern void IDWModelCreate(string xyzFile, string borderFile, string faultFile, string resultFile,
// int XCount, double smoothFactor, int smoothTimes, IntPtr callback,
// int insertTimes /*= 0*/, double contourStep, int contourMarkSpace
// , double xMin = -1, double yMin = -1, double xMax = -1, double yMax = -1);
const string SURFACEGRIDLIB = @"SurfaceGrid.dll";
/**
*
* \param sourcePointFile 离散点源数据文件(xyz 格式)
* \param faultFile 断层fault不存在z数据区域数据文件支持 bln文件、dfd文件
*
* \param outputFile 迭代输出结果文件
* \return
*/
[DllImport(SURFACEGRIDLIB, EntryPoint = "BuildMinCurvatureInterpolationGrid", CharSet = CharSet.Unicode, ExactSpelling = false, CallingConvention = CallingConvention.Cdecl)]
public static extern bool BuildMinCurvatureInterpolationGrid(string sourcePointFile, string faultFile, string outputFile);
/**
*
* \param sourcePointFile 离散点源数据文件(xyz 格式)
* \param faultFile 断层fault不存在z数据区域数据文件支持 bln文件、dfd文件
*
* \param xNodeCount 插值网格x坐标上网格节点数默认101个100个网格
* \param yNodeCount 插值网格y坐标上网格节点数默认101个100个网格
*
* \param faultEdgeLevel 添加断层数据标记位到输出文件中添加标记位有不同的等级0~4, 默认为不添加
* \param outputFile 迭代输出结果文件
* \return
*/
[DllImport(SURFACEGRIDLIB, EntryPoint = "BuildMinCurvatureInterpolationGrid2", CharSet = CharSet.Unicode, ExactSpelling = false, CallingConvention = CallingConvention.Cdecl)]
public static extern bool BuildMinCurvatureInterpolationGrid2(string sourcePointFile, string faultFile, ulong xNodeCount, ulong yNodeCount, int faultEdgeLevel, string outputFile);
/**
* \param sourcePointFile 离散点源数据文件(xyz 格式)
* \param faultFile 断层fault不存在z数据区域数据文件支持 bln文件、dfd文件
*
* \param xNodeCount 插值网格x坐标上网格节点数默认101个100个网格
* \param yNodeCount 插值网格y坐标上网格节点数默认101个100个网格
* \param maxIteration 最大迭代次数默认20000次
* \param residual 迭代容忍度指标, 默认为 0.01%
* \param fillValue 迭代填充值,对于迭代过程中没有数据的点使用填充值填充,默认为 0.0
*
* \param faultEdgeLevel 添加断层数据标记位到输出文件中添加标记位有不同的等级0~4, 默认为不添加
* \param outputFile 迭代输出结果文件
* estimateFactor 默认值 0
* cornerWeight 默认值 64
* \return
*/
//[DllImport(SURFACEGRIDLIB, EntryPoint = "BuildMinCurvatureGrid3", CharSet = CharSet.Unicode, ExactSpelling = false, CallingConvention = CallingConvention.Cdecl)]
[DllImport(SURFACEGRIDLIB, EntryPoint = "BuildMinCurvatureGrid3", CharSet = CharSet.Unicode, ExactSpelling = false, CallingConvention = CallingConvention.Cdecl)]
public static extern bool BuildMinCurvatureGrid3(string sourcePointFile, string faultFile, string borderFile
, ulong xNodeCount, /*ulong yNodeCount,*/ int maxIteration, double residual, double fillValue, int faultEdgeLevel, string outputFile
, int estimateFactor, int cornerWeight
, double contourStep, int contourMarkStep, int insertTimes
, double xMin = -1.0, double yMin = -1.0, double xMax = -1.0, double yMax = -1.0);
}
}