与LEADTOOLS注释,您可以创建自己的自定义的拇指(控制点)。您可以创建自定义样式的位置,旋转中心和旋转夹具的拇指。
实现一个用户定义的拇指风格,创建一个类,它实现了IAnnThumbStyle接口。然后,指定您的自定义一个拇指样式类IAnnObjectRenderer接口,它将使用定制的拇指风格呈现注释对象时。
下面的例子演示了如何创建一个自定义注释对象的拇指。从创建的例子开始实现用户定义的对象与LEADTOOLS注释。
首先,创建一个新类,从基类派生而来AnnThumbStyle,覆盖目录方法:
公共类AnnTriangleThumbStyle: AnnThumbStyle
{
受保护的覆盖AnnThumbStyle Create ()
{
返回新AnnTriangleThumbStyle ();
}
受保护的覆盖无效目录(System.Drawing.Drawing2D。GraphicsPath路径,LeadRectD矩形)
{
如果(路径! =零)
{
/ /添加我们的三角形
浮动左= (浮动)rect.Left;
浮动正确的= (浮动)rect.Right;
浮动宽度=(左,右)/ 2;
浮动顶级= (浮动)rect.Top;
浮动底= (浮动)rect.Bottom;
路径。AddLine(左、下、左+宽,顶部);
路径。AddLine(左+宽,顶部,底部);
路径。AddLine(右、下、左、底部);
path.CloseFigure ();
}
}
}
接下来,指定您的自定义拇指样式类注释对象渲染器。替换后的代码设置我们的渲染器,AnnPolylineObject一样的评论InitializeTriangleObject:
/ /设置渲染器
/ /获取当前折线渲染器(我们需要使用一些属性没有改变)
IAnnObjectRenderer polylineRenderer = annotations.AutomationManager.RenderingEngine.Renderers [AnnObject.PolylineObjectId];
/ /创建新的渲染器
IAnnObjectRenderer渲染器=新AnnPolylineObjectRenderer ();
/ /渲染器使用现有的标签。它没有被改变
渲染器。LabelRenderer = polylineRenderer.LabelRenderer;
/ /现在,使用新的三角形大拇指:
/ /改变位置的拇指的风格
AnnTriangleThumbStyle locationThumb =新AnnTriangleThumbStyle ();
locationThumb。= LeadSizeD大小。创建(72 * 72 * 2);
locationThumb。中风= AnnStroke.Create (AnnSolidColorBrush.Create (“黑色”),LeadLengthD.Create (1));
locationThumb。填补= AnnSolidColorBrush.Create (“# 7 f0000ff”);
渲染器。LocationsThumbStyle = locationThumb;
/ /改变旋转中心拇指风格
AnnTriangleThumbStyle rotateCenterThumb =新AnnTriangleThumbStyle ();
rotateCenterThumb。= LeadSizeD大小。创建(72、72);
rotateCenterThumb。中风= AnnStroke.Create (AnnSolidColorBrush.Create (“黑色”),LeadLengthD.Create (1));
rotateCenterThumb。填补= AnnSolidColorBrush.Create (“# EFFF0000”);
渲染器。RotateCenterThumbStyle = rotateCenterThumb;
/ /改变旋转夹拇指风格
AnnTriangleThumbStyle rotateGripperThumb =新AnnTriangleThumbStyle ();
rotateGripperThumb。= LeadSizeD大小。创建(72 * 72 * 2);
rotateGripperThumb。中风= AnnStroke.Create (AnnSolidColorBrush.Create (“黑色”),LeadLengthD.Create (1));
rotateGripperThumb。填补= AnnSolidColorBrush.Create (“# 3 f00ff00”);
渲染器。RotateGripperThumbStyle = rotateGripperThumb;
annotations.AutomationManager.RenderingEngine.Renderers [AnnTriangleObject。MyId] =渲染器;
帮助收藏
光栅net|C API|c++类库|HTML5 JavaScript
文档net|C API|c++类库|HTML5 JavaScript
医疗net|C API|c++类库|HTML5 JavaScript
医疗Web查看器net
188宝金博怎么下载
支持的平台上
net, Java, Android和iOS / macOS组件
C / c++类库的API
HTML5 JavaScript库
你的邮件已经发送到支持!有人应该联系!如果你的问题是紧急请回到聊天。
聊天时间:
周一——周五,上午6点等
谢谢你的反馈!
请填写表单重新开始一个新的聊天。
所有代理目前离线。
聊天时间:
周一-周五
早上8:30 - 6点
联系我们请填写这张表格,我们将通过电子邮件联系你。