DynamoVisualProgramming.ZeroTouchLibrary by Autodesk

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

 IGeometryFactory

public interface IGeometryFactory
using Autodesk.DesignScript.Runtime; namespace Autodesk.DesignScript.Interfaces { [SupressImportIntoVM] public interface IGeometryFactory { IArcEntity ArcByThreePoints(IPointEntity firstPoint, IPointEntity secondPoint, IPointEntity thirdPoint); IArcEntity ArcByCenterPointRadiusAngle(IPointEntity center, double radius, double startAngle, double endAngle, IVectorEntity normal); IArcEntity ArcByCenterPointStartPointSweepAngle(IPointEntity centerPoint, IPointEntity startPoint, double sweepAngle, IVectorEntity normal); IArcEntity ArcByCenterPointStartPointEndPoint(IPointEntity centerPoint, IPointEntity startPoint, IPointEntity endPoint); IArcEntity ArcByFillet(ICurveEntity curve1, ICurveEntity curve2, double radius); IArcEntity ArcByFilletTangentToCurve(ICurveEntity curve1, ICurveEntity curveTangentTo, ICurveEntity curve2); IArcEntity ArcByBestFitThroughPoints(IPointEntity[] points); IArcEntity[] ArcByStartEndAndTangencies(IPointEntity point1, IVectorEntity vector1, IPointEntity point2, IVectorEntity vector2); IArcEntity ArcByStartPointEndPointStartTangent(IPointEntity startPoint, IPointEntity endPoint, IVectorEntity startTangent); IBoundingBoxEntity BoundingBoxByGeometry(IGeometryEntity geom); IBoundingBoxEntity BoundingBoxByGeometry(IGeometryEntity[] geom); IBoundingBoxEntity BoundingBoxByGeometryCoordinateSystem(IGeometryEntity geom, ICoordinateSystemEntity cs); IBoundingBoxEntity BoundingBoxByGeometryCoordinateSystem(IGeometryEntity[] geom, ICoordinateSystemEntity cs); IBoundingBoxEntity BoundingBoxByCorners(IPointEntity min, IPointEntity max); IBoundingBoxEntity BoundingBoxByCornersCoordinateSystem(IPointEntity min, IPointEntity max, ICoordinateSystemEntity cs); ICircleEntity CircleByCenterPointRadius(IPointEntity centerPoint, double radius = 1); ICircleEntity CircleByCenterPointRadiusNormal(IPointEntity centerPoint, double radius, IVectorEntity normal); ICircleEntity CircleByPlaneRadius(IPlaneEntity plane, double radius = 1); ICircleEntity CircleByThreePoints(IPointEntity p1, IPointEntity p2, IPointEntity p3); ICircleEntity CircleByBestFitThroughPoints(IPointEntity[] points); IConeEntity ConeByPointsRadius(IPointEntity startPoint, IPointEntity endPoint, double startRadius = 1); IConeEntity ConeByPointsRadii(IPointEntity startPoint, IPointEntity endPoint, double startRadius = 1, double endRadius = 1); IConeEntity ConeByCoordinateSystemHeightRadius(ICoordinateSystemEntity cs, double height = 1, double startRadius = 1); IConeEntity ConeByCoordinateSystemHeightRadii(ICoordinateSystemEntity cs, double height = 1, double startRadius = 1, double endRadius = 1); ICylinderEntity CylinderByRadiusHeight(ICoordinateSystemEntity cs, double radius = 1, double height = 1); ICylinderEntity CylinderByPointsRadius(IPointEntity startPoint, IPointEntity endPoint, double radius = 1); ICoordinateSystemEntity CoordinateSystemIdentity(); ICoordinateSystemEntity CoordinateSystemByMatrix(double[] matrix); ICoordinateSystemEntity CoordinateSystemByOrigin(double x = 0, double y = 0); ICoordinateSystemEntity CoordinateSystemByOrigin(double x = 0, double y = 0, double z = 0); ICoordinateSystemEntity CoordinateSystemByOrigin(IPointEntity origin); ICoordinateSystemEntity CoordinateSystemByPlane(IPlaneEntity plane); ICoordinateSystemEntity CoordinateSystemByOriginVectors(IPointEntity origin, IVectorEntity xAxis, IVectorEntity yAxis); ICoordinateSystemEntity CoordinateSystemByOriginVectors(IPointEntity origin, IVectorEntity xAxis, IVectorEntity yAxis, IVectorEntity zAxis); ICoordinateSystemEntity CoordinateSystemByCylindricalCoordinates(ICoordinateSystemEntity cs, double radius = 0, double theta = 0, double height = 0); ICoordinateSystemEntity CoordinateSystemBySphericalCoordinates(ICoordinateSystemEntity cs, double radius = 0, double theta = 0, double phi = 0); ICuboidEntity CuboidByLengths(double width = 1, double length = 1, double height = 1); ICuboidEntity CuboidByLengths(IPointEntity origin, double width = 1, double length = 1, double height = 1); ICuboidEntity CuboidByLengths(ICoordinateSystemEntity cs, double width = 1, double length = 1, double height = 1); ICuboidEntity CuboidByCorners(IPointEntity lowPoint, IPointEntity highPoint); ICurveEntity CurveByParameterLineOnSurface(ISurfaceEntity baseSurface, IUVEntity startParams, IUVEntity endParams); ICurveEntity CurveByBlendBetweenCurves(ICurveEntity curve1, ICurveEntity curve2, bool endOrStart1 = true, bool endOrStart2 = false); ICurveEntity CurveByIsoCurveOnSurface(ISurfaceEntity baseSurface, int direction = 0, double parameter = 0); IEllipseArcEntity EllipseArcByPlaneRadiiStartAngleSweepAngle(IPlaneEntity plane, double xRadius = 1, double yRadius = 1, double startAngle = 0, double sweepAngle = 180); IEllipseEntity EllipseByOriginRadii(IPointEntity origin, double xAxisRadius = 1, double yAxisRadius = 1); IEllipseEntity EllipseByOriginVectors(IPointEntity origin, IVectorEntity xAxisRadius, IVectorEntity yAxisRadius); IEllipseEntity EllipseByCoordinateSystemRadii(ICoordinateSystemEntity origin, double xAxisRadius = 1, double yAxisRadius = 1); IEllipseEntity EllipseByPlaneRadii(IPlaneEntity plane, double xAxisRadius = 1, double yAxisRadius = 1); IHelixEntity HelixByAxis(IPointEntity axisPoint, IVectorEntity axisDirection, IPointEntity startPoint, double pitch = 1, double angleTurns = 360); IIndexGroupEntity IndexGroupByIndices(uint a, uint b, uint c, uint d); IIndexGroupEntity IndexGroupByIndices(uint a, uint b, uint c); ILineEntity LineByStartPointEndPoint(IPointEntity startPoint, IPointEntity endPoint); ILineEntity LineByBestFitThroughPoints(IPointEntity[] bestFitPoints); ILineEntity LineByTangency(ICurveEntity curve, double parameter = 0); ILineEntity LineByStartPointDirectionLength(IPointEntity startPoint, IVectorEntity direction, double length = 1); INurbsCurveEntity NurbsCurveByControlPoints(IPointEntity[] points); INurbsCurveEntity NurbsCurveByControlPoints(IPointEntity[] points, int degree = 3); INurbsCurveEntity NurbsCurveByControlPoints(IPointEntity[] points, int degree = 3, bool closeCurve = false); INurbsCurveEntity NurbsCurveByControlPointsWeightsKnots(IPointEntity[] points, double[] weights, double[] knots, int degree = 3); INurbsCurveEntity NurbsCurveByPoints(IPointEntity[] points); INurbsCurveEntity NurbsCurveByPoints(IPointEntity[] points, bool closeCurve = false); INurbsCurveEntity NurbsCurveByPoints(IPointEntity[] points, int degree = 3); INurbsCurveEntity NurbsCurveByPointsTangents(IPointEntity[] points, IVectorEntity startTangent, IVectorEntity endTangent); INurbsSurfaceEntity NurbsSurfaceByPoints(IPointEntity[][] points, int uDegree = 3, int vDegree = 3); INurbsSurfaceEntity NurbsSurfaceByPointsTangents(IPointEntity[][] points, IVectorEntity[] startUTangents, IVectorEntity[] endUTangents, IVectorEntity[] startVTangents, IVectorEntity[] endVTangents); INurbsSurfaceEntity NurbsSurfaceByPointsTangentsKnotsDerivatives(IPointEntity[][] points, IVectorEntity[] startUTangents, IVectorEntity[] endUTangents, IVectorEntity[] startVTangents, IVectorEntity[] endVTangents, double[] uKnots, double[] vKnots, IVectorEntity[] cornerTwistDerivatives); INurbsSurfaceEntity NurbsSurfaceByControlPoints(IPointEntity[][] controlVertices, int uDegree = 3, int vDegree = 3); INurbsSurfaceEntity NurbsSurfaceByControlPointsWeightsKnots(IPointEntity[][] controlVertices, double[][] weights, double[] knotsU, double[] knotsV, int uDegree = 3, int vDegree = 3); IPlaneEntity PlaneByOriginNormal(IPointEntity origin, IVectorEntity normal); IPlaneEntity PlaneByOriginNormalXAxis(IPointEntity origin, IVectorEntity normal, IVectorEntity xAxis); IPlaneEntity PlaneByOriginXAxisYAxis(IPointEntity origin, IVectorEntity xAxis, IVectorEntity yAxis); IPlaneEntity PlaneByBestFitThroughPoints(IPointEntity[] points); IPlaneEntity PlaneByLineAndPoint(ILineEntity line, IPointEntity point); IPlaneEntity PlaneByThreePoints(IPointEntity p1, IPointEntity p2, IPointEntity p3); IPlaneEntity PlaneXY(); IPlaneEntity PlaneXZ(); IPlaneEntity PlaneYZ(); IPointEntity PointByCoordinates(double x = 0, double y = 0); IPointEntity PointOrigin(); IPointEntity PointByCoordinates(double x = 0, double y = 0, double z = 0); IPointEntity PointByCartesianCoordinates(ICoordinateSystemEntity cs, double x = 0, double y = 0, double z = 0); IPointEntity PointByCylindricalCoordinates(ICoordinateSystemEntity cs, double angle = 0, double elevation = 0, double radius = 0); IPointEntity PointBySphericalCoordinates(ICoordinateSystemEntity cs, double phi = 0, double theta = 0, double radius = 0); IPointEntity[] PointPruneDuplicates(IPointEntity[] points, double tolerance = 0.001); IPolygonEntity PolygonByPoints(IPointEntity[] points); IPolygonEntity PolygonRegularPolygon(ICircleEntity circle, int numberSides = 5); IPolyCurveEntity PolyCurveByJoinedCurves(ICurveEntity[] curves); IPolyCurveEntity PolyCurveByPoints(IPointEntity[] points, bool connectLastToFirst = false); IPolyCurveEntity PolyCurveByThickeningCurve(ICurveEntity curve, double thickness, IVectorEntity nor); IRectangleEntity RectangleByCornerPoints(IPointEntity[] points); IRectangleEntity RectangleByCornerPoints(IPointEntity p1, IPointEntity p2, IPointEntity p3, IPointEntity p4); IRectangleEntity RectangleByWidthHeight(double width = 1, double length = 1); IRectangleEntity RectangleByWidthHeight(IPlaneEntity plane, double width = 1, double length = 1); IRectangleEntity RectangleByWidthHeight(ICoordinateSystemEntity cs, double width = 1, double length = 1); ISurfaceEntity SurfaceByLoft(ICurveEntity[] crossSections); ISurfaceEntity SurfaceByRuledLoft(ILineEntity[] crossSections); ISurfaceEntity SurfaceByLoft(ICurveEntity[] crossSections, ICurveEntity guideCurve); ISurfaceEntity SurfaceByLoft(ICurveEntity[] crossSections, ICurveEntity[] guideCurves); ISurfaceEntity SurfaceBySweep(ICurveEntity profile, ICurveEntity path); ISurfaceEntity SurfaceByPerimeterPoints(IPointEntity[] points); ISurfaceEntity SurfaceBySweep2Rails(ICurveEntity rail1, ICurveEntity rail2, ICurveEntity profile); ISurfaceEntity SurfaceByRevolve(ICurveEntity profile, IPointEntity axisOrigin, IVectorEntity axisDirection, double startAngle = 0, double sweepAngle = 180); ISurfaceEntity SurfaceByPatch(ICurveEntity closedCurve); ISolidEntity SolidByJoinedSurfaces(ISurfaceEntity[] facesOfSolid); ISolidEntity SolidByLoft(ICurveEntity[] crossSections); ISolidEntity SolidByLoft(ICurveEntity[] crossSections, ICurveEntity guideCurve); ISolidEntity SolidByLoft(ICurveEntity[] crossSections, ICurveEntity[] guideCurves); ISolidEntity SolidBySweep(ICurveEntity profile, ICurveEntity path); ISolidEntity SolidBySweep2Rails(ICurveEntity rail1, ICurveEntity rail2, ICurveEntity profile); ISolidEntity SolidByRevolve(ICurveEntity profile, IPointEntity axisOrigin, IVectorEntity axisDirection, double startAngle = 0, double sweepAngle = 180); ISolidEntity SolidByUnion(ISolidEntity[] solids); ISphereEntity SphereByCenterPointRadius(IPointEntity centerPoint, double radius = 1); ISphereEntity SphereByFourPoints(IPointEntity[] points); ISphereEntity SphereByBestFit(IPointEntity[] points); IUVEntity UVByCoordinates(double u = 0, double v = 0); IVectorEntity VectorByCoordinates(double x = 0, double y = 0, double z = 0); IVectorEntity VectorByCoordinates(double x = 0, double y = 0, double z = 0, bool normalized = false); IVectorEntity VectorByTwoPoints(IPointEntity start, IPointEntity end); IVectorEntity VectorXAxis(); IVectorEntity VectorYAxis(); IVectorEntity VectorZAxis(); IPolySurfaceEntity PolySurfaceByLoft(ICurveEntity[] crossSections); IPolySurfaceEntity PolySurfaceByLoft(ICurveEntity[] crossSections, ICurveEntity guideCurve); IPolySurfaceEntity PolySurfaceByLoftGuides(ICurveEntity[] crossSections, ICurveEntity[] guideCurves); IPolySurfaceEntity PolySurfaceByJoinedSurfaces(ISurfaceEntity[] surfaces); IPolySurfaceEntity PolySurfaceBySolid(ISolidEntity solid); IPolySurfaceEntity PolySurfaceBySweep(ICurveEntity rail, ICurveEntity[] crossSection); IPolySurfaceEntity PolySurfaceBySweep(ICurveEntity rail, ICurveEntity profile); IMeshEntity MeshByPointsFaceIndices(IPointEntity[] vertexPositions, IIndexGroupEntity[] indices); IGeometryEntity[] LoadSat(string satFile); string SaveSat(string satFile, object[] ffiObjects); } }