public static bool TryGetExtrusion(this BrepFace face, out Extrusion extrusion) { if (face.UnderlyingSurface().TryGetExtrusion(out extrusion)) { if (face.OrientationIsReversed) { var profile = extrusion.Profile3d(new ComponentIndex(ComponentIndexType.ExtrusionBottomProfile, 0)); profile.Reverse(); if (!extrusion.GetProfileTransformation(0.0).TryGetInverse(out var WCStoECS)) { return(false); } if (!profile.Transform(WCStoECS)) { return(false); } return(extrusion.SetOuterProfile(profile, false)); } return(true); } extrusion = null; return(false); }