public override void Parse(int propIndex, IPropertyValue value, int[] nestedIndex)
        {
            switch (propIndex)
            {
            case 0:
                _degree = value.IntegerVal;
                return;

            case 1:
                _controlPointsList.InternalAdd((IfcCartesianPoint)value.EntityVal);
                return;

            case 2:
                _curveForm = (IfcBSplineCurveForm)System.Enum.Parse(typeof(IfcBSplineCurveForm), value.EnumVal, true);
                return;

            case 3:
                _closedCurve = value.BooleanVal;
                return;

            case 4:
                _selfIntersect = value.BooleanVal;
                return;

            default:
                throw new XbimParserException(string.Format("Attribute index {0} is out of range for {1}", propIndex + 1, GetType().Name.ToUpper()));
            }
        }
Ejemplo n.º 2
0
        public override void IfcParse(int propIndex, IPropertyValue value)
        {
            switch (propIndex)
            {
            case 0:
                _degree = (int)value.IntegerVal;
                break;

            case 1:
                _controlPointsList.Add((IfcCartesianPoint)value.EntityVal);
                break;

            case 2:
                _curveForm = (IfcBSplineCurveForm)Enum.Parse(typeof(IfcBSplineCurveForm), value.EnumVal, true);
                break;

            case 3:
                _closedCurve = value.BooleanVal;
                break;

            case 4:
                _selfIntersect = value.BooleanVal;
                break;

            default:
                this.HandleUnexpectedAttribute(propIndex, value); break;
            }
        }
Ejemplo n.º 3
0
 protected IfcBSplineCurve(DatabaseIfc db, IfcBSplineCurve c) : base(db, c)
 {
     mDegree = c.mDegree;
     ControlPointsList.AddRange(c.ControlPointsList.Select(x => db.Factory.Duplicate(x) as IfcCartesianPoint));
     mCurveForm     = c.mCurveForm;
     mClosedCurve   = c.mClosedCurve;
     mSelfIntersect = c.mSelfIntersect;
 }
Ejemplo n.º 4
0
 public IfcBSplineCurve(Int64 __Degree, IfcCartesianPoint[] __ControlPointsList, IfcBSplineCurveForm __CurveForm, Boolean?__ClosedCurve, Boolean?__SelfIntersect)
 {
     this._Degree            = __Degree;
     this._ControlPointsList = new List <IfcCartesianPoint>(__ControlPointsList);
     this._CurveForm         = __CurveForm;
     this._ClosedCurve       = __ClosedCurve;
     this._SelfIntersect     = __SelfIntersect;
 }
Ejemplo n.º 5
0
 public IfcBSplineCurve(IfcInteger degree, List <IfcCartesianPoint> controlPointsList, IfcBSplineCurveForm curveForm, IfcLogical closedCurve, IfcLogical selfIntersect) : base()
 {
     Degree            = degree;
     ControlPointsList = controlPointsList;
     CurveForm         = curveForm;
     ClosedCurve       = closedCurve;
     SelfIntersect     = selfIntersect;
 }
Ejemplo n.º 6
0
 public override void IfcParse(int propIndex, IPropertyValue value)
 {
     switch (propIndex)
     {
         case 0:
             _degree = (int) value.IntegerVal;
             break;
         case 1:
             _controlPointsList = (CartesianPointList) value.EntityVal;
             break;
         case 2:
             _curveForm = (IfcBSplineCurveForm) Enum.Parse(typeof (IfcBSplineCurveForm), value.EnumVal, true);
             break;
         case 3:
             _closedCurve = value.BooleanVal;
             break;
         case 4:
             _selfIntersect = value.BooleanVal;
             break;
         default:
             this.HandleUnexpectedAttribute(propIndex, value); break;
     }
 }
Ejemplo n.º 7
0
 public IfcBSplineCurveWithKnots(DatabaseIfc db, int degree, List <Point3d> controlPoints, IfcBSplineCurveForm form, List <int> multiplicities, List <double> knots, IfcKnotType knotSpec) :
     base(degree, controlPoints.ConvertAll(x => new IfcCartesianPoint(db, x)), form)
 {
     mMultiplicities.AddRange(multiplicities);
     mKnots.AddRange(knots);
 }
Ejemplo n.º 8
0
 public IfcBSplineCurveWithKnots(DatabaseIfc m, int degree, List <Point2d> controlPoints, IfcBSplineCurveForm form, List <int> multiplicities, List <double> knots, IfcKnotType knotSpec) :
     base(degree, controlPoints.ConvertAll(x => new IfcCartesianPoint(m, x)), form)
 {
     if (mDatabase.mModelView != ModelView.Ifc4NotAssigned)
     {
         throw new Exception("Invalid Model View for IfcRationalBSplineCurveWithKnots : " + mDatabase.ModelView.ToString());
     }
     mMultiplicities.AddRange(multiplicities);
     mKnots.AddRange(knots);
 }
Ejemplo n.º 9
0
        private List<int> mMultiplicities = new List<int>(); // : LIST [2:?] OF INTEGER;

        #endregion Fields

        #region Constructors

        public IfcBSplineCurveWithKnots(int degree, List<IfcCartesianPoint> controlPoints, IfcBSplineCurveForm form, List<int> multiplicities, List<double> knots, IfcKnotType knotSpec)
            : base(degree, controlPoints, form)
        {
            mMultiplicities.AddRange(multiplicities);
            mKnots.AddRange(knots);
        }
Ejemplo n.º 10
0
 public IfcRationalBezierCurve(Int64 __Degree, IfcCartesianPoint[] __ControlPointsList, IfcBSplineCurveForm __CurveForm, Boolean?__ClosedCurve, Boolean?__SelfIntersect, Double[] __WeightsData)
     : base(__Degree, __ControlPointsList, __CurveForm, __ClosedCurve, __SelfIntersect)
 {
     this._WeightsData = new List <Double>(__WeightsData);
 }
Ejemplo n.º 11
0
 protected IfcBSplineCurve(int degree, List<IfcCartesianPoint> controlPoints, IfcBSplineCurveForm form)
     : this(controlPoints[0].mDatabase, degree, form)
 {
     mControlPointsList = controlPoints.ConvertAll(x => x.mIndex);
 }
Ejemplo n.º 12
0
		private IfcBSplineCurve(DatabaseIfc m, int degree, IfcBSplineCurveForm form, IfcLogicalEnum closed, IfcLogicalEnum selfIntersect)
			: base(m)
		{
			mDegree = degree;
			mCurveForm = form;
			mClosedCurve = closed;
			mSelfIntersect = selfIntersect;
		}
Ejemplo n.º 13
0
 public IfcBSplineCurveWithKnots(IfcInteger degree, List <IfcCartesianPoint> controlPointsList, IfcBSplineCurveForm curveForm, IfcLogical closedCurve, IfcLogical selfIntersect, List <IfcInteger> knotMultiplicities, List <IfcParameterValue> knots, IfcKnotType knotSpec) : base(degree, controlPointsList, curveForm, closedCurve, selfIntersect)
 {
     KnotMultiplicities = knotMultiplicities;
     Knots    = knots;
     KnotSpec = knotSpec;
 }
Ejemplo n.º 14
0
 public IfcBezierCurve(Int64 __Degree, IfcCartesianPoint[] __ControlPointsList, IfcBSplineCurveForm __CurveForm, Boolean?__ClosedCurve, Boolean?__SelfIntersect)
     : base(__Degree, __ControlPointsList, __CurveForm, __ClosedCurve, __SelfIntersect)
 {
 }
Ejemplo n.º 15
0
 protected IfcBSplineCurve(IfcInteger __Degree, IfcCartesianPoint[] __ControlPointsList, IfcBSplineCurveForm __CurveForm, IfcLogical __ClosedCurve, IfcLogical __SelfIntersect)
 {
     this.Degree            = __Degree;
     this.ControlPointsList = new List <IfcCartesianPoint>(__ControlPointsList);
     this.CurveForm         = __CurveForm;
     this.ClosedCurve       = __ClosedCurve;
     this.SelfIntersect     = __SelfIntersect;
 }
Ejemplo n.º 16
0
 public IfcBSplineCurveWithKnots(DatabaseIfc m, int degree, List<Point2d> controlPoints, IfcBSplineCurveForm form, List<int> multiplicities, List<double> knots, IfcKnotType knotSpec)
     : base(degree, controlPoints.ConvertAll(x => new IfcCartesianPoint(m, x)), form)
 {
     if (mDatabase.mModelView != ModelView.Ifc4NotAssigned)
         throw new Exception("Invalid Model View for IfcRationalBSplineCurveWithKnots : " + mDatabase.ModelView.ToString());
     mMultiplicities.AddRange(multiplicities);
     mKnots.AddRange(knots);
 }
Ejemplo n.º 17
0
 public IfcBSplineCurveWithKnots(DatabaseIfc db, int degree, List<Point3d> controlPoints, IfcBSplineCurveForm form, List<int> multiplicities, List<double> knots, IfcKnotType knotSpec)
     : base(degree, controlPoints.ConvertAll(x=>new IfcCartesianPoint(db, x)), form)
 {
     mMultiplicities.AddRange(multiplicities);
     mKnots.AddRange(knots);
 }
Ejemplo n.º 18
0
 private IfcBSplineCurve(DatabaseIfc db, int degree, IfcBSplineCurveForm form)
     : base(db)
 {
     mDegree = degree; mCurveForm = form;
 }
Ejemplo n.º 19
0
 public IfcRationalBSplineCurveWithKnots(IfcInteger __Degree, IfcCartesianPoint[] __ControlPointsList, IfcBSplineCurveForm __CurveForm, IfcLogical __ClosedCurve, IfcLogical __SelfIntersect, IfcInteger[] __KnotMultiplicities, IfcParameterValue[] __Knots, IfcKnotType __KnotSpec, IfcReal[] __WeightsData)
     : base(__Degree, __ControlPointsList, __CurveForm, __ClosedCurve, __SelfIntersect, __KnotMultiplicities, __Knots, __KnotSpec)
 {
     this.WeightsData = new List <IfcReal>(__WeightsData);
 }
Ejemplo n.º 20
0
 public IfcRationalBSplineCurveWithKnots(IfcInteger degree, List <IfcCartesianPoint> controlPointsList, IfcBSplineCurveForm curveForm, IfcLogical closedCurve, IfcLogical selfIntersect, List <IfcInteger> knotMultiplicities, List <IfcParameterValue> knots, IfcKnotType knotSpec, List <IfcReal> weightsData) : base(degree, controlPointsList, curveForm, closedCurve, selfIntersect, knotMultiplicities, knots, knotSpec)
 {
     WeightsData = weightsData;
 }
Ejemplo n.º 21
0
		protected IfcBSplineCurve(IfcBSplineCurve pl)
			: base(pl)
		{
			mDegree = pl.mDegree;
			mControlPointsList = new List<int>(pl.mControlPointsList.ToArray());
			mCurveForm = pl.mCurveForm;
			mClosedCurve = pl.mClosedCurve;
			mSelfIntersect = pl.mSelfIntersect;
		}
Ejemplo n.º 22
0
 public IfcBSplineCurveWithKnots(IfcInteger __Degree, IfcCartesianPoint[] __ControlPointsList, IfcBSplineCurveForm __CurveForm, IfcLogical __ClosedCurve, IfcLogical __SelfIntersect, IfcInteger[] __KnotMultiplicities, IfcParameterValue[] __Knots, IfcKnotType __KnotSpec)
     : base(__Degree, __ControlPointsList, __CurveForm, __ClosedCurve, __SelfIntersect)
 {
     this.KnotMultiplicities = new List <IfcInteger>(__KnotMultiplicities);
     this.Knots    = new List <IfcParameterValue>(__Knots);
     this.KnotSpec = __KnotSpec;
 }
Ejemplo n.º 23
0
 protected IfcBSplineCurve(DatabaseIfc db, IfcBSplineCurve c)
     : base(db, c)
 {
     mDegree = c.mDegree;
     ControlPointsList = c.ControlPointsList.ConvertAll(x => db.Factory.Duplicate(x) as IfcCartesianPoint);
     mCurveForm = c.mCurveForm;
     mClosedCurve = c.mClosedCurve;
     mSelfIntersect = c.mSelfIntersect;
 }