提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:黄竹雯|2018-12-12 16:10:56.000|阅读 242 次
概述:本系列教程整理了VectorDraw 最常见问题,教程整理的很齐全,非常适合新手学习,希望对大家有一定的帮助!
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
VectorDraw Developer Framework(VDF)是一个用于应用程序可视化的图形引擎库。有了VDF提供的功能,您可以轻松地创建、编辑、管理、输出、输入和打印2D和3D图形文件。该库还支持许多矢量和栅格输入和输出格式,包括本地PDF和SVG导出。
【VectorDraw Developer Framework最新版下载】
VectorDraw web library (javascript)是一个矢量图形库。VectorDraw web library (javascript)不仅能打开CAD图纸,而且能显示任何支持HTML5标准平台上的通用矢量对象,如Windows,安卓,iOS和Linux。无需任何安装,VectorDraw web library (javascript)就可以运行在任何支持canvas标签和Javascript的主流浏览器(Chrome, Firefox, Safari, Opera, Dolphin, Boat等等)中。
【VectorDraw web library (javascript)最新版下载】
一. 通过单击一个来选择多个连续实体的方法
问:请问可以通过单击一个来选择多个连续实体的方法是什么?
答:由于图中的实体没有完全相互持续,并且其中一些实体存在一个小的“间隙”,因此你需要使用如下所示代码:
vdFigure fig; gPoint pt; doc.Prompt("select a curve"); doc.ActionUtility.getUserEntity(out fig,out pt); doc.Prompt(null); vdCurve curve = fig as vdCurve; if(curve == null) return; gPoint sp = curve.getStartPoint(); gPoint ep = curve.getEndPoint(); vdSelection set = new vdSelection(); set.SetUnRegisterDocument(doc); set.AddItem(curve, true, vdSelection.AddItemCheck.RemoveInVisibleEntities); double equality = 0.01; int pos = 0; while (pos < set.Count && sp != null && ep != null) { gPoints pts = new gPoints(); pts.Add((sp - new gPoint(equality, equality))); pts.Add((sp + new gPoint(equality, equality))); set.Select(RenderSelect.SelectingMode.CrossingWindowRectangle, pts); pts = new gPoints(); pts.Add((ep - new gPoint(equality, equality))); pts.Add((ep + new gPoint(equality, equality))); set.Select(RenderSelect.SelectingMode.CrossingWindowRectangle, pts); pos++; sp = null; ep = null; for (int i = pos; i < set.Count; i++) { curve = set[i] as vdCurve; if (curve != null) { sp = curve.getStartPoint(); ep = curve.getEndPoint(); break; } pos++; } } doc.UndoHistory.StoreUndoGroup(true); foreach (vdFigure ent in set) { ent.PenColor = new vdColor(Color.Blue); ent.LineWeight = VectorDraw.Professional.Constants.VdConstLineWeight.LW_120; } doc.UndoHistory.StoreUndoGroup(false); set.Invalidate();
二. 使命令的行文本框接受空格键为enter
问:当我按下回车键并按空格键时,我想使命令行的行为相同。
答:你需要使用Command的行userText框事件KeyDown,并在按下空格时向其发送一条输入消息,如下代码所示:
void UserText_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Space) { VectorDraw.WinMessages.MessageManager.MSG m = new VectorDraw.WinMessages.MessageManager.MSG(); m.hwnd = vdFramedControl1.CommandLine.UserText.Handle; m.lParam = IntPtr.Zero; m.message = (int)VectorDraw.WinMessages.MessageManager.Messages.WM_KEYDOWN; m.wParam = (IntPtr)Keys.Enter; VectorDraw.WinMessages.MessageManager.TranslateMessage(ref m); VectorDraw.WinMessages.MessageManager.DispatchMessage(ref m); } } private void Form1_Load(object sender, EventArgs e) { vdFramedControl1.CommandLine.UserText.KeyDown += new KeyEventHandler(UserText_KeyDown); }
三. 在cmdText启动之前设置文本的高度
问:文档的全局/默认文本高度是否存在?我想要这个,因为当我想从用户输入高度值时,它在用户创建此vdtext时不会影响当前的vdtext。当用户按照你在先前邮件中的建议完成命令时,高度会生效。但我希望用户在撰写文本时可以看到新的高度。
答:你可以在cmdText启动之前设置文本的高度。请参阅下面的代码和备注:
private void button3_Click(object sender, EventArgs e) { vdDocument doc = vdFramedControl1.BaseControl.ActiveDocument; doc.New(); cmdTextWithHeight(doc, null, null, null, 5.0); cmdTextWithHeight(doc, "VDF version6", new gPoint(30,30), null, 15.0); cmdTextWithHeight(doc, null, new gPoint(10,10), 0.0d, 25.0); cmdTextWithHeight(doc, "hi", null, 30.0, 35.0); } private bool cmdTextWithHeight(vdDocument document, object TextString, object InsertionPoint, object RotationAngle, double TextHeight) { bool ret = false; double oldheight = document.ActiveTextStyle.Height; // store the old value to set this back after this finishes document.ActiveTextStyle.Height = TextHeight;// set the Height that is needed to activetextstyle if (document.CommandAction.CmdText(TextString, InsertionPoint, RotationAngle)) { vdText txt = document.ActiveLayOut.Entities[document.ActiveLayOut.Entities.Count - 1] as vdText; // get the text that was just created if (txt != null) { //... do other things there with the just-created-vdText if you like !! txt.Height = TextHeight; // see it to the Height so evene if activeTextStyle changes this remains. ret = true; } } document.ActiveTextStyle.Height = oldheight; // set the original value back. return ret; }
未完待续~
*点击图片查看活动详情*
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn
本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
面向对象的矢量图形引擎库,支持2D和3D图形,用于可视化其应用程序,无限分发授权。
VectorDraw web library (javascript)基于HTML5的矢量图引擎,100%采用Javascript编写,无客户端插件也可在浏览器中编辑你的矢量图形。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@pclwef.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢