Drawings SDK Developer Guide > Working with .dwg Files > Introduction > Drawing Database Overview > What is a Drawing?
What is a Drawing?

A drawing is a database that collects various graphical and non-graphical objects. These objects have different types, sizes, destinations, functionality, and specifics. A drawing loaded from a file can contain different information about objects that define the geometry, styles, representations, settings, attached data, and custom objects.

A database serves as the container object for all data loaded from the file. A database also contains functions for setting and retrieving the values of system variables in a file. Objects of the database are organized in collections; each collection contains and manipulates objects of a specific type. Each object can be accessed using its own unique identifier, which is created by an object's database and valid during the lifecycle of the object.

There are three types of database objects:

  • Entity. An entity is a database object that has a graphical representation, such as a line, text, circle, etc.
  • Container. A container is a special object that stores and manages object collections. The database has the following containers:
    • Symbol Tables — Contain objects of a certain symbol table type as table records. The database includes a set of nine symbol tables, and while you cannot change the number of tables, you can add records to each of them.
      • Block Table is a table where graphic entities are stored in block table records.
      • Layers Table contains the drawing's layers. Each layer has such attributes as ON/OFF, FROZEN/THAWED, color, and linetype.
      • Linetypes Table contains the drawing's linetypes. Each linetype has a name, a string describing its appearance, and an array containing the control parameters that determine the appearance of the linetype.
      • TextStyles Table contains the drawing's text style definitions. Each text style has a name, an indication of the font in use, a height, an oblique angle, and other parameters.
      • Views Table contains the drawing's named view definitions. Each view definition specifies a 3D view.
      • Viewports Table contains the drawing's viewport definitions. Named viewport groups consist of a set of viewports, all with the same name. The current viewport or viewports have the name "*ACTIVE".
      • DimStyles Table contains the definitions for the drawing's dimension styles. Dimension styles are collections of variables that specify how dimensions are to be created.
      • UCSs Table contains the drawing's named user coordinate system (UCS) definitions. A UCS is a specification of a local coordinate system to be used instead of the world coordinate system.
      • Registered Applications Table contains the drawing's registered applications, which are applications that have registered themselves with the CAD system.
    • Dictionaries — Represent a general container for any type of CAD object, including multiline styles, groups, and application defined custom objects. You can create new dictionaries and add objects to them. Newly created databases already have a default dictionary, Named Object Dictionary, which is the root of all database dictionaries.
  • Other objects. Other objects include the objects that do not have a graphical representation: groups, layouts, etc.

 

Copyright © 2002 – 2021. Open Design Alliance. All rights reserved.