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.
84 lines
3.6 KiB
C
84 lines
3.6 KiB
C
|
1 month ago
|
#pragma once
|
||
|
|
|
||
|
|
#include "pugixml.hpp"
|
||
|
|
#include <iostream>
|
||
|
|
#include <string>
|
||
|
|
#include "..\GdbxDefine.h"
|
||
|
|
#include "GeoMapBase.h"
|
||
|
|
|
||
|
|
namespace NFormatReader
|
||
|
|
{
|
||
|
|
namespace NGeoMapReader
|
||
|
|
{
|
||
|
|
|
||
|
|
class CGeoMapGdbxWriter : public CGeoMapBase
|
||
|
|
{
|
||
|
|
public:
|
||
|
|
CGeoMapGdbxWriter();
|
||
|
|
~CGeoMapGdbxWriter();
|
||
|
|
|
||
|
|
pugi::xml_node createXMLHead(pugi::xml_node& parentNode);
|
||
|
|
pugi::xml_node createMap(pugi::xml_node& parentNode);
|
||
|
|
|
||
|
|
void createMapInfo(pugi::xml_node& parentNode, const GDBXMapInfo& info);
|
||
|
|
void createCoordSys(pugi::xml_node& parentNode, const GDBXProjection& info);
|
||
|
|
void createMeasure(pugi::xml_node& parentNode, const GDBXMeasure& info);
|
||
|
|
void createLayout(pugi::xml_node& parentNode);
|
||
|
|
|
||
|
|
pugi::xml_node createCustomSymbol(pugi::xml_node& parentNode);
|
||
|
|
pugi::xml_node createjgCustomTool(pugi::xml_node& parentNode, const GDBXRectInfo& info, int version);
|
||
|
|
pugi::xml_node createjgEllipse(pugi::xml_node& parentNode, const GDBXCustomTool& info);
|
||
|
|
|
||
|
|
|
||
|
|
pugi::xml_node createLayers(pugi::xml_node& parentNode, const GDBXLayers& info);
|
||
|
|
pugi::xml_node createLayer(pugi::xml_node& parentNode, const GDBXLayerInfo& info);
|
||
|
|
void createLayerInfo(pugi::xml_node& parentNode, const GDBXLayerInfo& info);
|
||
|
|
void createDefShapes(pugi::xml_node& parentNode);
|
||
|
|
pugi::xml_node createShapes(pugi::xml_node& parentNode);
|
||
|
|
pugi::xml_node createShapess(pugi::xml_node& parentNode, int count);
|
||
|
|
pugi::xml_node createAttribute(pugi::xml_node& parentNode);
|
||
|
|
void createAnchor(pugi::xml_node& parentNode, const GDBXAnchor& info);
|
||
|
|
pugi::xml_node createJgAnchor(pugi::xml_node& parentNode, const GDBXCustomTool& info);
|
||
|
|
|
||
|
|
|
||
|
|
pugi::xml_node createJgPolyline(pugi::xml_node& parentNode, const GDBXCustomTool &info, int state);
|
||
|
|
pugi::xml_node createJgPolygon(pugi::xml_node& parentNode, const GDBXCustomTool& info);
|
||
|
|
pugi::xml_node createJgRectangle(pugi::xml_node& parentNode, const GDBXRectInfo& info);
|
||
|
|
pugi::xml_node createJgScale(pugi::xml_node& parentNode, const GDBXScaleInfo& info);
|
||
|
|
pugi::xml_node createJgNormalGrid(pugi::xml_node& parentNode, const GDBXNormalGridInfo& info);
|
||
|
|
pugi::xml_node createJgLLGrid(pugi::xml_node& parentNode);
|
||
|
|
pugi::xml_node createGroup(pugi::xml_node& parentNode, int code = 0);
|
||
|
|
pugi::xml_node createJgIsoLine(pugi::xml_node& parentNode, const GDBXCustomTool& info);
|
||
|
|
void createLabelPos(pugi::xml_node &parentNode);
|
||
|
|
|
||
|
|
pugi::xml_node createJgText(pugi::xml_node& parentNode, const GDBXTextInfo &info);
|
||
|
|
void createGMFONT(pugi::xml_node& parentNode, const std::string& str, const GDBXGMFONT &info);
|
||
|
|
void createLableOffset(pugi::xml_node& parentNode);
|
||
|
|
|
||
|
|
pugi::xml_node createSegments(pugi::xml_node& parentNode, const GDBXSegments &info);
|
||
|
|
pugi::xml_node createMemoryBlock(pugi::xml_node& parentNode, const GDBXMemoryBlock& info);
|
||
|
|
|
||
|
|
pugi::xml_node createjgWell(pugi::xml_node& parentNode, const GDBXWellInfo &info);
|
||
|
|
|
||
|
|
pugi::xml_node createjgImage(pugi::xml_node& parentNode, const GDBXImageInfo& info);
|
||
|
|
|
||
|
|
|
||
|
|
void createFillInfo(pugi::xml_node& parentNode, const GDBXFillInfo &info);
|
||
|
|
void createTitleFont(pugi::xml_node& parentNode, const GDBXFontInfo &info);
|
||
|
|
void createLabelFont(pugi::xml_node& parentNode, const GDBXFontInfo& info, bool state = true);
|
||
|
|
void createTextFont(pugi::xml_node& parentNode, const GDBXFontInfo& info);
|
||
|
|
void createFntFont(pugi::xml_node& parentNode, const GDBXFontInfo& info);
|
||
|
|
void createLinkPoint(pugi::xml_node& parentNode);
|
||
|
|
|
||
|
|
|
||
|
|
private:
|
||
|
|
|
||
|
|
CString ConvertSizeToCString(const CSize8& size);
|
||
|
|
CString ConvertRectToCString(const CRect8& rect);
|
||
|
|
CString ConvertSizeToCString(const CSize& size);
|
||
|
|
CString ConvertRectToCString(const CRect& rect);
|
||
|
|
};
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|