Пример #1
0
        internal sBoundingBox TosBoundingBox(Dyn.BoundingBox dybx)
        {
            sBoundingBox sbox = new sBoundingBox();

            sbox.center = TosXYZ((Dyn.Point)EnsureUnit(Dyn.Line.ByStartPointEndPoint(dybx.MinPoint, dybx.MaxPoint).PointAtParameter(0.5)));
            sbox.min    = TosXYZ((Dyn.Point)EnsureUnit(dybx.MinPoint));
            sbox.max    = TosXYZ((Dyn.Point)EnsureUnit(dybx.MaxPoint));

            sbox.diagonal = sbox.max - sbox.min;
            sbox.xSize    = new sRange(sbox.min.X, sbox.max.X);
            sbox.ySize    = new sRange(sbox.min.Y, sbox.max.Y);
            sbox.zSize    = new sRange(sbox.min.Z, sbox.max.Z);
            return(sbox);
        }
        public sBoundingBox TosBoundingBox(BoundingBox rbox)
        {
            sBoundingBox sbox = new sBoundingBox();

            sbox.min      = TosXYZ(EnsureUnit(rbox.Min));
            sbox.max      = TosXYZ(EnsureUnit(rbox.Max));
            sbox.diagonal = TosXYZ(EnsureUnit(rbox.Diagonal));
            sbox.center   = TosXYZ(EnsureUnit(rbox.Center));

            sbox.xSize = new sRange(sbox.min.X, sbox.max.X);
            sbox.ySize = new sRange(sbox.min.Y, sbox.max.Y);
            sbox.zSize = new sRange(sbox.min.Z, sbox.max.Z);

            return(sbox);
        }