DynamoVisualProgramming.ZeroTouchLibrary by Autodesk

<PackageReference Include="DynamoVisualProgramming.ZeroTouchLibrary" Version="4.0.0.3277" />

 EllipseArc

public class EllipseArc : Curve
using Autodesk.DesignScript.Interfaces; using Autodesk.DesignScript.Runtime; using System.Collections.Generic; using System.Globalization; using System.Linq; namespace Autodesk.DesignScript.Geometry { public class EllipseArc : Curve { internal IEllipseArcEntity EllipseArcEntity => HostImpl as IEllipseArcEntity; public Point CenterPoint => Point.Wrap(EllipseArcEntity.get_CenterPoint()); public Vector MajorAxis => Vector.Wrap(EllipseArcEntity.get_MajorAxis()); public Vector MinorAxis => Vector.Wrap(EllipseArcEntity.get_MinorAxis()); public double StartAngle => EllipseArcEntity.get_StartAngle(); public double SweepAngle => EllipseArcEntity.get_SweepAngle(); public Plane Plane => Plane.Wrap(EllipseArcEntity.get_Plane()); internal EllipseArc(IEllipseArcEntity host) : base(host) { } public override string ToString() { string[] obj = new string[13] { "EllipseArc(Normal = ", Normal?.ToString(), ", CenterPoint = ", CenterPoint?.ToString(), ", MajorAxis = ", MajorAxis?.ToString(), ", MinorAxis = ", MinorAxis?.ToString(), ", StartAngle = ", null, null, null, null }; double num = StartAngle; obj[9] = num.ToString(GeometryExtension.DoublePrintFormat, CultureInfo.InvariantCulture); obj[10] = ", SweepAngle = "; num = SweepAngle; obj[11] = num.ToString(GeometryExtension.DoublePrintFormat, CultureInfo.InvariantCulture); obj[12] = ")"; return string.Concat(obj); } internal new static void InitType() { Geometry.RegisterHostType(typeof(IEllipseArcEntity), (IGeometryEntity host) => new EllipseArc(host as IEllipseArcEntity)); } internal static EllipseArc Wrap(IEllipseArcEntity host) { if (host == null) return null; return new EllipseArc(host); } internal static EllipseArc[] Wrap(IEllipseArcEntity[] hosts) { return (from x in hosts select Wrap(x)).ToArray(); } internal static EllipseArc[][] Wrap(IEllipseArcEntity[][] hosts) { return (from x in hosts select Wrap(x)).ToArray(); } internal static IEllipseArcEntity[][] Unwrap(EllipseArc[][] o) { return (from x in o select Unwrap(x)).ToArray(); } internal static IEllipseArcEntity[] Unwrap(EllipseArc[] o) { return (from x in o select Unwrap(x)).ToArray(); } internal static IEllipseArcEntity[] Unwrap(IEnumerable<EllipseArc> o) { return (from x in o select Unwrap(x)).ToArray(); } internal static IEllipseArcEntity Unwrap(EllipseArc o) { return o.EllipseArcEntity; } public static EllipseArc ByPlaneRadiiAngles([DefaultArgument("Autodesk.DesignScript.Geometry.Plane.XY()")] Plane plane, [Scaling()] double xRadius = 1, [Scaling()] double yRadius = 1, double startAngle = 0, double sweepAngle = 180) { DesignScriptEntity.CheckArgsForAsmExtents(new List<double> { xRadius, yRadius }); xRadius /= DesignScriptEntity.scaleFactor; yRadius /= DesignScriptEntity.scaleFactor; return Wrap(HostFactory.Factory.EllipseArcByPlaneRadiiAngles(Plane.Unwrap(plane), xRadius, yRadius, startAngle, sweepAngle)); } } }