18#ifndef TECHDRAW_APP_DRAWVIEWPARAMETERDEFINE_H
19#define TECHDRAW_APP_DRAWVIEWPARAMETERDEFINE_H
26#include "Base/Vector3D.h"
27#include "Base/Meterial/Color.h"
29#include "Base/DefineLineType.h"
32 class IDocumentObject;
38 enum class TechDrawExport LineWidthGroup
48 extern std::map<Base::DefineLineType, std::string> TechDrawExport
LineTypeMap;
57 enum class TechDrawExport DefineLeaderType {
63 extern std::map<DefineLeaderType, std::string> TechDrawExport
LeaderTypeMap;
65 enum class TechDrawExport DefineBubbleType {
72 extern std::map<DefineBubbleType, std::string> TechDrawExport
BubbleTypeMap;
74 enum class TechDrawExport FontFamily {
88 mTextColor = Base::Color(1, 1, 1);
90 mFontFamily = FontFamily::TSSDENG;
91 mFontWidthFactor = 1.0;
92 mFixedfontSize =
true;
107 mFontFamily = fontFamily;
119 mLineColor = Base::Color(1, 1, 1);
120 mLineType = Base::DefineLineType::CONTINUOUS;
121 mLineWidthShow =
true;
122 int lgNumber = Preferences::lineGroup();
124 mLineWidth = lg->getWeight(
"Thin");
135 mLineWidth = linewidth;
162 mLeaderType = DefineLeaderType::TextInRightTopOfArrow;
163 mBubbleShape = DefineBubbleType::Line;
165 mAttachedLabel.clear();
166 mLeaderLineOffsetX = 200.0;
167 mLeaderLineOffsetY = 200.0;
173 mShapeIndexLength = 0.0;
175 isInkLengthZero =
false;
180 enum class TechDrawExport DimensionType {
188 extern std::map<DimensionType, std::string> TechDrawExport
DimensionTypeMap;
217 mCustormDistance = -1;
218 mLeadLineAngle = 0.0;
219 mTextToLineDistance = 0.0;
233 sSectionFaceHatch.clear();
234 sfillIfSectionSourceIsEmpty =
false;
235 sDrawSectionEdge =
true;
236 sFuseBeforeCut =
true;
237 sDefaultScaleInView = 1.0;
238 sDefaultScaleInDxf = 1.0;
239 sHatchType =
"PatHatch";
249 sSectionOrigin(
Base::Vector3d(0, 0, 0))
287 mName =
"SectionView";
289 mSectionShape.clear();
291 int lgNumber = Preferences::lineGroup();
293 mAttribute.
mLineWidth = lg->getWeight(
"Thick");
304 mCustomcutflag =
false;
305 mCustomCutObjecVec.clear();
321 className =
"TechDraw::DrawViewSketchTemplate";
324 mBalloonIndexMap.clear();
340 const std::string& name) {
346 mName =
"GeometryList";
357 double colwidth = 0.0;
358 double rowheight = 0.0;
359 std::string Spanstr =
" ";
360 TableSpanInfo(
int nRow = 0,
int nCol = 0,
int nRowCount = 0,
int nColCount = 0) {
363 rowcount = nRowCount;
364 colcount = nColCount;
368 enum class TechDrawExport FrameShowFlag
379 enum class TechDrawExport TableTextAlignType
390 enum class TechDrawExport CellAlignType
468 std::map<int, std::map<int, TechDraw::CellAlignType>>
mHorAlign;
469 std::map<int, std::map<int, TechDraw::CellAlignType>>
mVerAlign;
486 const std::map<
int, std::map<int, std::string>>& tabledata) {
491 mTableData = tabledata;
494 setHorAlign(CellAlignType::LEFT);
495 setVerAlign(CellAlignType::TOP);
511 static int cellIsCombine(
const std::vector<TableSpanInfo>& spanData,
int row,
int col,
int& index);
516 enum class TechDrawExport LineFlag {
523 enum class TechDrawExport OriginOrientation
544 mLineFlag = LineFlag::TWO;
546 mTextToFirstLineDistance = 0;
547 mTwoLineDistance = 0;
548 mExpress =
"1.0*a + 1.0 * b";
555 const LineFlag& lineflag = LineFlag::TWO,
556 double textToFirstLineDistance = 0,
557 double twoLineDistance = 0,
558 const std::string& express =
"1.0*a + 1.0 * b",
564 mLineFlag = lineflag;
565 mTextToFirstLineDistance = textToFirstLineDistance;
566 mTwoLineDistance = twoLineDistance;
569 mFirstLineAttr = firstLine;
570 mSecondLineAttr = secondLine;
@ Line
Definition CurveTypeDefine.h:36
TWO
Definition DrawViewParameterDefine.h:519
HORIZONTAL_CENTER
Definition DrawViewParameterDefine.h:386
TOP_FRAME
Definition DrawViewParameterDefine.h:375
DISTANCEX
Definition DrawViewParameterDefine.h:181
BOTTOM_FRAME
Definition DrawViewParameterDefine.h:376
Circular
Definition DrawViewParameterDefine.h:66
RIGHT_ALIGN
Definition DrawViewParameterDefine.h:384
LEFTBOTTOM
Definition DrawViewParameterDefine.h:527
TextInRightBottomOfArrow
Definition DrawViewParameterDefine.h:59
LEFT
Definition DrawViewParameterDefine.h:394
ONE
Definition DrawViewParameterDefine.h:518
RIGHT
Definition DrawViewParameterDefine.h:395
LEFTTOP
Definition DrawViewParameterDefine.h:526
Triangle
Definition DrawViewParameterDefine.h:70
LRCENTER
Definition DrawViewParameterDefine.h:396
DISTANCE
Definition DrawViewParameterDefine.h:183
RIGHT_FRAME
Definition DrawViewParameterDefine.h:374
ANGLEDIMENSION
Definition DrawViewParameterDefine.h:186
TBCENTER
Definition DrawViewParameterDefine.h:397
TSSDENG
Definition DrawViewParameterDefine.h:75
BOTTOM
Definition DrawViewParameterDefine.h:393
DISTANCEY
Definition DrawViewParameterDefine.h:182
ALL_FRAME
Definition DrawViewParameterDefine.h:371
TextInLeftBottomOfArrow
Definition DrawViewParameterDefine.h:61
EXTRA
Definition DrawViewParameterDefine.h:43
THICK
Definition DrawViewParameterDefine.h:42
DIAMETER
Definition DrawViewParameterDefine.h:185
GRAPHIC
Definition DrawViewParameterDefine.h:41
LEFT_ALIGN
Definition DrawViewParameterDefine.h:383
NO_FRAME
Definition DrawViewParameterDefine.h:370
THIN
Definition DrawViewParameterDefine.h:40
OUT_FRAME
Definition DrawViewParameterDefine.h:372
TOP
Definition DrawViewParameterDefine.h:392
Rectangle
Definition DrawViewParameterDefine.h:69
Diamond
Definition DrawViewParameterDefine.h:68
LEFT_FRAME
Definition DrawViewParameterDefine.h:373
RADIUS
Definition DrawViewParameterDefine.h:184
TOP_ALIGN
Definition DrawViewParameterDefine.h:381
GEOMETRICCENTER
Definition DrawViewParameterDefine.h:525
TextInRightTopOfArrow
Definition DrawViewParameterDefine.h:58
TextInLeftTopOfArrow
Definition DrawViewParameterDefine.h:60
RIGHTBOTTOM
Definition DrawViewParameterDefine.h:529
BOTTOM_ALIGN
Definition DrawViewParameterDefine.h:382
RIGHTTOP
Definition DrawViewParameterDefine.h:528
VERTICAL_CENTER
Definition DrawViewParameterDefine.h:385
static LineGroup * lineGroupFactory(int groupNumber)
Definition BaseFigureFactory.h:28
Vector3< double > Vector3d
定义一个基于 double 的三维向量类型
Definition Vector3D.h:909
Definition BaseFigureFactory.h:24
std::map< QString, double > TechDrawExport LineWidthCoefficient
std::map< DefineLeaderType, std::string > TechDrawExport LeaderTypeMap
std::map< DimensionType, std::string > TechDrawExport DimensionTypeMap
std::map< QString, Base::DefineLineType > TechDrawExport LineTextToTypeMap
std::map< Base::DefineLineType, std::string > TechDrawExport LineTypeMap
std::map< std::string, FontFamily > TechDrawExport FontFamilyStringToTypeMap
std::map< FontFamily, QString > TechDrawExport FontFamilyTypeMap
std::map< DefineBubbleType, std::string > TechDrawExport BubbleTypeMap
std::map< LineWidthGroup, std::string > TechDrawExport LineWidthGroupMap
Definition ArrowPropEnum.h:26
void initData()
Definition DrawViewParameterDefine.h:161
std::string mLabel
Definition DrawViewParameterDefine.h:142
double mRotation
Definition DrawViewParameterDefine.h:146
double mLeaderLineOffsetX
Definition DrawViewParameterDefine.h:148
DefineBubbleType mBubbleShape
Definition DrawViewParameterDefine.h:144
FontAttribute mIndexFontAttr
Definition DrawViewParameterDefine.h:153
bool isInkLengthZero
Definition DrawViewParameterDefine.h:157
DrawViewBallonParam()
Definition DrawViewParameterDefine.h:158
FontAttribute mLeaderFontAttr
Definition DrawViewParameterDefine.h:151
std::vector< Base::Vector3d > mIntervals
Definition DrawViewParameterDefine.h:150
double mLeaderLineOffsetY
Definition DrawViewParameterDefine.h:149
double mShapeIndexLength
Definition DrawViewParameterDefine.h:155
std::vector< std::string > mAttachedLabel
Definition DrawViewParameterDefine.h:147
LineAttribute mLeaderLineAttr
Definition DrawViewParameterDefine.h:152
DefineLeaderType mLeaderType
Definition DrawViewParameterDefine.h:143
bool mScenePoint
Definition DrawViewParameterDefine.h:156
LineAttribute mIndexLineAttr
Definition DrawViewParameterDefine.h:154
Base::Vector3d mBasePt
Definition DrawViewParameterDefine.h:145
Definition DrawViewParameterDefine.h:141
Base::Vector3d mStartPotoffset
Definition DrawViewParameterDefine.h:194
void initData()
Definition DrawViewParameterDefine.h:208
LineAttribute mLineAttr
Definition DrawViewParameterDefine.h:203
Base::Vector3d mEntityOffset
Definition DrawViewParameterDefine.h:195
double mLeadLineAngle
Definition DrawViewParameterDefine.h:204
double mAngle
Definition DrawViewParameterDefine.h:199
double mDistance
Definition DrawViewParameterDefine.h:196
DrawViewDimensionParam()
Definition DrawViewParameterDefine.h:205
FontAttribute mFontAttr
Definition DrawViewParameterDefine.h:201
DimensionType mDimType
Definition DrawViewParameterDefine.h:192
std::vector< Base::Vector3d > mLinelist
Definition DrawViewParameterDefine.h:193
double mCustormDistance
Definition DrawViewParameterDefine.h:200
double mLabelOffset
Definition DrawViewParameterDefine.h:197
double mTextToLineDistance
Definition DrawViewParameterDefine.h:198
Definition DrawViewParameterDefine.h:191
void initData()
Definition DrawViewParameterDefine.h:345
double mAmplify
Definition DrawViewParameterDefine.h:330
DrawViewGeometryListParam()
Definition DrawViewParameterDefine.h:332
DrawViewGeometryListParam(double amplify, const std::string &name)
Definition DrawViewParameterDefine.h:339
std::string mName
Definition DrawViewParameterDefine.h:331
DrawViewGeometryListParam(double amplify)
Definition DrawViewParameterDefine.h:335
Definition DrawViewParameterDefine.h:329
void initData()
Definition DrawViewParameterDefine.h:286
std::vector< App::IDocumentObject * > mPartShape
Definition DrawViewParameterDefine.h:269
LineAttribute mAttribute
Definition DrawViewParameterDefine.h:272
Base::Vector3d mXDirection
Definition DrawViewParameterDefine.h:271
Base::Vector3d mSectionNormal
Definition DrawViewParameterDefine.h:274
std::vector< App::IDocumentObject * > mCustomCutObjecVec
Definition DrawViewParameterDefine.h:281
SectionAreaInfo mAreaInfo
Definition DrawViewParameterDefine.h:278
std::string mName
Definition DrawViewParameterDefine.h:268
SectionExtraInfo mExtraInfo
Definition DrawViewParameterDefine.h:279
Base::Vector3d mSectionOrigin
Definition DrawViewParameterDefine.h:275
bool mCustomcutflag
Definition DrawViewParameterDefine.h:280
Base::Vector3d mDirection
Definition DrawViewParameterDefine.h:270
SectionHatchInfo mHatchInfo
Definition DrawViewParameterDefine.h:277
DrawViewSectionParam()
Definition DrawViewParameterDefine.h:283
std::vector< App::IDocumentObject * > mSectionShape
Definition DrawViewParameterDefine.h:276
void initCutData()
Definition DrawViewParameterDefine.h:296
Definition DrawViewParameterDefine.h:267
void initData()
Definition DrawViewParameterDefine.h:320
std::map< std::string, std::string > mBalloonIndexMap
Definition DrawViewParameterDefine.h:314
int mLoadTextFlag
Definition DrawViewParameterDefine.h:313
float mAmplify
Definition DrawViewParameterDefine.h:312
std::string className
Definition DrawViewParameterDefine.h:316
std::string name
Definition DrawViewParameterDefine.h:315
DrawViewSketchTemplateParam()
Definition DrawViewParameterDefine.h:317
Definition DrawViewParameterDefine.h:311
void init()
Definition DrawViewParameterDefine.h:87
bool mFixedfontSize
Definition DrawViewParameterDefine.h:86
FontAttribute(double fontsize)
Definition DrawViewParameterDefine.h:97
Base::Color mTextColor
Definition DrawViewParameterDefine.h:82
FontFamily mFontFamily
Definition DrawViewParameterDefine.h:84
FontAttribute()
Definition DrawViewParameterDefine.h:94
double mFontSize
Definition DrawViewParameterDefine.h:83
double mFontWidthFactor
Definition DrawViewParameterDefine.h:85
FontAttribute(const FontFamily &fontFamily)
Definition DrawViewParameterDefine.h:105
FontAttribute(const Base::Color &color)
Definition DrawViewParameterDefine.h:101
Definition DrawViewParameterDefine.h:81
LineAttribute mFirstLineAttr
Definition DrawViewParameterDefine.h:540
std::string mText
Definition DrawViewParameterDefine.h:533
std::string mExpress
Definition DrawViewParameterDefine.h:538
FontAttribute mFontAttr
Definition DrawViewParameterDefine.h:539
double mTwoLineDistance
Definition DrawViewParameterDefine.h:537
LineFlag mLineFlag
Definition DrawViewParameterDefine.h:534
double mTextToFirstLineDistance
Definition DrawViewParameterDefine.h:536
LabelParam()
Definition DrawViewParameterDefine.h:542
LineAttribute mSecondLineAttr
Definition DrawViewParameterDefine.h:541
bool mType
Definition DrawViewParameterDefine.h:535
LabelParam(const std::string &text, bool type=false, const LineFlag &lineflag=LineFlag::TWO, double textToFirstLineDistance=0, double twoLineDistance=0, const std::string &express="1.0*a + 1.0 * b", const FontAttribute &font=FontAttribute(), const LineAttribute &firstLine=LineAttribute(), const LineAttribute &secondLine=LineAttribute())
Definition DrawViewParameterDefine.h:553
Definition DrawViewParameterDefine.h:532
void init()
Definition DrawViewParameterDefine.h:118
LineAttribute()
Definition DrawViewParameterDefine.h:126
Base::Color mLineColor
Definition DrawViewParameterDefine.h:114
LineAttribute(const Base::Color &color)
Definition DrawViewParameterDefine.h:129
LineAttribute(double linewidth)
Definition DrawViewParameterDefine.h:133
bool mLineWidthShow
Definition DrawViewParameterDefine.h:115
double mLineWidth
Definition DrawViewParameterDefine.h:116
Base::DefineLineType mLineType
Definition DrawViewParameterDefine.h:113
Definition DrawViewParameterDefine.h:112
bool sFlag
Definition DrawViewParameterDefine.h:245
Base::Vector3d sSectionOrigin
Definition DrawViewParameterDefine.h:246
SectionAreaInfo()
Definition DrawViewParameterDefine.h:247
Definition DrawViewParameterDefine.h:244
bool sfillIfSectionSourceIsEmpty
Definition DrawViewParameterDefine.h:226
double sDefaultScaleInDxf
Definition DrawViewParameterDefine.h:230
bool sFuseBeforeCut
Definition DrawViewParameterDefine.h:228
SectionHatchInfo()
Definition DrawViewParameterDefine.h:232
bool sDrawSectionEdge
Definition DrawViewParameterDefine.h:227
double sDefaultScaleInView
Definition DrawViewParameterDefine.h:229
std::map< std::string, std::string > sSectionFaceHatch
Definition DrawViewParameterDefine.h:225
char * sHatchType
Definition DrawViewParameterDefine.h:231
Definition DrawViewParameterDefine.h:224
void setHorAlign(const CellAlignType &type)
LineAttribute mLineAttr
Definition DrawViewParameterDefine.h:471
std::map< int, std::map< int, TechDraw::CellAlignType > > mHorAlign
Definition DrawViewParameterDefine.h:468
TabelParam(int rows, int cols, const std::map< int, std::map< int, std::string > > &tabledata)
Definition DrawViewParameterDefine.h:485
int mRowCount
Definition DrawViewParameterDefine.h:461
void setVerAlign(const CellAlignType &type)
std::vector< TechDraw::TableSpanInfo > mSpanData
Definition DrawViewParameterDefine.h:466
TabelParam()
Definition DrawViewParameterDefine.h:472
int mColCount
Definition DrawViewParameterDefine.h:462
std::map< std::string, std::string > mColWidth
Definition DrawViewParameterDefine.h:465
static int cellIsCombine(const std::vector< TableSpanInfo > &spanData, int row, int col, int &index)
FontAttribute mFontAttr
Definition DrawViewParameterDefine.h:470
std::map< std::string, std::string > mRowHeight
Definition DrawViewParameterDefine.h:464
std::map< int, std::map< int, TechDraw::CellAlignType > > mVerAlign
Definition DrawViewParameterDefine.h:469
std::map< int, std::map< int, std::string > > mTableData
Definition DrawViewParameterDefine.h:463
std::vector< TableCellFrameShowInfo > mFrameShow
Definition DrawViewParameterDefine.h:467
std::vector< int > getColTextCountSort()
Definition DrawViewParameterDefine.h:460
bool sBottom
Definition DrawViewParameterDefine.h:404
void setRightFrame()
Definition DrawViewParameterDefine.h:424
bool sLeft
Definition DrawViewParameterDefine.h:403
TableCellFrame()
Definition DrawViewParameterDefine.h:406
void setBottomFrame()
Definition DrawViewParameterDefine.h:442
void setNoFram()
Definition DrawViewParameterDefine.h:418
void setLeftFrame()
Definition DrawViewParameterDefine.h:430
void setAllShow()
Definition DrawViewParameterDefine.h:412
bool sTop
Definition DrawViewParameterDefine.h:402
void setTopFrame()
Definition DrawViewParameterDefine.h:436
bool sRight
Definition DrawViewParameterDefine.h:405
Definition DrawViewParameterDefine.h:401
int sRowCount
Definition DrawViewParameterDefine.h:454
int sCol
Definition DrawViewParameterDefine.h:453
int sRow
Definition DrawViewParameterDefine.h:452
int sColCount
Definition DrawViewParameterDefine.h:455
FrameShowFlag sFrameShowFlag
Definition DrawViewParameterDefine.h:456
Definition DrawViewParameterDefine.h:451
TableSpanInfo(int nRow=0, int nCol=0, int nRowCount=0, int nColCount=0)
Definition DrawViewParameterDefine.h:360
int rowcount
Definition DrawViewParameterDefine.h:355
int colcount
Definition DrawViewParameterDefine.h:356
int row
Definition DrawViewParameterDefine.h:353
int col
Definition DrawViewParameterDefine.h:354
Definition DrawViewParameterDefine.h:352