public static AABBProjectionSegmentEnum[] GetAdjacentSegments(AABBProjectionSegmentEnum segment) { switch (segment) { case AABBProjectionSegmentEnum.enTopLeft: { return(new AABBProjectionSegmentEnum[] { AABBProjectionSegmentEnum.enTopRight, AABBProjectionSegmentEnum.enBottomLeft }); } case AABBProjectionSegmentEnum.enTopRight: { return(new AABBProjectionSegmentEnum[] { AABBProjectionSegmentEnum.enTopLeft, AABBProjectionSegmentEnum.enBottomRight }); } case AABBProjectionSegmentEnum.enBottomLeft: { return(new AABBProjectionSegmentEnum[] { AABBProjectionSegmentEnum.enTopLeft, AABBProjectionSegmentEnum.enBottomRight }); } case AABBProjectionSegmentEnum.enBottomRight: { return(new AABBProjectionSegmentEnum[] { AABBProjectionSegmentEnum.enTopRight, AABBProjectionSegmentEnum.enBottomLeft }); } } return(null); }
public static AABB.AABBSide GetSideFromProjectionSegments(AABBProjectionSegmentEnum segment1, AABBProjectionSegmentEnum segment2) { switch (segment1) { case AABBProjectionSegmentEnum.enTopLeft: { switch (segment2) { case AABBProjectionSegmentEnum.enTopRight: return(AABB.AABBSide.enTop); case AABBProjectionSegmentEnum.enBottomLeft: return(AABB.AABBSide.enLeft); } break; } case AABBProjectionSegmentEnum.enTopRight: { switch (segment2) { case AABBProjectionSegmentEnum.enTopLeft: return(AABB.AABBSide.enTop); case AABBProjectionSegmentEnum.enBottomRight: return(AABB.AABBSide.enRight); } break; } case AABBProjectionSegmentEnum.enBottomLeft: { switch (segment2) { case AABBProjectionSegmentEnum.enBottomRight: return(AABB.AABBSide.enBottom); case AABBProjectionSegmentEnum.enTopLeft: return(AABB.AABBSide.enLeft); } break; } case AABBProjectionSegmentEnum.enBottomRight: { switch (segment2) { case AABBProjectionSegmentEnum.enTopRight: return(AABB.AABBSide.enRight); case AABBProjectionSegmentEnum.enBottomLeft: return(AABB.AABBSide.enBottom); } break; } } throw new Exception("Segments do not form a side!"); }
public static AABBProjectionSegmentEnum[] GetAdjacentSegments(AABBProjectionSegmentEnum segment) { switch(segment) { case AABBProjectionSegmentEnum.enTopLeft: { return new AABBProjectionSegmentEnum[] { AABBProjectionSegmentEnum.enTopRight, AABBProjectionSegmentEnum.enBottomLeft }; } case AABBProjectionSegmentEnum.enTopRight: { return new AABBProjectionSegmentEnum[] { AABBProjectionSegmentEnum.enTopLeft, AABBProjectionSegmentEnum.enBottomRight }; } case AABBProjectionSegmentEnum.enBottomLeft: { return new AABBProjectionSegmentEnum[] { AABBProjectionSegmentEnum.enTopLeft, AABBProjectionSegmentEnum.enBottomRight }; } case AABBProjectionSegmentEnum.enBottomRight: { return new AABBProjectionSegmentEnum[] { AABBProjectionSegmentEnum.enTopRight, AABBProjectionSegmentEnum.enBottomLeft }; } } return null; }
public AABBProjectionSegment(LineSegment path, AABBProjectionSegmentEnum segmentEnum) { Path = path; SegmentEnum = segmentEnum; }
public static AABB.AABBSide GetSideFromProjectionSegments(AABBProjectionSegmentEnum segment1, AABBProjectionSegmentEnum segment2) { switch (segment1) { case AABBProjectionSegmentEnum.enTopLeft: { switch (segment2) { case AABBProjectionSegmentEnum.enTopRight: return AABB.AABBSide.enTop; case AABBProjectionSegmentEnum.enBottomLeft: return AABB.AABBSide.enLeft; } break; } case AABBProjectionSegmentEnum.enTopRight: { switch (segment2) { case AABBProjectionSegmentEnum.enTopLeft: return AABB.AABBSide.enTop; case AABBProjectionSegmentEnum.enBottomRight: return AABB.AABBSide.enRight; } break; } case AABBProjectionSegmentEnum.enBottomLeft: { switch (segment2) { case AABBProjectionSegmentEnum.enBottomRight: return AABB.AABBSide.enBottom; case AABBProjectionSegmentEnum.enTopLeft: return AABB.AABBSide.enLeft; } break; } case AABBProjectionSegmentEnum.enBottomRight: { switch (segment2) { case AABBProjectionSegmentEnum.enTopRight: return AABB.AABBSide.enRight; case AABBProjectionSegmentEnum.enBottomLeft: return AABB.AABBSide.enBottom; } break; } } throw new Exception("Segments do not form a side!"); }