public void AddXXLine(IGeometry pGeometry, IGraphicsContainer pGraphicsContainer, IRgbColor Pcolor, double Pwidth, int Pflag)
{
try
{
//初始化Elment
IElement AElement;
ILineElement ALineElement = new LineElementClass();
//定义样式
//IHashLineSymbol AhashLineSymbol = new HashLineSymbolClass();
//ILineProperties AlineProperties = AhashLineSymbol as ILineProperties;
//AlineProperties.Offset = 0;
//double[] dob = new double[4];
//dob[0] = 0;
//dob[1] = 1;
//dob[2] = 2;
//dob[3] = 3;
//ITemplate template = new TemplateClass();
//template.Interval = 1;
//for (int i = 0; i < dob.Length; i += 2)
//{
// template.AddPatternElement(dob[i], dob[i + 1]);
//}
//AlineProperties.Template = template;
//AhashLineSymbol.Width = Pwidth;
//AhashLineSymbol.Color = Pcolor;
//AhashLineSymbol.Angle = 90;
//设置element
AElement = ALineElement as IElement;
AElement.Geometry = pGeometry;
ICartographicLineSymbol cartographicLineSymbol = new CartographicLineSymbolClass();
cartographicLineSymbol.Cap = esriLineCapStyle.esriLCSButt;
cartographicLineSymbol.Join = esriLineJoinStyle.esriLJSBevel;
cartographicLineSymbol.Width = Pwidth;
cartographicLineSymbol.MiterLimit = 4;
cartographicLineSymbol.Color = Pcolor;
ILineProperties lineProperties;
lineProperties = cartographicLineSymbol as ILineProperties;
lineProperties.Offset = 0;
double[] dob = new double[4];
dob[0] = 0;
dob[1] = 1;
dob[2] = 2;
dob[3] = 3;
ITemplate template = new TemplateClass();
template.Interval = 1;
for (int i = 0; i < dob.Length; i += 2)
{
template.AddPatternElement(dob[i], dob[i + 1]);
}
lineProperties.Template = template;
ALineElement.Symbol = cartographicLineSymbol;
pGraphicsContainer.AddElement((IElement)ALineElement, 0);
}
catch (Exception ex)
{
Class_Log4Net.WriteError("Class_Createshp类AddLine()" + ex.Message + ex.Source);
}
}