Exemple #1
0
        public TsPart(TSD.Part drawingPart)
        {
            _drawingPart = drawingPart;
            TSM.Part modelPart =
                Extensions.GetModelObjectFromDrawingObject(_drawingPart) as TSM.Part;

            modelPart.GetReportProperty("WIDTH", ref width);
            modelPart.GetReportProperty("HEIGHT", ref height);
            modelPart.GetReportProperty("LENGTH", ref length);

            var   partCLPoints = modelPart.GetCenterLine(false);
            Point partStartP   = partCLPoints[0] as Point;
            Point partEndP;

            if (!(modelPart is TSM.ContourPlate))
            {
                partEndP = partCLPoints[partCLPoints.Count - 1] as Point;
            }
            else
            {
                partEndP = partCLPoints[partCLPoints.Count - 2] as Point;
            }
            partStart = new double[3] {
                partStartP.X, partStartP.Y, partStartP.Z
            };
            partEnd = new double[3] {
                partEndP.X, partEndP.Y, partEndP.Z
            };

            partCS = modelPart.GetCoordinateSystem();
            origin =
                new Point((partEnd[0] + partStart[0]) / 2,
                          (partEnd[1] + partStart[1]) / 2,
                          (partEnd[2] + partStart[2]) / 2);
        }