protected override void TrySolveInstance(IGH_DataAccess DA) { Types.GraphicalElement element = null; if (!DA.GetData("Element", ref element)) { return; } var _Level_ = Params.IndexOfOutputParam("Level"); if (_Level_ >= 0) { DA.SetData(_Level_, element.Level); } var _Box_ = Params.IndexOfOutputParam("Box"); if (_Box_ >= 0) { var box = element.Box; if (box.IsValid) { DA.SetData(_Box_, box); } } var _Location_ = Params.IndexOfOutputParam("Location"); if (_Location_ >= 0) { var location = element.Location; if (location.IsValid) { DA.SetData(_Location_, element.Location); } } var _Orientation_ = Params.IndexOfOutputParam("Orientation"); if (_Orientation_ >= 0) { var orientation = element.Orientation; if (orientation.IsValid && !orientation.IsZero) { DA.SetData(_Orientation_, orientation); } } var _Handing_ = Params.IndexOfOutputParam("Handing"); if (_Handing_ >= 0) { var handing = element.Orientation; if (handing.IsValid && !handing.IsZero) { DA.SetData(_Handing_, handing); } } var _Curve_ = Params.IndexOfOutputParam("Curve"); if (_Curve_ >= 0) { DA.SetData(_Curve_, element.Curve); } }
protected override void TrySolveInstance(IGH_DataAccess DA) { Types.GraphicalElement element = default; if (!DA.GetData("Element", ref element)) { return; } bool?facing = default; { var _Facing_ = Params.IndexOfInputParam("Facing"); if (_Facing_ >= 0 && Params.Input[_Facing_].DataType != GH_ParamData.@void) { bool flipped = false; if (DA.GetData(_Facing_, ref flipped)) { facing = flipped; } } if (facing.HasValue && !element.CanFlipFacing) { AddRuntimeMessage(GH_RuntimeMessageLevel.Error, $"Facing can not be flipped for this element. {{{element.Id.IntegerValue}}}"); return; } } bool?hand = default; { var _Hand_ = Params.IndexOfInputParam("Hand"); if (_Hand_ >= 0 && Params.Input[_Hand_].DataType != GH_ParamData.@void) { bool flipped = false; if (DA.GetData(_Hand_, ref flipped)) { hand = flipped; } } if (hand.HasValue && !element.CanFlipFacing) { AddRuntimeMessage(GH_RuntimeMessageLevel.Error, $"Hand can not be flipped for this element. {{{element.Id.IntegerValue}}}"); return; } } bool?workplane = default; { var _WorkPlane_ = Params.IndexOfInputParam("Work Plane"); if (_WorkPlane_ >= 0 && Params.Input[_WorkPlane_].DataType != GH_ParamData.@void) { bool flipped = false; if (DA.GetData(_WorkPlane_, ref flipped)) { workplane = flipped; } } if (workplane.HasValue && !element.CanFlipWorkPlane) { AddRuntimeMessage(GH_RuntimeMessageLevel.Error, $"Work Plane can not be flipped for this element. {{{element.Id.IntegerValue}}}"); return; } } if (facing.HasValue || hand.HasValue || workplane.HasValue) { StartTransaction(element.Document); element.FacingFlipped = facing; element.HandFlipped = hand; element.WorkPlaneFlipped = workplane; } DA.SetData("Element", element); DA.SetData("Facing", element.FacingFlipped); DA.SetData("Hand", element.HandFlipped); DA.SetData("Work Plane", element.WorkPlaneFlipped); }