/* **************************************************
	wcUserStyleDesign.h
	用户式样生成 常量表
************************************************** */
#ifndef _WC_USERSTYLE_DESIGN_H_
#define _WC_USERSTYLE_DESIGN_H_

//	4.4 符号G
//enum UserGSymbolCell
#define wcUserGCellLine		 1 		//两点画线
#define wcUserGCellPolyline	 2		//连续画线
#define wcUserGCellCircle	 3 		//画圆环
#define wcUserGCellArc		 4 		//画弧
#define wcUserGCellPoint	 5 		//画点
#define wcUserGCellBlackRect	6 	//黑色矩形
#define wcUserGCellFillCircle	7 	//白色实心圆
#define wcUserGCellFillRect		8 		//白色矩形
#define wcUserGCellFillBlackCircle   9	//黑色实心圆
#define wcUserGCellFillChord		 10 //白色扇形
#define wcUserGCellFillBlackChord	 11 //黑色扇形
#define wcUserGCellPolygon		12 		//白色多边形
#define wcUserGCellBlackPolygon 13 		//黑色多边形
#define wcUserGCellRect			14 		//矩形

//	4.5 符号线LG，G插入类型
#define wcUserLineInsertUnrotate 0 //	水平(不旋转)
#define wcUserLineInsertRotate	 1 //	与插入点法线平行
#define wcUserLineInsertHead	 2 //	在两点连线 头点处
#define wcUserLineInsertMid		 4 //	在两点连线 中点处
#define wcUserLineInsertTail	 8 //	在两点连线 尾点处
#define wcUserLineInsertEqual	 16 //	均匀内插
#define wcUserLineInsertOffset	 32 //	均匀内插时，第1个G绘于间隔距离处，否则绘于线头处
#define wcUserLineInsertOffsetHalf	 64 //	均匀内插时，第1个G绘于半间隔距离处，否则绘于线头处
//----------- 不插符号的条件
#define wcUserLineInsertNoLess90  128 //	锐角不插：<90-15
#define wcUserLineInsertNo90	  256 //	直角不插：>65 && <105
#define wcUserLineInsertNo180     512 //	平角不插：>165 && <195
#define wcUserLineInsertNoMore180  1024 //	凸角不插：>180+15
//----------- G符号伸缩（仅在两点连线 头、中、尾点处插G时设置有效）
#define wcUserLineInsertGStretchX  2048 //	G符号沿线伸缩
#define wcUserLineInsertGStretchY  4096 //	G符号沿线法向伸缩
//----------- 线（由若干段2点线段组成）的首尾不插G符号
#define wcUserLineInsertNoTerms  8192 //	如电力线入室，不插电线杆和方向箭头
//----------- 使用普通点符号(WalkStyle)
#define wcUserLineInsertWalkStyleS 0x40000000 

//enum UserLineLinkType
#define wcUserLineLGnoline	 0 //LG 不连线
#define wcUserLineLGline	 1 //LG 连线。若大于1表示：连线，但在两个G类符号处空开一个距离（>1 and <65536）


//	4.6 简单双线LD, 头尾及拐点处连接类型：
//enum UserLDLineConnectType
#define wcUserLineHeadStreight		 1 //	落笔线段的头为直线封闭
#define wcUserLineHeadCircle		 2 //	落笔线段的头为圆弧封闭
#define wcUserLineTailStreight		 4 //	落笔线段的尾为直线封闭
#define wcUserLineTailCircle		 8 //	落笔线段的尾为圆弧封闭
#define wcUserLineFill				 16 //	落笔线段填线色
#define wcUserLineDoubleLine		 32 //	抬笔线段按线宽画双线
#define wcUserLineOnLeft			 64 //	轴线在左侧
#define wcUserLineOnRight			 128 //	轴线在右侧
#define wcUserLineFillWhite			 256 //	抬笔线段填白色
#define wcUserLineExtend1			 512 //	抬落笔扩展定义画法1：定段比渐变
#define wcUserLineExtend2			 1024 //	抬落笔扩展定义画法2：段长渐变

//	4.7 图元线LM表达
//enum UserLMLineMetaStyle
#define wcUserLineMetaLine	 1 	//竖线	长度
#define wcUserLineMetaCircle 3 	//圆 半径

//	4.9 双轴线DL, 轴线控制点类型
//enum UserDLLineCtrlPtType
#define wcUserLineCtrlPtVert	 1 	//	实际点:	间隔值无效
#define wcUserLineCtrlPtFixed	 2 	//	固定间隔点	
#define wcUserLineCtrlPtCenter	 3 	//	两轴线中心

//	双轴线DL, 轴线控制点连线类型
//enum UserDLLineLinkType
#define wcUserDLinkHeads	 1 //	轴线首点与首点相连	
#define wcUserDLinkTails	 2 //	轴线尾点与尾点相连	
#define wcUserDLinkSym		 4 //	轴线控制点对称连接(不包含首尾点)，"∣"
#define wcUserDLinkCross	 8 //	轴线控制点交错连接(包含首尾点)	
#define wcUserDLinkBetween	 16 //	在轴线1与轴线2中内插(如台阶)
#define wcUserDLinkVert		 32 //	从轴线1控制点向轴线2做垂线(如斜坡)
#define wcUserDLinkAver		 64 //	以轴线1控制点数对轴线2均分,然后对称连接(如S型楼梯)
#define wcUserDLinkUp45		 128 //	新增4种连接方法："╲"、"╱"、"∨"、"∧"，对称连接为："∣"
#define wcUserDLinkLow45	 256 
#define wcUserDLinkUpV		 512 
#define wcUserDLinkLowV		 1024 

//	4.10 填充H样式
//enum UserRegionFillType
#define wcUserRegionFillLine	 1 //	线样式
#define wcUserRegionFillPal		 2 //	8x8模板样式
#define wcUserRegionFillSymbol	 4 //	符号样式
#define wcUserRegionFillClip	 8 //	符号与区域相交时进行裁剪

#endif //_WC_USERSTYLE_DESIGN_H_
