DynamoVisualProgramming.ZeroTouchLibrary by Autodesk

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

 PanelSurface

using Autodesk.DesignScript.Interfaces; using Autodesk.DesignScript.Runtime; using System.Collections.Generic; using System.Linq; namespace Autodesk.DesignScript.Geometry { public class PanelSurface : DesignScriptEntity { internal IPanelSurfaceEntity PanelSurfaceEntity => HostImpl as IPanelSurfaceEntity; public int NumVertices => PanelSurfaceEntity.get_NumVertices(); public int NumPanels => PanelSurfaceEntity.get_NumPanels(); internal PanelSurface(IPanelSurfaceEntity host, bool persist) : base(host, persist) { } public override string ToString() { string[] obj = new string[5] { "PanelSurface(NumVertices = ", null, null, null, null }; int num = NumVertices; obj[1] = num.ToString(); obj[2] = ", NumPanels = "; num = NumPanels; obj[3] = num.ToString(); obj[4] = ")"; return string.Concat(obj); } internal static PanelSurface Wrap(IPanelSurfaceEntity host, bool persist = true) { if (host == null) return null; return new PanelSurface(host, persist); } internal static PanelSurface[] Wrap(IPanelSurfaceEntity[] hosts, bool persist = true) { return (from x in hosts select Wrap(x, persist)).ToArray(); } internal static PanelSurface[][] Wrap(IPanelSurfaceEntity[][] hosts, bool persist = true) { return (from x in hosts select Wrap(x, persist)).ToArray(); } internal static IPanelSurfaceEntity[][] Unwrap(PanelSurface[][] o) { return (from x in o select Unwrap(x)).ToArray(); } internal static IPanelSurfaceEntity[] Unwrap(PanelSurface[] o) { return (from x in o select Unwrap(x)).ToArray(); } internal static IPanelSurfaceEntity[] Unwrap(IEnumerable<PanelSurface> o) { return (from x in o select Unwrap(x)).ToArray(); } internal static IPanelSurfaceEntity Unwrap(PanelSurface o) { return o.PanelSurfaceEntity; } public static PanelSurface ByQuads(Surface surface, int numU, int numV, PanelSurfaceBoundaryCondition boundaryCondition = PanelSurfaceBoundaryCondition.Keep) { return Wrap(HostFactory.Factory.PanelSurfaceByQuads(Surface.Unwrap(surface), numU, numV, boundaryCondition), true); } public static PanelSurface ByCrossSplitSquares(Surface surface, int numU, int numV, PanelSurfaceBoundaryCondition boundaryCondition = PanelSurfaceBoundaryCondition.Keep) { return Wrap(HostFactory.Factory.PanelSurfaceByCrossSplitSquares(Surface.Unwrap(surface), numU, numV, boundaryCondition), true); } public static PanelSurface ByDiagonallySplitSquares(Surface surface, int numU, int numV, bool alternativeDiagonal = false, PanelSurfaceBoundaryCondition boundaryCondition = PanelSurfaceBoundaryCondition.Keep) { return Wrap(HostFactory.Factory.PanelSurfaceByDiagonallySplitSquares(Surface.Unwrap(surface), numU, numV, alternativeDiagonal, boundaryCondition), true); } public static PanelSurface ByDiamonds(Surface surface, int numU, int numV, PanelSurfaceBoundaryCondition boundaryCondition = PanelSurfaceBoundaryCondition.Keep) { return Wrap(HostFactory.Factory.PanelSurfaceByDiamonds(Surface.Unwrap(surface), numU, numV, boundaryCondition), true); } public static PanelSurface BySplitDiamonds(Surface surface, int numU, int numV, bool splitHorizontally = false, PanelSurfaceBoundaryCondition boundaryCondition = PanelSurfaceBoundaryCondition.Keep) { return Wrap(HostFactory.Factory.PanelSurfaceBySplitDiamonds(Surface.Unwrap(surface), numU, numV, splitHorizontally, boundaryCondition), true); } public static PanelSurface ByParallelograms(Surface surface, int numU, int numV, double shearFactor, bool alignWithUAxis = false, PanelSurfaceBoundaryCondition boundaryCondition = PanelSurfaceBoundaryCondition.Keep) { return Wrap(HostFactory.Factory.PanelSurfaceByParallelograms(Surface.Unwrap(surface), numU, numV, shearFactor, alignWithUAxis, boundaryCondition), true); } public static PanelSurface ByStaggeredQuads(Surface surface, int numU, int numV, bool staggerVertically = false, double displacementFactor = 0.5, PanelSurfaceBoundaryCondition boundaryCondition = PanelSurfaceBoundaryCondition.Keep) { return Wrap(HostFactory.Factory.PanelSurfaceByStaggeredQuads(Surface.Unwrap(surface), numU, numV, staggerVertically, displacementFactor, boundaryCondition), true); } public static PanelSurface ByHexagons(Surface surface, int numU, int numV, PanelSurfaceBoundaryCondition boundaryCondition = PanelSurfaceBoundaryCondition.Keep) { return Wrap(HostFactory.Factory.PanelSurfaceByHexagons(Surface.Unwrap(surface), numU, numV, boundaryCondition), true); } public static PanelSurface ByRhombiTriHexagonals(Surface surface, int numU, int numV, PanelSurfaceBoundaryCondition boundaryCondition = PanelSurfaceBoundaryCondition.Keep) { return Wrap(HostFactory.Factory.PanelSurfaceByRhombiTriHexagonals(Surface.Unwrap(surface), numU, numV, boundaryCondition), true); } public static PanelSurface ByCustomOrthogonalLattice(Surface surface, int numU, int numV, double uDisplacement, double vDisplacement, UV[][] tileUVs, PanelSurfaceBoundaryCondition boundaryCondition = PanelSurfaceBoundaryCondition.Keep) { return Wrap(HostFactory.Factory.PanelSurfaceByCustomOrthogonalLattice(Surface.Unwrap(surface), numU, numV, uDisplacement, vDisplacement, UV.Unwrap(tileUVs), boundaryCondition), true); } public PanelSurface SetTransform([DefaultArgument("1.0")] double scale, [DefaultArgument("0.0")] double uOffset, [DefaultArgument("0.0")] double vOffset, [DefaultArgument("0.0")] double rotation, [DefaultArgument("Autodesk.DesignScript.Geometry.Point.ByCoordinates(0, 0, 0)")] Point rotationPoint) { return Wrap(PanelSurfaceEntity.SetTransform(scale, uOffset, vOffset, rotation, Point.Unwrap(rotationPoint)), true); } [AllowRankReduction] public int[] GetNumPanelVertices([DefaultArgument("null")] int[] panelIndices) { return PanelSurfaceEntity.GetNumPanelVertices(panelIndices); } public Vertex GetVertex(int vertexIndex) { return Vertex.Wrap(PanelSurfaceEntity.GetVertex(vertexIndex), true); } public Point GetPoint(int vertexIndex) { return Point.Wrap(PanelSurfaceEntity.GetPoint(vertexIndex), true); } public int GetVertexIndex(int panelIndex, int vertexNumber) { return PanelSurfaceEntity.GetVertexIndex(panelIndex, vertexNumber); } [AllowRankReduction] public Vertex[][] GetPanelVertices([DefaultArgument("null")] int[] panelIndices) { return Vertex.Wrap(PanelSurfaceEntity.GetPanelVertices(panelIndices), true); } [AllowRankReduction] public Point[][] GetPanelPoints([DefaultArgument("null")] int[] panelIndices) { return Point.Wrap(PanelSurfaceEntity.GetPanelPoints(panelIndices), true); } [AllowRankReduction] public Polygon[] GetPanelPolygon([DefaultArgument("null")] int[] panelIndices) { return Polygon.Wrap(PanelSurfaceEntity.GetPanelPolygon(panelIndices), true); } } }