Add Along Z Dimension to 3D Sketch Example (C#)
This example shows how to add a display dimension along the z axis in
a 3D sketch.
//---------------------------------------------------------------------------
// Preconditions:
// 1. Open SolidWorks.
// 2. Verify the location of the part template.
//
// Postconditions:
// 1. Click the green check mark in the Modify dimension
dialog
// (look for the hidden dialog behind your other windows).
// 2. 3DSketch1 is in edit mode and contains a spline
and a corner rectangle.
// 3. The display dimension of 64.809 mm appears on the
z axis starting at
// (-0.03841894197919, -0.03273212874668, 0.042510877252)
// while the sketch is in edit mode.
//---------------------------------------------------------------------------
using SolidWorks.Interop.sldworks;
using SolidWorks.Interop.swconst;
using System;
namespace AddAlongZDimension_CSharp.csproj
{
partial
class SolidWorksMacro
{
ModelDoc2
Part;
DisplayDimension
myDisplayDim;
bool
boolstatus;
int
longstatus;
public
void Main()
{
swApp.ResetUntitledCount(0,
0, 0);
Part
= (ModelDoc2)swApp.NewDocument("C:\\Documents and Settings\\All Users\\Application
Data\\SolidWorks\\SolidWorks 2010\\templates\\Part.prtdot", 0, 0,
0);
swApp.ActivateDoc2("Part1",
false, ref longstatus);
Part
= (ModelDoc2)swApp.ActiveDoc;
Part.SketchManager.Insert3DSketch(true);
object
vSkLines = null;
vSkLines
= Part.SketchManager.CreateCornerRectangle(-0.05171778666374, 0.01933785938058,
0.03, 0.08445537697179, -0.04142795937025, -0.03);
boolstatus
= Part.Extension.SelectByID2("Right Plane", "PLANE",
0, 0, 0, false, 0, null, 0);
Part.ClearSelection2(true);
object
pointArray = null;
double[]
points = new double[12];
points[0]
= 0;
points[1]
= -0.03591009660795;
points[2]
= 0.04608246573503;
points[3]
= 0;
points[4]
= 0.0147420284178;
points[5]
= 0.005170989573514;
points[6]
= 0;
points[7]
= -0.006478053228363;
points[8]
= -0.04282131900055;
points[9]
= 0;
points[10]
= -0.02294509596464;
points[11]
= -0.09396066420243;
pointArray
= points;
SketchSegment
skSegment = default(SketchSegment);
skSegment
= Part.SketchManager.CreateSpline2((pointArray), true);
Part.SketchManager.InsertSketch(true);
boolstatus
= Part.Extension.SelectByID2("3DSketch1", "SKETCH",
0, 0, 0, false, 0, null, 0);
Part.EditSketch();
boolstatus
= Part.Extension.SelectByID2("Point5", "SKETCHPOINT",
0, -0.03591009660795, 0.04608246573503, false, 0, null, 0);
boolstatus
= Part.Extension.SelectByID2("Point4", "SKETCHPOINT",
0.08445537697179, 0.02732744880518, -0.01872625210654, true, 0, null,
0);
myDisplayDim
= Part.SketchManager.AddAlongZDimension(-0.03841894197919,
-0.03273212874668, 0.042510877252);
Part.ClearSelection2(true);
Part.ViewZoomtofit2();
}
public
SldWorks swApp;
}
}