Reply
Solved! Go to solution

How to make a Sheet Metal Transition

Hi

In Solid Edge ST6 now it`s possible to switch to sheet metal and back to part from any environment (part and sheet metal).

There is some way to do this switch by code? As i sew, some methods and properties are common to PartDocument ans SheetMetalDocument. Like FlatPatterns (in PartDocument class).

But if i want to SetGlobalParameter(seSheetMetalNeutralFactorFromExcel) i can do that only to SheetMetalDocument.

How can i set this parameter to PartDocument contains sheet metal model?

 

The second thing, is how to use the ConvertToSMs.AddEx(object RefFace,[],[]..)?

When i pass face object to this method, i get error.

There is no additional information in the Help documentation.

I sew one or two questions about it in this forum, but no answers.

There is a way to convert to sheet metal by code?

 

Regards,

Leibman Yevgeny

3 REPLIES
Solution
Solution
Accepted by topic author AddEx
‎08-26-2015 04:32 AM

Re: How to make a Sheet Metal Transition

[ Edited ]

Hi,

 

1) Switching from the part to the sheet metal environment can be done as shown in following VB.NET code snippet:

 

Dim seActiveEnvironment As String = seApp.ActiveEnvironment

'Switch environment from part to sheet metal
seApp.StartCommand(CType(SolidEdgeConstants.PartCommandConstants.PartSwitchEnvironmentsSwitchtofromPart, SolidEdgeFramework.SolidEdgeCommandConstants))

'Wait until switch occurred
While seActiveEnvironment = seApp.ActiveEnvironment
   System.Threading.Thread.Sleep(500)
   seApp.DoIdle()
End While

 With seApp being a reference to the Solid Edge Application object.

 

2) Calling ConvertToSMs.AddEx(...) requires the array parameter to be initialized and given even if declared as optional. See my C# code snippet below:

 

faces = model.Body.Faces[SolidEdgeGeometry.FeatureTopologyQueryTypeConstants.igQueryAll];

face = GetLargestFace(faces);

// Important to initialize array argument(s) despite they are optional!
object vtEdgeNum = 0;
object[] EdgesArray = new object[0]; 
object vtBRType = null;
object vtBRWidth = null;
object vtBRLength = null;

model.ConvToSMs.AddEx(face, vtEdgeNum, EdgesArray, vtBRType, vtBRWidth, vtBRLength);

 

 

 

 

Kind regards,
Wolfgang Kunert - www.wksyspro.de

Re: How to make a Sheet Metal Transition

Thank You
it realy works now

Re: How to make a Sheet Metal Transition

Wolfgang did an excellent job answering the question as usual but I wanted to add that you can monitor Solid Edge events using Spy for Solid Edge. In your particular case, you could have executed the the action(s) in Solid Edge and discovered which StartCommand() was being used using the EventMonitor tab. The EventMonitor tab records all Solid Edge application events and reports as much information about the event as possible.

Jason Newell
Applications Architect
www.jasonnewell.net