public static string Description(this GeneralisedFabricatedBoxProfile profile) { double width = Math.Max(profile.Width + profile.BotLeftCorbelWidth + profile.BotRightCorbelWidth, profile.Width + profile.TopLeftCorbelWidth + profile.TopRightCorbelWidth); return($"GenFabBox {profile.Height:G3}x{width:G3}x{profile.WebThickness:G3}x" + $"{profile.TopFlangeThickness:G3}x{profile.BotFlangeThickness:G3}"); }
/***************************************************/ public static GeneralisedFabricatedBoxProfile InterpolateProfile(GeneralisedFabricatedBoxProfile startProfile, GeneralisedFabricatedBoxProfile endProfile, double parameter, int interpolationOrder, double domainStart = 0, double domainEnd = 1) { return(Create.GeneralisedFabricatedBoxProfile( Interpolate(startProfile.Height, endProfile.Height, parameter, interpolationOrder, domainStart, domainEnd), Interpolate(startProfile.Width, endProfile.Width, parameter, interpolationOrder, domainStart, domainEnd), Interpolate(startProfile.WebThickness, endProfile.WebThickness, parameter, interpolationOrder, domainStart, domainEnd), Interpolate(startProfile.TopFlangeThickness, endProfile.TopFlangeThickness, parameter, interpolationOrder, domainStart, domainEnd), Interpolate(startProfile.BotFlangeThickness, endProfile.BotFlangeThickness, parameter, interpolationOrder, domainStart, domainEnd), Interpolate(Math.Max(startProfile.TopLeftCorbelWidth, startProfile.TopRightCorbelWidth), Math.Max(endProfile.TopLeftCorbelWidth, endProfile.TopRightCorbelWidth), parameter, interpolationOrder, domainStart, domainEnd), Interpolate(Math.Max(startProfile.BotLeftCorbelWidth, startProfile.BotRightCorbelWidth), Math.Max(endProfile.BotLeftCorbelWidth, endProfile.BotRightCorbelWidth), parameter, interpolationOrder, domainStart, domainEnd))); }
/***************************************************/ public static string Description(this GeneralisedFabricatedBoxProfile profile) { return("GenFabBox " + profile.Height + "x" + profile.Width + "x" + profile.WebThickness + "x" + profile.TopFlangeThickness + "x" + profile.BotFlangeThickness + "x" + profile.TopLeftCorbelWidth + "x" + profile.BotLeftCorbelWidth); }
/***************************************************/ private bool CreateProfile(string name, GeneralisedFabricatedBoxProfile profile) { Engine.Base.Compute.RecordError("GeneralisedFabricatedBoxProfile not supported in Lusas_Toolkit"); return(false); }