/// <summary> /// 初始化零部件,构造出上下部件的对称性,只考虑法向与Y轴平行的板的对称性; /// </summary> /// <param name="mrPart"></param> private void InitMrPart(CMrPart mrPart) { Vector normal = mrPart.mNormal; if (!CDimTools.GetInstance().IsTwoVectorParallel(normal, new Vector(1, 0, 0))) { return; } Point ptLeftBottom = mrPart.mLeftBottomPoint; Point ptRightBottom = mrPart.mRightBottomPoint; Point ptLeftTop = mrPart.mLeftTopPoint; Point ptRightTop = mrPart.mRightTopPoint; normal.X = Math.Abs(normal.X); normal.Y = Math.Abs(normal.Y); normal.Z = Math.Abs(normal.Z); String strAttribute1 = ((int)ptLeftBottom.X).ToString() + "_" + ((int)ptRightBottom.X).ToString() + "_" + normal.ToString(); if (mDicAttributePart.ContainsKey(strAttribute1)) { CMrPart symPart = mDicAttributePart[strAttribute1]; mrPart.GetBeamTopViewInfo().mSymPart = symPart; symPart.GetBeamTopViewInfo().mSymPart = mrPart; } else { mDicAttributePart.Add(strAttribute1, mrPart); } }