DynamoVisualProgramming.ZeroTouchLibrary by Autodesk

<PackageReference Include="DynamoVisualProgramming.ZeroTouchLibrary" Version="4.2.0-beta4830" />

 Cone

public class Cone : Solid
using Autodesk.DesignScript.Interfaces; using Autodesk.DesignScript.Runtime; using ProtoGeometryGenerator; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Autodesk.DesignScript.Geometry { [GenerateFromInterface(typeof(IConeEntity), typeof(IGeometryFactory), new Type[] { })] public class Cone : Solid { internal IConeEntity ConeEntity => HostImpl as IConeEntity; public Point StartPoint => Point.Wrap(ConeEntity.get_StartPoint()); public Point EndPoint => Point.Wrap(ConeEntity.get_EndPoint()); public double RadiusRatio => ConeEntity.get_RadiusRatio(); [Scaling()] public double StartRadius { get { return ConeEntity.get_StartRadius() * DesignScriptEntity.scaleFactor; } } [Scaling()] public double EndRadius { get { return ConeEntity.get_EndRadius() * DesignScriptEntity.scaleFactor; } } [Scaling()] public double Height { get { return ConeEntity.get_Height() * DesignScriptEntity.scaleFactor; } } internal Cone(IConeEntity host) : base(host) { } internal new static void InitType() { Geometry.RegisterHostType(typeof(IConeEntity), (IGeometryEntity host) => new Cone(host as IConeEntity)); } public static Cone ByPointsRadius([DefaultArgument("Autodesk.DesignScript.Geometry.Point.ByCoordinates(0, 0, 0)")] Point startPoint, [DefaultArgument("Autodesk.DesignScript.Geometry.Point.ByCoordinates(0, 0, 1)")] Point endPoint, [Scaling()] double startRadius = 1) { DesignScriptEntity.CheckArgsForAsmExtents(startRadius); return Wrap(HostFactory.Factory.ConeByPointsRadius(Point.Unwrap(startPoint), Point.Unwrap(endPoint), startRadius / DesignScriptEntity.scaleFactor)); } public static Cone ByPointsRadii([DefaultArgument("Autodesk.DesignScript.Geometry.Point.ByCoordinates(0, 0, 0)")] Point startPoint, [DefaultArgument("Autodesk.DesignScript.Geometry.Point.ByCoordinates(0, 0, 1)")] Point endPoint, [Scaling()] double startRadius = 1, [Scaling()] double endRadius = 1) { DesignScriptEntity.CheckArgsForAsmExtents(startRadius, endRadius); return Wrap(HostFactory.Factory.ConeByPointsRadii(Point.Unwrap(startPoint), Point.Unwrap(endPoint), startRadius / DesignScriptEntity.scaleFactor, endRadius / DesignScriptEntity.scaleFactor)); } public static Cone ByCoordinateSystemHeightRadius([DefaultArgument("Autodesk.DesignScript.Geometry.CoordinateSystem.ByOrigin(0, 0, 0)")] CoordinateSystem cs, [Scaling()] double height = 1, [Scaling()] double startRadius = 1) { DesignScriptEntity.CheckArgsForAsmExtents(height, startRadius); return Wrap(HostFactory.Factory.ConeByCoordinateSystemHeightRadius(CoordinateSystem.Unwrap(cs), height / DesignScriptEntity.scaleFactor, startRadius / DesignScriptEntity.scaleFactor)); } public static Cone ByCoordinateSystemHeightRadii([DefaultArgument("Autodesk.DesignScript.Geometry.CoordinateSystem.ByOrigin(0, 0, 0)")] CoordinateSystem cs, [Scaling()] double height = 1, [Scaling()] double startRadius = 1, [Scaling()] double endRadius = 1) { DesignScriptEntity.CheckArgsForAsmExtents(height, startRadius, endRadius); return Wrap(HostFactory.Factory.ConeByCoordinateSystemHeightRadii(CoordinateSystem.Unwrap(cs), height / DesignScriptEntity.scaleFactor, startRadius / DesignScriptEntity.scaleFactor, endRadius / DesignScriptEntity.scaleFactor)); } internal static Cone Wrap(IConeEntity host) { return Geometry.Wrap(host) as Cone; } internal static Cone[] Wrap(IConeEntity[] hosts) { return hosts.Select(Wrap).ToArray(); } internal static Cone[][] Wrap(IConeEntity[][] hosts) { return hosts.Select(Wrap).ToArray(); } internal static IConeEntity Unwrap(Cone o) { return o.ConeEntity; } internal static IConeEntity[] Unwrap(IEnumerable<Cone> o) { return o.Select(Unwrap).ToArray(); } internal static IConeEntity[] Unwrap(Cone[] o) { return o.Select(Unwrap).ToArray(); } internal static IConeEntity[][] Unwrap(Cone[][] o) { return o.Select(Unwrap).ToArray(); } public override string ToString() { StringBuilder builder = DesignScriptEntity.GetBuilder(); AppendTo(builder); return builder.ToString(); } internal override void AppendTo(StringBuilder builder) { builder.Add("Cone(StartPoint = ", StartPoint).Add(", EndPoint = ", EndPoint).Add(", RadiusRatio = ", RadiusRatio) .Add(", StartRadius = ", StartRadius) .Add(", EndRadius = ", EndRadius) .Add(", Height = ", Height) .Append(")"); } } }