Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
draftsight / opt / dassault-systemes / DraftSight / APISDK / Insert_Embedded_Object_Example_VBNET.htm
Size: Mime:
<html>

<head>
<title>Insert Embedded Object 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,embedded objects">
</head>


<body>
<h1>Insert Embedded Object Example (VB.NET)</h1>
<p>This example shows how to embed a file object in a DraftSight drawing.</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>
	'&nbsp;&nbsp;&nbsp;&nbsp;<i>install_dir</i><b>\APISDK\tlb\DraftSight.Interop.dsAutomation.dll</b>.<br>
	' 4. Add references to System and System.Windows.Forms.<br>
	' 5. Place the document to embed in the project assembly folder.<br>
	' 6. Right-click the project and select <b>Add &gt; Existing Item</b>.<br>
	' 7. Select the document to embed and click Add.<br>
	' 8. Right-click the file in Solution Explorer and select <b>Properties</b>.<br>
	' 9. For the Copy to Output property, select <b>Copy Always</b>.<br>
	'10. Modify the document name referenced in the code. <br>
	'11. Start DraftSight and open a drawing document.<br>
	'12. Start debugging the project.<br>
	'<br>
	' Postconditions: <br>
	' 1. The file object is embedded in the drawing.<br>
	' 2. Inspect the Immediate window for its position and parameters.<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.Windows.Forms<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.Diagnostics<br>
	</span><span style="color:Blue">Imports</span><span style="color:Black"> 
	System.IO<br>
	</span><span style="color:Blue">Imports</span><span style="color:Black"> 
	System.Reflection<br>
	<br>
	<br>
	</span><span style="color:Blue">Module</span><span style="color:Black"> 
	Module1<br>
	<br>
	&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">Sub</span><span style="color:Black"> 
	Main()<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Green">'Connect to DraftSight application<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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 = ConnectToDraftSight()<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">If</span><span style="color:Black"> 
	dsApp </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">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">Return<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">End</span><span style="color:Black">
	</span><span style="color:Blue">If<br>
	<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	</span>dsApp.<b>AbortRunningCommand</b>()<span style="color:Blue">
	</span><font color="#008000">' abort any command currently running in 
	DraftSight to avoid nested commands</font><span style="color:Blue"><br>
	<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Green">'Get 
	active document<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MessageBox.Show(</span><span style="color:#a31515">&quot;There 
	are no open documents in DraftSight.&quot;</span><span style="color:Black">)<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">Return<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">End</span><span style="color:Black">
	</span><span style="color:Blue">If<br>
	<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Green">'Get 
	model space<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Green">'Get sketch manager<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Green">'Embedded object parameters<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">Dim</span><span style="color:Black"> 
	filePath </span><span style="color:Blue">As</span><span style="color:Black">
	</span><span style="color:Blue">String</span><span style="color:Black"> = 
	Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location),
	</span><span style="color:#a31515">&quot;SampleDoc.docx&quot;</span><span style="color:Black">)<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">Dim</span><span style="color:Black"> 
	link </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">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">Dim</span><span style="color:Black"> 
	displayAsIcon </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">False<br>
	<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Green">'Insert 
	embedded object<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">Dim</span><span style="color:Black"> 
	dsEmbeddedObject </span><span style="color:Blue">As</span><span style="color:Black"> 
	EmbeddedObject = dsSketchMgr.<b>InsertEmbeddedObjectFromFile</b>(filePath, link, 
	displayAsIcon)<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">If</span><span style="color:Black"> 
	dsEmbeddedObject </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">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PrintParameters(dsEmbeddedObject)<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">Else<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MessageBox.Show(</span><span style="color:#a31515">&quot;Embedded 
	object entity was not added to the current drawing.&quot;</span><span style="color:Black">)<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">End</span><span style="color:Black">
	</span><span style="color:Blue">If<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">End</span><span style="color:Black">
	</span><span style="color:Blue">Sub<br>
	<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">Sub</span><span style="color:Black"> 
	PrintParameters(</span><span style="color:Blue">ByVal</span><span style="color:Black"> 
	dsEmbeddedObject </span><span style="color:Blue">As</span><span style="color:Black"> 
	EmbeddedObject)<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug.Print(Environment.NewLine &amp; </span>
	<span style="color:#a31515">&quot;Embedded object parameters...&quot;</span><span style="color:Black">)<br>
	<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Green">'Print common entity parameters<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug.Print(</span><span style="color:#a31515">&quot;Handle 
	= &quot;</span><span style="color:Black"> &amp; 
	Convert.ToString(dsEmbeddedObject.<b>Handle</b>))<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug.Print(</span><span style="color:#a31515">&quot;Color = &quot;</span><span style="color:Black"> 
	&amp; dsEmbeddedObject.<b>Color</b>.<b>GetNamedColor</b>())<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug.Print(</span><span style="color:#a31515">&quot;Erased = &quot;</span><span style="color:Black"> 
	&amp; Convert.ToString(dsEmbeddedObject.<b>Erased</b>))<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug.Print(</span><span style="color:#a31515">&quot;Layer = &quot;</span><span style="color:Black"> 
	&amp; Convert.ToString(dsEmbeddedObject.<b>Layer</b>))<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug.Print(</span><span style="color:#a31515">&quot;LineScale = &quot;</span><span style="color:Black"> 
	&amp; Convert.ToString(dsEmbeddedObject.<b>LineScale</b>))<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug.Print(</span><span style="color:#a31515">&quot;LineStyle = &quot;</span><span style="color:Black"> 
	&amp; Convert.ToString(dsEmbeddedObject.<b>LineStyle</b>))<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug.Print(</span><span style="color:#a31515">&quot;LineWeight = &quot;</span><span style="color:Black"> 
	&amp; Convert.ToString(dsEmbeddedObject.<b>LineWeight</b>))<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug.Print(</span><span style="color:#a31515">&quot;Visible = &quot;</span><span style="color:Black"> 
	&amp; Convert.ToString(dsEmbeddedObject.<b>Visible</b>))<br>
	<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">Dim</span><span style="color:Black"> 
	x1 </span><span style="color:Blue">As</span><span style="color:Black">
	</span><span style="color:Blue">Double</span><span style="color:Black">, y1
	</span><span style="color:Blue">As</span><span style="color:Black"> </span>
	<span style="color:Blue">Double</span><span style="color:Black">, z1 </span>
	<span style="color:Blue">As</span><span style="color:Black"> </span>
	<span style="color:Blue">Double<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">Dim</span><span style="color:Black"> 
	x2 </span><span style="color:Blue">As</span><span style="color:Black">
	</span><span style="color:Blue">Double</span><span style="color:Black">, y2
	</span><span style="color:Blue">As</span><span style="color:Black"> </span>
	<span style="color:Blue">Double</span><span style="color:Black">, z2 </span>
	<span style="color:Blue">As</span><span style="color:Black"> </span>
	<span style="color:Blue">Double<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dsEmbeddedObject.<b>GetBoundingBox</b>(x1, 
	y1, z1, x2, y2, z2)<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug.Print(</span><span style="color:Blue">String</span><span style="color:Black">.Format(</span><span style="color:#a31515">&quot;BoundingBox: 
	({0},{1},{2}) and ({3},{4},{5})&quot;</span><span style="color:Black">, x1, y1, 
	z1, x2, y2, _<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; z2))<br>
	<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Green">'Print embedded object parameters<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug.Print(</span><span style="color:#a31515">&quot;Height 
	= &quot;</span><span style="color:Black"> &amp; 
	Convert.ToString(dsEmbeddedObject.<b>Height</b>))<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug.Print(</span><span style="color:#a31515">&quot;Width = &quot;</span><span style="color:Black"> 
	&amp; Convert.ToString(dsEmbeddedObject.<b>Width</b>))<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug.Print(</span><span style="color:#a31515">&quot;PrintQuality = &quot;</span><span style="color:Black"> 
	&amp; Convert.ToString(dsEmbeddedObject.<b>PrintQuality</b>))<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug.Print(</span><span style="color:#a31515">&quot;LinkPath = &quot;</span><span style="color:Black"> 
	&amp; dsEmbeddedObject.<b>GetLinkPath</b>())<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug.Print(</span><span style="color:#a31515">&quot;SourceApplication = 
	&quot;</span><span style="color:Black"> &amp; dsEmbeddedObject.<b>GetSourceApplication</b>())<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug.Print(</span><span style="color:#a31515">&quot;Type = &quot;</span><span style="color:Black"> 
	&amp; dsEmbeddedObject.[<b>GetType</b>]())<br>
	<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Green">'Get position of embedded object<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">Dim</span><span style="color:Black"> 
	x </span><span style="color:Blue">As</span><span style="color:Black"> </span>
	<span style="color:Blue">Double</span><span style="color:Black">, y </span>
	<span style="color:Blue">As</span><span style="color:Black"> </span>
	<span style="color:Blue">Double</span><span style="color:Black">, z </span>
	<span style="color:Blue">As</span><span style="color:Black"> </span>
	<span style="color:Blue">Double<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dsEmbeddedObject.<b>GetPosition</b>(x, y, 
	z)<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug.Print(</span><span style="color:Blue">String</span><span style="color:Black">.Format(</span><span style="color:#a31515">&quot;Position 
	= ({0},{1},{2})&quot;</span><span style="color:Black">, x, y, z))<br>
	&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">End</span><span style="color:Black">
	</span><span style="color:Blue">Sub<br>
	<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">Function</span><span style="color:Black"> 
	ConnectToDraftSight() </span><span style="color:Blue">As</span><span style="color:Black"> 
	DraftSight.Interop.dsAutomation.Application<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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 = </span>
	<span style="color:Blue">Nothing<br>
	<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">Try<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Green">'Connect 
	to DraftSight<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dsApp = </span>
	<span style="color:Blue">DirectCast</span><span style="color:Black">(Marshal.<b>GetActiveObject</b>(</span><span style="color:#a31515">&quot;DraftSight.Application&quot;</span><span style="color:Black">), 
	DraftSight.Interop.dsAutomation.Application)<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">Catch</span><span style="color:Black"> 
	ex </span><span style="color:Blue">As</span><span style="color:Black"> 
	Exception<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MessageBox.Show(</span><span style="color:#a31515">&quot;Failed to 
	connect to DraftSight. Cause: &quot;</span><span style="color:Black"> &amp; 
	ex.Message)<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dsApp = </span><span style="color:Blue">Nothing<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">End</span><span style="color:Black">
	</span><span style="color:Blue">Try<br>
	<br>
	</span><span style="color:Black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">Return</span><span style="color:Black"> 
	dsApp<br>
	&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color:Blue">End</span><span style="color:Black">
	</span><span style="color:Blue">Function<br>
	End</span><span style="color:Black"> </span><span style="color:Blue">Module</span>
</div>

</body>

</html>