Create Section View and Get Some Data Example (C#)
This example creates a section view and gets some of the newly created
section view's data.
//
-------------------------------------------------------------------------
// Preconditions: Open:
// <SolidWorks_install_dir>\samples\tutorial\driveworksexpress\moble gantry.slddrw
//
// Postconditions: Section view of Drawing View4 is created
// when the macro is run.
//
// NOTE: Because
the drawing is used in a SolidWorks
// online
tutorial, do not save the drawing when
// you
close it.
//
-------------------------------------------------------------------------
using SolidWorks.Interop.sldworks;
using SolidWorks.Interop.swconst;
using System;
using System.Diagnostics;
namespace CreateSectionViewAt5Drawing_CSharp.csproj
{
partial
class SolidWorksMacro
{
public
void Main()
{
ModelDoc2
swModel = default(ModelDoc2);
DrawingDoc
swDrawing = default(DrawingDoc);
SketchManager
swSketchMgr = default(SketchManager);
SketchSegment
swSketchSegment = default(SketchSegment);
object
excludedComponents = null;
View
swView = default(View);
DrSection
swSectionView = default(DrSection);
bool
boolstatus = false;
swModel
= (ModelDoc2)swApp.ActiveDoc;
swDrawing
= (DrawingDoc)swModel;
//
Activate the view for which you want to create a section view
boolstatus
= swDrawing.ActivateView("Drawing View4");
swModel.ClearSelection2(true);
//
Create section view line
swSketchMgr
= swModel.SketchManager;
swSketchSegment
= swSketchMgr.CreateLine(-1.383705,
2.078706, 0.0, 2.747162, 0.0441, 0.0);
//
Create the section view at the specified coordinates
//
and up to the specified distance from the section-view line
excludedComponents
= null;
swView
= swDrawing.CreateSectionViewAt5(0.1604082711061,
0.2048687170364, 0, "D", 32, (excludedComponents), 0.00835);
//
Activate the section view
boolstatus
= swDrawing.ActivateView("Drawing View6");
//
Get the newly created section-view data
swSectionView
= (DrSection)swView.GetSection();
Debug.Print("Section
view data: ");
Debug.Print("
Label: " + swSectionView.GetLabel());
Debug.Print("
Name of section line: " + swSectionView.GetName());
Debug.Print("
Depth: " + swSectionView.SectionDepth
* 1000.0 + " mm");
}
public
SldWorks swApp;
}
}