Inheritance: IfcGeometricRepresentationItem, IfcBooleanOperand, IfcCsgSelect
Esempio n. 1
0
		internal IfcProfileDef underlyingSweptProfile()
		{
			if (mOperator == IfcBooleanOperator.DIFFERENCE)
			{
				IfcBooleanOperand first = FirstOperand;
				IfcSweptAreaSolid sweptAreaSolid = first as IfcSweptAreaSolid;
				if(sweptAreaSolid != null)
					return sweptAreaSolid.SweptArea;
				IfcBooleanResult booleanResult = first as IfcBooleanResult;
				if(booleanResult != null)
					return booleanResult.underlyingSweptProfile();
			}
			return null;
		}
Esempio n. 2
0
 internal IfcBooleanResult(DatabaseIfc db, IfcBooleanResult b) : base(db, b)
 {
     mOperator = b.mOperator; FirstOperand = db.Factory.Duplicate(b.mDatabase[b.mFirstOperand]) as IfcBooleanOperand; SecondOperand = db.Factory.Duplicate(b.mDatabase[b.mSecondOperand]) as IfcBooleanOperand;
 }
Esempio n. 3
0
		internal IfcBooleanResult(DatabaseIfc db, IfcBooleanResult b, DuplicateOptions options) : base(db, b, options)
		{
			mOperator = b.mOperator;
			FirstOperand = db.Factory.Duplicate(b.FirstOperand) as IfcBooleanOperand;
			SecondOperand = db.Factory.Duplicate(b.SecondOperand) as IfcBooleanOperand;
		}
Esempio n. 4
0
		internal static IfcBooleanResult Parse(string strDef) { IfcBooleanResult b = new IfcBooleanResult(); int ipos = 0; parseFields(b, ParserSTEP.SplitLineFields(strDef), ref ipos); return b; }
Esempio n. 5
0
		internal static void parseFields(IfcBooleanResult b, List<string> arrFields, ref int ipos)
		{
			IfcCurve.parseFields(b, arrFields, ref ipos);
			b.mOperator = (IfcBooleanOperator)Enum.Parse(typeof(IfcBooleanOperator), arrFields[ipos++].Replace(".", ""));
			b.mFirstOperand = ParserSTEP.ParseLink(arrFields[ipos++]);
			b.mSecondOperand = ParserSTEP.ParseLink(arrFields[ipos++]);
		}
Esempio n. 6
0
		internal IfcBooleanResult(IfcBooleanResult b) : base(b) { mOperator = b.mOperator; mFirstOperand = b.mFirstOperand; mSecondOperand = b.mSecondOperand; }
Esempio n. 7
0
 internal IfcBooleanResult(DatabaseIfc db, IfcBooleanResult b)
     : base(db,b)
 {
     mOperator = b.mOperator; FirstOperand = db.Factory.Duplicate(b.mDatabase[ b.mFirstOperand]) as IfcBooleanOperand; SecondOperand = db.Factory.Duplicate(b.mDatabase[b.mSecondOperand]) as IfcBooleanOperand;
 }
Esempio n. 8
0
		public IfcShapeRepresentation(IfcBooleanResult br)
			: base(br, "Body", "CSG")
		{
			IfcBooleanClippingResult bcr = br as IfcBooleanClippingResult;
			if (bcr != null)
				mRepresentationType = "Clipping";
		}