Repository URL to install this package:
|
Version:
2016.3.0.4050 ▾
|
<html>
<head>
<title>Insert Hatch Example (VB.NET)</title>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<link rel="stylesheet" type="text/css" href="ApiHelp.css">
<meta name=MS-HKWD content="VB.NET examples">
<meta name=MS-HKWD content="VB.NET examples,Hatches">
<meta name=MS-HKWD content="VB.NET examples,Hatch boundary loops">
</head>
<body>
<h1>Insert Hatch Example Example (VB.NET)</h1>
<p>This example shows how to insert a Hatch in a drawing document.</p>
<div style="font-family:Monospace; font-size: 10pt; background-color: white;">
<p class="APICODE"><span style="color:Green">
'--------------------------------------------------------------<br>
' Preconditions:<br>
' 1. Create a VB.NET Windows console project.<br>
' 2. Copy and paste this project into the VB.NET IDE.<br>
' 3. Add a reference to:<br>
' <i>install_dir</i>\<b>APISDK\tlb\DraftSight.Interop.dsAutomation.dll</b>.<br>
' 4. Add references to <b>System</b> and <b>System.Windows.Forms</b>.<br>
' 5. Start DraftSight and open a drawing document.<br>
' 6. Start debugging the project.<br>
'<br>
' Postconditions: A Hatch is inserted in the drawing document<br>
' and zoomed to fit.<br>
'----------------------------------------------------------------<br>
<br>
</span><span style="color:Blue">Imports</span><span style="color:Black">
System.Collections.Generic<br>
</span><span style="color:Blue">Imports</span><span style="color:Black">
System.Text<br>
</span><span style="color:Blue">Imports</span><span style="color:Black">
DraftSight.Interop.dsAutomation<br>
</span><span style="color:Blue">Imports</span><span style="color:Black">
System.Runtime.InteropServices<br>
</span><span style="color:Blue">Imports</span><span style="color:Black">
System.Windows.Forms<br>
</span><span style="color:Blue">Imports</span><span style="color:Black">
System.Diagnostics<br>
<br>
</span><span style="color:Blue">Module</span><span style="color:Black">
Module1<br>
<br>
</span><span style="color:Blue">Dim</span><span style="color:Black">
dsApp </span><span style="color:Blue">As</span><span style="color:Black">
DraftSight.Interop.dsAutomation.Application<br>
<br>
</span><span style="color:Blue">Sub</span><span style="color:Black">
Main()<br>
</span><span style="color:Green">'Connect to DraftSight application<br>
</span><span style="color:Black"> dsApp = GetObject(, </span>
<span style="color:#a31515">"DraftSight.Application"</span><span style="color:Black">)<br>
</span>dsApp.<b>AbortRunningCommand</b>()
' abort any command currently running in DraftSight to avoid nested commands<span style="color:Black"><br>
<br>
</span><span style="color:Green">'Get active document<br>
</span><span style="color:Black"> </span><span style="color:Blue">Dim</span><span style="color:Black">
dsDoc </span><span style="color:Blue">As</span><span style="color:Black">
Document = dsApp.GetActiveDocument()<br>
</span><span style="color:Blue">If</span><span style="color:Black">
dsDoc </span><span style="color:Blue">Is</span><span style="color:Black">
</span><span style="color:Blue">Nothing</span><span style="color:Black">
</span><span style="color:Blue">Then<br>
</span><span style="color:Black"> MessageBox.Show(</span><span style="color:#a31515">"There
are no open documents in DraftSight."</span><span style="color:Black">)<br>
</span><span style="color:Blue">Return<br>
</span><span style="color:Black"> </span><span style="color:Blue">End</span><span style="color:Black">
</span><span style="color:Blue">If<br>
<br>
</span><span style="color:Black"> </span><span style="color:Green">'Get
model space<br>
</span><span style="color:Black"> </span><span style="color:Blue">Dim</span><span style="color:Black">
dsModel </span><span style="color:Blue">As</span><span style="color:Black">
Model = dsDoc.<b>GetModel</b>()<br>
<br>
</span><span style="color:Green">'Get Sketch Manager<br>
</span><span style="color:Black"> </span><span style="color:Blue">Dim</span><span style="color:Black">
dsSketchMgr </span><span style="color:Blue">As</span><span style="color:Black">
SketchManager = dsModel.<b>GetSketchManager</b>()<br>
<br>
</span><span style="color:Green">'Hatch parameters<br>
</span><span style="color:Black"> </span><span style="color:Blue">Dim</span><span style="color:Black">
boundaryPointCountArray </span><span style="color:Blue">As</span><span style="color:Black">
</span><span style="color:Blue">Integer</span><span style="color:Black">() =
</span><span style="color:Blue">New</span><span style="color:Black"> </span>
<span style="color:Blue">Integer</span><span style="color:Black">() {4}<br>
</span><span style="color:Blue">Dim</span><span style="color:Black">
boundaryPoints </span><span style="color:Blue">As</span><span style="color:Black">
</span><span style="color:Blue">Double</span><span style="color:Black">() =
</span><span style="color:Blue">New</span><span style="color:Black"> </span>
<span style="color:Blue">Double</span><span style="color:Black">() {0, 0, 2,
0, 2, 2, 0, 2}<br>
</span><span style="color:Blue">Dim</span><span style="color:Black">
patternName </span><span style="color:Blue">As</span><span style="color:Black">
</span><span style="color:Blue">String</span><span style="color:Black"> =
</span><span style="color:#a31515">"ANSI31"<br>
</span><span style="color:Black"> </span><span style="color:Blue">Dim</span><span style="color:Black">
patternScale </span><span style="color:Blue">As</span><span style="color:Black">
</span><span style="color:Blue">Double</span><span style="color:Black"> =
1.0<br>
</span><span style="color:Blue">Dim</span><span style="color:Black">
patternAngle </span><span style="color:Blue">As</span><span style="color:Black">
</span><span style="color:Blue">Double</span><span style="color:Black"> =
Math.PI / 4 </span><span style="color:Green">' In radians<br>
<br>
</span><span style="color:Black"> </span><span style="color:Green">'Insert
Hatch<br>
</span><span style="color:Black"> </span><span style="color:Blue">Dim</span><span style="color:Black">
dsHatch </span><span style="color:Blue">As</span><span style="color:Black">
Hatch = dsSketchMgr.<b>InsertHatchByBoundary</b>(boundaryPointCountArray,
boundaryPoints, patternName, patternScale, patternAngle)<br>
</span><span style="color:Blue">If</span><span style="color:Black">
dsHatch </span><span style="color:Blue">IsNot</span><span style="color:Black">
</span><span style="color:Blue">Nothing</span><span style="color:Black">
</span><span style="color:Blue">Then<br>
</span><span style="color:Black"> </span><span style="color:Green">'Change
color of Hatch<br>
</span><span style="color:Black"> </span><span style="color:Blue">Dim</span><span style="color:Black">
dsColor </span><span style="color:Blue">As</span><span style="color:Black">
Color = dsHatch.<b>Color</b><br>
dsColor.<b>SetNamedColor</b>(dsNamedColor_e.dsNamedColor_Green)<br>
dsHatch.<b>Color</b> = dsColor<br>
<br>
</span><span style="color:Green">'Zoom to fit<br>
</span><span style="color:Black"> dsApp.<b>Zoom</b>(dsZoomRange_e.dsZoomRange_Fit,
</span><span style="color:Blue">Nothing</span><span style="color:Black">,
</span><span style="color:Blue">Nothing</span><span style="color:Black">)<br>
</span><span style="color:Blue">Else<br>
</span><span style="color:Black"> MessageBox.Show(</span><span style="color:#a31515">"Hatch
entity was not added to the current drawing."</span><span style="color:Black">)<br>
</span><span style="color:Blue">End</span><span style="color:Black">
</span><span style="color:Blue">If<br>
</span><span style="color:Black"> </span><span style="color:Blue">End</span><span style="color:Black">
</span><span style="color:Blue">Sub<br>
</span><span style="color:Black"> <br>
</span><span style="color:Blue">End</span><span style="color:Black"> </span>
<span style="color:Blue">Module</span>
</div>
</body>
</html>