2009-12-08 172 views
0

我正在使用我的c#項目visio activex導入visio平面佈置圖。我需要獲取該圖形中的形狀的頂點,並且找不到任何方法或屬性。如果有人有任何想法,請幫助。如何獲得visio形狀頂點

回答

0

謝謝你,你的代碼使我發現了道路。 如果你想要一個形狀的頂點s: s.pathes [1] .point(double tolarence,out array a); resuly將在一維數組a上。

0

This is something這對您可能會有幫助。

這裏有一些代碼段,讓你開始:

public void DrawSampleShapeConnection() 
{ 
// get the current draw page 
Visio.Page currentPage = axDrawingControl1.Document.Pages[1]; 

// Load the stencil we want 
Visio.Document currentStencil = axDrawingControl1.Document.Application.Documents.OpenEx("Basic_U.vss", (short)Visio.VisOpenSaveArgs.visOpenDocked); 

// show the stencil window 
Visio.Window stencilWindow = currentPage.Document.OpenStencilWindow(); 

// this gives a count of all the stencils on the status bar 
int countStencils = currentStencil.Masters.Count; 

toolStripStatusLabel1.Text = string.Format("Number of Stencils in {0} = {1}", currentStencil.Title, countStencils); 
statusStrip1.Refresh(); 

// create a triangle shape from the stencil master collection 
Visio.Shape shape1 = currentPage.Drop(currentStencil.Masters["Triangle"], 1.50, 1.50); 

// create a square shape from the stencil master collection 
Visio.Shape shape2 = currentPage.Drop(currentStencil.Masters["Square"], 10, 7.50); 

// create a dynamic connector from the stencil master collection 
Visio.Shape connector = currentPage.Drop(currentStencil.Masters["Dynamic connector"], 4.50, 4.50); 

// currentPage.Layout(); 

// connect the shapes together through the dynamic connector 
ConnectShapes(shape1, shape2, connector); 

}