Example #1
0
 public void AddTriangleFace(XbimXYZ point1, XbimXYZ point2, XbimXYZ point3)
 {
     AddFace(true, XbimFaceTypeEnum.TRIANGLE);
     AddFaceBoundPoint(point1.X, point1.Y, point1.Z);
     AddFaceBoundPoint(point2.X, point2.Y, point2.Z);
     AddFaceBoundPoint(point3.X, point3.Y, point3.Z);
 }
        /// <summary>
        /// Creates solid extrured from rectangle profile
        /// </summary>
        /// <param name="document"></param>
        /// <param name="depth">depth of the extrusion</param>
        /// <param name="width">Width of the rectangle profile</param>
        /// <param name="length">Length of the rectangle profile</param>
        /// <param name="direction">Direction of the extrusion</param>
        internal XbimExtrudedAreaSolid(XbimDocument document, double depth, double width, double length, XbimXYZ direction)
            : base(document)
        {
            BaseInit<IfcExtrudedAreaSolid>();
            InitToRectangleProfile(width, length);

            IfcExtrudedAreaSolid.Depth = depth;
            IfcExtrudedAreaSolid.ExtrudedDirection = direction.CreateIfcDirection(Document);
        }
        internal XbimExtrudedAreaSolid(XbimDocument document,  double depth, XbimXYZ direction)
            :base (document)
        {
            BaseInit<IfcExtrudedAreaSolid>();
            InitToCompositCurveProfile();

            IfcExtrudedAreaSolid.Depth = depth;
            IfcExtrudedAreaSolid.ExtrudedDirection = direction.CreateIfcDirection(Document);
        }
        internal XbimRevolvedAreaSolid(XbimDocument document, double angle, XbimXYZ spindleDirection, XbimXYZ spindleLocation)
            :base (document)
        {
            BaseInit<IfcRevolvedAreaSolid>();

            IfcRevolvedAreaSolid.Angle = angle;
            IfcRevolvedAreaSolid.Axis = Document.Model.Instances.New<IfcAxis1Placement>
                (ax => {
                    ax.Axis = spindleDirection.CreateIfcDirection(Document);
                    ax.Location = spindleLocation.CreateIfcCartesianPoint(Document);
                });
        }
 public void SetDirections(XbimXYZ X_axisDirection, XbimXYZ Z_axisDirection)
 {
     _ifcAxis2Placement.SetNewDirectionOf_XZ(X_axisDirection.X, X_axisDirection.Y, X_axisDirection.Z, Z_axisDirection.X, Z_axisDirection.Y, Z_axisDirection.Z);
 }
 public void SetLocation(XbimXYZ location)
 {
     _ifcAxis2Placement.SetNewLocation(location.X, location.Y, location.Z);
 }