(→bot) |
(→bot) |
||
Line 219: | Line 219: | ||
;Handled by: in make create (not edit!) | ;Handled by: in make create (not edit!) | ||
;Arguments: number of verticies, number of triangles, mode (1=surface 2=solid 3=plate), triangle orientation mode (1=unoriented 2=counter-clockwise 3=clockwise), each vertex, vertex index of each triangle | ;Arguments: number of verticies, number of triangles, mode (1=surface 2=solid 3=plate), triangle orientation mode (1=unoriented 2=counter-clockwise 3=clockwise), each vertex, vertex index of each triangle | ||
− | |||
==poly== | ==poly== |
These are primitive objects that can be created in mged.
Objects can be created in any of the following ways: (note: are there more? get? load from file?)
When an object is selected from the create menu, you are prompted for a name, and then dropped into the primitive editor form; however, if the objec type has no form, create will do about the same as make. Some derivative objects do not have their own form, and the primitive editor will use the base object's form. Most parameters (including ones not editable from a form) have special items on the edit menu.
See also A Survey of Implicit Constraints in Primitives
Objects with an arbitrary number of points and flat faces...
Arbitrary straight-edged shape with 8 vertices.
in unitcube.s arb8 0 0 0 1 0 0 1 0 1 0 0 1 0 1 0 1 1 0 1 1 1 0 1 1
creates the unit cube (first vertex at the origin, extends for 1 unit in x, y and z direction).
Special case of arb8, except with point 8 merged into point 5, making the left face triangular
Arbitrary straight-edged shape with 6 vertices, special case of arb8.
in arb6.s arb6 1 -1 -1 1 1 -1 1 1 1 1 -1 1 -1 0 -1 -1 0 1
special case of arb8.
special case of arb8.
Arbitrary solid bounded by N planes
in arbn.s arbn 8 1 0 1 1 -1 0 0 1 0 1 0 1 0 -1 0 1 0 0 1 1 0 0 -1 1 0.5 0.5 0.5 1 -0.5 -0.5 -0.5 1
Special case of arb8
Special case of arb8
Ellipsoid
Example:
in ell.s ell 0 0 0 0 -1 0 1 0 0 0 0 1
Sphere, special case of the ellipsoid, with vectors A B and C all the same magnitude (radius).
Arguments:
Special case of ellipsoid
Special case of ellipsoid
Elliptical hyperboloid
Elliptical paraboloid
Truncated general cone
Right circular cylinder, special case of tgc
Right elliptical cylinder, special case of tgc
Right hyperbolic cylinder
Right parabolic cylinder
Truncated elliptical cone, special case of tgc
Truncated right circular cone
Torus
Elliptical torus
Conical particle
The particle solid is a lozenge-shaped object defined by a vertex, a height vector and radii at both ends. The body of the particle is either a cylinder or a truncated cone, depending on the values of the radii. Each end of the particle is a hemisphere of the specified radius.
n-Manifold geometry solid (non-manifold geometry?)
Hollow and solid pipes and wires
Arbitrary rectangular solid
Solids of type 'ars' (Arbitrary Faceted Solids) are defined using "waterlines". The following figure consists of a start point, some number of intermediate polygons, and an ending point. Each of the intermediate polygons have the same number of vertices and the vertices are numbered 1 thru N. In addition to the intermediate polygons a line will be created that begins at the start point, goes through each polygon at its vertex numbered 1, and terminates at the end point. This is repeated for each polygon vertex 2 thru N. The start point, polygons, and end point are each a "waterline".
<need an image here to illustrate the concept>
the ars shape takes the following values as input:
For example, the command:
in x.1 ars 4 6 0 0 3 1 1 3 1 -1 3 -1 -1 3 -1 1 3 1 1 1 1 -1 1 -1 -1 1 -1 1 1 1 0 -1 0 -1 -1 -1 0 -1 0 1 -1 1 0 -3 0 -1 -3 -1 0 -3 0 1 -3 0 0 -3
Will produce a square bar with a tapered 1/8 turn twist in the middle. Of course, more waterlines in the twist and more points per waterline would make the twist smoother.
The parameters to the above ars command can be dissected as:
4 : number of points per waterline (i.e. intermediate polygons have 4 vertices)
6 : number of waterlines (four intermediate polygons plus the two endpoints)
0 0 3 - the center of the top end of the bar
1 1 3 1 -1 3 -1 -1 3 -1 1 3 : a 2x2 square in the xy plane at z offset 3
1 1 1 1 -1 1 -1 -1 1 -1 1 1 : a 2x2 square oriented the same as the first but at z offset 1
1 0 -1 0 -1 -1 -1 0 -1 0 1 -1 : a 2x2 square at a 45 degree rotation from the first squares at z offset -1
1 0 -3 0 -1 -3 -1 0 -3 0 1 -3 : a 2x2 square at a 45 degree rotation from the first squares at z offset -3
0 0 -3 : the center of the bottom end of the bar
Extrusion of a 2-d sketch
Height field
Non-uniform rational b-spline
volume / voxel
The vol solid is defined by a 3-dimensional array of unsigned char values. The solid requires a file of these values, the extent of the file (in bytes) in each dimension, the size of each cell, and high and low thresholds. Any value in the file that is between the thresholds (inclusive) represents a solid cell.
Bag of triangles
polysolid
extruded bit map
The extruded bitmap (also referred to as EBM) is a solid based on a greyscale bitmap. The bitmap is an array of unsigned char values, see bw(5), and is extruded by some distance. The EBM solid requires the dimensions of the bitmap file (height and width in bytes), an extrusion length, and a transformation matrix to position the EBM. Each byte in the bitmap file is treated as the base of a cell that is extruded by the specified extrusion length. If the value of the byte is nonzero, then that cell is considered solid.
surface splines
2d outline
Grip -- support for joints
Arguments:
halfspace
A half space is the portion of space on one side of a plane. It is represented by its boundary (the plane) and its outward-pointing normal vector.
Uniform-array binary object