File indexing completed on 2025-01-18 10:03:57
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #ifndef _IGESCAFControl_Writer_HeaderFile
0017 #define _IGESCAFControl_Writer_HeaderFile
0018
0019 #include <Standard.hxx>
0020 #include <Standard_DefineAlloc.hxx>
0021 #include <Standard_Handle.hxx>
0022
0023 #include <IGESControl_Writer.hxx>
0024 #include <Standard_CString.hxx>
0025 #include <TDF_LabelSequence.hxx>
0026 #include <XCAFPrs_IndexedDataMapOfShapeStyle.hxx>
0027 #include <XCAFPrs_DataMapOfStyleTransient.hxx>
0028 #include <TopTools_MapOfShape.hxx>
0029 class XSControl_WorkSession;
0030 class TDocStd_Document;
0031 class TCollection_AsciiString;
0032 class TopoDS_Shape;
0033 class XCAFPrs_Style;
0034
0035
0036
0037
0038
0039
0040
0041
0042
0043
0044
0045
0046
0047
0048
0049
0050
0051
0052
0053
0054 class IGESCAFControl_Writer : public IGESControl_Writer
0055 {
0056 public:
0057
0058 DEFINE_STANDARD_ALLOC
0059
0060
0061
0062
0063 Standard_EXPORT IGESCAFControl_Writer();
0064
0065
0066
0067 Standard_EXPORT IGESCAFControl_Writer(const Handle(XSControl_WorkSession)& WS, const Standard_Boolean scratch = Standard_True);
0068
0069
0070
0071 Standard_EXPORT Standard_Boolean Transfer (const Handle(TDocStd_Document)& doc,
0072 const Message_ProgressRange& theProgress = Message_ProgressRange());
0073
0074
0075
0076 Standard_EXPORT Standard_Boolean Transfer (const TDF_LabelSequence& labels,
0077 const Message_ProgressRange& theProgress = Message_ProgressRange());
0078
0079
0080
0081 Standard_EXPORT Standard_Boolean Transfer (const TDF_Label& label,
0082 const Message_ProgressRange& theProgress = Message_ProgressRange());
0083
0084 Standard_EXPORT Standard_Boolean Perform (const Handle(TDocStd_Document)& doc,
0085 const TCollection_AsciiString& filename,
0086 const Message_ProgressRange& theProgress = Message_ProgressRange());
0087
0088
0089
0090 Standard_EXPORT Standard_Boolean Perform (const Handle(TDocStd_Document)& doc,
0091 const Standard_CString filename,
0092 const Message_ProgressRange& theProgress = Message_ProgressRange());
0093
0094
0095 Standard_EXPORT void SetColorMode (const Standard_Boolean colormode);
0096
0097 Standard_EXPORT Standard_Boolean GetColorMode() const;
0098
0099
0100 Standard_EXPORT void SetNameMode (const Standard_Boolean namemode);
0101
0102 Standard_EXPORT Standard_Boolean GetNameMode() const;
0103
0104
0105 Standard_EXPORT void SetLayerMode (const Standard_Boolean layermode);
0106
0107 Standard_EXPORT Standard_Boolean GetLayerMode() const;
0108
0109
0110
0111
0112 protected:
0113
0114
0115
0116 Standard_EXPORT Standard_Boolean WriteAttributes (const TDF_LabelSequence& labels);
0117
0118
0119
0120 Standard_EXPORT Standard_Boolean WriteLayers (const TDF_LabelSequence& labels);
0121
0122
0123
0124 Standard_EXPORT Standard_Boolean WriteNames (const TDF_LabelSequence& labels);
0125
0126
0127
0128
0129 Standard_EXPORT void prepareUnit(const TDF_Label& theLabel);
0130
0131
0132 private:
0133
0134
0135
0136
0137 Standard_EXPORT void MakeColors (const TopoDS_Shape& S, const XCAFPrs_IndexedDataMapOfShapeStyle& settings, XCAFPrs_DataMapOfStyleTransient& colors, TopTools_MapOfShape& Map, const XCAFPrs_Style& inherit);
0138
0139
0140 Standard_Boolean myColorMode;
0141 Standard_Boolean myNameMode;
0142 Standard_Boolean myLayerMode;
0143
0144
0145 };
0146
0147
0148
0149
0150
0151
0152
0153 #endif