Three-dimensional geometric objects. Geometric modeling of volumetric graphics objects

Geometric models describe objects and phenomena that have geometric properties. The need to describe spatial objects arises when solving many problems computer graphics.

In the general case, a real-life object cannot, of course, exactly match its description. This would require an infinite number of triples of coordinates ( x, y, z) – one for each point on the surface of the object.

Currently, when modeling objects, several basic types of geometric models are used.

For description frame(wire)models geometric objects of the first order are used - lines or edges. Wireframe models are used, as a rule, to specify objects that are polyhedra, i.e. closed polyhedra of arbitrary shape, bounded by flat faces. In this case, the wireframe model contains a list of coordinates of the polyhedron vertices, indicating the connections between them (ie, indicating the edges bounded by the corresponding vertices).

When using a wireframe model to describe objects bounded by surfaces of more than the first order, such surfaces are interpolated by flat faces.

The wireframe representation of an object is often used not in modeling, but in displaying models as a visualization method.

The advantages of the wireframe model are low requirements for computing resources, the disadvantage is the impossibility of constructing highly realistic images, since the set of segments is not an adequate description of the object - the segments themselves do not define surfaces (Fig. 7.1).

Rice. 7.1. The same wireframe model (a) can describe both a cube (b) and an open box (c).

The development of the wireframe model is piecewise analytical face model, which is given by listing all individual faces. An object is defined by a set of bounding faces and a normal directed out of the object; each face is defined by a cycle of its bounding edges; each edge - a pair of points (vertices) limiting it; each point is a triple of coordinates in three-dimensional space. Those. the face model represents a three-dimensional object in the form of a closed surface.

The set of faces represented by flat polygons and bounded by straight edges forms polygonalgrid. Faces can be of any shape, but in the vast majority of cases, convex polygons with a minimum number of vertices (triangles and quadrilaterals) are used. their calculation is easier.

The main disadvantage of a polygonal mesh is the approximate representation of the shape of an object when describing curved surfaces. To improve the piecewise linear approximation of such objects, the number of faces is increased, which leads to additional memory costs and an increase in the amount of calculations.

In the framework of the face model, faces can also be curved surfaces bounded by curvilinear ribs. Most often used as edges parametricbicubic pieces, bounded by parametric cubic curves.

When using bicubic pieces to represent an object with a given accuracy, a significantly smaller number of faces is required than when approximating with a polygonal mesh. However, calculations when working with bicubic surfaces are much more complicated than when working with flat faces.

Unlike the face model, volumetric-parametricmodel treats the object as a solid body. An object is described as a set of some basic volumetric form elements (volumetric primitives). Each primitive in the model is specified by two groups of parameters:

    dimensional parameters - define the geometric dimensions of the primitive;

    position parameters - set the position and orientation of the primitive relative to the world coordinate system.

As primitives, simple geometric bodies are used: a cylinder, a cone, a truncated cone, a parallelepiped, a ball, a torus.

The coordinates of the central point of the primitive and the coordinates of a unit vector directed along the height of the primitive are usually used as position parameters.

In addition to these parameters, operations on primitives are specified, which are the three main operations of set theory - union, intersection, and subtraction. The union of two primitives is an object that includes all points of the original primitives. The intersection of two primitives is an object, all points of which belong simultaneously to both the first and the second primitive. The result of subtracting two primitives is an object consisting of those points of the first primitive that do not belong to the second primitive.

The disadvantage of the volume-parametric model is the absence of explicit boundaries of the compartments of the faces in the case of interpenetration of primitives.

As part of kinematic model, an object can be defined by a set of three-dimensional elements, each of which is a volume “cut out” in space when moving along a certain trajectory of a closed flat contour. The trajectory of the contour movement can be either straight or curved.

The type of element is determined by the shape of the contour and the trajectory of its movement. For example, a cylinder within the framework of a kinematic model can be described as the movement of a circle along a segment representing the height of the cylinder.

To model elements of a complex shape, you can use the change in the size of the contour or its position relative to the trajectory during movement.

The advantage of the model is the practical absence of restrictions on the complexity of the object being formed. The disadvantages include the complexity of specifying elements.

3D graphics is an optical visual reproduction of graphic 3D objects, in the form of visual-mathematical forms, reproduced on a computer monitor in order to provide a realistic display of the processed components and further manipulations with them.

The construction of three-dimensional geometric objects is based on a rectangular coordinate system called " Cartesian coordinate system» in honor of the French scientist Rene Descartes (1596 – 1650).

The abbreviation for 3D is symbol three-dimensional graphics, consisting of a number and a letter, which in expanded form means " three-dimensional"- having three dimensions.

Three-dimensional models are divided into three types according to their functional purpose:

To the first and most simple type, object-oriented design, refers to low-level wireframe modeling. Result Objects of this type visual reproduction are called wireframe or wire, which in turn consist of interconnected sets of shaping lines, segments and arcs. Models of this type do not contain information about the surface, volume of a structural object and are used for the most part as one of the visualization methods. One of the advantages of wireframe 3D models is minimum volume occupied random access memory computer. Wireframe visualization is often used to simulate the tool path, in special CAM systems for preparing control algorithms for machines with numerical control.

Surface modeling, in contrast to wireframe construction, in addition to the points and lines that are part of the fundamental elements of the object, includes surfaces that form the visual contour of the displayed figure. When developing such forms, it is assumed that geometric objects are limited by the outer sides of the object, which separate them from the surrounding space.

Solid modeling is the most complete and most reliable construction of a real object. The result of constructing a geometric body by this method is a monolithic sample of a new product, which includes such components as lines, faces, and most importantly, a surface area is created within the geometric shape of the object with such important parameters like body weight and volume.

Used to work with 3D models special programs providing computer support for design.

One of these tools is AutoCAD. Initially, versions of this software product supported a two-dimensional geometric construction, but over time, specialists from an American company Autodesk integrated the possibility of forming three-dimensional objects in the environment AutoCAD apart from the mainstream of the program.

Parametric modeling programs such as solidworks, Autodesk Inventor, Pro/Engineer, CATIA were originally created for designing on the basis of a three-dimensional model with subsequent design, regulatory documentation.

The models obtained by the above programs are essentially the same. A solid model or a mesh model remains so regardless of the software product, but, nevertheless, due to the difference in file formats that carry information about an object, it cannot always be opened on a third-party program.

To exchange visual-spatial objects between different software platforms, there are special file formats to which the contents of the main formats are exported, after which they can be opened in other interpreters that support 3D- graphics.

Export Import 3D-models can be done using files with the following extensions:

  • ACIS *.sat
  • STEP AP203/214 *.step,*.stp
  • IGES *.igs,*.iges

Three-dimensional graphics do not necessarily include projection onto a plane.....

Encyclopedic YouTube

    1 / 5

    ✪ Theory of 3D Graphics, lesson 01 - Introduction to 3D Graphics

    ✪ Computer graphics in cinema

    ✪ Lecture 1 | Computer graphics | Vitaly Galinsky | Lectorium

    ✪ 12 - Computer graphics. Basic concepts of computer graphics

    ✪ Lecture 4 | Computer graphics | Vitaly Galinsky | Lectorium

    Subtitles

Application

Three-dimensional graphics is actively used to create images on the plane of a screen or a sheet of printed products in science and industry, for example, in automation systems for design work (CAD; for creating solid elements: buildings, machine parts, mechanisms), architectural visualization (this includes the so-called "virtual archeology"), in modern systems medical imaging.

The widest application is in many modern computer games, as well as an element of cinematography, television, and printed products.

3D graphics usually deals with a virtual, imaginary three-dimensional space that is displayed on a flat, two-dimensional surface of a display or sheet of paper. Currently, there are several methods for displaying three-dimensional information in a three-dimensional form, although most of them represent three-dimensional characteristics rather conditionally, since they work with a stereo image. From this area, stereo glasses, virtual helmets, 3D displays capable of demonstrating a three-dimensional image can be noted. Several manufacturers demonstrated 3D displays ready for mass production. However, 3D displays still do not allow you to create a full-fledged physical, tangible copy. mathematical model created by 3D graphics. Rapid prototyping technologies, which have been developing since the 1990s, fill this gap. It should be noted that rapid prototyping technologies use the representation of a mathematical model of an object in the form of a solid body (voxel model).

Creation

To obtain a three-dimensional image on a plane, the following steps are required:

  • modeling- creation of a three-dimensional mathematical model of the scene and objects in it;
  • texturing- assigning raster or procedural textures to the surfaces of models (it also implies setting the properties of materials - transparency, reflections, roughness, etc.);
  • lighting- installation and configuration;
  • animation(in some cases) - giving movement to objects;
  • dynamic simulation(in some cases) - automatic calculation of the interaction of particles, hard / soft bodies, etc. with the simulated forces of gravity, wind, buoyancy, etc., as well as with each other;
  • rendering(visualization) - building a projection in accordance with the selected physical model;
  • compositing(layout) - finalization of the image;
  • outputting the resulting image to an output device - a display or a special printer.

Modeling

The most popular purely modeling packages are:

  • Robert McNeel & Assoc. Rhinoceros 3D ;

To create a three-dimensional model of a person or creature, Sculpture can be used as a prototype (in most cases).

Texturing

sketch up

Visualization of three-dimensional graphics in games and applications

There are a number of software libraries for rendering 3D graphics in application programs - DirectX, OpenGL, and so on.

There are a number of approaches to presenting 3D graphics in games - full 3D, pseudo-3D.

Such packages do not even always allow the user to operate a 3D model directly, for example, there is an OpenSCAD package in which the model is formed by executing a user-generated script written in a specialized language.

3D displays

Three-dimensional or stereoscopic displays, (3D displays, 3D screens) - displays, through stereoscopic or any other effect, creating the illusion of real volume in the displayed images.

Currently, the vast majority of 3D images are shown using the stereoscopic effect, which is the easiest to implement, although the use of stereoscopy alone cannot be called sufficient for three-dimensional perception. The human eye, both in pairs and alone, equally well distinguishes three-dimensional objects from flat images [ ] .

3D graphics

3D modeling methods.

· Spline modeling is modeling with mathematically smooth lines - splines.

· Polygonal modeling is the arrangement of corners, vertices of polygons in three-dimensional space.

A three-dimensional image on a plane differs from a two-dimensional one in that it involves the construction of a geometric projection of a three-dimensional scene model onto a plane (for example, a computer screen) using specialized programs. In this case, the model can either correspond to objects from the real world (cars, buildings, a hurricane, an asteroid), or be completely abstract (a projection of a four-dimensional fractal).

To obtain a three-dimensional image on a plane, the following steps are required:

· modeling - creation of a three-dimensional mathematical model of the scene and objects in it.

· Rendering (visualization) - building a projection in accordance with the selected physical model. (Rendering systems: V-Ray, FinalRender, Brazil R/S, BusyRay).

Advantages and disadvantages of 3D graphics.

Flaws:

Large volume of files

Software addiction

High cost of various 3-D editors

Advantages:

Realism

· Ability to use 3D objects to create applications (games, etc.)

· Freedom of object transformations

Where is used

Used when creating games, movies, etc.

Software

3D Studio Max, MAYA, Blender, Solid Age, Compass.

3D graphics- a section of computer graphics, a set of techniques and tools (both software and hardware) designed to depict three-dimensional objects.

A three-dimensional image on a plane differs from a two-dimensional one in that it includes the construction of a geometric projection of a three-dimensional model scenes onto a plane (for example, a computer screen) using specialized programs (however, with the creation and implementation of 3D displays and 3D printers, three-dimensional graphics do not necessarily include projection onto a plane). In this case, the model can either correspond to objects from the real world (cars, buildings, a hurricane, an asteroid), or be completely abstract (a projection of a four-dimensional fractal)

3D modeling methods.

3D models are created in CAD systems (or in CAD / CAM systems) using the geometric modeling tools available in them. The model is stored in the system as some mathematical description and displayed on the screen as a spatial object.

Building a spatial geometric model of a product is a central task of computer design. It is this model that is used to further solve the problems of generating drawing and design documentation, designing technological equipment, developing control programs for CNC machines. In addition, this model is transferred to engineering analysis systems (SAE systems) and used there for engineering calculations. According to a computer model, using methods and means of rapid prototyping, a physical sample of the product can be obtained. A 3D model can be not only built using this CAD system, but, in a particular case, it can be received from another CAD system through one of the agreed interfaces, or formed based on the results of measuring a physical prototype product on a coordinate measuring machine.

Ways of presenting models.

There are surface (frame-surface) and solid modeling. In surface modeling, a frame is first built - a spatial structure consisting of line segments, circular arcs and splines. The frame plays an auxiliary role and serves as the basis for the subsequent construction of surfaces that are “stretched” onto the elements of the frame.

Depending on the method of construction, the following types of surfaces are distinguished: ruled; rotation; kinematic; fillet conjugation; passing through longitudinal and transverse sections; surfaces for "window tightening" between three or more adjacent surfaces; NURBS surfaces defined by specifying control points of longitudinal and transverse sections; planar surfaces.

Although the surfaces define the boundaries of the body, the concept of a “body” itself does not exist in the surface modeling mode, even if the surfaces limit a closed volume. This is the most important difference between surface modeling and solid modeling.

Another feature is that the elements of the wireframe-surface model are not related to each other in any way. Changing one of the elements does not automatically change the others. This gives more freedom in modeling, but at the same time it makes working with the model much more difficult.

Advantages and disadvantages of three-dimensional graphics

3D graphics will help in cases where you want to embed an imaginary scene into an image of the real world. This situation is typical for architectural design problems. In this case, 3D-graphics eliminates the need to create a layout and provides flexible options for synthesizing the image of the scene for any weather conditions and from any angle of view.

Another situation can also be imagined: not an imaginary object is embedded in a real background, but, on the contrary, an image of a real object is embedded in a three-dimensional scene as its integral part. This way of using 3D graphics is used, for example, to create virtual exhibition halls or galleries, on the walls of which images of real paintings are hung.

Computer games - one of the most extensive and proven areas of application of 3D graphics. As you improve software tools simulation of three-dimensional graphics, productivity growth and increase in memory resources of computers virtual three-dimensional worlds become more and more complex and similar to reality.

Three-dimensional graphics also help where real photography is impossible, difficult or requires significant material costs, and also allows you to synthesize images of events that do not occur in everyday life. The 3D Studio MAX 3.0 program has tools that allow you to simulate the action of physical forces such as gravity, friction or inertia on three-dimensional objects, as well as reproduce the results of object collisions.

The main arguments in favor of 3D graphics appear when it comes to creating computer animation. 3D Studio MAX 3.0 allows you to significantly simplify the work on animated video clips through the use of methods for animating 3D scenes. Above, we examined the features of three-dimensional graphics, which can be attributed to its advantages compared to conventional two-dimensional graphics. But, as you know, there are no advantages without disadvantages. . The disadvantages of three-dimensional graphics, which should be considered when choosing tools for the development of your future graphic projects, can be conditionally considered:

Increased requirements for computer hardware, in particular for the amount of RAM, availability free space on the hard drive and processor speed;

The need for a lot of preparatory work but creating models of all objects in the scene that can fall into the field of view of the camera, and assigning materials to them. However, this work usually pays off with the result;

Less than when using two-dimensional graphics, freedom in image formation. This means that when drawing a picture with a pencil on paper or using two-dimensional graphics on a computer screen, you have the opportunity to completely freely distort any proportions of objects, violate the rules of perspective, etc., if necessary for the realization of an artistic intention. In 3D Studio MAX 3.0 this is also possible, but requires additional effort;

The need to control the relative position of objects in the scene, especially when performing animation. Due to the fact that the objects of three-dimensional graphics are "incorporeal", it is easy to admit the erroneous penetration of one object into another or the erroneous lack of the necessary contact between objects.

Three-dimensional graphics has found wide application in such areas as scientific calculations, engineering design, computer modeling of physical objects.

The image of a flat figure in the drawing is not very difficult, since a two-dimensional geometric model is a similarity of the figure being depicted, which is also two-dimensional.

Three-dimensional geometric objects are depicted in the drawing as a set of projections onto various planes, which gives only an approximate conditional idea of ​​these objects as spatial figures. If it is necessary to reflect on the drawing any details, details of the object, additional sections, cuts, etc. are necessary. Given that the design usually deals with spatial objects, their representation in the drawing is not always a simple matter.

When constructing an object using a computer, an approach based on the creation of three-dimensional geometric representations - models has recently been developed.

Geometric modeling is understood as the creation of models of geometric objects containing information about the geometry of the object. A model of a geometric object is understood as a set of information that uniquely determines its shape. For example, a point can be represented by two (2D model) or three (3D model) coordinates; a circle - with the coordinates of the center and radius, etc. A three-dimensional geometric model stored in the computer's memory gives a fairly comprehensive (if necessary) idea of ​​the object being modeled. Such a model is called virtual or digital.

In three-dimensional modeling, the drawing plays an auxiliary role, and the methods for its creation are based on computer graphics methods, methods for displaying a spatial model. With this approach, the geometric model of an object can be used not only to create graphic image, but also for calculating some of its characteristics, for example, mass, volume, moment of inertia, etc., as well as for strength, heat engineering and other calculations.

The 3D modeling technology is as follows:

design and creation of a virtual frame ("skeleton") of an object that most fully corresponds to its real form;

design and creation of virtual materials similar to real ones in terms of physical properties of visualization;

assigning materials to different parts of the surface of an object (projecting a texture onto an object);

setting physical parameters the space in which the object will operate - set the lighting, gravity, properties of the atmosphere, the properties of interacting objects and surfaces, setting the trajectory of the movement of objects;


calculation of the resulting sequence of frames;

· Overlay surface effects on the final animation clip.

Model. To display three-dimensional objects on a monitor screen, a series of processes (usually called a pipeline) is required, followed by translation of the result into a two-dimensional view. Initially, an object is represented as a set of points, or coordinates, in three-dimensional space. A 3D coordinate system is defined by three axes: horizontal, vertical, and depth, commonly referred to as the X, Y, and Z axes, respectively. which the object consists, in space. By connecting the vertices of the object with lines, we get a wireframe model, so called because only the edges of the surfaces of a three-dimensional body are visible. A wireframe defines the areas that make up the surface of an object that can be filled with color, textures, and illuminated by light rays.

Varieties of 3D graphics. There are the following types of 3D graphics: polygonal, analytical, fractal, spline.

Polygon graphics are the most common. This is primarily due to the high speed of its processing. Any polygon graphics object is defined by a set of polygons. A polygon is a flat polygon. The simplest option is triangular polygons, because, as you know, a plane can be drawn through any three points in space. Each polygon is defined by a set of points. A point is specified by three coordinates - X, Y, Z. Thus, you can specify a 3-dimensional object as an array or structure.

Analytical graphics lies in the fact that objects are specified analytically, i.e. formulas. For example: a ball of radius r centered at the point (x 0 , y 0 , z 0) is described by the formula (x-x 0) 2 + (y-y 0) 2 + (z-z 0) 2 = r 2 . Combining various formulas with each other, you can get objects of complex shape. But the whole difficulty lies in finding the formula of the required object.

Another way to create analytical objects is to create solids of revolution. So, rotating a circle around some axis, you can get a torus, and simultaneously rotating a strongly elongated ellipse around its own and external axes, you can get a rather beautiful corrugated torus.

Fractal graphics is based on the concept of a fractal - self-similarity. An object is called self-similar when the enlarged parts of the object resemble the object itself and each other. Terrain belongs to the "self-similar" class. So the jagged edge of a broken stone looks like a mountain range on the horizon. Fractal graphics, like vector graphics, are based on mathematical calculations. Base element fractal graphics is a mathematical formula, so no objects are stored in the computer's memory and the image is built solely by equations.

In this way, both the simplest regular structures and complex illustrations that imitate natural landscapes and three-dimensional objects are built. Fractal algorithms can create incredible 3D images.

Spline graphics are based on the concept of a spline. The term "spline" from the English spline. This is the name of a flexible strip of steel, with the help of which draftsmen draw smooth curves through given points. In the old days, a similar method of smooth contours of various bodies (the hull of a ship, the body of a car) was widespread in the practice of mechanical engineering. As a result, the shape of the body was set using a set of very precisely made sections-plazas. The advent of computers made it possible to move from this plaza-template method to a more effective way setting the surface of the streamlined body. This approach to the description of surfaces is based on the use of relatively simple formulas that make it possible to reproduce the appearance of a product with the required accuracy.

When modeling with splines, the method of bicubic rational B-splines on a non-uniform mesh (NURBS) is most often used. The appearance of the surface is determined by the grid of reference points located in space. Each point is assigned a coefficient, the value of which determines the degree of its influence on the part of the surface passing near the point. The shape and “smoothness” of the surface depend on the mutual arrangement of the points and the magnitude of the coefficients.

The deformation of the object is provided by moving control points. Another method is called warp mesh. A three-dimensional mesh is placed around the object or its part, the movement of any point of which causes elastic deformation of both the mesh itself and the surrounded object.

After forming the "skeleton" of the object, it is necessary to cover its surface with materials. All the variety of properties in computer simulation is reduced to the visualization of the surface, i.e., to the calculation of the coefficient of transparency of the surface and the angle of refraction of light rays at the boundary of the material and the surrounding space. To construct the surfaces of materials, five basic physical models are used:

Bouknight - a surface with diffuse reflection without glare (for example, matte plastic);

· Phong - a surface with structured microsurfaces (for example, metal);

· Blinn – a surface with a special distribution of microroughnesses, taking into account mutual overlaps (for example, gloss);

· Whitted - a model that allows additionally to take into account the polarization of light;

Hall - a model that allows you to adjust the direction of reflection and refraction parameters of light.

Shading of surfaces is carried out by Gouraud (gouraud) or Phong (Phong) methods. In the first case, the color of the primitive is calculated at its vertices and then linearly interpolated over the surface. In the second case, a normal to the object as a whole is constructed, its vector is interpolated over the surface of the constituent primitives, and illumination is calculated for each point.

Light escaping from a surface at a particular point towards the observer is the sum of the components multiplied by a factor associated with the material and color of the surface at that point. These components include:

The light that came from reverse side surfaces, i.e. refracted light (Refracted);

· Light uniformly scattered by the surface (Diffuse);

Reflected light (Reflected);

Glare, i.e. reflected light sources (Specular);

· Own surface glow (Self Illumination).

The surface properties are described in the generated arrays of textures (two or three dimensional). Thus, the array contains data on the degree of transparency of the material; refractive index; component displacement coefficients (listed above); color at each point, highlight color, width and sharpness; color of diffused (background) lighting; local deviations of vectors from the normal (i.e., surface roughness is taken into account).

The next step is to apply (“project”) textures to certain parts of the object frame. In this case, it is necessary to take into account their mutual influence on the boundaries of primitives. Designing materials for an object is a difficult task to formalize, it is akin to an artistic process and requires at least minimal creative abilities from the performer.

Of all the parameters of the space in which the created object operates, from the point of view of visualization, the most important is the definition of the light source. In 3D graphics, it is customary to use virtual equivalents of physical sources:

· Dissolved light (Ambitnt Light), which is an analogue of a uniform light background. It has no geometric parameters and is characterized only by color and intensity.

· A remote non-point source is called a distant light (Distant Light). It is assigned specific parameters (coordinates). The analogue in nature is the Sun.

· A Point Light Source emits light uniformly in all directions and also has coordinates. An analogue in technology is an electric light bulb.

· Direct Light Source (Direct Light Source) in addition to the location is characterized by the direction of the light flux, the angles of the opening of the full cone of light and its brightest spot. An analogue in technology is a searchlight.

The process of calculating realistic images is called rendering (visualization). Most modern rendering programs are based on the back ray tracing method. Its essence is as follows:

· From the point of observation of the scene, a virtual beam is sent into space along the trajectory of which the image must arrive at the point of observation.

· To determine the parameters of the incoming beam, all objects in the scene are checked for intersection with the observation path. If no suppression occurs, then it is considered that the ray hit the background of the scene and the incoming information is determined by the background parameters. If the trajectory intersects with an object, then at the point of contact, the light that goes to the point of observation is calculated in accordance with the parameters of the material.

After the construction and visualization of the object is completed, they begin to “animate” it, i.e., set the motion parameters. Computer animation is based on keyframes. In the first frame, the object is set to initial position. After a certain interval (for example, in the eighth frame), a new position of the object is set and so on until the final position. Intermediate positions are calculated by the program according to a special algorithm. In this case, not just a linear approximation occurs, but a smooth change in the position of the reference points of the object in accordance with the specified conditions. These conditions are determined by the hierarchy of objects (i.e., the laws of their interaction with each other), the allowed planes of motion, the limiting angles of rotation, and the magnitudes of accelerations and velocities.

This approach is called the method of inverse kinematics of motion. It works well for modeling mechanical devices. In the case of imitation of living objects, so-called skeletal models are used. That is, a certain frame is created, movable at points characteristic of the modeled object. Point movements are calculated by the previous method.

The method of three-dimensional geometric modeling is implemented in many software products, including such popular ones as AutoCAD and ArchiCAD.



Loading...
Top