Repository URL to install this package:
|
Version:
2016.3.0.4050 ▾
|
draftsight
/
opt
/
dassault-systemes
/
DraftSight
/
APISDK
/
Create_Linear_Pattern_Example_VBNET.htm
|
|---|
<html>
<head>
<title>Create Linear Pattern 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,linear patterns">
</head>
<body>
<h1>Create Linear Pattern Example (VB.NET)</h1>
<p>This example shows how to create a linear pattern.</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 example 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 document.<br>
' 6. Click Start Debugging.<br>
'<br>
' Postconditions: <br>
' 1. Draws a Circle.<br>
' 2. Draws a 2D PolyLine.<br>
' 3. Creates a linear pattern using the Circle and 2D PolyLine <br>
' entities.<br>
' 4. Zooms the drawing to fit.<br>
' 5. Examine the drawing.<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>
<br>
<br>
</span><span style="color: Blue">Module</span><span style="color: Black">
Module1<br>
<br>
</span><span style="color: Blue">Sub</span><span style="color: Black">
Main()<br>
<br>
</span><span style="color: Green">'Connect to DraftSight application<br>
</span><span style="color: Black"> </span><span style="color: Blue">Dim</span><span style="color: Black">
dsApp = GetObject(, </span><span style="color: #a31515">"DraftSight.Application"</span><span style="color: Black">)<br>
dsApp.<b>AbortRunningCommand</b>() ' </span>
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.<b>GetActiveDocument</b>()<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>
<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">'Draw a Circle<br>
</span><span style="color: Black"> </span><span style="color: Blue">Dim</span><span style="color: Black">
centerPoint </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">()
{5, 5, 0}<br>
</span><span style="color: Blue">Dim</span><span style="color: Black">
radius </span><span style="color: Blue">As</span><span style="color: Black">
</span><span style="color: Blue">Double</span><span style="color: Black"> =
3<br>
</span><span style="color: Blue">Dim</span><span style="color: Black">
dsCircle </span><span style="color: Blue">As</span><span style="color: Black">
Circle = dsSketchMgr.<b>InsertCircle</b>(centerPoint(0), centerPoint(1),
centerPoint(2), radius)<br>
<br>
</span><span style="color: Green">'Draw a 2D PolyLine<br>
</span><span style="color: Black"> </span><span style="color: Blue">Dim</span><span style="color: Black">
coordinatesArray </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">()
{10, 4, 10, 6, 14, 6, _<br>
14, 4}<br>
</span><span style="color: Blue">Dim</span><span style="color: Black">
closed </span><span style="color: Blue">As</span><span style="color: Black">
</span><span style="color: Blue">Boolean</span><span style="color: Black"> =
</span><span style="color: Blue">True<br>
</span><span style="color: Black"> </span><span style="color: Blue">Dim</span><span style="color: Black">
dsPolyLine </span><span style="color: Blue">As</span><span style="color: Black">
PolyLine = dsSketchMgr.<b>InsertPolyline2D</b>(coordinatesArray, closed)<br>
<br>
</span><span style="color: Green">'Linear pattern parameters<br>
</span><span style="color: Black"> </span><span style="color: Blue">Dim</span><span style="color: Black">
numberElementsOnVerticalAxis </span><span style="color: Blue">As</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">
numberElementsOnHorizontalAxis </span><span style="color: Blue">As</span><span style="color: Black">
</span><span style="color: Blue">Integer</span><span style="color: Black"> =
5<br>
</span><span style="color: Blue">Dim</span><span style="color: Black">
spacingOnVerticalAxis </span><span style="color: Blue">As</span><span style="color: Black">
</span><span style="color: Blue">Double</span><span style="color: Black"> =
20<br>
</span><span style="color: Blue">Dim</span><span style="color: Black">
spacingOnHorizontalAxis </span><span style="color: Blue">As</span><span style="color: Black">
</span><span style="color: Blue">Double</span><span style="color: Black"> =
40<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</span></p>
<p class="APICODE"><span style="color: Green"><br>
</span><span style="color: Black"> </span><span style="color: Green">'Prepare
list of entity types<br>
</span><span style="color: Black"> </span><span style="color: Blue">Dim</span><span style="color: Black">
dsEntityTypes </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">()
{</span><span style="color: Blue">CInt</span><span style="color: Black">(dsObjectType_e.dsCircleType),
</span><span style="color: Blue">CInt</span><span style="color: Black">(dsObjectType_e.dsPolyLineType)}<br>
<br>
</span><span style="color: Green">'Prepare list of entities<br>
</span><span style="color: Black"> </span><span style="color: Blue">Dim</span><span style="color: Black">
dsEntities </span><span style="color: Blue">As</span><span style="color: Black">
DispatchWrapper() = </span><span style="color: Blue">New</span><span style="color: Black">
DispatchWrapper() {</span><span style="color: Blue">New</span><span style="color: Black">
DispatchWrapper(dsCircle), </span><span style="color: Blue">New</span><span style="color: Black">
DispatchWrapper(dsPolyLine)}<br>
<br>
</span><span style="color: Green">'Create linear pattern<br>
</span><span style="color: Black"> dsSketchMgr.<b>PatternLinear</b>(numberElementsOnVerticalAxis,
numberElementsOnHorizontalAxis, spacingOnVerticalAxis,
spacingOnHorizontalAxis, patternAngle, dsEntityTypes, _<br>
dsEntities)<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">End</span><span style="color: Black">
</span><span style="color: Blue">Sub<br>
End</span><span style="color: Black"> </span><span style="color: Blue">
Module</span></div>
</body>
</html>