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/Module/GeoSigmaDraw/WellAndSection/WellObjectAttributesJson.cpp

761 lines
25 KiB
C++

1 month ago
#include "stdafx.h"
#include "nlohmann\json.hpp"
#include "WellObjectAttributesJson.h"
#include "DrawOperator/Encoding.h"
extern CString GetGdfFontStr(GDFLOGFONTEXT &gdffont);
//{
// CPublicFunction& pf = *AfxGetPublicFunction();
// CString strW, strH, strSpace, strClr, str;
// pf.FloatToString(strW, gdffont.m_dWidth);
// pf.FloatToString(strH, gdffont.m_dHeight);
// pf.FloatToString(strSpace, gdffont.m_dTextSpace);
// strClr = pf.ColorRefToHex(gdffont.m_color);
//
// str.Format("W=\"%s\" H=\"%s\" B=\"%d\" I=\"%d\" U=\"%d\" S=\"%d\" PF=\"%s\" FN=\"%s\" C=\"%s\" SP=\"%d\"",
// strW, strH, gdffont.m_logFont.lfWeight, gdffont.m_logFont.lfItalic, gdffont.m_logFont.lfUnderline
// , gdffont.m_logFont.lfStrikeOut, strSpace, gdffont.m_logFont.lfFaceName, strClr, gdffont.m_nScript);
// return str;
//}
extern CString GetGdfPenStr(GDFLOGPENEXT& pen);
//{
// CPublicFunction& pf = *AfxGetPublicFunction();
// CString str,strClr,strbSolid;
// if (pen.m_bSolid)
// strbSolid = "TRUE";
// else
// strbSolid = "FALSE";
//
// strClr = pf.ColorRefToHex(pen.m_color);
// str.Format("Width=\"%lf\" Solid=\"%s\" Color=\"%s\" Style=\"%s\"",
// TransformPixelToPound(pen.m_dWidth),strbSolid, strClr, pen.m_style);
//
// return str;
//}
//"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>": "W=\"20\" H=\"20\" U=\"0\" I=\"0\" B=\"0\" S=\"0\" PF=\"\" FN=\"<22><><EFBFBD><EFBFBD>\" C=\"#FF0000\" SP=\"0\"",
extern void SetStrValueToGdfFont(CString strValue, GDFLOGFONTEXT &gdffont);
//{
// CPublicFunction& pf = *AfxGetPublicFunction();
// CString str, strKey, val;
// CStringArray strArr;
// MakeStrToArr1(strValue, strArr, " ");
// for (int ii = 0; ii < strArr.GetSize(); ii++)
// {
// str = strArr[ii];
// int pos = str.Find("=");
// if (pos <1)
// {
// continue;
// }
//
// strKey = str.Left(pos + 1);
// val = str.Right(str.GetLength() - (pos + 1));
// if (strKey == "W")
// {
// gdffont.m_dWidth = atoi(val);
// gdffont.m_logFont.lfWidth = long(gdffont.m_dWidth + 0.5);
// }
// else if (strKey == "H")
// {
// gdffont.m_dHeight = atoi(val);
// gdffont.m_logFont.lfHeight = long(gdffont.m_dHeight + 0.5);
// }
// else if (strKey == "U")
// gdffont.m_logFont.lfUnderline = atoi(val);
// else if (strKey == "I")
// gdffont.m_logFont.lfItalic = atoi(val);
// else if (strKey == "B")
// gdffont.m_logFont.lfWeight = atoi(val);
// else if (strKey == "S")
// gdffont.m_logFont.lfStrikeOut = atoi(val);
// else if (strKey == "PF")
// {
// }
// else if (strKey == "FN")
// strcpy(gdffont.m_logFont.lfFaceName, val.GetBuffer());
// else if (strKey == "C")
// {
// gdffont.m_color = pf.HexToColorRef(val);
// }
// else if (strKey == "SP")
// {
// gdffont.m_nScript = atoi(val);
// }
// }
//}
//"Color=\"#FF00FF\" Solid=\"FALSE\" Width=\"0.00\" Style=\"Single4\"",
extern void SetStrValueToGdfPen(CString strValue, GDFLOGPENEXT& gdfpen);
//{
// CPublicFunction& pf = *AfxGetPublicFunction();
//
// CString str, strKey, val;
// CStringArray strArr;
// MakeStrToArr1(strValue, strArr, " ");
// for (int ii = 0; ii < strArr.GetSize(); ii++)
// {
// str = strArr[ii];
// int pos = str.Find("=");
// if (pos < 1)
// {
// continue;
// }
//
// strKey = str.Left(pos + 1);
// val = str.Right(str.GetLength() - (pos + 1));
// if (strKey == "Width")
// gdfpen.m_dWidth = atof(val);//<2F><>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>
// else if (strKey == "Style")
// gdfpen.m_style = val;
// else if (strKey == "Color")
// {
// gdfpen.m_color = pf.HexToColorRef(val);
// }
// else if (strKey == "Solid")
// {
// val.MakeUpper();
// if (val == "TRUE")
// {
// gdfpen.m_bSolid = TRUE;
// if (gdfpen.m_pHowToViewCurve)
// delete gdfpen.m_pHowToViewCurve;
// gdfpen.m_pHowToViewCurve = NULL;
// }
// else
// {
// gdfpen.m_bSolid = FALSE;
//
// if (AfxGetGlobalWellXy())
// {
// //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// CString cmd;
// cmd.Format("%s\\%s", LIB_CURVE_TYPE, gdfpen.m_style);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// CLayer* pLayer = AfxGetGlobalWellXy()->FindLayer(cmd);
// if (pLayer)
// {
// if (pLayer->HowToViewCurve)
// {
// gdfpen.m_pHowToViewCurve = new CHowToViewCurve();
// *gdfpen.m_pHowToViewCurve = *(pLayer->HowToViewCurve);
// gdfpen.m_pHowToViewCurve->SetColor(gdfpen.m_color);
// }
// }
// }
// }
// }
// }
//}
CWellObjectAttributesJson::CWellObjectAttributesJson()
{
}
BOOL CWellObjectAttributesJson::GetWellObjectAttributesJson(ULONGLONG objHandle, int type, int ttype, CString& strJson)
{
BOOL b = FALSE;
try
{
CWellBaseObj* pWellBase = (CWellBaseObj*)objHandle;
if (type == KEP_WELL)
{
CWellPole* pWell = dynamic_cast<CWellPole*>(pWellBase);
b = CWellObjectAttributesJson::GetWellObjectAttributes(pWell, strJson);
}
else if (type == KEP_TRACK)
{
if (ttype == Track_Depth)
{
CTrackDepth* pDepthTrack = dynamic_cast<CTrackDepth*>(pWellBase);
if (pDepthTrack == NULL) return b;
b = CWellObjectAttributesJson::GetDepthTrackAttributes(pDepthTrack, strJson);
}
else if (ttype == Track_Text)
{
CTrackText* pTextTrack = dynamic_cast<CTrackText*>(pWellBase);
if (pTextTrack == NULL) return b;
b = CWellObjectAttributesJson::GetTextTrackAttributes(pTextTrack, strJson);
}
else if (ttype == Track_Lith)
{
CTrackLith* pLithTrack = dynamic_cast<CTrackLith*>(pWellBase);
if (pLithTrack == NULL) return b;
b = CWellObjectAttributesJson::GetLithologyTrackAttributes(pLithTrack, strJson);
}
else if (ttype == Track_Curve)
{
CTrackCurve* pCurveTrack = dynamic_cast<CTrackCurve*>(pWellBase);
if (pCurveTrack == NULL) return b;
b = CWellObjectAttributesJson::GetCurveTrackAttributes(pCurveTrack, strJson);
}
}
else if (type == KEP_TRACKINDATA)
{
b = CWellObjectAttributesJson::GetInTrackDataAttributes(pWellBase,ttype, strJson);
}
}
catch (std::exception e)
{
return FALSE;
}
return b;
}
BOOL CWellObjectAttributesJson::SetWellObjectAttributesJson(ULONGLONG objHandle, int type, int ttype, CString& strJson)
{
BOOL b = FALSE;
try
{
CWellBaseObj* pWellBase = (CWellBaseObj*)objHandle;
if (type == KEP_WELL)
{
CWellPole* pWell = dynamic_cast<CWellPole*>(pWellBase);
b = CWellObjectAttributesJson::SetWellObjectAttributes(pWell, strJson);
}
else if (type == KEP_TRACK)
{
if (ttype == Track_Depth)
{
CTrackDepth* pDepthTrack = dynamic_cast<CTrackDepth*>(pWellBase);
if (pDepthTrack == NULL) return b;
b = CWellObjectAttributesJson::SetDepthTrackAttributes(pDepthTrack, strJson);
}
else if (ttype == Track_Text)
{
CTrackText* pTextTrack = dynamic_cast<CTrackText*>(pWellBase);
if (pTextTrack == NULL) return b;
b = CWellObjectAttributesJson::SetTextTrackAttributes(pTextTrack, strJson);
}
else if (ttype == Track_Lith)
{
CTrackLith* pLithTrack = dynamic_cast<CTrackLith*>(pWellBase);
if (pLithTrack == NULL) return b;
b = CWellObjectAttributesJson::SetLithologyTrackAttributes(pLithTrack, strJson);
}
else if (ttype == Track_Curve)
{
CTrackCurve* pCurveTrack = dynamic_cast<CTrackCurve*>(pWellBase);
if (pCurveTrack == NULL) return b;
b = CWellObjectAttributesJson::SetCurveTrackAttributes(pCurveTrack, strJson);
}
}
else if (type == KEP_TRACKINDATA)
{
b = CWellObjectAttributesJson::SetInTrackDataAttributes(pWellBase,ttype, strJson);
}
}
catch (std::exception e)
{
return FALSE;
}
return b;
}
BOOL CWellObjectAttributesJson::GetWellObjectAttributes(CWellPole* pWell, CString& strJson)
{
BOOL b = FALSE;
if (pWell)
{
try
{
nlohmann::json json;
json["type"] = "wellPole";
nlohmann::json baseProp;
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = GB2312_To_UTF8(pWell->m_strTitle);
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = GB2312_To_UTF8(pWell->GetWellName());
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>ĺ<EFBFBD><EFBFBD><EFBFBD>")] = pWell->m_fLevel;
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>ȱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = pWell->m_dDepthRatio;
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = pWell->m_dSdep;
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = pWell->m_dEdep;
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>ұ߾<EFBFBD>")] = pWell->m_fMarginLR;
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>±߾<EFBFBD>")] = pWell->m_fMarginTB;
nlohmann::json scaleProp;
scaleProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD>")] = pWell->m_fMajorSpace;
scaleProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD>")] = pWell->m_fMinorSpace;
nlohmann::json fontsJson;
fontsJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = GB2312_To_UTF8(GetGdfFontStr(pWell->m_font));
fontsJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = GB2312_To_UTF8(GetGdfFontStr(pWell->m_fontTrack));
fontsJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ͷ<EFBFBD>̶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = GB2312_To_UTF8(GetGdfFontStr(pWell->m_fontHeadMark));
fontsJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>ȿ̶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = GB2312_To_UTF8(GetGdfFontStr(pWell->m_fontGridMark));
nlohmann::json pensJson;
pensJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>߿<EFBFBD><EFBFBD><EFBFBD>")] = GetGdfPenStr(pWell->m_pen);
pensJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>߿<EFBFBD><EFBFBD><EFBFBD>")] = GetGdfPenStr(pWell->m_penTrack);
pensJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD><EFBFBD><EFBFBD>")] = GetGdfPenStr(pWell->m_penGridMajor);
pensJson[GB2312_To_UTF8("<EFBFBD>ο̶<EFBFBD><EFBFBD><EFBFBD>")] = GetGdfPenStr(pWell->m_penGridMinor);
nlohmann::json jsonProps;
jsonProps["baseProperties"] = baseProp;
jsonProps[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = baseProp;
jsonProps[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = scaleProp;
jsonProps[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = fontsJson;
jsonProps[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = pensJson;
json["properties"] = jsonProps;
strJson = json.dump().c_str();
b = TRUE;
}
catch (nlohmann::json::parse_error& e)
{
return FALSE;
}
}
return b;
}
BOOL CWellObjectAttributesJson::SetWellObjectAttributes(CWellPole* pWell, CString& strJson)
{
BOOL b = FALSE;
if (pWell)
{
nlohmann::json tjson;
try
{
tjson = nlohmann::json::parse(strJson.GetBuffer());
strJson.ReleaseBuffer();
CString str;
str = tjson["type"].get<std::string>().c_str();
if (str != "wellPole")
return FALSE;
nlohmann::json propsJson;
propsJson = tjson["properties"];
nlohmann::json baseJson;
baseJson = propsJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")];
pWell->m_strTitle = UTF8_To_GB2312(baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str());
pWell->SetWellName(UTF8_To_GB2312(baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str()));
pWell->m_fLevel = baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>ĺ<EFBFBD><EFBFBD><EFBFBD>")].get<float>();
pWell->m_fProportion = baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>ȱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<float>();
pWell->m_dSdep = baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<float>();
pWell->m_dEdep = baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<float>();
pWell->m_fMarginLR = baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>ұ߾<EFBFBD>")].get<float>();
pWell->m_fMarginTB = baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>±߾<EFBFBD>")].get<float>();
nlohmann::json scaleProp;
scaleProp = baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")];
pWell->m_fMajorSpace = scaleProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD>")].get<float>();
pWell->m_fMinorSpace = scaleProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD>")].get<float>();
nlohmann::json fontsJson;
fontsJson = baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")];
SetStrValueToGdfFont(fontsJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str(), pWell->m_font);
SetStrValueToGdfFont(fontsJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str(), pWell->m_fontTrack);
SetStrValueToGdfFont(fontsJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ͷ<EFBFBD>̶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str(), pWell->m_fontHeadMark);
SetStrValueToGdfFont(fontsJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>ȿ̶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str(), pWell->m_fontGridMark);
nlohmann::json pensJson;
pensJson = baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")];
SetStrValueToGdfPen(pensJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>߿<EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str(),pWell->m_pen);
SetStrValueToGdfPen(pensJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>߿<EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str(), pWell->m_penTrack);
SetStrValueToGdfPen(pensJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str(), pWell->m_penGridMajor);
SetStrValueToGdfPen(pensJson[GB2312_To_UTF8("<EFBFBD>ο̶<EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str(), pWell->m_penGridMinor);
}
catch (nlohmann::json::parse_error& e)
{
return FALSE;
}
b = TRUE;
}
return b;
}
BOOL CWellObjectAttributesJson::GetDepthTrackAttributes(CTrackDepth* pTrack, CString& strJson)
{
CPublicFunction& pf = *AfxGetPublicFunction();
BOOL b = FALSE;
try
{
nlohmann::json json;
json["type"] = "depthTrack";
nlohmann::json baseProp;
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = GB2312_To_UTF8(pTrack->m_strTitle);
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = pTrack->m_dTrackWidth;
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = bool(pTrack->IsFlagBrush());
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ")] = pf.ColorRefToHex(pTrack->m_brush.m_color);
nlohmann::json scaleJson;
scaleJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD>ο̶<EFBFBD>")] = bool(pTrack->IsMarkLevel());
scaleJson[GB2312_To_UTF8("<EFBFBD>̶Ⱦ<EFBFBD><EFBFBD><EFBFBD>")] = bool(pTrack->IsMarkLeft());
scaleJson[GB2312_To_UTF8("Ӣ<EFBFBD>Ƶ<EFBFBD>λ")] = bool(pTrack->IsMarkFeet());
scaleJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD>")] = pTrack->m_fMajorGrid;
scaleJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD>")] = pTrack->m_fMinorGrid;
scaleJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>̶ȿ<EFBFBD><EFBFBD><EFBFBD>")] = pTrack->m_fMajorWidth;
scaleJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>̶ȿ<EFBFBD><EFBFBD><EFBFBD>")] = pTrack->m_fMinorWidth;
scaleJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD><EFBFBD><EFBFBD>")] = GetGdfPenStr(pTrack->m_penGridMajor);
scaleJson[GB2312_To_UTF8("<EFBFBD>ο̶<EFBFBD><EFBFBD><EFBFBD>")] = GetGdfPenStr(pTrack->m_penGridMinor);
scaleJson[GB2312_To_UTF8("<EFBFBD>̶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = GB2312_To_UTF8(GetGdfFontStr(pTrack->m_fontGridMark));
nlohmann::json markJson;
markJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD>ȵ<EFBFBD>λ")] = bool(pTrack->IsShowMarkUnit());
markJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>ע")] = bool(pTrack->IsMarkArrange());
nlohmann::json jsonProps;
jsonProps["baseProperties"] = baseProp;
jsonProps[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>ȵ<EFBFBD>")] = baseProp;
jsonProps[GB2312_To_UTF8("<EFBFBD>̶<EFBFBD>")] = scaleJson;
jsonProps[GB2312_To_UTF8("<EFBFBD><EFBFBD>ע")] = markJson;
json["properties"] = jsonProps;
strJson = json.dump().c_str();
b = TRUE;
}
catch (nlohmann::json::parse_error& e)
{
return FALSE;
}
return b;
}
BOOL CWellObjectAttributesJson::SetDepthTrackAttributes(CTrackDepth* pTrack, CString& strJson)
{
CPublicFunction& pf = *AfxGetPublicFunction();
BOOL b = FALSE;
nlohmann::json tjson;
try
{
tjson = nlohmann::json::parse(strJson.GetBuffer());
strJson.ReleaseBuffer();
CString str;
str = tjson["type"].get<std::string>().c_str();
if (str != "depthTrack")
return FALSE;
nlohmann::json propsJson;
propsJson = tjson["properties"];
nlohmann::json baseJson;
baseJson = propsJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>ȵ<EFBFBD>")];
pTrack->m_strTitle = UTF8_To_GB2312(baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str());
pTrack->m_dTrackWidth = baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<float>();
pTrack->SetFlagBrush(baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<bool>());
pTrack->m_brush.m_color = pf.HexToColorRef(baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ")].get<std::string>().c_str());
nlohmann::json scaleJson;
scaleJson = propsJson[GB2312_To_UTF8("<EFBFBD>̶<EFBFBD>")];
pTrack->SetMarkLevel(scaleJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD>ο̶<EFBFBD>")].get<bool>());
pTrack->SetMarkLeft(scaleJson[GB2312_To_UTF8("<EFBFBD>̶Ⱦ<EFBFBD><EFBFBD><EFBFBD>")].get<bool>());
pTrack->SetMarkFeet(scaleJson[GB2312_To_UTF8("Ӣ<EFBFBD>Ƶ<EFBFBD>λ")].get<bool>());
pTrack->m_fMajorGrid = scaleJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD>")].get<float>();
pTrack->m_fMinorGrid = scaleJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD>")].get<float>();
pTrack->m_fMajorWidth = scaleJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>̶ȿ<EFBFBD><EFBFBD><EFBFBD>")].get<float>();
pTrack->m_fMinorWidth = scaleJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>̶ȿ<EFBFBD><EFBFBD><EFBFBD>")].get<float>();
SetStrValueToGdfPen(scaleJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str(), pTrack->m_penGridMajor);
SetStrValueToGdfPen(scaleJson[GB2312_To_UTF8("<EFBFBD>ο̶<EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str(), pTrack->m_penGridMinor);
SetStrValueToGdfFont(scaleJson[GB2312_To_UTF8("<EFBFBD>̶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str(), pTrack->m_fontGridMark);
nlohmann::json markJson = propsJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ע")];
pTrack->SetShowMarkUnit(markJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD>ȵ<EFBFBD>λ")].get<bool>());
pTrack->SetMarkArrange(markJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>ע")].get<bool>());
}
catch (nlohmann::json::parse_error& e)
{
return FALSE;
}
b = TRUE;
return b;
}
BOOL CWellObjectAttributesJson::GetTextTrackAttributes(CTrackText* pTrack, CString& strJson)
{
CPublicFunction& pf = *AfxGetPublicFunction();
BOOL b = FALSE;
try
{
nlohmann::json json;
json["type"] = "textTrack";
nlohmann::json baseProp;
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = GB2312_To_UTF8(pTrack->m_strTitle);
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = pTrack->m_dTrackWidth;
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = bool(pTrack->IsFlagBrush());
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ")] = pf.ColorRefToHex(pTrack->m_brush.m_color);
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = GB2312_To_UTF8(GetGdfFontStr(pTrack->m_font));
nlohmann::json indataJson;
indataJson[GB2312_To_UTF8("<EFBFBD>߿<EFBFBD><EFBFBD><EFBFBD>")] = GetGdfPenStr(pTrack->m_penChild);
indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ")] = pf.ColorRefToHex(pTrack->m_brushChild.m_color);
indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = GB2312_To_UTF8(GetGdfFontStr(pTrack->m_fontChild));
nlohmann::json jsonProps;
jsonProps["baseProperties"] = baseProp;
jsonProps[GB2312_To_UTF8("<EFBFBD>ı<EFBFBD><EFBFBD><EFBFBD>")] = baseProp;
jsonProps[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>ڶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = indataJson;
json["properties"] = jsonProps;
strJson = json.dump().c_str();
b = TRUE;
}
catch (nlohmann::json::parse_error& e)
{
return FALSE;
}
return b;
}
BOOL CWellObjectAttributesJson::SetTextTrackAttributes(CTrackText* pTrack, CString& strJson)
{
CPublicFunction& pf = *AfxGetPublicFunction();
BOOL b = FALSE;
nlohmann::json tjson;
try
{
tjson = nlohmann::json::parse(strJson.GetBuffer());
strJson.ReleaseBuffer();
CString str;
str = tjson["type"].get<std::string>().c_str();
if (str != "textTrack")
return FALSE;
nlohmann::json propsJson;
propsJson = tjson["properties"];
nlohmann::json baseJson;
baseJson = propsJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>ȵ<EFBFBD>")];
pTrack->m_strTitle = UTF8_To_GB2312(baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str());
pTrack->m_dTrackWidth = baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<float>();
pTrack->SetFlagBrush(baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<bool>());
pTrack->m_brush.m_color = pf.HexToColorRef(baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ")].get<std::string>().c_str());
SetStrValueToGdfFont(baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str(), pTrack->m_font);
nlohmann::json indataJson = propsJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>ڶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")];
SetStrValueToGdfPen(indataJson[GB2312_To_UTF8("<EFBFBD>߿<EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str(), pTrack->m_penChild);
pTrack->m_brushChild.m_color = pf.HexToColorRef(indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ")].get<std::string>().c_str());
SetStrValueToGdfFont(indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str(), pTrack->m_fontChild);
}
catch (nlohmann::json::parse_error& e)
{
return FALSE;
}
b = TRUE;
return b;
}
BOOL CWellObjectAttributesJson::GetLithologyTrackAttributes(CTrackLith* pTrack, CString& strJson)
{
CPublicFunction& pf = *AfxGetPublicFunction();
BOOL b = FALSE;
try
{
nlohmann::json json;
json["type"] = "lithologyTrack";
nlohmann::json baseProp;
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = GB2312_To_UTF8(pTrack->m_strTitle);
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = pTrack->m_dTrackWidth;
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = bool(pTrack->IsFlagBrush());
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ")] = pf.ColorRefToHex(pTrack->m_brush.m_color);
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = GB2312_To_UTF8(GetGdfFontStr(pTrack->m_font));
nlohmann::json indataJson;
indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Կ<EFBFBD><EFBFBD>Ȱٷֱ<EFBFBD>")] = pTrack->m_nWidthOil;
indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD><EFBFBD><EFBFBD>")] = pTrack->m_nThick;
indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ų<EFBFBD><EFBFBD><EFBFBD>")] = bool(pTrack->IsSingle());
indataJson[GB2312_To_UTF8("<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = bool(pTrack->IsShowLith());
indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ")] = bool(pTrack->IsShowColor());
indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = bool(pTrack->IsShowOil());
indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Կ<EFBFBD><EFBFBD><EFBFBD>")] = bool(pTrack->IsWidth());
indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><EFBFBD>Ҳ<EFBFBD>")] = bool(pTrack->IsRightOil());
nlohmann::json jsonProps;
jsonProps["baseProperties"] = baseProp;
jsonProps[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>Ե<EFBFBD>")] = baseProp;
jsonProps[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>ڶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = indataJson;
json["properties"] = jsonProps;
strJson = json.dump().c_str();
b = TRUE;
}
catch (nlohmann::json::parse_error& e)
{
return FALSE;
}
return b;
}
BOOL CWellObjectAttributesJson::SetLithologyTrackAttributes(CTrackLith* pTrack, CString& strJson)
{
CPublicFunction& pf = *AfxGetPublicFunction();
BOOL b = FALSE;
nlohmann::json tjson;
try
{
tjson = nlohmann::json::parse(strJson.GetBuffer());
strJson.ReleaseBuffer();
CString str;
str = tjson["type"].get<std::string>().c_str();
if (str != "lithologyTrack")
return FALSE;
nlohmann::json propsJson;
propsJson = tjson["properties"];
nlohmann::json baseJson;
baseJson = propsJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>Ե<EFBFBD>")];
pTrack->m_strTitle = UTF8_To_GB2312(baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str());
pTrack->m_dTrackWidth = baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<float>();
pTrack->SetFlagBrush(baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<bool>());
pTrack->m_brush.m_color = pf.HexToColorRef(baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ")].get<std::string>().c_str());
SetStrValueToGdfFont(baseJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<std::string>().c_str(), pTrack->m_font);
nlohmann::json indataJson = propsJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>ڶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")];
pTrack->m_nWidthOil = indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Կ<EFBFBD><EFBFBD>Ȱٷֱ<EFBFBD>")].get<float>();
pTrack->m_nThick = indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD><EFBFBD><EFBFBD>")].get<int>() ;
pTrack->SetSingle(indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ų<EFBFBD><EFBFBD><EFBFBD>")].get<bool>());
pTrack->SetShowLith(indataJson[GB2312_To_UTF8("<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<bool>());
pTrack->SetShowColor(indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ")].get<bool>());
pTrack->SetShowOil(indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")].get<bool>());
pTrack->SetWidth(indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Կ<EFBFBD><EFBFBD><EFBFBD>")].get<bool>());
pTrack->SetRightOil(indataJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><EFBFBD>Ҳ<EFBFBD>")].get<bool>());
}
catch (nlohmann::json::parse_error& e)
{
return FALSE;
}
b = TRUE;
return b;
}
BOOL CWellObjectAttributesJson::GetCurveTrackAttributes(CTrackCurve* pTrack, CString& strJson)
{
CPublicFunction& pf = *AfxGetPublicFunction();
BOOL b = FALSE;
try
{
nlohmann::json json;
json["type"] = "curveTrack";
nlohmann::json baseProp;
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = GB2312_To_UTF8(pTrack->m_strTitle);
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = pTrack->m_dTrackWidth;
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD>ֵ")] = pTrack->m_curve_left;
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD>ֵ")] = pTrack->m_curve_right;
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD>ʽ")] = pTrack->m_strFormat;
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = bool(pTrack->IsLog());
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>ͷ<EFBFBD>̶<EFBFBD>")] = bool(pTrack->IsShowGridHead());
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>ͷ<EFBFBD>̶<EFBFBD>")] = bool(pTrack->IsShowHeadLine());
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>ʽ")] = pTrack->GetCurveShowMode();
baseProp[GB2312_To_UTF8("<EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = GB2312_To_UTF8(GetGdfFontStr(pTrack->m_font));
nlohmann::json gridJson;
gridJson["<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"] = bool(pTrack->IsShowGridX());
gridJson["<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"] = bool(pTrack->IsShowGridY());
gridJson["<EFBFBD><EFBFBD><EFBFBD>̶ȸ<EFBFBD><EFBFBD><EFBFBD>"] = pTrack->m_nMajorSpace;
gridJson["<EFBFBD>ο̶ȸ<EFBFBD><EFBFBD><EFBFBD>"] = pTrack->m_nMinorSpace;
nlohmann::json fillJson;
int nInitfill = -1;
if (pTrack->IsFillStyleLeft())
nInitfill = 0;
else if (pTrack->IsFillStyleRight())
nInitfill = 1;
else if (pTrack->IsFillStyleLeftV())
nInitfill = 2;
else if (pTrack->IsFillStyleRightV())
nInitfill = 3;
fillJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>ʽ")] = nInitfill;
int nInitbrush = 0;
if (pTrack->IsFillBrushColor())
{
nInitbrush = 1;
}
else if (pTrack->IsFillBrushPattern() || pTrack->IsFillBrushVector())
{
nInitbrush = 2;
}
else if (pTrack->IsFillBrushGradient())
{
nInitbrush = 3;
}
fillJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ˢ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = nInitbrush;
fillJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = pTrack->m_strFillSideCurve;
fillJson[GB2312_To_UTF8("<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = bool(pTrack->IsShowFillSideCurve());
fillJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ")] = pf.ColorRefToHex(pTrack->m_fillClr);
fillJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ")] = bool(pTrack->IsShowHeadFill());
fillJson[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = pTrack->m_strFillSymbol;
nlohmann::json curveStyleJson;
int tstyle = 1;
if (pTrack->IsShowStep())
tstyle = 2;
curveStyleJson["<EFBFBD><EFBFBD>ʽ"] = tstyle;
curveStyleJson["<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"] = GetGdfPenStr(pTrack->m_penCurve);
nlohmann::json symbolJson;
symbolJson["ɢ<EFBFBD><EFBFBD>"] = bool(pTrack->IsShowDot());
symbolJson["<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"] = pTrack->m_strDotSymbol;
symbolJson["<EFBFBD><EFBFBD><EFBFBD>ű߿<EFBFBD><EFBFBD><EFBFBD>ɫ"] = pf.ColorRefToHex(pTrack->m_dotBorderClr);
symbolJson["<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ"] = pf.ColorRefToHex(pTrack->m_dotFillClr);
symbolJson["<EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD>С"] = pTrack->m_dotSize.cx;
nlohmann::json jsonProps;
jsonProps["baseProperties"] = baseProp;
jsonProps[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD>")] = baseProp;
jsonProps[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = gridJson;
jsonProps[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = fillJson;
jsonProps[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD>߷<EFBFBD><EFBFBD><EFBFBD>")] = curveStyleJson;
jsonProps[GB2312_To_UTF8("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")] = symbolJson;
json["properties"] = jsonProps;
strJson = json.dump().c_str();
b = TRUE;
}
catch (nlohmann::json::parse_error& e)
{
return FALSE;
}
return b;
}
BOOL CWellObjectAttributesJson::SetCurveTrackAttributes(CTrackCurve* pTrack, CString& strJson)
{
BOOL b = FALSE;
return b;
}
BOOL CWellObjectAttributesJson::GetInTrackDataAttributes(CWellBaseObj* pDataBase, int inTrackType, CString& strJson)
{
BOOL b = FALSE;
return b;
}
BOOL CWellObjectAttributesJson::SetInTrackDataAttributes(CWellBaseObj* pDataBase, int inTrackType, CString& strJson)
{
BOOL b = FALSE;
return b;
}