コード例 #1
0
ファイル: IFC B.cs プロジェクト: GeometryGym/GeometryGymIFC
		internal IfcBSplineCurveWithKnots(DatabaseIfc db, IfcBSplineCurveWithKnots c, DuplicateOptions options) 
			: base(db, c, options)
		{
			mKnotMultiplicities.AddRange(c.KnotMultiplicities);
			mKnots.AddRange(c.Knots);
			mKnotSpec = c.mKnotSpec;
		}
コード例 #2
0
        public override void Parse(int propIndex, IPropertyValue value, int[] nestedIndex)
        {
            switch (propIndex)
            {
            case 0:
            case 1:
            case 2:
            case 3:
            case 4:
                base.Parse(propIndex, value, nestedIndex);
                return;

            case 5:
                _knotMultiplicities.InternalAdd(value.IntegerVal);
                return;

            case 6:
                _knots.InternalAdd(value.RealVal);
                return;

            case 7:
                _knotSpec = (IfcKnotType)System.Enum.Parse(typeof(IfcKnotType), value.EnumVal, true);
                return;

            default:
                throw new XbimParserException(string.Format("Attribute index {0} is out of range for {1}", propIndex + 1, GetType().Name.ToUpper()));
            }
        }
コード例 #3
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;
 }
コード例 #4
0
 public IfcBSplineSurfaceWithKnots(IfcInteger uDegree, IfcInteger vDegree, List <List <IfcCartesianPoint> > controlPointsList, IfcBSplineSurfaceForm surfaceForm, IfcLogical uClosed, IfcLogical vClosed, IfcLogical selfIntersect, List <IfcInteger> uMultiplicities, List <IfcInteger> vMultiplicities, List <IfcParameterValue> uKnots, List <IfcParameterValue> vKnots, IfcKnotType knotSpec) : base(uDegree, vDegree, controlPointsList, surfaceForm, uClosed, vClosed, selfIntersect)
 {
     UMultiplicities = uMultiplicities;
     VMultiplicities = vMultiplicities;
     UKnots          = uKnots;
     VKnots          = vKnots;
     KnotSpec        = knotSpec;
 }
コード例 #5
0
 internal IfcBSplineSurfaceWithKnots(DatabaseIfc db, IfcBSplineSurfaceWithKnots s) : base(db, s)
 {
     mUMultiplicities = new List <int>(s.mUMultiplicities.ToArray());
     mVMultiplicities = new List <int>(s.mVMultiplicities.ToArray());
     mUKnots          = new List <double>(s.mUKnots.ToArray());
     mVKnots          = new List <double>(s.mVKnots.ToArray());
     mKnotSpec        = s.mKnotSpec;
 }
コード例 #6
0
 public IfcBSplineSurfaceWithKnots(IfcInteger __UDegree, IfcInteger __VDegree, IfcCartesianPoint[] __ControlPointsList, IfcBSplineSurfaceForm __SurfaceForm, IfcLogical __UClosed, IfcLogical __VClosed, IfcLogical __SelfIntersect, IfcInteger[] __UMultiplicities, IfcInteger[] __VMultiplicities, IfcParameterValue[] __UKnots, IfcParameterValue[] __VKnots, IfcKnotType __KnotSpec)
     : base(__UDegree, __VDegree, __ControlPointsList, __SurfaceForm, __UClosed, __VClosed, __SelfIntersect)
 {
     this.UMultiplicities = new List <IfcInteger>(__UMultiplicities);
     this.VMultiplicities = new List <IfcInteger>(__VMultiplicities);
     this.UKnots          = new List <IfcParameterValue>(__UKnots);
     this.VKnots          = new List <IfcParameterValue>(__VKnots);
     this.KnotSpec        = __KnotSpec;
 }
コード例 #7
0
 internal IfcBSplineCurveWithKnots(DatabaseIfc db, IfcBSplineCurveWithKnots c) : base(db, c)
 {
     mKnotMultiplicities.AddRange(c.KnotMultiplicities);
     mKnots.AddRange(c.Knots);
     mKnotSpec = c.mKnotSpec;
 }
コード例 #8
0
 public IfcBSplineCurveWithKnots(DatabaseIfc m, int degree, List <Point2d> controlPoints, IEnumerable <int> multiplicities, IEnumerable <double> knots, IfcKnotType knotSpec) :
     base(degree, controlPoints.ConvertAll(x => new IfcCartesianPoint(m, x)))
 {
     if (mDatabase.mModelView != ModelView.Ifc4NotAssigned)
     {
         throw new Exception("Invalid Model View for IfcRationalBSplineCurveWithKnots : " + mDatabase.ModelView.ToString());
     }
     mKnotMultiplicities.AddRange(multiplicities);
     mKnots.AddRange(knots);
 }
コード例 #9
0
 public IfcBSplineCurveWithKnots(DatabaseIfc db, int degree, List <Point3d> controlPoints, List <int> multiplicities, List <double> knots, IfcKnotType knotSpec) :
     base(degree, controlPoints.ConvertAll(x => new IfcCartesianPoint(db, x)))
 {
     mKnotMultiplicities.AddRange(multiplicities);
     mKnots.AddRange(knots);
 }
コード例 #10
0
ファイル: IFC B.cs プロジェクト: jmirtsch/GeometryGymIFC
        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);
        }
コード例 #11
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);
 }
コード例 #12
0
ファイル: IFC B.cs プロジェクト: jenca-cloud/ggIFC
		internal IfcBSplineCurveWithKnots(IfcBSplineCurveWithKnots pl)
			: base(pl)
		{
			mMultiplicities = new List<int>(pl.mMultiplicities.ToArray());
			mKnots = new List<double>(pl.mKnots.ToArray());
			mKnotSpec = pl.mKnotSpec;
		}
コード例 #13
0
 public IfcBSplineSurfaceWithKnots(int uDegree, int vDegree, IEnumerable <IEnumerable <IfcCartesianPoint> > controlPoints, IEnumerable <int> uMultiplicities, IEnumerable <int> vMultiplicities, IEnumerable <double> uKnots, IEnumerable <double> vKnots, IfcKnotType type)
     : base(uDegree, vDegree, controlPoints)
 {
     mUMultiplicities.AddRange(uMultiplicities);
     mVMultiplicities.AddRange(vMultiplicities);
     mUKnots.AddRange(uKnots);
     mVKnots.AddRange(vKnots);
 }
コード例 #14
0
 public IfcRationalBSplineSurfaceWithKnots(IfcInteger uDegree, IfcInteger vDegree, List <List <IfcCartesianPoint> > controlPointsList, IfcBSplineSurfaceForm surfaceForm, IfcLogical uClosed, IfcLogical vClosed, IfcLogical selfIntersect, List <IfcInteger> uMultiplicities, List <IfcInteger> vMultiplicities, List <IfcParameterValue> uKnots, List <IfcParameterValue> vKnots, IfcKnotType knotSpec, List <List <IfcReal> > weightsData) : base(uDegree, vDegree, controlPointsList, surfaceForm, uClosed, vClosed, selfIntersect, uMultiplicities, vMultiplicities, uKnots, vKnots, knotSpec)
 {
     WeightsData = weightsData;
 }
コード例 #15
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);
 }
コード例 #16
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);
 }
コード例 #17
0
ファイル: IFC B.cs プロジェクト: jenca-cloud/ggIFC
		internal IfcBSplineSurfaceWithKnots(DatabaseIfc m, int uDegree, int vDegree, IfcBSplineSurfaceForm form, List<List<IfcCartesianPoint>> controlPoints, IfcLogicalEnum uClosed, IfcLogicalEnum vClosed, IfcLogicalEnum selfIntersect, List<int> uMultiplicities, List<int> vMultiplicities, List<double> uKnots, List<double> vKnots, IfcKnotType type)
			: base(m, uDegree, vDegree, controlPoints, form, uClosed, vClosed, selfIntersect)
		{
			mUMultiplicities.AddRange(uMultiplicities);
			mVMultiplicities.AddRange(vMultiplicities);
			mUKnots.AddRange(uKnots);
			mVKnots.AddRange(vKnots);
		}
コード例 #18
0
ファイル: IFC B.cs プロジェクト: jenca-cloud/ggIFC
		internal IfcBSplineSurfaceWithKnots(IfcBSplineSurfaceWithKnots s)
			: base(s)
		{
			mUMultiplicities = new List<int>(s.mUMultiplicities.ToArray());
			mVMultiplicities = new List<int>(s.mVMultiplicities.ToArray());
			mUKnots = new List<double>(s.mUKnots.ToArray());
			mVKnots = new List<double>(s.mVKnots.ToArray());
			mKnotSpec = s.mKnotSpec;
		}
コード例 #19
0
 public IfcBSplineCurveWithKnots(int degree, IEnumerable <IfcCartesianPoint> controlPoints, IEnumerable <int> multiplicities, IEnumerable <double> knots, IfcKnotType knotSpec) :
     base(degree, controlPoints)
 {
     mKnotMultiplicities.AddRange(multiplicities);
     mKnots.AddRange(knots);
 }
コード例 #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;
 }
コード例 #21
0
ファイル: IFC B.cs プロジェクト: jmirtsch/GeometryGymIFC
 internal IfcBSplineCurveWithKnots(DatabaseIfc db, IfcBSplineCurveWithKnots c)
     : base(db, c)
 {
     mMultiplicities.AddRange(c.Multiplicities);
     mKnots.AddRange(c.Knots);
     mKnotSpec = c.mKnotSpec;
 }
コード例 #22
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;
 }
コード例 #23
0
ファイル: IFC B.cs プロジェクト: jmirtsch/GeometryGymIFC
 protected override void Parse(string str, ref int pos, int len)
 {
     base.Parse(str, ref pos,len);
     mUMultiplicities = ParserSTEP.StripListInt(str,	ref pos, len);
     mVMultiplicities = ParserSTEP.StripListInt(str, ref pos, len);
     mUKnots = ParserSTEP.StripListDouble(str, ref pos, len);
     mVKnots = ParserSTEP.StripListDouble(str, ref pos, len);
     mKnotSpec = (IfcKnotType)Enum.Parse(typeof(IfcKnotType), ParserSTEP.StripField(str, ref pos, len).Replace(".", ""));
 }