Bézier(start, control1, control2, end, steps) Bézier(start, control1, control2, end, steps) BézierPatch(p00, p10, p20, p30, p01, p11, p21, p31, p02, p12, p22, p32, p03, p13, p23, p33, steps) Extrude(polygon, depth, includeBackFace, flatSideNormals) Extrude(polygons, depth, includeBackFace, flatSideNormals) Extrude(pieces, depth, smoothness, includeBackFace) pt(x, y, z, normalOverride) pt(x, y, z, befX, afX, befY, afY) Rotate(face, axisStart, axisEnd, angle) Rotate(faces, axisStart, axisEnd, angle) Rotate(faces, axisStart, axisEnd, angle) Rotate(faces, axisStart, axisEnd, angle) Rotate(faces, axisStart, axisEnd, angle) Rotate(vi, axisStart, axisEnd, angle) Rotate(face, axisStart, axisEnd, angle) Rotate(face, axisStart, axisEnd, angle) Rotate(face, axisStart, axisEnd, angle)
Legend Class Struct Enum Interface Delegate | Constructor Method Property Event Field |
| Static class: RT.Modeling.MdSummary
Contains a plethora of extension methods to use on Pt (3D coordinates), collections of points
(assumed to be faces) and collections of faces (assumed to be models). Static methodsdouble | | Inverse cosine function, returning angles in degrees. | double | | Inverse sine function, returning angles in degrees. | IEnumerable<VertexInfo[]> | |
Generates a circular bevel from a 3D curve. | IEnumerable<VertexInfo[]> | |
Generates an elliptical bevel from a 3D curve. | IEnumerable<Pt> | |
Generates the points along a cubic Bézier curve. The points are equidistant in t-space, meaning they are not
geometrically equidistant, nor does this ensure a uniform smoothness. | IEnumerable<PointD> | | Pt[][] | |
Generates a mesh of points on a cubic Bézier patch. The points are equidistant in t-space, meaning they are
not geometrically equidistant, nor does this ensure a uniform smoothness. | Pt[][] | BézierPatch(Pt p00, Pt p10, Pt p20, Pt p30, Pt p01, Pt p11, Pt p21, Pt p31, Pt p02, Pt p12, Pt p22, Pt p32, Pt p03, Pt p13, Pt p23, Pt p33, int steps) | double | | Cosine function of an angle in degrees. | IEnumerable<VertexInfo[]> | CreateMesh(bool closedX, bool closedY, MeshVertexInfo[][] pts) |
Creates a mesh (3D object surface consisting of quadrilateral faces) based on a 2D array of 3D points. | IEnumerable<VertexInfo[]> | CreateMesh(bool closedX, bool closedY, Pt[][] pts, bool flatNormals = false) | IEnumerable<VertexInfo[]> | |
Converts a polygon to a double-sided 3D shape with normal vectors perpendicular to the polygon (making the
polygon appear flat). | IEnumerable<VertexInfo[]> | Extrude(this IEnumerable<PointD> polygon, double depth, bool includeBackFace = false, bool flatSideNormals = false) |
Generates a 3D model by extruding a polygon from 2D space along the y-axis. | IEnumerable<VertexInfo[]> | Extrude(this IEnumerable<IEnumerable<PointD>> polygons, double depth, bool includeBackFace = false, bool flatSideNormals = false) |
Generates a 3D model by extruding a set of polygons, potentially with holes, from 2D space along the y-axis. | IEnumerable<VertexInfo[]> | |
Generates a 3D model by extruding an SVG path from 2D space along the y-axis. | VertexInfo[] | |
Annotates a polygon with normal vectors perpendicular to the polygon (making the polygon appear flat). | string | |
Writes the specified models to an .obj file. | string | |
Writes the specified faces to an .obj file. | string | | Pt[] | | Moves a face by a specified amount in 3D space. | VertexInfo[] | Move(this VertexInfo[] face, Pt by) | IEnumerable<Pt> | | IEnumerable<VertexInfo> | | Pt[][] | Move(this Pt[][] faces, Pt by) | Moves a collection of faces by a specified amount in 3D space. | VertexInfo[][] | Move(this VertexInfo[][] faces, Pt by) | IEnumerable<Pt[]> | Move(this IEnumerable<Pt[]> faces, Pt by) | IEnumerable<VertexInfo[]> | Move(this IEnumerable<VertexInfo[]> faces, Pt by) | VertexInfo | | Moves a vertex by a specified amount along the x-, y- and z-axes. | Pt[] | MoveX(this Pt[] face, double x) | Moves a face by a specified amount along the x-axis. | VertexInfo[] | MoveX(this VertexInfo[] face, double x) | IEnumerable<Pt> | MoveX(this IEnumerable<Pt> face, double x) | IEnumerable<VertexInfo> | | Pt[][] | MoveX(this Pt[][] faces, double x) | Moves a collection of faces by a specified amount along the x-axis. | VertexInfo[][] | MoveX(this VertexInfo[][] faces, double x) | IEnumerable<Pt[]> | MoveX(this IEnumerable<Pt[]> faces, double x) | IEnumerable<VertexInfo[]> | MoveX(this IEnumerable<VertexInfo[]> faces, double x) | Pt[] | MoveY(this Pt[] face, double y) | Moves a face by a specified amount along the y-axis. | VertexInfo[] | MoveY(this VertexInfo[] face, double y) | IEnumerable<Pt> | MoveY(this IEnumerable<Pt> face, double y) | IEnumerable<VertexInfo> | | Pt[][] | MoveY(this Pt[][] faces, double y) | Moves a collection of faces by a specified amount along the y-axis. | VertexInfo[][] | MoveY(this VertexInfo[][] faces, double y) | IEnumerable<Pt[]> | MoveY(this IEnumerable<Pt[]> faces, double y) | IEnumerable<VertexInfo[]> | MoveY(this IEnumerable<VertexInfo[]> faces, double y) | Pt[] | MoveZ(this Pt[] face, double z) | Moves a face by a specified amount along the z-axis. | VertexInfo[] | MoveZ(this VertexInfo[] face, double z) | IEnumerable<Pt> | MoveZ(this IEnumerable<Pt> face, double z) | IEnumerable<VertexInfo> | | Pt[][] | MoveZ(this Pt[][] faces, double z) | Moves a collection of faces by a specified amount along the z-axis. | VertexInfo[][] | MoveZ(this VertexInfo[][] faces, double z) | IEnumerable<Pt[]> | MoveZ(this IEnumerable<Pt[]> faces, double z) | IEnumerable<VertexInfo[]> | MoveZ(this IEnumerable<VertexInfo[]> faces, double z) | PointD | | Instantiates a PointD (2D point). | ValueTuple<string, VertexInfo[][]> | |
Parses a 3D model from .obj file syntax. | double | pow(this double x, double y) | Exponentiation function. | Pt | pt(double x, double y, double z) | Instantiates a Pt (3D point). | MeshVertexInfo | pt(double x, double y, double z, Pt normalOverride) | Instantiates a MeshVertexInfo. | MeshVertexInfo | | Pt | ptp(double r, double θ, double y) |
Instantiates a 3D point from polar coordinates on the x/z plane. | IEnumerable<T> | |
Removes consecutive duplicates from a collection. | IEnumerable<VertexInfo> | | Rotates a face counter-clockwise about the specified axis by the specified angle in degrees. | Pt[][] | Rotate(this Pt[][] faces, Pt axisStart, Pt axisEnd, double angle) |
Rotates a collection of faces counter-clockwise about the specified axis by the specified angle in degrees. | IEnumerable<Pt[]> | Rotate(this IEnumerable<Pt[]> faces, Pt axisStart, Pt axisEnd, double angle) | VertexInfo[][] | Rotate(this VertexInfo[][] faces, Pt axisStart, Pt axisEnd, double angle) | IEnumerable<VertexInfo[]> | Rotate(this IEnumerable<VertexInfo[]> faces, Pt axisStart, Pt axisEnd, double angle) | VertexInfo | | Rotates a vertex counter-clockwise about the specified axis by the specified angle in degrees. | Pt[] | Rotate(this Pt[] face, Pt axisStart, Pt axisEnd, double angle) | Rotates a face counter-clockwise about the specified axis by the specified angle in degrees. | IEnumerable<Pt> | Rotate(this IEnumerable<Pt> face, Pt axisStart, Pt axisEnd, double angle) | VertexInfo[] | Rotate(this VertexInfo[] face, Pt axisStart, Pt axisEnd, double angle) | IEnumerable<VertexInfo> | | Rotates a face counter-clockwise about the x-axis by the specified angle in degrees. | Pt[][] | RotateX(this Pt[][] faces, double angle) | Rotates a collection of faces counter-clockwise about the x-axis by the specified angle in degrees. | IEnumerable<Pt[]> | RotateX(this IEnumerable<Pt[]> faces, double angle) | VertexInfo[][] | RotateX(this VertexInfo[][] faces, double angle) | IEnumerable<VertexInfo[]> | RotateX(this IEnumerable<VertexInfo[]> faces, double angle) | Pt | | Rotates a point counter-clockwise about the x-axis by the specified angle in degrees. | VertexInfo | | Rotates a vertex counter-clockwise about the x-axis by the specified angle in degrees. | Pt[] | RotateX(this Pt[] face, double angle) | Rotates a face counter-clockwise about the x-axis by the specified angle in degrees. | IEnumerable<Pt> | RotateX(this IEnumerable<Pt> face, double angle) | VertexInfo[] | RotateX(this VertexInfo[] face, double angle) | IEnumerable<VertexInfo> | | Rotates a face counter-clockwise about the y-axis by the specified angle in degrees. | Pt[][] | RotateY(this Pt[][] faces, double angle) | Rotates a collection of faces counter-clockwise about the y-axis by the specified angle in degrees. | IEnumerable<Pt[]> | RotateY(this IEnumerable<Pt[]> faces, double angle) | VertexInfo[][] | RotateY(this VertexInfo[][] faces, double angle) | IEnumerable<VertexInfo[]> | RotateY(this IEnumerable<VertexInfo[]> faces, double angle) | Pt | | Rotates a point counter-clockwise about the y-axis by the specified angle in degrees. | VertexInfo | | Rotates a vertex counter-clockwise about the y-axis by the specified angle in degrees. | Pt[] | RotateY(this Pt[] face, double angle) | Rotates a face counter-clockwise about the y-axis by the specified angle in degrees. | IEnumerable<Pt> | RotateY(this IEnumerable<Pt> face, double angle) | VertexInfo[] | RotateY(this VertexInfo[] face, double angle) | IEnumerable<VertexInfo> | | Rotates a face counter-clockwise about the z-axis by the specified angle in degrees. | Pt[][] | RotateZ(this Pt[][] faces, double angle) | Rotates a collection of faces counter-clockwise about the z-axis by the specified angle in degrees. | IEnumerable<Pt[]> | RotateZ(this IEnumerable<Pt[]> faces, double angle) | VertexInfo[][] | RotateZ(this VertexInfo[][] faces, double angle) | IEnumerable<VertexInfo[]> | RotateZ(this IEnumerable<VertexInfo[]> faces, double angle) | Pt | | Rotates a point counter-clockwise about the z-axis by the specified angle in degrees. | VertexInfo | | Rotates a vertex counter-clockwise about the z-axis by the specified angle in degrees. | Pt[] | RotateZ(this Pt[] face, double angle) | Rotates a face counter-clockwise about the z-axis by the specified angle in degrees. | IEnumerable<Pt> | RotateZ(this IEnumerable<Pt> face, double angle) | VertexInfo[] | RotateZ(this VertexInfo[] face, double angle) | VertexInfo | | Scales (stretches or shrinks) a vertex along every axis by the specified multiplicative factor. | Pt[] | Scale(this Pt[] face, double by) | Scales (stretches or shrinks) a face along every axis by the specified multiplicative factor. | VertexInfo[] | Scale(this VertexInfo[] face, double by) | IEnumerable<Pt> | Scale(this IEnumerable<Pt> face, double by) | IEnumerable<VertexInfo> | | Pt[][] | Scale(this Pt[][] faces, double by) |
Scales (stretches or shrinks) a collection of faces along every axis by the specified multiplicative factor. | VertexInfo[][] | Scale(this VertexInfo[][] faces, double by) | IEnumerable<Pt[]> | Scale(this IEnumerable<Pt[]> faces, double by) | IEnumerable<VertexInfo[]> | Scale(this IEnumerable<VertexInfo[]> faces, double by) | VertexInfo | | Scales (stretches or shrinks) a vertex along the x-axis by the specified multiplicative factor. | Pt[] | ScaleX(this Pt[] face, double x) | Scales (stretches or shrinks) a face along the x-axis by the specified multiplicative factor. | VertexInfo[] | ScaleX(this VertexInfo[] face, double x) | IEnumerable<Pt> | ScaleX(this IEnumerable<Pt> face, double x) | IEnumerable<VertexInfo> | | Pt[][] | ScaleX(this Pt[][] faces, double x) |
Scales (stretches or shrinks) a collection of faces along the x-axis by the specified multiplicative factor. | VertexInfo[][] | ScaleX(this VertexInfo[][] faces, double x) | IEnumerable<Pt[]> | ScaleX(this IEnumerable<Pt[]> faces, double x) | IEnumerable<VertexInfo[]> | ScaleX(this IEnumerable<VertexInfo[]> faces, double x) | VertexInfo | | Scales (stretches or shrinks) a vertex along the y-axis by the specified multiplicative factor. | Pt[] | ScaleY(this Pt[] face, double y) | Scales (stretches or shrinks) a face along the y-axis by the specified multiplicative factor. | VertexInfo[] | ScaleY(this VertexInfo[] face, double y) | IEnumerable<Pt> | ScaleY(this IEnumerable<Pt> face, double y) | IEnumerable<VertexInfo> | | Pt[][] | ScaleY(this Pt[][] faces, double y) |
Scales (stretches or shrinks) a collection of faces along the y-axis by the specified multiplicative factor. | VertexInfo[][] | ScaleY(this VertexInfo[][] faces, double y) | IEnumerable<Pt[]> | ScaleY(this IEnumerable<Pt[]> faces, double y) | IEnumerable<VertexInfo[]> | ScaleY(this IEnumerable<VertexInfo[]> faces, double y) | VertexInfo | | Scales (stretches or shrinks) a vertex along the z-axis by the specified multiplicative factor. | Pt[] | ScaleZ(this Pt[] face, double z) | Scales (stretches or shrinks) a face along the z-axis by the specified multiplicative factor. | VertexInfo[] | ScaleZ(this VertexInfo[] face, double z) | IEnumerable<Pt> | ScaleZ(this IEnumerable<Pt> face, double z) | IEnumerable<VertexInfo> | | Pt[][] | ScaleZ(this Pt[][] faces, double z) |
Scales (stretches or shrinks) a collection of faces along the z-axis by the specified multiplicative factor. | VertexInfo[][] | ScaleZ(this VertexInfo[][] faces, double z) | IEnumerable<Pt[]> | ScaleZ(this IEnumerable<Pt[]> faces, double z) | IEnumerable<VertexInfo[]> | ScaleZ(this IEnumerable<VertexInfo[]> faces, double z) | IEnumerable<TResult> | Select<T, TResult>(this IEnumerable<T> source, Func<T, bool, bool, TResult> selector) |
Projects each element of a sequence into a new form by incorporating the element's index. | IEnumerable<TResult> | Select<T, TResult>(this IEnumerable<T> source, Func<T, int, bool, bool, TResult> selector) | IEnumerable<TResult> | |
Processes consecutive pairs of a collection into a new collection and concatenates all of the results. | double | | Sine function of an angle in degrees. | IEnumerable<PointD> | |
Generates points along a cubic Bézier curve in a way that focuses on consistent smoothness. | double | | Tangent function of an angle in degrees. | VertexInfo[][] | Texturize(this VertexInfo[][] model, double baseY, double rMult) |
Applies texture coordinates (UV mapping) to a model by determining the maximum extent along the x- and z-axis
and then optionally stretching/shrinking the space according to the y-coordinate. | IEnumerable<PointD[]> | |
Triangulates a polygon in 2D space. | PointD[][] | |
Triangulates a set of polygons in 2D space. Polygons going counter-clockwise are assumed to describe the
outline of a face; polygons going clockwise are assumed to describe holes inside of them. | IEnumerable<VertexInfo[]> | |
Generates a (solid, not hollow) tube from a set of 3D points defining a curve or a set of line segments. The
tube is assumed to have a start and end point. | IEnumerable<VertexInfo[]> | |
Generates a (solid, not hollow) tube from a set of 3D points defining a curve or a set of line segments. The
tube is assumed to be a closed curve; the last point is connected back to the first. |
Static fieldsdouble | | The math constant π . |
|