private bool CheckAddCondition(CuboidCondition condition) { if (condition is CuboidLengthCondition) { if (lengthCondition != null) { return(false); } lengthCondition = (CuboidLengthCondition)condition; return(true); } if (condition is CuboidWidthCondition) { if (widthCondition != null) { return(false); } widthCondition = (CuboidWidthCondition)condition; return(true); } if (condition is CuboidHeightCondition) { if (heightCondition != null) { return(false); } heightCondition = (CuboidHeightCondition)condition; return(true); } return(false); }
public void CheckCondition_RightHandOutOfCuboid_ReturnsFalse() { var skeleton = new Skeleton(); var cuboidCondition = new CuboidCondition() { Cuboid = Helper.MakeCuboidWithNoZero(), JointIndex = Helper.GetRightHandIndex() }; Assert.AreEqual(false, cuboidCondition.CheckCondition(skeleton)); }
public void CheckCondition_RightHandInCuboid_ReturnsTrue() { Skeleton skeleton = new Skeleton(); CuboidCondition cuboidCondition = new CuboidCondition() { Cuboid = Helper.MakeCuboidAroundZero(), JointIndex = Helper.GetRightHandIndex() }; Assert.AreEqual(true, cuboidCondition.CheckCondition(skeleton)); }
/// <summary> /// Add condition /// </summary> /// <param name="conditionType">type of condition</param> private void AddCondition(ConditionTypes conditionType, BaseCondition condition) { IRemovable conditionVM = null; switch (conditionType) { case ConditionTypes.SkeletonPointToCordinate: if (condition == null) { condition = new CuboidCondition(); m_conditionsBlock.Conditions.Add(condition); } conditionVM = new SkeletonPointToCubeViewModel((CuboidCondition)condition); break; case ConditionTypes.SkeletonPointToSkeletonPoint: if (condition == null) { condition = new RelatedSphereCondition(); m_conditionsBlock.Conditions.Add(condition); } conditionVM = new SkeletonPointToSkeletonPointViewModel((RelatedSphereCondition)condition); break; } if (conditionVM != null) { Conditions.Add(conditionVM); //add remove delegate conditionVM.DelegateToRemove = () => { m_conditionsBlock.Conditions.Remove(condition); Conditions.Remove(conditionVM); }; } }
/// <summary> /// Working constructor /// </summary> public SkeletonPointToCubeViewModel(CuboidCondition cuboidCondition) { RemoveCommand = new RelayCommand(() => Remove()); m_cuboidCondition = cuboidCondition; }