DynamoVisualProgramming.ZeroTouchLibrary by Autodesk

<PackageReference Include="DynamoVisualProgramming.ZeroTouchLibrary" Version="4.0.0-beta3036" />

 Polygon

public class Polygon : PolyCurve
using Autodesk.DesignScript.Geometry.Properties; using Autodesk.DesignScript.Interfaces; using Autodesk.DesignScript.Runtime; using System; using System.Collections.Generic; using System.Linq; namespace Autodesk.DesignScript.Geometry { public class Polygon : PolyCurve { internal IPolygonEntity PolygonEntity => HostImpl as IPolygonEntity; [IsObsolete("polygon_points_deprecated", typeof(Resources))] [Obsolete("This property is deprecated and will be removed in Dynamo 5.0. Use PolyCurve.Points instead.")] [IsVisibleInDynamoLibrary(false)] public new Point[] Points { get { return Point.Wrap(PolygonEntity.get_Points()); } } [Scaling()] public double PlaneDeviation { get { return PolygonEntity.get_PlaneDeviation() * DesignScriptEntity.scaleFactor; } } internal Polygon(IPolygonEntity host) : base(host) { } public override string ToString() { return "Polygon"; } internal new static void InitType() { Geometry.RegisterHostType(typeof(IPolygonEntity), (IGeometryEntity host) => new Polygon(host as IPolygonEntity)); } internal static Polygon Wrap(IPolygonEntity host) { return Geometry.Wrap(host, null) as Polygon; } internal static Polygon[] Wrap(IPolygonEntity[] hosts) { return (from x in hosts select Wrap(x)).ToArray(); } internal static Polygon[][] Wrap(IPolygonEntity[][] hosts) { return (from x in hosts select Wrap(x)).ToArray(); } internal static IPolygonEntity[][] Unwrap(Polygon[][] o) { return (from x in o select Unwrap(x)).ToArray(); } internal static IPolygonEntity[] Unwrap(Polygon[] o) { return (from x in o select Unwrap(x)).ToArray(); } internal static IPolygonEntity[] Unwrap(IEnumerable<Polygon> o) { return (from x in o select Unwrap(x)).ToArray(); } internal static IPolygonEntity Unwrap(Polygon o) { return o.PolygonEntity; } public static Polygon ByPoints(IEnumerable<Point> points) { return Wrap(HostFactory.Factory.PolygonByPoints(Point.Unwrap(points))); } public static Polygon RegularPolygon(Circle circle, int numberSides = 5) { return Wrap(HostFactory.Factory.PolygonRegularPolygon(Circle.Unwrap(circle), numberSides)); } public virtual Point[] Corners() { return Point.Wrap(PolygonEntity.Corners()); } public virtual Point Center() { return Point.Wrap(PolygonEntity.Center()); } public Point[] SelfIntersections() { return Point.Wrap(PolygonEntity.SelfIntersections()); } public bool ContainmentTest(Point point) { return PolygonEntity.ContainmentTest(Point.Unwrap(point)); } } }