public void Draw(Graphics3DControl ctrl, Graphics3D graphics) { StrapperSet.SetDimension(OuterDimensions); // build pack PackProperties packProperties = new PackProperties( null, SelectedBox, Arrangement, BoxOrientation, Wrapper) { StrapperSet = StrapperSet }; if (uCtrlOuterDimensions.Checked) { packProperties.ForceOuterDimensions( new Vector3D(uCtrlOuterDimensions.X, uCtrlOuterDimensions.Y, uCtrlOuterDimensions.Z)); } Pack pack = new Pack(0, packProperties) { ForceTransparency = true }; graphics.AddBox(pack); graphics.AddDimensions(new DimensionCube(Vector3D.Zero, pack.Length, pack.Width, pack.Height, Color.Black, true)); if (packProperties.Wrap.Transparent) { graphics.AddDimensions( new DimensionCube( packProperties.InnerOffset , packProperties.InnerLength, packProperties.InnerWidth, packProperties.InnerHeight , Color.Red, false)); } }
private List <AnalysisLayered> PackOptimSolutions(ConstraintSetCasePallet constraintSet, int iNumber) { // TODO: better as IEnumerable<>? var analyses = new List <AnalysisLayered>(); foreach (CaseDefinition caseDefinition in CaseDefinitions(iNumber)) { try { // build pack properties Vector3D outerDimensions = caseDefinition.OuterDimensions(BoxProperties, ParamSetPackOpt); var packProperties = new PackProperties( null, BoxProperties, caseDefinition.Arrangement, PackProperties.Orientation(caseDefinition.Dim0, caseDefinition.Dim1), PackProperties.EnuRevSolidLayout.ALIGNED, BuildWrapper(), BuildTray() ); packProperties.ForceOuterDimensions(outerDimensions); // solver var solver = new SolverCasePallet(packProperties, PalletProperties, constraintSet); analyses.AddRange(solver.BuildAnalyses(false)); } catch (Exception ex) { _log.Error(ex.Message); } } // sort caseOptimSolution analyses.Sort(new AnalysisComparer()); return(analyses); }
/// <summary> /// Creates a new PackProperties object /// </summary> public void CreateNewPackUI() { using (FormNewPack form = new FormNewPack(this, null) { Boxes = Boxes.ToList() }) { if (DialogResult.OK == form.ShowDialog()) { PackProperties packProperties = CreateNewPack( form.ItemName, form.ItemDescription , form.SelectedPackable , form.Arrangement , form.BoxOrientation, form.RevSolidLayout , form.Wrapper , form.Tray); if (form.HasForcedOuterDimensions) { packProperties.ForceOuterDimensions(form.OuterDimensions); } packProperties.StrapperSet = form.StrapperSet; packProperties.Bulge = form.Bulge; } } }
/// <summary> /// Creates a new PackProperties object /// </summary> public void CreateNewPackUI() { FormNewPack form = new FormNewPack(this, null); form.Boxes = Boxes; if (DialogResult.OK == form.ShowDialog()) { PackProperties packProperties = CreateNewPack( form.ItemName, form.ItemDescription , form.SelectedBox , form.Arrangement , form.BoxOrientation , form.Wrapper); if (form.HasForcedOuterDimensions) { packProperties.ForceOuterDimensions(form.OuterDimensions); } } }