public TopBRightConditionState(Tool tool, Condition condition, Geometry geometry) : base(tool, condition) { if (condition is TopBRightCondition) { this.condition = (TopBRightCondition)condition; } if (geometry is TriPyramid) { this.geometry = (TriPyramid)geometry; } }
public override Condition GenerateCondition(Geometry geometry, FormInput formInput) { bool valid = ValidateInput(geometry, formInput); if (!valid) { return(null); } FormElement formElement1 = (FormElement)formInput.inputs[0]; FormElement formElement2 = (FormElement)formInput.inputs[2]; FormElement formElement = EdgesToCorner(formElement1, formElement2); string[] fields = formElement.fields; int id1 = geometry.SignVertex(fields[0]); int id2 = geometry.SignVertex(fields[1]); int id3 = geometry.SignVertex(fields[2]); TopBRightCondition condition = new TopBRightCondition(id1, id2, id3); return(condition); }