提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:李显亮|2020-08-19 15:53:35.170|阅读 133 次
概述:本系列教程整理了VectorDraw Developer Framework(VDF)最常见问题,教程整理的很齐全,非常适合新手学习。本文将会介绍如何在非XY平面中创建多边形剖面线。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
VectorDraw Developer Framework(VDF)是一个用于应用程序可视化的图形引擎库。有了VDF提供的功能,您可以轻松地创建、编辑、管理、输出、输入和打印2D和3D图形文件。该库还支持许多矢量和栅格输入和输出格式,包括本地PDF和SVG导出。
点击下载VectorDraw Developer Framework
问:如何在非X / Y平面中创建多边形剖面线?
答:创建剖面线时,多曲线和剖面线应在X / Y平面中,因此,如果在SAME中有折线,但在X / Y平面中没有,则需要将它们“带”到X / Y平面,然后创建多边形线让他们回到飞机上。参照以下代码:
private void Test() { vdDocument doc = vdFramedControl.BaseControl.ActiveDocument; doc.New(); #region create 2 random polylines // 我们将使用两个圆,以便从中获得一些随机的点来创建折线。 vdCircle cir1 = new vdCircle(doc, new gPoint(3, 2), 5); vdCircle cir2 = new vdCircle(doc, new gPoint(3, 2), 2); Vector vec = new Vector(0.3, 0.7, -0.2); vec.Normalize(); cir1.ExtrusionVector = vec; cir2.ExtrusionVector = vec; // 在同一个“随机”平面上产生了两个圆 //从中得到一些点,从而“拥有”两条折线 gPoints pts1 = cir1.geomMeasure(7); // 第1折线的点 gPoints pts2 = cir2.geomMeasure(4); // 第2折线的点 #endregion Matrix mat = new Matrix(); // 这是这些圆所属的平面的矩阵 mat.SetToViewDirection(vec, 0.0d); Matrix invmat = new Matrix(mat.GetInvertion()); // 为多边形创建曲线 vdPolyline pl = new vdPolyline(doc, pts1); // 矢量应垂直于折线所在的平面,也可用CalculateNormal3P计算,如: Vector vec2 = new Vector(); Vector.CalculateNormal3P(pl.VertexList[0] as gPoint, pl.VertexList[1] as gPoint, pl.VertexList[2] as gPoint, out vec2); // 在这个例子中,我们已经从圆中得到了它,正如我们在上面设置的那样。 pl.ExtrusionVector = vec; pl.Flag = VdConstPlineFlag.PlFlagCLOSE; pl.Transformby(mat); // 我们需要把这些点放到X/Y平面上 pl.Update(); VectorDraw.Professional.vdCollections.vdCurves curves_Outer = new VectorDraw.Professional.vdCollections.vdCurves(); curves_Outer.AddItem(pl); pl = new vdPolyline(doc, pts2); pl.ExtrusionVector = vec; pl.Flag = VdConstPlineFlag.PlFlagCLOSE; pl.Transformby(mat); pl.Update(); // 我们需要把这些点放到X/Y平面上 VectorDraw.Professional.vdCollections.vdCurves curves_Inside = new VectorDraw.Professional.vdCollections.vdCurves(); curves_Inside.AddItem(pl); //'创建polyhatch vdPolyhatch onehatch = new vdPolyhatch(doc); onehatch.PolyCurves.AddItem(curves_Outer); onehatch.PolyCurves.AddItem(curves_Inside); onehatch.HatchProperties = new VectorDraw.Professional.vdObjects.vdHatchProperties(VectorDraw.Professional.Constants.VdConstFill.VdFillModeSolid); onehatch.Transformby(invmat); // 把它带到圆所在的平面上。 doc.Model.Entities.AddItem(onehatch); //只是为了显示的原因添加圆圈。没有必要添加它们 cir1.PenColor.FromSystemColor(Color.Red); cir2.PenColor.FromSystemColor(Color.Red); doc.Model.Entities.AddItem(cir1); doc.Model.Entities.AddItem(cir2); doc.CommandAction.Zoom("E", 0, 0); }以上问答,如果您有任何的疑惑都可以在评论区留言,我们会及时回复。此系列的问答教程我们会持续更新,如果您感兴趣,可以多多关注本教程。
热门文章推荐:
=======================================================
如果您对想要购买正版授权VectorDraw Developer Framework(VDF),可以联系咨询相关问题。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn
本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
面向对象的矢量图形引擎库,支持2D和3D图形,用于可视化其应用程序,无限分发授权。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@cahobeh.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢