internal static Snap.NX.Revolve CreateRevolve(Snap.NX.ICurve[] icurves, Position axisPoint, Vector axisVector, Snap.Number[] extents, bool offset, Snap.Number[] offsetValues, bool createSheet) { NXOpen.Part workPart = (NXOpen.Part)Globals.WorkPart; NXOpen.Features.RevolveBuilder featureBuilder = workPart.Features.CreateRevolveBuilder(null); featureBuilder.Tolerance = Globals.DistanceTolerance; Snap.NX.Section section = Snap.NX.Section.CreateSection(icurves); featureBuilder.Section = (NXOpen.Section)section; section.NXOpenSection.DistanceTolerance = Globals.DistanceTolerance; section.NXOpenSection.ChainingTolerance = (Globals.UnitType == Globals.Unit.Millimeter) ? 0.02413 : 0.00095; featureBuilder.BooleanOperation.Type = BooleanOperation.BooleanType.Create; if (createSheet) { featureBuilder.FeatureOptions.BodyType = FeatureOptions.BodyStyle.Sheet; } featureBuilder.Limits.StartExtend.Value.RightHandSide = extents[0].ToString(); featureBuilder.Limits.EndExtend.Value.RightHandSide = extents[1].ToString(); featureBuilder.Offset.Option = NXOpen.GeometricUtilities.Type.NoOffset; if (offset) { featureBuilder.Offset.Option = NXOpen.GeometricUtilities.Type.NonsymmetricOffset; featureBuilder.Offset.StartOffset.RightHandSide = offsetValues[0].ToString(); featureBuilder.Offset.EndOffset.RightHandSide = offsetValues[1].ToString(); } Direction direction = workPart.Directions.CreateDirection((Point3d)axisPoint, (Vector3d)axisVector, SmartObject.UpdateOption.WithinModeling); NXOpen.Point point = null; NXOpen.Axis axis = workPart.Axes.CreateAxis(point, direction, SmartObject.UpdateOption.WithinModeling); featureBuilder.Axis = axis; NXOpen.Features.Revolve revolve = (NXOpen.Features.Revolve)Snap.NX.Feature.CommitFeature(featureBuilder); featureBuilder.Destroy(); return(new Snap.NX.Revolve(revolve)); }
public static Snap.NX.Revolve Wrap(Tag nxopenRevolveTag) { if (nxopenRevolveTag == Tag.Null) { throw new ArgumentException("Input tag is NXOpen.Tag.Null"); } NXOpen.Features.Revolve objectFromTag = Snap.NX.NXObject.GetObjectFromTag(nxopenRevolveTag) as NXOpen.Features.Revolve; if (objectFromTag == null) { throw new ArgumentException("Input tag doesn't belong to an NXOpen.Features.Revolve object"); } return(objectFromTag); }
internal Revolve(NXOpen.Features.Revolve revolve) : base(revolve) { this.NXOpenRevolve = revolve; }
internal Torus(NXOpen.Features.Revolve torus) : base(torus) { }