The Vector Data Base dynamic link library from Tessel Software Line (TSLVDB32.DLL) maintains all vector drawings presented in HyperDoc. 
    All vector objects, starting from basic entities up to the whole vector drawing, together with its properties and methods, are implemented in this module.
To give the application programmer wide access to the vector database and its objects through OLE interface, special automation objects have been implemented that can expose appropriate properties and methods of vector data base objects. All names of the automation objects start from the letter “A”, which stands for Automation, of course.
All vector data base objects and other helper objects are embedded in the vector drawing, so you can access them starting from the vector drawing automation object (ADrawing). The vector drawing object can be created as needed. Specific vector drawings contained in documents maintained by the HyperDoc may be accessed via HyperDoc API.
We may distinguish several kinds of objects with properties and methods exposed via OLE API:
- general objects, which is the vector drawing itself (ADrawing) 
- helper objects, like drawing tools (ATools) and object iterators (AIterator) 
- vector database objects, that are organized in some kind of hierarchy according to the properties and methods they expose - from general ones to basic abstract objects up to more detailed ones in specific real objects. It means, that each object placed on some level on that hierarchy exposes all basic methods derived from its predecessors and adds specific ones that in turn may be inherited by its successors. 
All objects exposed through VDB OLE API are referenced below.
- General objects
- ADrawing- OLE-creatable object
- Helper objects
- ATools- drawing tools- AIterator- object iterator- ADataIterator- object data iterator
- Vector data base objects
- AObject- abstract object; generic vector data base object- AElement- abstract object; generic vector entity- ASegment- segment entity- ACircle- circle entity- ARectangle- rectangle entity- APoly- polyline or polygon entity- AText- text entity- AIcon- icon entity- AInsert- insert (block reference) entity- AToolSet- set of tools- ASymbol- abstract object; generic table item- ALayer- drawing layer- AStyle- text style- APattern- hatch pattern- ABlock- block definition
The ADrawing object is connected to the whole vector drawing. The ADrawing object may have two states, referred to as virgin and opened.
You may obtain the ADrawing object through the HyperDoc OLE API interface; 
         in this case the ADrawing object is connected to a vector drawing maintained by HyperDoc, so it is in the opened state.
         In the opened state, you can use all properties and methods of the ADrawing object except
         Create() and Load() or LoadDXF().
You may also create a new ADrawing object. 
         Immediately after being created, an ADrawing is in virgin state, i.e. there is no vector data contained in the drawing.
         The only methods you can use in the virgin state are Create(), Load() or LoadDXF(); after using any of these method,
         the ADrawing object enters its opened state.
After opening the drawing, some access schema may be imposed in it, which allows determining per-layer access rights together with user priority level and access schema properties.
Each user working with the drawing may declare his name and connect it locally with the drawing. A priority level may be assigned to the user, so that he is treated either as a system user or a normal user.
Each drawing layer may have a name prefixed with user name (separated by dot). Drawing layers with no prefix are regarded as system layers and are owned by system users, independently of their names. Drawing layers with a specific user name prefix are regarded as normal layers and are owned by that user.
Each user (normal or system one) has full access rights to layers owned by him. Access rights between users with different priorities and / or different names are determined by access schema properties.
- Dirty
- Returns or sets a value specifying whether the drawing has been changed since recent load or save operation. - Syntax: - Drawing.Dirty[= Changed] - Drawing - An object expression that evaluates to a VDB.ADrawing object - Changed - A Boolean expression specifying whether Drawing has been changed since recent load or save operation. - Remarks - The drawing object must be in opened state. 
- EditionFlags
- Returns or sets the flags specifying details of various contexts of vector edition. - Syntax: - Drawing.EditionFlags [= Flags] - Drawing - An object expression that evaluates to a VDB.ADrawing object - Flags - An integer or constant specifying the edition flags defining the edition characteristics, as described in Settings. - Settings - The settings for Flags may be set to 0 (default) or combined by bit-wise OR operator from the following values: - vdbEfPasteOnCurrentLayer- 0x0001 - place pasted and imported entities on current layer
- vdbEfEnableToolSets- 0x0002 - enable direct editing of tool sets from Tool Sets page on Drawing Properties... dialog
 - Remarks - The drawing object must be in opened state. 
- EnableDynaTools
- Returns or sets the flag enabling dynamic presentation. - Syntax: - Drawing.EnableDynaTools [= Enabled] - Drawing - An object expression that evaluates to a VDB.ADrawing object - Enabled - A Boolean expression specifying whether dynamic presentation is to be enabled in the Drawing. - Remarks - The drawing object must be in opened state. - With dynamic presentation enabled, entities linked to objects selected in data-base queries defined by user are displayed using special presentation tools that may be associated independently with each query. With dynamic presentation disabled, all entities are diplayed using their permanent drawing tools. 
- MultiAccess
- Returns or sets the multi-access mode imposed in the drawing. - Syntax: - Drawing.MultiAccess [= Active] - Drawing - An object expression that evaluates to a VDB.ADrawing object - Active - A Boolean expression specifying whether multi-access mode is imposed in the Drawing. - Remarks - The drawing object must be in opened state. - With multi-access mode active, subsequent changes made by different users to the same drawing opened from various machines in multi-user environment are combined together during save operations. 
- SystemToUser
- Returns or sets the access level declared for system user relative to drawing layers owned by other users. - Syntax: - Drawing.SystemToUser [= Level] - Drawing - An object expression that evaluates to a VDB.ADrawing object - Level - A numeric expression specifying the access level declared for system user relative to drawing layers owned by other users, as described in Settings. - Settings - The settings for Level are: - 0 - no access: layer is not listed at all; its elements are hidden 
- 1 - read access: layer is listed; its properties may be changed; layer name cannot be changed; layer cannot be created or removed; its elements cannot be added, changed or removed 
- 2 - edit access: layer is listed, its properties may be changed; layer name cannot be changed; layer cannot be created or removed; its elements can be added, changed or removed 
- 3 - full access: layer is listed, its properties may be changed; layer name can be changed; layer can be created and removed; its elements can be added, changed or removed 
 - Remarks - The drawing object must be in opened state. - The SystemToUser, UserToSystem and UserToUser properties define the access schema imposed in the drawing. 
- Units
- Returns or sets the code of units used to calculate and save all measurable drawings items. - Syntax: - Drawing.Units [= Units] - Drawing - An object expression that evaluates to a VDB.ADrawing object - Units - An integer or constant specifying the code of units, as described in Settings. - Settings - The settings for Units are (default units are meters): - UNITS_UNDEFINED - 0x0000 - units undefined - UNITS_INCH - 0x0001 - inches - UNITS_FOOT - 0x0002 - foots - UNITS_YARD - 0x0003 - yards - UNITS_MILE - 0x0004 - miles - UNITS_MM - 0x0005 - millimeters - UNITS_CM - 0x0006 - centimeters - UNITS_METER - 0x0007 - meters - UNITS_KM - 0x0008 - kilometers 
- UserLevel
- Returns or sets the priority level declared for current user. - Syntax: - Drawing.UserLevel[= Priority] - Drawing - An object expression that evaluates to a VDB.ADrawing object - Priority - A numeric expression specifying the priority level declared for current user in the Drawing, as described in Settings. - Settings - The settings for Priority are: - 0 - no user access control 
- 1 - current user is system userAAAA 
- 2 - current user is normal user 
 - Remarks - The drawing object must be in opened state. - Setting the user priority level declares the way of determining per-layer access rights together with user name and access schema properties. 
- UserName
- Returns or sets the name of the user working with the drawing. - Syntax: - Drawing.UserName [= Name] - Drawing - An object expression that evaluates to a VDB.ADrawing object - Name - A string expression specifying the name of the user working with the Drawing. - Remarks - The drawing object must be in opened state. - Setting the user name allows controlling changes made to the same drawing being edited on various machines in multi-user environment and determining per-layer access rights together with user priority level and access schema properties. 
- UserToSystem
- Returns or sets the access level declared for normal user relative to drawing layers owned by system user. - Syntax: - Drawing.UserToSystem [= Level] - Drawing - An object expression that evaluates to a VDB.ADrawing object - Level - A numeric expression specifying the access level declared for normal user relative to drawing layers owned by system user, as described in Settings. - Settings - The settings for Level are: - 0 - no access: layer is not listed at all; its elements are hidden 
- 1 - read access: layer is listed; its properties may be changed; layer name cannot be changed; layer cannot be created or removed; its elements cannot be added, changed or removed 
- 2 - edit access: layer is listed, its properties may be changed; layer name cannot be changed; layer cannot be created or removed; its elements can be added, changed or removed 
- 3 - full access: layer is listed, its properties may be changed; layer name can be changed; layer can be created and removed; its elements can be added, changed or removed 
 - Remarks - The drawing object must be in opened state. - The SystemToUser, UserToSystem and UserToUser properties define the access schema imposed in the drawing. 
- UserToUser
- Returns or sets the access level declared for normal user relative to drawing layers owned by other normal users. - Syntax: - Drawing.UserToUser [= Level] - Drawing - An object expression that evaluates to a VDB.ADrawing object - Level - A numeric expression specifying the access level declared for normal user relative to drawing layers owned by system user, as described in Settings. - Settings - The settings for Level are: - 0 - no access: layer is not listed at all; its elements are hidden 
- 1 - read access: layer is listed; its properties may be changed; layer name cannot be changed; layer cannot be created or removed; its elements cannot be added, changed or removed 
- 2 - edit access: layer is listed, its properties may be changed; layer name cannot be changed; layer cannot be created or removed; its elements can be added, changed or removed 
- 3 - full access: layer is listed, its properties may be changed; layer name can be changed; layer can be created and removed; its elements can be added, changed or removed 
 - Remarks - The drawing object must be in opened state. - The SystemToUser, UserToSystem and UserToUser properties define the access schema imposed in the drawing. 
- AddBlock
- Syntax: - Set Block = Drawing.AddBlock - Block - Name of the object variable to become a VDB.ABlock object associated with a block definition list to be created and added to the drawing. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Name - A string expression evaluating to the name of the block to be created and added. - Remarks - The drawing object must be in opened state. If the function fails or block cannot be created, Block is set to Nothing. - The block definition created is empty; you may add, access or remove entities using properties and methods accessible from the returned Block object. 
- AddElement
- Creates an appropriate vector element and adds it to the vector drawing. - Syntax: - Set Element = Drawing.AddElement(ElemType) - Element - Name of the object variable to become a VDB.AElement - derived object associated with an element to be created and added to the drawing. - Drawing - An object expression that evaluates to a VDB.ADrawing object - ElemType - An integer or constant specifying the type of the element to be created and added, as described in Settings. - Settings - The settings for ElemType are: - VDB_SEGMENT - 2 - segment element - VDB_RECTANGLE - 4 - rectangle element - VDB_CIRCLE - 5 - circle element - VDB_TEXT - 6 - text element - VDB_POLYLINE - 7 - polyline element - VDB_POLYGON - 8 - polygon element - VDB_ICON - 9 - icon element - VDB_INSERT - 11 - insert (block reference) element - Remarks - The drawing object must be in opened state. If the function fails or element cannot be created, Element is set to Nothing 
- AddLayer
- Creates a drawing layer with given name and adds it to the vector drawing. - Syntax: - Set Layer = Drawing.AddLayer(Name) - Layer - Name of the object variable to become a VDB.ALayer object associated with a layer to be created and added to the drawing. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Name - A string expression evaluating to the name of the drawing layer to be created and added. - Remarks - The drawing object must be in opened state. If the function fails or layer cannot be created, Layer is set to Nothing. - The layer created obtains some default values for its parameters; you may change or examine them using properties and methods accessible from the returned Layer object. 
- AddPattern
- Creates a hatch pattern with given name and adds it to the vector drawing. - Syntax: - Set Pattern = Drawing.AddPatterns - Pattern - Name of the object variable to become a VDB.APattern object associated with a pattern to be created and added to the drawing - Drawing - An object expression that evaluates to a VDB.ADrawing object - Name - A string expression evaluating to the name of the hatch pattern to be created and added - Remarks - The drawing object must be in opened state. If the function fails or pattern cannot be created, Pattern is set to Nothing. - The pattern created obtains some default values for its parameters; you may change or examine them using properties and methods accessible from the returned Pattern object. 
- AddStyle
- Creates a text style with given name and adds it to the vector drawing. - Syntax: - Set Style = Drawing.AddStyle(Name) - Style - Name of the object variable to become a VDB.AStyle object associated with a style to be created and added to the drawing. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Name - A string expression evaluating to the name of the text style to be created and added. - Remarks - The drawing object must be in opened state. If the function fails or style cannot be created, Style is set to Nothing. - The style created obtains some default values for its parameters; you may change or examine them using properties and methods accessible from the returned Style object. 
- AddToolSet
- Syntax: - Set ToolSet = Drawing.AddToolSet - ToolSet - Name of the object variable to become a VDB.AToolSet object associated with a tool set to be created and added to the drawing. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Name - A string expression evaluating to the name of the tool set to be created and added. - Remarks - The drawing object must be in opened state. If the function fails or tool set cannot be created, ToolSet is set to Nothing. - The tool set created has no tools; you may add, access or remove individual tools using properties and methods accessible from the returned ToolSet object. 
- Create
- Creates an empty drawing with default layers, styles and patterns. - Syntax: - Res = Drawing.Create(FileName) - Res - The Create method returns True when succeeded and False when failed. - Drawing - An object expression that evaluates to a VDB.ADrawing object - FileName - A string expression evaluating to path name of the file to be connected logically with the drawing. - Remarks - The drawing object must be in virgin state. After successful completion, the drawing object enters opened state. 
- DetachDynaTools
- Detaches all dynamic tools attached to any entities in vector data base. - Syntax: - Res = Drawing.DetachDynaTools() - Res - The DetachDynaTools method returns True True if any dynamic tools have been found and False if not. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Remarks - The drawing object must be in opened state. - Dynamic tools may be connected individually to selected entities, generating various presentation schemes with specific tools assigned to each data base query. Use AttachDynaTools method of any VDB.AElement – derived object to connect specific tools to given element. Using DetachDynaTools you may disconnect all dynamic tools in the whole drawing at once and close presentation. 
- FindElement
- Finds the vector element with given name among elements listed in the vector drawing. - Syntax: - Set Element = Drawing.FindElement(Name, Flags) - Element - Name of the object variable to become a VDB.AElement - derived object associated with an element found in the drawing. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Name - A string expression evaluating to the name of the element to be found. - Flags - An integer or constant specifying the search flags defining the search scope limits, as described in Settings. - Settings - The settings for Flags may be combined by bit-wise - ORoperator from the following values:- vdbEnumAll - 0x0000 - no scope limits - vdbEnumVisible - 0x0001 - only among visible layers - vdbEnumActive - 0x0002 - only among active layers - vdbEnumCurrent - 0x0004 - only from current layer - vdbEnumReadable - 0x0010 - only from layers that can be read - vdbEnumNotReadable - 0x0020 - only from layers that cannot be read - vdbEnumEditable - 0x0040 - only from layers that can be edited - vdbEnumNotEditable - 0x0080 - only from layers that cannot be edited - vdbEnumFullable - 0x0100 - only from layers that have full access - vdbEnumNotFullable - 0x0200 - only from layers that do not have full access - vdbEnumDescend - 0x4000 - together with sub-elements - vdbEnumBackward - 0x8000 - in opposite direction - Remarks - The drawing object must be in opened state. If the function fails or element cannot be found, Element is set to Nothing. 
- FindElementById
- Finds the vector element with given permanent identifier among elements listed in the vector drawing. - Syntax: - Set Element = Drawing.FindElementById(Iden, Flags) - Element - Name of the object variable to become a VDB.AElement - derived object associated with an element found in the drawing - Drawing - An object expression that evaluates to a VDB.ADrawing object - Iden - A numerical expression evaluating to the permanent identifier of the vector element to be found. - Flags - An integer or constant specifying the search flags defining the search scope limits, as described in Settings. - Settings - The settings for Flags may be combined by bit-wise - ORoperator from the following values:- vdbEnumAll - 0x0000 - no scope limits - vdbEnumVisible - 0x0001 - only among visible layers - vdbEnumActive - 0x0002 - only among active layers - vdbEnumCurrent - 0x0004 - only from current layer - vdbEnumReadable - 0x0010 - only from layers that can be read - vdbEnumNotReadable - 0x0020 - only from layers that cannot be read - vdbEnumEditable - 0x0040 - only from layers that can be edited - vdbEnumNotEditable - 0x0080 - only from layers that cannot be edited - vdbEnumFullable - 0x0100 - only from layers that have full access - vdbEnumNotFullable - 0x0200 - only from layers that do not have full access - vdbEnumDescend - 0x4000 - together with sub-elements - vdbEnumBackward - 0x8000 - in opposite direction - Remarks - The drawing object must be in opened state. If the function fails or element cannot be found, Element is set to Nothing. 
- GetBlock
- Finds the block definition with given name among blocks contained in the vector drawing. - Syntax: - Set Block = Drawing.(Name) - Pattern - Name of the object variable to become a VDB.ABlock object associated with a block definition found in the drawing. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Name - A string expression evaluating to the name of the block to be found. - Remarks - The drawing object must be in opened state. If the function fails or block cannot be found, Block is set to Nothing. 
- GetBlockIter
- Returns an iterator stepping through hatch blocks in the drawing. - Syntax: - Set Iterator = Drawing.GetBlockIter(Flags) - Iterator - Name of the object variable to become a VDB.AIterator object associated with an iterator stepping through block definitions in the drawing - Drawing - An object expression that evaluates to a VDB.ADrawing object - Flags - An integer or constant specifying the iterator flags defining the iterator scope limits, as described in Settings - Settings - The settings for Flags may be combined by bit-wise - ORoperator from the following values:- vdbEnumAll - 0x0000 - no scope limits - vdbEnumBackward - 0x8000 - in backward direction - Remarks - The drawing object must be in - openedstate. If the function fails, Iterator is set to Nothing.
- GetElemIter
- Returns an iterator stepping through vector elements in the drawing. - Syntax: - Set Iterator = Drawing.GetElemIter(Flags) - Iterator - Name of the object variable to become a VDB.AIterator object associated with an iterator stepping through vector elements in the drawing. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Flags - An integer or constant specifying the iterator flags defining the iterator scope limits, as described in Settings. - Settings - The settings for Flags may be combined by bit-wise OR operator from the following values: - vdbEnumAll - 0x0000 - no scope limits - vdbEnumVisible - 0x0001 - only among visible layers - vdbEnumActive - 0x0002 - only among active layers - vdbEnumCurrent - 0x0004 - only from current layer - vdbEnumReadable - 0x0010 - only from layers that can be read - vdbEnumNotReadable - 0x0020 - only from layers that cannot be read - vdbEnumEditable - 0x0040 - only from layers that can be edited - vdbEnumNotEditable - 0x0080 - only from layers that cannot be edited - vdbEnumFullable - 0x0100 - only from layers that have full access - vdbEnumNotFullable - 0x0200 - only from layers that do not have full access - vdbEnumDescend - 0x4000 - together with sub-elements - vdbEnumBackward - 0x8000 - in opposite direction - Remarks - The drawing object must be in opened state. If the function fails, Iterator is set to Nothing. 
- GetHandle
- Returns the value of the run-time handle through which the vector drawing can be referred in some other methods. - Syntax: - DrwHandle = Drawing.GetHandle() - DrwHandle - The GetHandle method returns the run-time handle through which the vector drawing can be referred. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Remarks - The drawing object must be in opened state; otherwise the GetHandle method returns 0. 
- GetLayer
- Finds the drawing layer with given name among layers contained in the vector drawing. - Syntax: - Set Layer = Drawing.GetLayer (Name) - Layer - Name of the object variable to become a VDB.ALayer object associated with a layer found in the drawing. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Name - A string expression evaluating to the name of the drawing layer to be found. - Remarks - The drawing object must be in opened state. If the function fails or layer cannot be found, Layer is set to Nothing. 
- GetLayerIter
- Returns an iterator stepping through drawing layers in the drawing. - Syntax: - Set Iterator = Drawing.GetLayerIter - Iterator - Name of the object variable to become a VDB.AIterator object associated with an iterator stepping through drawing layers in the drawing. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Flags - An integer or constant specifying the iterator flags defining the iterator scope limits, as described in Settings. - Settings - The settings for Flags may be combined by bit-wise OR operator from the following values: - vdbEnumAll - 0x0000 - no scope limits - vdbEnumVisible - 0x0001 - only among visible layers - vdbEnumActive - 0x0002 - only among active layers - vdbEnumCurrent - 0x0004 - only from current layer - vdbEnumReadable - 0x0010 - only from layers that can be read - vdbEnumNotReadable - 0x0020 - only from layers that cannot be read - vdbEnumEditable - 0x0040 - only from layers that can be edited - vdbEnumNotEditable - 0x0080 - only from layers that cannot be edited - vdbEnumFullable - 0x0100 - only from layers that have full access - vdbEnumNotFullable - 0x0200 - only from layers that do not have full access - vdbEnumDescend - 0x4000 - together with sub-elements - vdbEnumBackward - 0x8000 - in opposite direction - Remarks - The drawing object must be in opened state. If the function fails, Iterator is set to Nothing. 
- GetPattern
- Finds the hatch pattern with given name among patterns contained in the vector drawing. - Syntax: - Set Pattern = Drawing.GetPattern(Name) - Pattern - Name of the object variable to become a VDB.APattern object associated with a pattern found in the drawing. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Name - A string expression evaluating to the name of the hatch pattern to be found. - Remarks - The drawing object must be in opened state. If the function fails or pattern cannot be found, Pattern is set to Nothing. 
- GetPatternIter
- Returns an iterator stepping through hatch patterns in the drawing. - Syntax: - Set Iterator = Drawing.GetPatternIter(Flags) - Iterator - Name of the object variable to become a VDB.AIterator object associated with an iterator stepping through hatch patterns in the drawing. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Flags - An integer or constant specifying the iterator flags defining the iterator scope limits, as described in Settings. - Settings - The settings for Flags may be combined by bit-wise - ORoperator from the following values:- vdbEnumAll - 0x0000 - no scope limits - vdbEnumBackward - 0x8000 - in backward direction - Remarks - The drawing object must be in opened state. If the function fails, Iterator is set to Nothing. 
- GetStyle
- Finds the text style with given name among styles contained in the vector drawing. - Syntax: - Set Style = Drawing.GetStyle(Name) - Style - Name of the object variable to become a VDB.AStyle object associated with a style found in the drawing. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Name - A string expression evaluating to the name of the text style to be found. - Remarks - The drawing object must be in opened state. If the function fails or style cannot be found, Style is set to Nothing. 
- GetStyleIter
- Returns an iterator stepping through text styles in the drawing. - Syntax: - Set Iterator = Drawing.GetStyleIter(Flags) - Iterator - Name of the object variable to become a VDB.AIterator object associated with an iterator stepping through text styles in the drawing. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Flags - An integer or constant specifying the iterator flags defining the iterator scope limits, as described in Settings. - Settings - The settings for Flags may be combined by bit-wise OR operator from the following values: - vdbEnumAll - 0x0000 - no scope limits - vdbEnumBackward - 0x8000 - in backward direction - Remarks - The drawing object must be in opened state. If the function fails, Iterator is set to Nothing. 
- GetTools
- Returns an object associated with default drawing tools connected with drawing. - Syntax: - Set Tools = Drawing.GetTools - Tools - Name of the object variable to become a VDB.ATools object associated with default drawing tools connected to the drawing. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Remarks - The drawing object must be in opened state. If the function fails, Tools is set to Nothing. 
- GetToolSet
- Finds the tool set with given name among tool sets contained in the vector drawing. - Syntax: - Set ToolSet = Drawing.GetToolSet(Name) - Pattern - Name of the object variable to become a VDB.AToolSet object associated with a tool set found in the drawing. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Name - A string expression evaluating to the name of the tool set to be found. - Remarks - The drawing object must be in opened state. If the function fails or tool set cannot be found, ToolSet is set to Nothing. - Tool sets are vector objects containing tools that are used during special presentation modes instead of permanent tools stored with entities. Although each vector drawing may store tool sets, in HyperDoc they are accessible from vector drawings declared to be symbol libraries only. 
- GetToolsIter
- Returns an iterator stepping through tool sets in the drawing. - Syntax: - Set Iterator = Drawing.GetToolsIter - Iterator - Name of the object variable to become a VDB.AIterator object associated with an iterator stepping through tool sets in the drawing - Drawing - An object expression that evaluates to a VDB.ADrawing object - Flags - An integer or constant specifying the iterator flags defining the iterator scope limits, as described in Settings - Settings - The settings for Flags may be combined by bit-wise - ORoperator from the following values:- vdbEnumAll - 0x0000 - no scope limits - vdbEnumBackward - 0x8000 - in backward direction - Remarks - The drawing object must be in - openedstate. If the function fails, Iterator is set to Nothing.
- IsCurLayerEditable
- Returns True if current layer is editable, False if not. - Syntax: - Res = Drawing.IsCurLayerEditable() - Res - The IsCurLayerEditable method returns True if current layer is editable and False if not. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Remarks - The drawing object must be in opened state. Current layer may be not editable depending on user access rights. 
- Load
- Loads the vector drawing from the Tessel Vector Document file (file with the .TVD extension). - Syntax: - Res = Drawing.Load(FileName) - Res - The Load method returns True when succeeded and False when failed. - Drawing - An object expression that evaluates to a VDB.ADrawing object - FileName - A string expression evaluating to the name of the TVD file from which the vector drawing is to be loaded. This name remains logically connected with the vector drawing. - Remarks - The drawing object must be in virgin state. After successful completion, the drawing object enters opened state. 
- LoadDXF
- Converts the vector drawing from the AutoCAD DXF file (file with the .DXF extension). - Syntax: - Res = Drawing.LoadDXF(FileName, Correction) - Res - The LoadDXF method returns True when succeeded and False when failed. - Drawing - An object expression that evaluates to a VDB.ADrawing object - FileName - A string expression evaluating to the name of the DXF file from which the vector drawing is to be converted. - Correction - A numeric expression evaluating to the double coefficient to be used during units conversion. - Remarks - The drawing object must be in virgin state. After successful completion, the drawing object enters opened state. 
- Merge
- Merges the elements from some other vector drawing. - Syntax: - Res = Drawing.Merge(DrwHandle) - Res - The Merge method returns True when succeeded and False when failed. - Drawing - An object expression that evaluates to a VDB.ADrawing object - DrwHandle - A numeric expression evaluating to the run-time handle of the other vector drawing that is to be merged to. - Remarks - The drawing object must be in opened state. 
- MergeDXF
- Merges the elements from the vector drawing converted from the AutoCAD DXF file. - Syntax: - Res = Drawing.MergeDXF(FileName, Correction) - Res - The MergeDXF method returns True when succeeded and False when failed. - Drawing - An object expression that evaluates to a VDB.ADrawing object - FileName - A string expression evaluating to the name of the DXF file from which the vector drawing that is to be merged to is to be converted. - Correction - A numeric expression evaluating to the double coefficient to be used during units conversion. - Remarks - The drawing object must be in opened state. 
- RefreshReactor
- Forces all entities in vector data base with implanted reactor to call it with passed notification flags. - Syntax: - Res = Drawing.RefreshReactor(Flags) - Res - The RefreshReactor method returns True True if succeeded and False if failed. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Flags - An integer or constant specifying the notification flags to be passed to notification reactor, as described in Settings. - Settings - The settings for Flags are: - vdbObjectOnLoad - 1 - notify about changing the object - vdbObjectOnChange - 2 - notify about loading the object - Remarks - The drawing object must be in opened state. - Notification through object reactor implanted in the vector drawing is used e.g. to implement dynamic texts. To update all dynamic texts after changing field values, the RefreshReactor with Flags set to vdbObjectOnLoad should be called. 
- RemoveElement
- Removes the vector element with given permanent identifier from elements listed in the vector drawing. - Syntax: - Res = Drawing.RemoveElement(Iden) - Res - The RemoveElement method returns True when succeeded and False when failed. - Drawing - An object expression that evaluates to a VDB.ADrawing object - Iden - A numerical expression evaluating to the permanent identifier of the vector element to be found. - Remarks - The drawing object must be in opened state. 
- Save
- Saves the vector drawing to the file with given name in Tessel Vector Document format (file with the .TVD extension). - Syntax: - Res = Drawing..Save(FileName) - Res - The Save method returns True when succeeded and False when failed. - Drawing - An object expression that evaluates to a VDB.ADrawing object - FileName - A string expression evaluating to the name of the TVD file to which the vector drawing is to be saved. - Remarks - The drawing object must be in opened state. If the FileName is an empty string, the vector drawing is saved to the file of its currently connected name. If the FileName is different than current, the new name remains logically connected with the vector drawing. 
- SingleToolSetDlg
- Calls dialog to edit tool set with given name. - Syntax: - Res = Drawing.SingleToolSetDlg(hWnd, Name, Flags) - Res - The SingleToolSetDlg method returns True if user accepts the changes and False if not. - Drawing - An object expression that evaluates to a VDB.ADrawing object - hWnd - An integer expression identifying the handle of the parent window for Tool Set Properties dialog to be displayed. - Name - A string expression evaluating to the name of the tool set to be edited - Flags - An integer or constant specifying the range of available tools, as described in Settings. - Settings - The settings for Flags may be combined by bit-wise OR operator from the following values: - vdbFullCaps - 0x0000 - tool set with full capabilities - vdbNotFill - 0x0001 - bitmap fills disabled - vdbNotHatch - 0x0002 - vector hatches disabled - vdbNotText - 0x0004 - text style settings disabled (not implemented as yet) - vdbSimpleOnly - 0x0006 - combination of vbdNotHatch and vdbNotText - Remarks - The drawing object must be in opened state. - Dynamic tools may be connected individually to selected entities, generating various presentation schemes with specific tools assigned to each data base query. Use SingleToolSetDlg to let user edit tool set with given name. If the tool set does not exist, it will be created and added to the list of all tool sets maintained in the vector drawing automatically. - To define separate tool set used for addintional enhancing selected entities, use the name passed to HyperView control as selected tools name and set Flags to vdbSimpleOnly. 
- ToolSetListDlg
- Calls dialog to edit list with all tool sets contained in the drawing. - Syntax: - NewName = Drawing.ToolSetListDlg(hWnd, DefName) - NewName - The ToolSetListDlg method returns the name of the tool set chosen by the user. - Drawing - An object expression that evaluates to a VDB.ADrawing object - hWnd - An integer expression identifying the handle of the parent window for Tool Set List dialog to be displayed. - DefName - A string expression evaluating to the name of the default tool set. - Remarks - The drawing object must be in opened state. - Dynamic tools may be connected individually to selected entities, generating various presentation schemes with specific tools assigned to each data base query. Use ToolSetListDlg to let user choose among all tool sets defined in the drawing, change their names, change contents of chosen tool sets, add new ones and remove unneeded ones. The DefName string identifies the name of the tool set to be initially chosen. After accepting changes, the ToolSetListDlg method returns the name of the tool set finally chosen. The ToolSetListDlg method returns an empty string if user cancels the action. 
ATools is a helper object. Use it as a container of tools that are necessary to draw a vector entity or to access a set of default tools for a whole drawing.
You may set an ATools object using appropriate GetTools method from the ADrawing or AElement objects. It is recommended to set the values of tools in the vector entity directly using appropriate properties from the AElement object.
- FillStyle
- Returns or sets a fill style. - Syntax: - Tools.FillStyle[= number] - Tools - An expression that evaluates to VDB.ATools object. - number - A numeric expression specifying the style of fill used to paint an entity, as described in Settings. - Settings - You can use the Microsoft Windows operating environment brush and hatch style schemes. - The settings for FillStyle are: - None - 0 - MS Windows Null Brush - Solid - 1 - MS Windows Solid Brush - Horizontal - 2 - MS Windows Hatch Brush created with HS_HORIZONTAL parameter - --------------- - Vertical - 3 - MS Windows Hatch Brush created with HS_VERTICAL parameter - |||||||||||||||||||||||||| - ForwDiag - 4 - MS Windows Hatch Brush created with HS_BDIAGONAL parameter - ////////////////// - BackDiag - 5 - MS Windows Hatch Brush created with HS_FDIAGONAL parameter - \\\\\\\\\\\\\\\\\\ - Cross - 6 - MS Windows Hatch Brush created with HS_CROSS parameter - +++++++++ - DiagCross - 7 - MS Windows Hatch Brush created with HS_DIAGCROSS parameter - ********* 
- HatchLineAngle
- Returns or sets an angle between hatch lines and a horizontal line expressed in degrees. - Syntax: - Tools.HatchLineAngle[= number] - Tools - An expression that evaluates to VDB.ATools object. - Tools - A numeric expression specifying the way the hatch is generated, as described in Settings. - Settings: - vdbHpNull - 0 - A hatch is not generated - vdbHpSingle - 1 - Lines of hatch are not crossed - vdbHpDouble - 2 - Each hatch lines is crossed by it’s perpendicular twin 
- HatchLineDistance
- Returns or sets a distance between two adjacent hatch lines expressed in units established for a whole drawing. - Syntax: - Tools.HatchLineDistance[= number] - Tools - An expression that evaluates to VDB.ATools object. - Tools - A numeric expression specifying the distance between any pair of adjacent hatch lines. - Remarks - The numeric expression has to be evaluated to non-negative value. 
- LineColor, HatchLineColor, FillColor
- Returns or sets color for a line/hatch line/fill. - Syntax: - Tools.LineColor[= number] - Tools.HatchLineColor[= number] - Tools.Fill[= number] - Tools - An expression that evaluates to VDB.ATools object. - number - A numeric expression specifying the color of line used to draw an entity and a hatch, as described in Settings. - Settings - The settings for LineColor, HatchLineColor and FillColor are: - Black - 0x00000000 - black - Red - 0x000000FF - red - Green - 0x0000FF00 - green - Blue - 0x00FF0000 - blue - Yellow - 0x0000FFFF - yellow - Cyan - 0x00FFFF00 - cyan - Magenta - 0x00FF00FF - magenta - White - 0x00FFFFFF - white - Dk Red - 0x00000080 - dark red - Dk Green - 0x00008000 - dark green - Dk Blue - 0x00800000 - dark blue - Dk Yellow - 0x00008080 - dark yellow - Dk Cyan - 0x00808000 - dark cyan - Dk Magenta - 0x00800080 - dark magenta - Dk Gray - 0x00808080 - dark gray - Lt Gray - 0x00C0C0C0 - light gray - Remarks - Use the Microsoft Windows operating environment red-green-blue (RGB) color scheme. Specify colors by using the Color palette or by using the RGB or QBColor functions in code. 
- LineStyle, HatchLineStyle
- Returns or sets a line/hatch line style. - Syntax: - Tools.LineStyle[= number] - Tools.HatchLineStyle[= number] - Tools - An expression that evaluates to VDB.ATools object. - number - A numeric expression specifying the style of line used to draw an entity and its hatch, as described in Settings. - Settings - Use the Microsoft Windows operating environment pen style scheme. - The settings for LineStyle are: - PS_SOLID - 0 - solid line - ---------- - PS_DASH - 1 - dashed line - - - - - - - - PS_DOT - 2 - dotted line - ............. - PS_DASHDOT - 3 - dash-dotted line - -.-.-.-.-.- - PS_DASHDOTDOT - 4 - dash-double-dotted line - -..-..-..-.. - PS_NULL - 5 - without line - Remarks - Use PS_NULL pen style to draw invisible lines. 
- LineWidth, HatchLineWidth
- Returns or sets a line width expressed in units established for a whole drawing. - Syntax: - Tools.LineWidth[= number] - Tools.LineWidth[= number] - Tools - An expression that evaluates to VDB.ATools object. - number - A numeric expression specifying the width of line used to draw an entity and its hatch. - Remarks - The number expression has to be non-negative value. 
- Presentation
- Returns or sets a parameter that specifies the way the object is drawn: either it covers other objects and background documents or they are still visible. - Syntax: - Tools.Presentation[= number] - Tools - An expression that evaluates to VDB.ATools object. - Tools - A numeric expression specifying the style of entity presentation, as described in Settings. - Settings - The settings for Presentation are: - vdbPresentationNormal - 0 - An entity is opaque (it is drawn with R2_COPYPEN mode) - vdbPresentationTransparent - 1 - An entity is transparent (it is drawn with R2_NOTXORPEN mode) 
AIterator is a helper object. Use it to iterate through the community of layers, text styles, patterns, blocks, tool sets or vector entities on a drawing level or through subentities on the level of entity.
- GetFirst
- Creates a reference to the first item listed by a iterator. - Syntax: - Set Object = Iterator.GetFirst() - Object - Name of the object variable to become a VDB.AObject - derived object associated with the first item listed by the Iterator - Iterator - An object expression that evaluates to a VDB.AIterator object - Remarks - The first item listed by an iterator becomes the current item. 
- GetNext
- Creates a reference to the next item listed by a iterator. - Syntax: - Set Object = Iterator.GetNext - Object - Name of the object variable to become a VDB.AObject - derived object associated with the next item listed by the Iterator - Iterator - An object expression that evaluates to a VDB.AIterator object - Remarks - The next item means the next to the current one. After the call is made the next item becomes the current item. 
ADataIterator is a helper object. Use it to iterate through application- or user-defined data, that may be connected to each object in vector data base.
- GetKeyAt
- Returns the string that is used as a key for data item at current position. - Syntax: - String = DataIterator.GetKeyAt() - String - The GetKeyAt method returns the string that is used as a key for data item at current position. - DataIterator - An object expression that evaluates to a VDB.ADataIterator object - Remarks - Use DataAt(String, Flags) property of any VDB.AObject – derived object to examine the type, value and flags of data item itself. 
- Start
- Starts or restarts the iteration. - Syntax: - DataIterator.Start - DataIterator - An object expression that evaluates to a VDB.ADataIterator object - Remarks - The first item maintained by an iterator in string-keyed table becomes the current item. 
- Step
- Moves iteration one step. - Syntax: - DataIterator.Step() - DataIterator - An object expression that evaluates to a VDB.ADataIterator object - Remarks - The next item maintained by an iterator in string-keyed table becomes the current item. There is no predefined succession of items of user data. 
- Valid
- Checks if current position is valid. - Syntax: - Res = DataIterator.Valid - Res - The Valid method returns True if current position is valid and False if not. - DataIterator - An object expression that evaluates to a VDB.ADataIterator object - Remarks - The Valid method should be called at each step of iteration. 
AObject is an abstract, generic vector data base object.
- ObjectFlags
- Returns or sets an object’s notification flags. - Syntax: - Object.ObjectFlags [=Flags] - Object - An expression that evaluates to VDB.AObject object - Flags - An integer or constant specifying the object flags defining the events the object has to notify the application. - Settings - The settings for Flags may be combined by bit-wise OR operator from the following values: - vdbObjectOnLoad - 1 - notify about loading the object - vdbObjectOnLoad - 2 - notify about changing the object 
- ObjectName
- Returns or sets an object’s name. - Syntax: - Object.ObjectName[= name] - Object - An expression that evaluates to VDB.AObject object - name - A string expression specifying the name of an object 
- DataAt
- Returns or sets type, value and flags of application- or user-defined data that may be connected in a string-keyed table to each object in vector data base. - Syntax: - Object.DataAt(Key, Flags) [= val] - Object - An expression that evaluates to VDB.AObject object - Key - The string expression that identifies the attribute you work with - Flags - Flags - val - A variable type expression specifying the data value - Settings - The settings for Flags may be combined by bit-wise OR operator from the appropriately chosen following values: - vdbDataSkip - 0 - do not sum-up data values in complex objects - vdbDataAdd - 1 - add numerical data while generating programmable data in parent complex or selection - vdbDataSubtract - 2 - subtract numerical data while generating programmable data in parent complex or selection - vdbDataProgrammable - 4 - data item results from calculation made across child entities - data item results from calculation made across child entities - 8 - data value is invalid - Remarks - Only numerical data may be added or subtracted during calculation in complex objects. 
- GetDataIterator
- Returns a data iterator stepping through application- or user-defined data, that may be connected to each object in vector data base. - Syntax: - Set DataIterator = Object.GetDataIterator() - DataIterator - Name of the object variable to become a VDB.ADataIterator object associated with an iterator stepping through data items connected to Object. - Object - An object expression that evaluates to a VDB.AObject object - Remarks - If the function fails or Object does not have any data items, DataIterator is set to Nothing. 
- GetIterator
- Returns an iterator stepping through child objects of a parent objects. - Syntax: - Set Iterator = Object.GetIterator(Flags) - Iterator - Name of the object variable to become a VDB.AIterator object associated with an iterator stepping through vector objects connected to Object. - Object - An object expression that evaluates to a VDB.AObject object - Flags - An integer or constant specifying the iterator flags defining the iterator scope limits, as described in Settings. - Settings - The settings for Flags may be combined by bit-wise OR operator from the following values: - vdbEnumAll - 0x0000 - no scope limits - vdbEnumVisible - 0x0001 - only among visible layers - vdbEnumActive - 0x0002 - only among active layers - vdbEnumCurrent - 0x0004 - only from current layer - vdbEnumReadable - 0x0010 - only from layers that can be read - vdbEnumNotReadable - 0x0020 - only from layers that cannot be read - vdbEnumEditable - 0x0040 - only from layers that can be edited - vdbEnumNotEditable - 0x0080 - only from layers that cannot be edited - vdbEnumFullable - 0x0100 - only from layers that have full access - vdbEnumNotFullable - 0x0200 - only from layers that do not have full access - vdbEnumDescend - 0x4000 - together with sub-elements - vdbEnumDescend - 0x8000 - in backward direction - Remarks - If the function fails or Object cannot have child sub-objects, Iterator is set to Nothing. 
- GetLongId
- Returns the unique object’s identifier - Syntax: - iden = Object.GetLongId() - iden - The GetLongId() method returns unique data base object identifier of long type - Object - An expression that evaluates to VDB.AObject object 
- GetType
- Returns the type of an object. - Syntax: - type = Object.GetType() - type - The GetType() method returns object’s type identifier of short type, as describes in Settings - Object - An expression that evaluates to VDB.AObject derived object - Settings - The valid type identifiers are: - VDB_UNKNOWN - 0 - VDB_ELEMENT - 1 - VDB_SEGMENT - 2 - VDB_ARROW - 3 - VDB_RECTANGLE - 4 - VDB_CIRCLE - 5 - VDB_TEXT - 6 - VDB_POLYLINE - 7 - VDB_ICON - 9 - VDB_MLINE - 10 - VDB_INSERT - 11 - VDB_COMPLEX - 256 - VDB_SELECTION - 257 - VDB_SPOT - 258 - VDB_ANNOTATION - 259 - VDB_HATCH - 260 - VDB_SYMBOL - 4096 - VDB_HEADER - 4097 - VDB_STYLE - 4098 - VDB_LAYER - 4099 - VDB_MODEL - 4100 - VDB_PATTERN - 4101 - VDB_BLOCK - 4102 - VDB_TOOLS - 4103 
AElement is an abstract, generic vector entity object.
- ElementFlags
- Returns or sets element flags used for miscellaneous purposes. - Syntax: - Element.ElementFlags [= number] - Element - An expression that evaluates to VDB.AElement object - number - A numeric expression specifying the value of element flags, as described in Settings - Settings - Specific bits in the ElementFlags determine the way the element’s measurements are taken into account during calculating appropriate measurements of complex entities. Normally, these measurements are calculated by simple addition. The settings for ElementFlags may be set to 0 (default) or combined by bit-wise OR operator in reasonable way from the following values: - vdbElementLengthSubtract - 0x0001 - Element’s length is subtracted during calculating complex length - vdbElementAreaSubtract - 0x0002 - Element’s area is subtracted during calculating complex area - vdbElementLengthSkip - 0x0004 - Element’s length is skipped during calculating complex length - vdbElementAreaSkip - 0x0008 - Element’s area is skipped during calculating complex area 
- FillStyle
- Returns or sets a fill style. - Syntax: - Element.FillStyle [= number] - Element - An expression that evaluates to VDB.AElement object - number - A numeric expression specifying the style of fill used to paint an element, as described in Settings - Settings - You can use the Microsoft Windows operating environment brush and hatch style schemes. - None - 0 - MS Windows Null Brush - Solid - 1 - MS Windows Solid Brush - Horizontal - 2 - MS Windows Hatch Brush created with HS_HORIZONTAL parameter - --------------- - Vertical - 3 - MS Windows Hatch Brush created with HS_VERTICAL parameter - |||||||||||||||||||||||||| - ForwDiag - 4 - MS Windows Hatch Brush created with HS_BDIAGONAL parameter - ////////////////// - BackDiag - 5 - MS Windows Hatch Brush created with HS_FDIAGONAL parameter - \\\\\\\\\\\\\\\\\\ - Cross - 6 - MS Windows Hatch Brush created with HS_CROSS parameter - +++++++++ - DiagCross - 7 - MS Windows Hatch Brush created with HS_DIAGCROSS parameter - ********* 
- HatchFlags
- HatchFlags - Syntax: - Element.HatchFlags[= number] - Element - An expression that evaluates to VDB.AElement object - number - A numeric expression specifying the way the hatch is generated, as described in Settings - Settings - The settings for HatchFlags are: - vdbHpNull - 0 - A hatch is not generated - vdbHpSingle - 1 - Lines of hatch are not crossed - vdbHpDouble - 2 - Each hatch lines is crossed by it’s perpendicular twin 
- HatchLineAngle
- Returns or sets an angle between hatch lines and a horizontal line expressed in degrees. - Syntax: - Element.HatchLineAngle [= number] - Element - An expression that evaluates to VDB.AElement object - number - A numeric expression specifying the distance between any pair of adjacent hatch lines 
- HatchLineDistance
- Returns or sets a distance between two adjacent hatch lines expressed in units established for a whole drawing. - Syntax: - Element.HatchLineDistance [= number] - Element - An expression that evaluates to VDB.AElement object - number - A numeric expression specifying the distance between any pair of adjacent hatch lines - Remarks - The numeric expression has to be evaluated to non-negative value. 
- LayerName
- Returns or sets a name of the layer, that the element is defined on. - Syntax: - Element.LayerName[= name] - Element - An expression that evaluates to VDB.AElement object - name - A string expression specifying the name of the layer 
- LineColor, FillColor, HatchLineColor
- Returns or sets a line/fill/hatch color. - Syntax: - Element.LineColor [= number] - Element.FillColor [= number] - Element.HatchLineColor [= number] - The LineColor, FillColor and HatchLineColor properties syntax has these parts: - Element - An expression that evaluates to VDB.AElement object - number - A numeric expression specifying the color of line/fill/hatch used to draw an element, as described in Settings - Settings - The settings for LineColor/FillColor/HatchLineColor are: - Black - 0x00000000 - black - Red - 0x000000FF - red - Green - 0x0000FF00 - green - Blue - 0x00FF0000 - blue - Yellow - 0x0000FFFF - yellow - Cyan - 0x00FFFF00 - cyan - Magenta - 0x00FF00FF - magenta - White - 0x00FFFFFF - white - Dk Red - 0x00FFFFFF - dark red - Dk Green - 0x00008000 - dark green - Dk Blue - 0x00800000 - dark blue - Dk Yellow - 0x00008080 - dark yellow - Dk Cyan - 0x00808000 - dark cyan - Dk Magenta - 0x00800080 - dark magenta - Dk Gray - 0x00808080 - dark Gray - Lt Gray - 0x00C0C0C0 - light gray - Remarks - Use the Microsoft Windows operating environment red-green-blue (RGB) color scheme. Specify colors by using the Color palette or by using the RGB or QBColor functions in code. 
- LineStyle, HatchLineStyle
- Returns or sets a line/hatch style. - Syntax: - Element.LineStyle[= number] - Element.HatchLineStyle[= number] - Element - An expression that evaluates to VDB.AElement object - number - A numeric expression specifying the style of line used to draw an element or its hatch, as described in Settings - Settings - Use the Microsoft Windows operating environment pen style scheme - PS_SOLID - 0 - solid line - ---------- - PS_DASH - 1 - dashed line - - - - - - - - PS_DOT - 2 - dotted line - ............. - PS_DASHDOT - 3 - dash-dotted line - -.-.-.-.-.- - PS_DASHDOTDOT - 4 - dash-double-dotted line - -..-..-..-.. - PS_NULL - 5 - without line - Remarks - Use PS_NULL pen style to draw invisible lines. 
- LineWidth, HatchLineWidth
- Returns or sets a line /hatch line width expressed in units established for a whole drawing. - Syntax: - Element.LineWidth[= number] - Element.HatchLineWidth[= number] - Element - An expression that evaluates to VDB.AElement object. - number - A numeric expression specifying the width of line used to draw an element or its hatch. - Remarks - The numeric expression has to be evaluated to non-negative value. 
- PatternName
- Returns or sets a name of the pattern, that is used to generate the element’s hatch. - Syntax: - Element.PatternName[= name] - Element - An expression that evaluates to VDB.AElement object - name - A string expression specifying the name of the pattern 
- Presentation
- Returns or sets a parameter that specifies the way the element is drawn: either it covers other entities and background documents or they are still visible through. - Syntax: - Element.Presentation[= number] - Element - An expression that evaluates to VDB.AElement object - number - A numeric expression specifying the style of element’s presentation, as described in Settings - Settings - The settings for Presentation are: - vdbPresentationNormal - 0 - An entity is opaque (it is drawn with R2_COPYPEN mode) - vdbPresentationTransparent - 1 - An entity is transparent (it is drawn with R2_NOTXORPEN mode) 
- Visibility
- Returns or sets a value specifying whether an element is visible or hidden. - Syntax: - Element.Visibility[= Visible] - Element - An expression that evaluates to VDB.AElement object - Visible - A logical expression specifying the element’s visibility 
- XCoordAt, YCoordAt
- Returns or sets x or y coordinate of object’s point. - Syntax: - Element.XCoordAt(nIndex) [= val] - Element.YCoordAt(nIndex) [= val] - Element - An expression that evaluates to VDB.AElement object. - nIndex - An integer expression specifying the number of point. - val - A numeric expression specifying x or y coordinate. - Remarks - To get to know the number of all object’s points (the maximal value of nIndex) use GetNoOfCoordsData method. 
- AttachDynaTools
- Attaches dynamic tools to be used during dynamic presentation. - Syntax: - Element.AttachDynaTools(Name, DrwHandle) - Layer - Name of the tool set to be attached to the element. - DrwHandle - The run-time handle of the library vector drawing from where the tool set is to be taken. - Element - An expression that evaluates to a VDB.AElement object - Remarks - Dynamic tools may be connected individually to selected entities, generating various presentation schemes with specific tools assigned to each data base query. Use AttachDynaTools method of any VDB.AElement – derived object to connect specific tools to given element. Using DetachDynaTools method of the VDB.ADrawing object you may disconnect all dynamic tools in the whole drawing at once and close presentation. 
- GetArea
- Returns an area of element. - Syntax: - Val = Element.GetArea() - val - A numeric variable specifying the element’s area. - Element - An expression that evaluates to a VDB.AElement object - Remarks - For elements, that the notion of area is out of context GetLength method returns 0 (segments, polylines, texts, icons). For complex elements GetArea method returns the sum of areas of subelements, that the element is consisted of. 
- GetExtentXMin, GetExtentYMin, GetExtentXMax, GetExtentYMax
- Return minimal and maximal values of x and y coordinates of element’s extent. - Syntax: - val = Element.GetExtentXMin() - val = Element.GetExtentYMin() - val = Element.GetExtentXMax() - val = Element.GetExtentYMax() - val - A numeric expression specifying maximal/minimal x or y coordinates. - Element - An expression that evaluates to a VDB.AElement object 
- GetLength
- Returns a sum of length of segments that an object consists of (segments, polylines) or a circumference of object (rectangles, circles, polygons). - Syntax: - Val = Element.GetLength() - val - A numeric variable specifying the sum of element’s segment or it’s circumference. - Element - An expression that evaluates to a VDB.AElement object - Remarks - For elements, that the notion of length is out of context GetLength method returns 0 (texts, icons). For complex elements GetLength method returns the sum of lengths of subelements, that the element is consisted of. 
- GetNoOfCoordsData
- Returns a number of all points of an element that it’s geometry is base on. - Syntax: - Val = Element.GetNoOfCoordsData() - val - An integer variable specifying the number of element’s points. - Element - An expression that evaluates to a VDB.AElement object - Remarks - To get x and / or y coordinates of subsequent points use XCoordAt, YCoordAt properties. 
- GetTools
- Returns an object associated with tools connected with the element. - Syntax: - Set Tools = Element.GetTools() - Tools - Name of the object variable to become a VDB.ATools object associated with default drawing tools connected to the drawing. - Element - An object expression that evaluates to a VDB.AElement object - Remarks - If the function fails, Tools is set to Nothing. 
- GetUnitsCoeff
- Returns a coefficient to be used while converting from drawing units to inches. - Syntax: - Val = Element.GetUnitsCoeff() - Res - A numeric variable specifying the coefficient between drawing units and inches. - Element - An expression that evaluates to a VDB.AElement object 
- IsYourLayerEditable
- Returns True if entity’s layer is editable, False if not. - Syntax: - Res = Element.IsYourLayerEditable() - Res - The IsYourLayerEditable method returns True if entity’s layer is editable and False if not. - Element - An expression that evaluates to a VDB.AElement object 
There are no properties or methods specific to VDB.ASegment objects. All their functionality may be accessed through common properties and methods declared for objects defined on lower levels in VDB database objects hierarchy.
- Radius
- Returns or sets a value of the circle radius. - Syntax: - Circle.Radius[= value] - Circle - An object expression that evaluates to a VDB.ACircle object - value - A numeric expression specifying the value of the radius of a Circle. 
- Xcenter, YCenter
- Returns or sets the x and y coordinate value of the center of a circle. - Syntax: - Circle.XCenter [= value] - Circle.YCenter [= value] - Circle - An object expression that evaluates to a VDB.ACircle object - value - A numeric expression specifying the x or y coordinate value of the center of a Circle. 
There are no properties or methods specific to VDB.ARectangle objects. All their functionality may be accessed through common properties and methods declared for objects defined on lower levels in VDB database objects hierarchy.
- AddVertex
- Adds a new vertex to polyline / polygon (at its end) with given coordinates. - Syntax: - Res = Poly.AddVertex(Xcoord, Ycoord) - Res - The AddVertex method returns True when succeeded and False when failed. - Poly - An object expression that evaluates to a VDB.APoly object - Xcoord - A numeric expression evaluating to the x coordinate of a vertex being added to a Poly - Ycoord - A numeric expression evaluating to the y coordinate of a vertex being added to a Poly 
- DeleteVertex
- Deletes a vertex from polyline / polygon with given index. - Syntax: - Res = Poly.DeleteVertex(Index) - Res - The DeleteVertex method returns True when succeeded and False when failed. - Poly - An object expression that evaluates to a VDB.APoly object - Index - A numeric expression evaluating to the zero-based index of a vertex to be deleted. 
- InsertVertexBefore
- Inserts a new vertex to polyline / polygon (before vertex with given index) with given coordinates. - Syntax: - Res = Poly.InsertVertexBefore(Index, Xcoord, Ycoord) - Res - The InsertVertexBefore method returns True when succeeded and False when failed. - Poly - An object expression that evaluates to a VDB.APoly object - Index - A numeric expression evaluating to the zero-based index of a new vertex. - Xcoord - A numeric expression evaluating to the x coordinate of a vertex being added to a Poly - Ycoord - A numeric expression evaluating to the y coordinate of a vertex being added to a Poly 
- IsClosed
- Returns whether a generic APoly is a polygon (closed) or a polyline (opened). - Syntax: - Res = Poly.IsClosed() - Poly - An object expression that evaluates to a VDB.APoly object - Res - The IsClosed method returns True for the polygon and False for the polyline. 
- AlignFlags
- Returns or sets the align flags defining the way the text is displayed and adjusted. - Syntax: - Text.AlignFlags [= value] - Text - An object expression that evaluates to a VDB.AText object - value - A numeric expression specifying the value of flags, as described in Settings. - Settings - The settings for value may be combined by bit-wise OR operator from the following sets of values specifying separately the horizontal and vertical alignment: - TA_LEFT - 0 - text aligned to its left side - TA_RIGHT - 2 - text aligned to its right side - TA_CENTER - 6 - text aligned to its center line - TA_TOP - 0 - text aligned to its top line - TA_BOTTOM - 8 - text aligned to its bottom line - TA_BASELINE - 24 - text aligned to its base line - Remarks - Vertical alignment flags are ignored for multi-line texts. 
- Angle
- Returns or sets a value of the angle of text. - Syntax: - Text.Angle [= value] - Text - An object expression that evaluates to a VDB.AText object - value - A numeric expression specifying the value of the angle of the Text. - Remarks - Text angle is the angle between the positive direction of x-axis and the baseline of text. 
- BorderType
- Returns or sets the type of border surrounding the text. - Syntax: - Text.BorderType [= value] - Text - An object expression that evaluates to a VDB.AText object - value - A numeric expression specifying the code of border type, as described in Settings - Settings - The settings for value defining border type are: - vdbTbNull - 0 - no border - vdbTbRectangle - 1 - rectangle border - vdbTbEllipse - 2 - elliptical border - vdbTbRoundrect - 3 - rounded-rectangle border 
- Content
- Returns or sets the content of text. - Syntax: - Text.Content[= string] - Text - An object expression that evaluates to a VDB.AText object - string - A string expression specifying the content of the Text. - Remarks - Text content may be single- or multi-line. The newline character (CR/LF) separates subsequent lines of text. 
- Height
- Returns or sets a value of the height of text. - Syntax: - Text.Height [= value] - Text - An object expression that evaluates to a VDB.AText object - value - A numeric expression specifying the value of the height of the Text. - Remarks - Text height is the distance between the bottom line of text and its upper line, i.e. including the descent and ascent part of the typeface together with internal spacing. For multi-line texts, the text height is multiplied by the number of lines. 
- Ratio
- Returns or sets a value of the ratio of text. - Syntax: - Text.Ratio [= value] - Text - An object expression that evaluates to a VDB.AText object - value - A numeric expression specifying the value of the height of the Text. - Remarks - Text ratio is the ratio of the desired text length to the length of text rendered with its current font of the same height and with default font design 
- RuntimeContent
- Returns or sets the run-time content of text. - Syntax: - Text.RuntimeContent [= string] - Text - An object expression that evaluates to a VDB.AText object - string - A string expression specifying the run-time content of the Text. - Remarks - The run-time content may be used for implementation of dynamic, macro-dependent texts. 
- StyleName
- Returns or sets the name of the style of text. - Syntax: - Text.StyleName [= string] - Text - An object expression that evaluates to a VDB.AText object - string - A string expression specifying the name of the style of the Text. - Remarks - The style with given name must exist in the drawing to which the Text belongs. 
- FileName
- Returns or sets the name of the raster file displayed in icon. - Syntax: - Icon.FileName - Icon - An object expression that evaluates to a VDB.AIcon object - value - A string expression specifying the name of the raster file displayed in the Icon 
- Scale
- Returns or sets a value of the scale of icon. - Syntax: - Icon.Scale [= value] - Icon - An object expression that evaluates to a VDB.AIcon object - value - A numeric expression specifying the value of the scale of the Icon - Remarks - Icon scale is the scale used while displaying raster file in the icon. 
- Angle
- Returns or sets angle of insert entity. - Syntax: - Insert.Angle [= value] - Insert - An object expression that evaluates to a VDB.AInsert object - value - A numeric expression specifying the value of the angle of the Insert - Remarks - Insert angle is the rotation angle used while displaying entities listed in block definition that the insert entity refers to. 
- BlockName
- Returns or sets the name of the block definition the insert entity refers to. - Syntax: - Insert.BlockName [= string] - Insert - An object expression that evaluates to a VDB.AInsert object - string - A string expression specifying the name of the block displayed in the Insert 
- XScale, YScale
- Returns or sets x or y scale of insert entity. - Syntax: - Insert.XScale [= value] - Insert.YScale [= value] - Insert - An object expression that evaluates to a VDB.AInsert object - value - A numeric expression specifying the value of the x or y scale of the Insert - Remarks - Insert scale is the scale used while displaying entities listed in block definition that the insert entity refers to. 
There are no properties or methods specific to VDB.AToolSet objects. All their functionality may be accessed through common properties and methods declared for objects defined on lower levels in VDB database objects hierarchy.
Although VDB.AToolSet object is derived from VDB.AElement object, it is not treated as a geometrical entity. It is rather a placeholder for storing individual tools for e.g. dynamic presentation purposes. Tool sets are stored in separate table in the vector drawing data base.
ASymbol object is a generic class of various drawing data base objects that are listed in the drawing in separate tables. Drawing layers, text styles and hatch patterns are examples of these objects. Some common properties and methods, accessible for each specific symbol, are implemented on the ASymbol level.
- RefCount
- Returns the reference count for the symbol. - Syntax: - Res = Symbol.RefCount() - Symbol - An object expression that evaluates to a VDB.ASymbol – derived object - Res - The RefCount property returns the number of times the Symbol is referenced from other drawing data base objects in the drawing. - Remarks - The RefCount property is read-only, i.e. you cannot set the value of reference counter of the symbol explicitly. 
- IsPermanent
- Return the state of being permanent property of the symbol. - Syntax: - Res = Symbol.IsPermanent() - Symbol - An object expression that evaluates to a VDB.ASymbol – derived object - Res - The IsPermanent method returns True when the Symbol is permanent and False if not. - Remarks - Some symbols, e.g. layer named “0” or default text style, created automatically in the new drawing, are considered obligatory and thus are not removable. This is marked as the property of being permanent. 
- AccessRights
- Returns or sets the level of access rights for the layer. - Syntax: - Layer.AccessRights [= Level] - Layer - An object expression that evaluates to a VDB.ALayer object - Level - A numeric expression specifying the access level declared for the layer, as described in Settings. - Settings - The settings for Level are: - vdbNullAccess - 0 - no access: layer is not listed at all; its elements are hidden - vdbReadAccess - 1 - read access: layer is listed; its properties may be changed; layer name cannot be changed; layer cannot be created or removed; its elements cannot be added, changed or removed - vdbEditAccess - 2 - edit access: layer is listed, its properties may be changed; layer name cannot be changed; layer cannot be created or removed; its elements can be added, changed or removed - vdbFullAccess - 3 - full access: layer is listed, its properties may be changed; layer name can be changed; layer can be created and removed; its elements can be added, changed or removed - Remarks - Common schema of access rights depending on user priority level and user name, together with syntax of layer name containing the prefix with user name, may be imposed in whole drawing. 
- IsActive, IsVisible, IsCurrent
- Return the state of appropriate parameters of the layer, such as activity, visibility and state of being current. - Syntax: - Res = Layer.IsActive() - Res = Layer.IsVisible() - Res = Layer.IsCurrent() - Layer - An object expression that evaluates to a VDB.ALayer object - Res - Each method returns True when the corresponding parameter is set and False if not. 
- SetActivity
- Sets the activity parameter for the layer. - Syntax: - Layer.SetActivity(Active) - Layer - An object expression that evaluates to a VDB.ALayer object - Active - A logical expression specifying the activity parameter for the layer. - Remarks - Layer may be set active or inactive. Entities from active layer can be selected and edited. Entities from inactive layer cannot be selected nor edited. This feature may be set independently from the visibility parameter. 
- SetCurrent
- Sets the layer as current one. - Syntax: - Layer.SetCurrent() - Layer - An object expression that evaluates to a VDB.ALayer object - Remarks - Layer may be set as current one. It means that all newly defined entities will be placed on that layer. It has also influence on enumerating entities using flag VDB_ENUM_CURRENT. - Since the SetCurrent method has no parameters, the only way to reset the layer to “not current” state is to made some other layer current. 
- SetVisibility
- Sets the visibility parameter for the layer. - Syntax: - Layer.SetVisibility(Visible) - Layer - An object expression that evaluates to a VDB.ALayer object - Visible - A logical expression specifying the visibility parameter for the layer. - Remarks - Layer may be set visible or invisible. Entities from visible layer are visible i.e. they are displayed. Entities from invisible layer are not displayed. This feature may be set independently from the activity parameter 
- AlignFlags
- Returns or sets the align flags defining the way the text is displayed and adjusted. - Syntax: - Style.AlignFlags [= value] - Style - An object expression that evaluates to a VDB.AStyle object - value - A numeric expression specifying the value of flags, as described in Settings. - Settings - The settings for value may be combined by bit-wise OR operator from the following sets of values specifying separately the horizontal and vertical alignment: - TA_LEFT - 0 - text aligned to its left side - TA_RIGHT - 2 - text aligned to its right side - TA_CENTER - 6 - text aligned to its center line - TA_TOP - 0 - text aligned to its top line - TA_BOTTOM - 8 - text aligned to its bottom line - TA_BASELINE - 24 - text aligned to its base line - Remarks - Vertical alignment flags are ignored for multi-line texts. 
- Angle
- Returns or sets a value of the angle of text. - Syntax: - Style.Angle [= value] - Style - An object expression that evaluates to a VDB.AStyle object - value - A numeric expression specifying the value of the angle of the Style. - Remarks - Text angle is the angle between the positive direction of x-axis and the baseline of text. 
- BorderType
- Returns or sets the type of border surrounding the text. - Syntax: - Style.BorderType [= value] - Style - An object expression that evaluates to a VDB.AStyle object - value - A numeric expression specifying the code of border type, as described in Settings. - Settings - The settings for value defining border type are: - vdbTbNull - 0 - no border - vdbTbRectangle - 1 - rectangle border - vdbTbEllipse - 2 - elliptical border - vdbTbRoundrect - 3 - rounded-rectangle border 
- Height
- Returns or sets a value of the height of text. - Syntax: - Style.Height [= value] - Style - An object expression that evaluates to a VDB.AStyle object - value - A numeric expression specifying the value of the height of the Style. - Remarks - Text height is the distance between the bottom line of text and its upper line, i.e. including the descent and ascent part of the typeface together with internal spacing. For multi-line texts, the text height is multiplied by the number of lines. 
- Ratio
- Returns or sets a value of the ratio of text. - Syntax: - Style.Ratio - Style - An object expression that evaluates to a VDB.AStyle object - value - A numeric expression specifying the value of the ratio of the Style. - Remarks - Text ratio is the ratio of the desired text length to the length of text rendered with its current font of the same height and with default font design. 
- Angle
- Returns or sets an angle between hatch lines and a horizontal line expressed in degrees. - Syntax: - Pattern.Angle [= number] - Pattern - An expression that evaluates to VDB.APattern object - number - A numeric expression specifying an angle between hatch lines and a horizontal line 
- Color
- Returns or sets color for a hatch line. - Syntax: - Pattern.Color [= number] - Pattern - An expression that evaluates to VDB.APattern object - number - A numeric expression specifying the color of line used to draw a hatch, as described in Settings - Settings - The settings for Color are: - Black - 0x00000000 - black - Red - 0x000000FF - red - Green - 0x0000FF00 - green - Blue - 0x00FF0000 - blue - Yellow - 0x0000FFFF - yellow - Cyan - 0x00FFFF00 - cyan - Magenta - 0x00FF00FF - magenta - White - 0x00FFFFFF - white - Dk Red - 0x00000080 - dark red - Dk Green - 0x00008000 - dark green - Dk Blue - 0x00800000 - dark blue - Dk Yellow - 0x00008080 - dark yellow - Dk Cyan - 0x00808000 - dark cyan - Dk Magenta - 0x00800080 - dark magenta - Dk Gray - 0x00808080 - dark gray - Lt Gray - 0x00C0C0C0 - light gray - Remarks - Use the Microsoft Windows operating environment red-green-blue (RGB) color scheme. Specify colors by using the Color palette or by using the RGB or QBColor functions in code. 
- Distance
- Returns or sets a distance between two adjacent hatch lines expressed in units established for a whole drawing. - Syntax: - Pattern.Distance[= number] - Tools - An expression that evaluates to VDB.APattern object - number - A numeric expression specifying the distance between any pair of adjacent hatch lines - Remarks - The numeric expression has to be evaluated to non-negative value. 
- Flags
- Returns or sets a flag that is responsible for drawing (or not) the perpendicular twin for each hatch line. - Syntax: - Pattern.Flags [= number] - Pattern - An expression that evaluates to VDB.APattern object - number - A numeric expression specifying the way the hatch is generated, as described in Settings - Settings - The settings for Flags are: - vdbHpNull - 0 - A hatch is not generated - vdbHpSingle - 1 - Lines of hatch are not crossed - vdbHpDouble - 2 - Each hatch line is crossed by its perpendicular twin 
- LineStyle
- Returns or sets a hatch line style. - Syntax: - Pattern.LineStyle [= number] - Pattern - An expression that evaluates to VDB.APattern object - number - A numeric expression specifying the style of line used to draw hatch, as described in Settings - Settings - Use the Microsoft Windows operating environment pen style scheme. The settings for number defining line style are: - PS_SOLID - 0 - solid line - ---------- - PS_DASH - 1 - dashed line - - - - - - - - PS_DOT - 2 - dotted line - ............. - PS_DASHDOT - 3 - dash-dotted line - -.-.-.-.-.- - PS_DASHDOTDOT - 4 - dash-double-dotted line - -..-..-..-.. - PS_NULL - 5 - without line - Remarks - Use PS_NULL pen style to draw invisible lines. 
- LineWidth
- Returns or sets a hatch line width expressed in units established for a whole drawing. - Syntax: - Pattern.LineWidth [= number] - Pattern - An expression that evaluates to VDB.APattern object. - number - A numeric expression specifying the width of line used to draw a hatch. - Remarks - The number expression has to be non-negative value. 


