Exemple #1
0
 public Support()
 {
     tag          = Object3d.OBJ_SUPPORT; // tag for support
     m_supporting = null;
     this.Name    = "Support_" + supcnt.ToString();
     supcnt++;
     mSC       = UVDLPApp.Instance().m_supportconfig.Clone(); // start off by cloing the app's defaults
     SubType   = eSubType.eBase;
     m_seltype = eSelType.eWhole;
 }
Exemple #2
0
        /// <summary>
        /// Changing the subtype here will change the base from a flat
        /// bottom to a tip bottom and vice versa
        /// </summary>
        /// <param name="type"></param>
        private void ChangeSubType(eSubType type)
        {
            // may need to change the base to a base tip or flat base
            switch (type)
            {
            case eSubType.eBase:
                // simply scaling doesn't fix the 'damage' done by previous angling
                Point3d centroid = CalcCentroid(s1i, s2i);
                STranslateRange(-centroid.x, -centroid.y, -centroid.z, s1i, s2i);
                ReGenSegmentPoints(mSC.fbrad, mSC.cdivs, s1i, 0, true);
                ReGenSegmentPoints(mSC.ftrad, mSC.cdivs, s2i, 1, false);
                ReGenSegmentPoints(mSC.ftrad, mSC.cdivs, s3i, 1, false);
                STranslateRange(centroid.x, centroid.y, centroid.z, s1i, s4i);

                break;

            case eSubType.eIntra:
                ScaleLayer((float)mSC.htrad, s1i, s2i);
                //ScaleLayer(m_ftrad, s2i, s3i);
                break;
            }
        }
        /// <summary>
        /// Changing the subtype here will change the base from a flat
        /// bottom to a tip bottom and vice versa
        /// </summary>
        /// <param name="type"></param>
        private void ChangeSubType(eSubType type)
        {
            // may need to change the base to a base tip or flat base
            switch (type)
            {
                case eSubType.eBase:
                    // simply scaling doesn't fix the 'damage' done by previous angling
                    Point3d centroid = CalcCentroid(s1i, s2i);
                    STranslateRange(-centroid.x, -centroid.y, -centroid.z, s1i, s2i);
                    ReGenSegmentPoints(mSC.fbrad, mSC.cdivs, s1i, 0, true);
                    ReGenSegmentPoints(mSC.ftrad, mSC.cdivs, s2i, 1, false);
                    ReGenSegmentPoints(mSC.ftrad, mSC.cdivs, s3i, 1, false);
                    STranslateRange(centroid.x, centroid.y, centroid.z, s1i, s4i);

                    break;
                case eSubType.eIntra:
                    ScaleLayer((float)mSC.htrad, s1i, s2i);
                    //ScaleLayer(m_ftrad, s2i, s3i);
                    break;
            }
        }