文档彩票走势图>>VectorDraw Developer Framework使用教程>>VDF常见问题整理(十一):如何创建一个复制模型视图中显示的3D视图的视口?
VDF常见问题整理(十一):如何创建一个复制模型视图中显示的3D视图的视口?
VectorDraw Developer Framework(VDF)是一个用于应用程序可视化的图形引擎库。有了VDF提供的功能,您可以轻松地创建、编辑、管理、输出、输入和打印2D和3D图形文件。
VectorDraw Developer Framework试用版下载
问:
我想在一个旋转的3D图像的布局中创建一个视口。我希望新的视口能够准确显示模型视图中的内容,具有相同的旋转,目标点,范围等。您是否在其中一个示例应用程序或其他地方有一些代码可以完成我正在寻找的内容?这是创建一个复制模型视图中显示的3D视图的视口。
答:
您可以使用vdView对象,它可以将布局或模型的所有视图属性复制到另一个布局/视频。
请参阅以下代码:
private void button3_Click(object sender, EventArgs e) { vdDocument doc = vdFramedControl1.BaseControl.ActiveDocument; vdLayout lay = new vdLayout(doc, "BBB"); doc.LayOuts.AddItem(lay); vdViewport vp = new vdViewport(); vp.SetUnRegisterDocument(doc); vp.setDocumentDefaults(); vp.Height = doc.Model.ViewSize / doc.Model.PixelSize; vp.Width = vdFramedControl1.BaseControl.Width; vp.Center = new gPoint(vp.Width/2.0, vp.Height / 2.0d); vdView viewTMP = new vdView(doc, "mYvIEW1"); viewTMP.SetFromLayout(doc.Model); vp.SetFromView(viewTMP);// viewTMP is not necessary to be // added to the document in such occasions // or by hard code, without using the vdView object like : //vp.World2ViewMatrix = new Matrix(doc.Model.World2ViewMatrix); //vp.ViewCenter = new gPoint(doc.Model.ViewCenter); //vp.ViewSize = doc.Model.ViewSize; //vp.RenderMode = doc.Model.RenderMode; // set also PerspectiveMod,LensAngle, FocalLength etc if you use them lay.Entities.AddItem(vp); if (vp.Height < vp.Width) lay.Printer.LandScape = true; lay.Printer.PrintExtents(); lay.Printer.PrintScaleToFit(); lay.Printer.Update(); lay.Update(); doc.ActiveLayOut = lay; doc.CommandAction.Zoom("E", 0, 0); } Send comments o
以上回答希望对您使用VectorDraw产品有帮助,如果您有其他的疑问或者建议可以在评论区留言,我们会及时处理。
相关资料推荐: