Пример #1
0
 /*
  *        CONSTRUCTORS
  */
 public IntersD0(Param parA, Param parB, VecD pnt, bool includeBezSI)
 {
     // COPY
     this.ipi          = new InfoParamInters(parA, parB);
     this.pntInters    = new VecD(pnt);
     this.includeBezSI = includeBezSI;
 }
Пример #2
0
        public bool IntersFromSupport(InfoInters intersSup, int indBez,
                                      out InfoInters[] intersBez)
        {
            /*
             *        ASSUMPTION: works for D0 intersections ONLY!!!
             */
            intersBez = null;
            if (intersSup == null)
            {
                return(true);
            }
            if (intersSup.Dim == InfoInters.TypeDim.Dim1)
            {
                throw new ExceptionGMath("Bez2D", "IntersFromSupport", "NOT IMPLEMENTED");
                //return false;
            }
            InfoParamInters ipiSup = (intersSup as IntersD0).Ipi;

            Param[] parsBez;
            if (!this.ParamFromSupport(ipiSup.Par(indBez), out parsBez))
            {
                return(false);
            }
            intersBez = new IntersD0[parsBez.Length];
            for (int iPar = 0; iPar < parsBez.Length; iPar++)
            {
                if (indBez == 0)
                {
                    intersBez[iPar] = new IntersD0(parsBez[iPar], ipiSup.Par(1),
                                                   (intersSup as IntersD0).PntInters, true);
                }
                else
                {
                    intersBez[iPar] = new IntersD0(ipiSup.Par(0), parsBez[iPar],
                                                   (intersSup as IntersD0).PntInters, true);
                }
            }
            return(true);
        }
Пример #3
0
 public InfoParamInters(InfoParamInters ipi) :
     this(ipi.Par(0), ipi.Par(1))
 {
 }
Пример #4
0
 /*
  *        METHODS
  */
 override public void ClearRelease()
 {
     this.ipi.ClearRelease();
     this.ipi       = null;
     this.pntInters = null;
 }
Пример #5
0
 public InfoParamInters(InfoParamInters ipi): 
     this(ipi.Par(0), ipi.Par(1))
 {
 }
Пример #6
0
 /*
  *        METHODS
  */
 override public void ClearRelease()
 {
     this.ipi.ClearRelease();
     this.ipi=null;
     this.pntInters=null;
 }
Пример #7
0
 /*
  *        CONSTRUCTORS
  */
 public IntersD0(Param parA, Param parB, VecD pnt, bool includeBezSI)
 {
     // COPY
     this.ipi=new InfoParamInters(parA,parB);
     this.pntInters=new VecD(pnt);
     this.includeBezSI=includeBezSI;
 }