一个会的不多的人

一个会的不多的人

大家好,今天要讲的是关于在做Solidworks二次开发的时候,想要实现一些软件中操作的时候,我们最直接的办法就是使用宏录制功能,会将我们想要的API直接录制出来,这样避免了很多我们自己去查询的过程。

下面通过一些录制的例子为大家讲解一下:

(1)首先讲一个使用曲线文件的方式来创建曲线,并且在曲线上面写属性的例子。

 public void Main()
        {           
            ModelDoc2 swDoc = null;
            PartDoc swPart = null;
            DrawingDoc swDrawing = null;
            AssemblyDoc swAssembly = null;
            bool boolstatus = false;
            int longstatus = 0;
            int longwarnings = 0;
            swDoc = ((ModelDoc2)(swApp.ActiveDoc));
            ModelView myModelView = null;
            myModelView = ((ModelView)(swDoc.ActiveView));
            myModelView.FrameState = ((int)(swWindowState_e.swWindowMaximized));
            swDoc.InsertCurveFileBegin();
            boolstatus = swDoc.InsertCurveFilePoint(-0.0125, 0, 0.05);
            boolstatus = swDoc.InsertCurveFilePoint(0.0125, 0, 0.05);
            boolstatus = swDoc.InsertCurveFileEnd();
            boolstatus = swDoc.Extension.SelectByRay(-0.035985011431648672, -0.024841486692693593, 0.14995603843158278, 0.3298745673601709, 0.2260534376636395, -0.91656020704010022, 0.00027374158088592338, 1, false, 0, 0);
            boolstatus = swDoc.SelectedEdgeProperties("例子");
            boolstatus = swDoc.Extension.SelectByRay(-0.033943287640994413, -0.02468728714784163, 0.14999406903422141, 0.3298745673601709, 0.2260534376636395, -0.91656020704010022, 0.00027374158088592338, 1, false, 0, 0);
            boolstatus = swDoc.SelectedEdgeProperties("例1");
            return;
        }

对程序进行一个解读,通过对程序进行分解,其实头部文件是公共的信息,主要有几个API我们要特别进行关注。

第一个为InsertCurveFileBegin(),这个API的意思为开始创建曲线,它和InsertCurveFileEnd()这个API通常是一起应用的,代表开始和结束。

然后创建一个多大的曲线是通过InsertCurveFilePoint()这个API来控制的。

当我们创建一个曲线以后,再使用SelectedEdgeProperties("例子")这个API来为所选中的曲线进行设定属性值。

这个API的官方解释如下所示:

C# Solidworks二次开发:宏录制实战讲解(第一讲)-LMLPHP

下面是使用备注:

Remarks

这是第一例子。

下面我们再介绍一个例子:

(2)第二个例子讲的是讲零部件进行整屏显示。

 public void Main()
        {       
            ModelDoc2 swDoc = null;
            PartDoc swPart = null;
            DrawingDoc swDrawing = null;
            AssemblyDoc swAssembly = null;
            bool boolstatus = false;
            int longstatus = 0;
            int longwarnings = 0;
            swDoc = ((ModelDoc2)(swApp.ActiveDoc));
            // Zoom To Fit
            swDoc.ViewZoomtofit2();
            return;
        }

这个例子比较简单,需要关注的API为ViewZoomtofit2(),下面官方的具体解释,没什么可多说的。

C# Solidworks二次开发:宏录制实战讲解(第一讲)-LMLPHP

本篇文章就介绍这么多,我们下篇文章再见。

10-31 08:33