SetLightweightToResolved

This commit is contained in:
AJ
2019-11-14 13:50:44 -05:00
parent 2edea0cb65
commit 7a2bf23d0a

View File

@@ -261,9 +261,9 @@ namespace ExportDXF.Forms
Print(bom.BomFeature.Name); Print(bom.BomFeature.Name);
Print("Fetching components..."); Print("Fetching components...");
items.AddRange(GetItems(bom));
Print("Found " + items.Count); Print("Found " + items.Count);
items.AddRange(GetItems(bom));
} }
Print("Found " + items.Count + " total"); Print("Found " + items.Count + " total");
@@ -323,24 +323,12 @@ namespace ExportDXF.Forms
foreach (var item in items) foreach (var item in items)
{ {
if (worker.CancellationPending) if (worker.CancellationPending)
{
Print("Canceled by user.\n", Color.Red);
return; return;
}
var fileName = GetFileName(item); var fileName = GetFileName(item);
var savepath = Path.Combine(savePath, fileName + ".dxf"); var savepath = Path.Combine(savePath, fileName + ".dxf");
var suppressionState = (swComponentSuppressionState_e)item.Component.GetSuppression(); SetLightweightToResolved(item.Component);
switch (suppressionState)
{
case swComponentSuppressionState_e.swComponentFullyLightweight:
case swComponentSuppressionState_e.swComponentLightweight:
case swComponentSuppressionState_e.swComponentSuppressed:
item.Component.SetSuppression2((int)swComponentSuppressionState_e.swComponentResolved);
break;
}
var model = item.Component.GetModelDoc2() as ModelDoc2; var model = item.Component.GetModelDoc2() as ModelDoc2;
var part = model as PartDoc; var part = model as PartDoc;
@@ -414,6 +402,37 @@ namespace ExportDXF.Forms
} }
} }
private void SetLightweightToResolved(Component2 component)
{
var isSuppressed = component.IsSuppressed();
if (isSuppressed)
return;
var suppressionState = (swComponentSuppressionState_e)component.GetSuppression();
switch (suppressionState)
{
case swComponentSuppressionState_e.swComponentFullyResolved:
case swComponentSuppressionState_e.swComponentResolved:
return;
case swComponentSuppressionState_e.swComponentFullyLightweight:
case swComponentSuppressionState_e.swComponentLightweight:
var error = (swSuppressionError_e)component.SetSuppression2((int)swComponentSuppressionState_e.swComponentResolved);
if (error == swSuppressionError_e.swSuppressionChangeOk)
{
var model = component.GetModelDoc2() as ModelDoc2;
if (model != null)
{
model.ForceRebuild3(false);
}
}
break;
}
}
private string RemoveFontXml(string s) private string RemoveFontXml(string s)
{ {
if (s == null) if (s == null)