龙空技术网

【CADSoftTools技术问答】从绘制到阅览,精选最实用的CAD工具

慧都科技 53

前言:

如今姐妹们对“vb circle语句”大概比较关切,你们都需要剖析一些“vb circle语句”的相关知识。那么小编在网摘上搜集了一些对于“vb circle语句””的相关知识,希望同学们能喜欢,小伙伴们快快来学习一下吧!

CAD是在工业与建筑领域运用非常广泛的绘图软件,CADSoftTools公司旨在帮助客户更方便有效地处理设计与项目文档。旗下多款CAD控件和软件也是受到广泛关注,如CAD .NET、CAD VCL、ABViewer等等。

在实际的操作中,我们或多或少的都会遇到各种“疑难杂症”。别慌!小编特意为大家整理了近期CAD技术者的技术问答,免去了你四处搜索的繁琐过程。在慧都,也许就有你想要的所有答案!

CADSoftTools——CAD.NET常见问题解答

Q:关于使用SaveToFile和SaveAsDXF导出(或保存)部分区域的问题

问:需要确定的是:是否没有方法来裁剪或使用SaveAsDXF在选定区域的DXF中获得完整详细的导出?

答:当涉及到DXF导出时,您不能保存选定的区域,您可以保存某些CAD实体(例如CADImage.SelectedEntities):

·创建一个新的CADImage实例

CADImage cadImage = new CADImage();cadImage.InitialNewImage();

·使用CADEntity后代类的构造函数和方法CADEntity.AssignEntity创建实体的副本,然后将创建的副本添加到新的CADImage。或者使用CADImage.CopyEntities和CADImage.PasteEntities方法将实体复制/粘贴到新的CADImage中。

更多CAD.NET精彩问答尽在 【FAQ】CAD .NET热门技术问答精选合集-控件新闻-慧都网

CADSoftTools——CAD.VCL常见问题解答

Q:是否能展示一个爆炸方块的代码?

A:您将在下面找到所需的示例代码:

interfaceuses..., CADImage, DXFConv, sgFunction, sgConsts;...implementation{$R *.dfm}procedure ExplodeInsert(ACADImage: TsgCADImage; AInsert: TsgDXFInsert);var I, J: Integer; vBlockEnt: TsgDXFEntity; vDXFInsert: TsgDXFInsert; vDXFLine: TsgDXFLine; vDXFLWPolyline: TsgDXFPolyline; vDXFCircle: TsgDXFCircle; vMatrix: TFMatrix; vPoint, vScale, vExtrusion: TFPoint; vAngle: Double;begin vMatrix := AInsert.GetMatrix; // Iterate through entities in the block for I := 0 to AInsert.Block.Count - 1 do begin vBlockEnt := AInsert.Block.Entities[I]; case vBlockEnt.EntType of ceLine: // LINE entity begin // Create a copy of the entity which is inside the block vDXFLine := TsgDXFLine.Create; vDXFLine.AssignEntity(vBlockEnt); // Multiply coordinates of the created entity by the transformation matrix vDXFLine.Point := FPointXMat(vDXFLine.Point, vMatrix); vDXFLine.Point1 := FPointXMat(vDXFLine.Point1, vMatrix); ACADImage.Converter.Loads(vDXFLine); ACADImage.CurrentLayout.AddEntity(vDXFLine); end; ceLWPolyline: // LWPOLYLINE entity begin vDXFLWPolyline := TsgDXFLWPolyline.Create; vDXFLWPolyline.AssignEntity(vBlockEnt); for J := 0 to vDXFLWPolyline.Count - 1 do vDXFLWPolyline.Vertexes[J].Point := FPointXMat(vDXFLWPolyline.Vertexes[J].Point, vMatrix); ACADImage.Converter.Loads(vDXFLWPolyline); ACADImage.CurrentLayout.AddEntity(vDXFLWPolyline); end; ceCircle: // CIRCLE entity begin vDXFCircle := TsgDXFCircle.Create; vDXFCircle.AssignEntity(vBlockEnt); vDXFCircle.Point := FPointXMat(vDXFCircle.Point, vMatrix); vDXFCircle.Radius := DistanceFVector(AffineTransformPoint(MakeFPoint(0, vDXFCircle.Radius, 0), vMatrix)); ACADImage.Converter.Loads(vDXFCircle); ACADImage.CurrentLayout.AddEntity(vDXFCircle); end; ceInsert: // nested INSERT entity begin //ExplodeInsert(ACADImage, vSrcEnt as TsgDXFInsert); vDXFInsert := TsgDXFInsert.Create; vDXFInsert.AssignEntity(vBlockEnt); ExtractMatrixParams(FMatXMat(TsgDXFInsert(vBlockEnt).GetMatrix, vMatrix), vPoint, vScale, vExtrusion, vAngle); vDXFInsert.Point := vPoint; vDXFInsert.Scale := vScale; vDXFInsert.Extrusion := vExtrusion; vDXFInsert.Angle := vAngle; ACADImage.Converter.Loads(vDXFInsert); ACADImage.CurrentLayout.AddEntity(vDXFInsert); end; end; end; // Delete the INSERT after exploding ACADImage.Converter.RemoveEntity(AInsert, True); // Recalculate the CAD image extents ACADImage.GetExtents();end;

更多CAD.VCL精彩问答尽在 【FAQ】CAD VCL热门技术问答精选合集-控件新闻-慧都网

CADSoftTools——ABViewer常见问题解答

Q:关于ASCII DXF格式

问:当将图纸导出到DXF时,无论我指定哪个版本,都无法在我使用的任何软件中读取它(PADS,Altium,Pulsonix,LibreCAD,...)。当查看文件时,第一个line是“999”,删除该行没有用。想问有什么是错了吗?

答:ABViewer创建了兼容AutoCAD的DXF文件。尝试使用AutoCAD或DWG TrueView打开输出DXF图形。

更多ABViewer精彩问答尽在 【FAQ】ABViewer热门技术问答精选合集-控件新闻-慧都网

想要高质量、高效率、低成本完成专业的CAD编辑与预览吗?良心推荐:ABViewer——一款简单实用的CAD文档管理工具。

标签: #vb circle语句 #vbnet与cad