CAD与GIS转换:注记转换及角度问题

CAD注记旋转方向用的是弧度;

GIS注记旋转方向用的是角度;

二者使用需要转换。

示例过程:

一、GIS注记转CAD

1.1获得GIS注记文字、尺寸、角度

//Author:AllenRobin http://gisrsman.cnblogs.com
IAnnotationFeature pAnnoFeature = pFeature
as IAnnotationFeature;
ITextElement pTextElement = pAnnoFeature.Annotation as ITextElement;
string pAnnoText = pTextElement.Text;
double pAnnoSize = pTextElement.Symbol.Size;
 double pAnnoAngle = pTextElement.Symbol.Angle;

1.2 在CAD中插入AcadText

//Author:AllenRobin http://gisrsman.cnblogs.com
double
[] pCenterPoint=new double[3]; pCenterPoint[0] = (pElement.Geometry.Envelope.XMin + pElement.Geometry.Envelope.XMax)/2; pCenterPoint[1] = (pElement.Geometry.Envelope.YMin + pElement.Geometry.Envelope.YMax) / 2; pCenterPoint[2] = 0; AcadText pAcadText = CadModelSpace.AddText(pAnnoText, pCenterPoint, textHeight);

1.3从GIS获得注记角度需要转换为弧度

//Author:AllenRobin http://gisrsman.cnblogs.com
double
anlgeReal = pAnnoAngle * Math.PI / 180; pAcadText.Rotate(pCenterPoint, anlgeReal);
版权声明:本博原创文章可以被转载,但是在未经本人许可前,不得用于任何商业用途或其他以盈利为目的的用途。如需转载,请在转载时声明作者、保留出处。本人保留对本文的一切权利。 作者:AllenRobin Blog:http://gisrsman.cnblogs.com
原文地址:https://www.cnblogs.com/GISRSMAN/p/4554547.html