Bricscad Developer Reference

Table Of Contents
Developer Reference Overview .............................................................................................1 LISP (LISt Processing) ........................................................................................................3 Programming overview of LISP language ............................................................................3 Supported LISP functions..................................................................................................3 Additional LISP functions ................................................................................................24 Additional functions not available in AutoLISP® : ............................................................ 24 ExpressTools Utility Functions :..................................................................................... 26 VL functions implemented as Dummy (No-Operation) : .................................................... 27 VLR VisualLisp functions (Reactors) : vlr-... .................................................................... 28 VLA VisualLisp functions : vla-... ................................................................................... 30 VLAX VisualLisp functions : vlax-...................................................................................90 VLISP VisualLisp functions : vlisp-... .............................................................................. 92 Constants:.................................................................................................................93 LISP Encryption........................................................................................................... 114 To encrypt a LISP file ................................................................................................ 114 To load an encrypted LISP file .................................................................................... 114 Programming overview of DCL language ............................................................................ 115 Programming overview of Diesel language ......................................................................... 117 VBA (Visual Basic for Applications).................................................................................... 119 Overview of automation ............................................................................................... 119 Overview of automation............................................................................................. 119 Using ActiveX Automation .......................................................................................... 119 Using the Object Model.............................................................................................. 119 Starting VBA............................................................................................................... 120 Inserting UserForms .................................................................................................... 120 To insert a UserForm................................................................................................. 120 Adding controls to a UserForm....................................................................................... 121 Creating code ............................................................................................................. 121 Using modules ............................................................................................................ 122 Managing VBA projects................................................................................................. 122 Running a VBA program ............................................................................................... 122 Events in Bricscad VBA ................................................................................................. 123 Difference with AutoCAD : ....................................................................................... 124 Keeping tabs on the Active Document : ..................................................................... 124 COM (Component Object Model)....................................................................................... 127 The Bricscad automation object model............................................................................ 128 User Guide ................................................................................................................. 129 Drawing Lines and Arcs ............................................................................................. 129 Drawing Lines........................................................................................................ 129 Drawing Polylines................................................................................................... 129 Drawing Arcs......................................................................................................... 129 Drawing Circles...................................................................................................... 129 Creating Other Objects .............................................................................................. 129 Creating Points ...................................................................................................... 129

iii

Bricscad V10 - Developer Reference Creating Splines .................................................................................................... 129 Adding Hatching .................................................................................................... 130 Creating a Hatch Object .......................................................................................... 130 Adding Text to Drawings ............................................................................................ 130 Creating Single-Line Text ........................................................................................ 130 Creating Paragraph Text ......................................................................................... 130 Working with Text Styles......................................................................................... 130 Working with Views................................................................................................... 131 Using Named Views ................................................................................................ 131 Creating and Naming Views ..................................................................................... 131 Deleting Views....................................................................................................... 131 Using Viewports ..................................................................................................... 131 Reference Guide.......................................................................................................... 132 Objects ................................................................................................................... 132 AcCmColor ............................................................................................................ 132 Application object .................................................................................................. 132 ApplicationPreferences object .................................................................................. 133 Arc object ............................................................................................................. 134 Attribute object ..................................................................................................... 135 AttributeReference object ........................................................................................ 136 Block object .......................................................................................................... 137 Block Refercence object .......................................................................................... 138 Blocks collection object ........................................................................................... 138 Circle object .......................................................................................................... 139 Dictionary object.................................................................................................... 139 Dictionaries collection object.................................................................................... 140 Dim3PointAngular object ......................................................................................... 140 DimAligned object .................................................................................................. 142 DimAngular object ................................................................................................. 144 DimDiametric object ............................................................................................... 146 Dimension object ................................................................................................... 148 DimensionStyle object ............................................................................................ 149 DimensionStyles collection object ............................................................................. 149 DimOrdinate object ................................................................................................ 150 DimRadial object.................................................................................................... 152 DimRotated object ................................................................................................. 154 Document object.................................................................................................... 156 DocumentPreferences object.................................................................................... 157 Documents collection object .................................................................................... 157 Ellipse object......................................................................................................... 158 Entity object.......................................................................................................... 159 ExternalReference object......................................................................................... 160 Face3D object ....................................................................................................... 161 Group object ......................................................................................................... 161 Groups collection object .......................................................................................... 162 Hyperlink object .................................................................................................... 162 Hyperlinks collection object ..................................................................................... 162

iv

Table Of Contents Hatch object.......................................................................................................... 163 Image object......................................................................................................... 164 InfiniteLine object .................................................................................................. 165 Layer object .......................................................................................................... 166 Layers collection object........................................................................................... 166 Layout object ........................................................................................................ 167 Layouts collection object ......................................................................................... 167 Leader object ........................................................................................................ 168 Line object ............................................................................................................ 169 Linetype object ...................................................................................................... 169 Linetypes collection object....................................................................................... 170 LWPolyline object................................................................................................... 170 MenuBar object ..................................................................................................... 171 MenuGroup object.................................................................................................. 171 MenuGroups object ................................................................................................ 172 ModelSpace collection object ................................................................................... 173 MText object ......................................................................................................... 174 PaperSpace collection object.................................................................................... 175 PlotConfiguration object .......................................................................................... 176 PlotConfigurations collection object........................................................................... 176 Plot object ............................................................................................................ 177 Point object........................................................................................................... 177 PolyfaceMesh object ............................................................................................... 178 PolygonMesh object................................................................................................ 179 Polyline object ....................................................................................................... 180 Polyline3D object ................................................................................................... 181 PopupMenu object.................................................................................................. 181 PopupMenus object ................................................................................................ 182 PopupMenuItem object ........................................................................................... 182 Preferences object................................................................................................. 183 PViewport object.................................................................................................... 184 Ray object ............................................................................................................ 185 Region object ........................................................................................................ 186 RegisteredApplication object .................................................................................... 186 RegisteredApplications collection object..................................................................... 187 SelectionSet object ................................................................................................ 187 SelectionSets collection object ................................................................................. 187 Shape object ......................................................................................................... 188 Solid object........................................................................................................... 189 Solid3D object ....................................................................................................... 190 SolidCreator object................................................................................................. 190 Spline object ......................................................................................................... 191 Text object ........................................................................................................... 192 TextStyle object..................................................................................................... 193 TextStyles collection object ..................................................................................... 193 Tolerance object .................................................................................................... 194 Toolbar object ....................................................................................................... 194

v

Bricscad V10 - Developer Reference Toolbars object ...................................................................................................... 195 Trace object .......................................................................................................... 195 UserCoordSystem object ......................................................................................... 196 UserCoordSystems collection object.......................................................................... 196 Utility object ......................................................................................................... 197 View object ........................................................................................................... 198 Views collection object ............................................................................................ 198 Viewport object ..................................................................................................... 199 Viewports collection object ...................................................................................... 199 Window object....................................................................................................... 200 Windows collection object........................................................................................ 200 Workspace object................................................................................................... 200 XRecord object ...................................................................................................... 201 Properties................................................................................................................ 201 ActiveDocument property ........................................................................................ 201 AltFontFile property ................................................................................................ 201 Application property ............................................................................................... 202 Area property ........................................................................................................ 202 AutoSaveInterval property ...................................................................................... 202 Caption property.................................................................................................... 203 Center property ..................................................................................................... 203 CenterPlot property ................................................................................................ 203 Circumference property .......................................................................................... 203 Closed property ..................................................................................................... 204 Color property ....................................................................................................... 204 Constant property .................................................................................................. 205 ContourLinesPerSurface property ............................................................................. 205 Coordinates property .............................................................................................. 205 Count property ...................................................................................................... 206 CursorSize property ............................................................................................... 206 Diameter property.................................................................................................. 206 DisplayScrollBars property....................................................................................... 207 DisplaySilhouette property ...................................................................................... 207 DockedVisibleLines property .................................................................................... 207 Document property ................................................................................................ 208 Documents property ............................................................................................... 208 EndAngle property ................................................................................................. 208 EndPoint property .................................................................................................. 208 FieldLength property .............................................................................................. 209 FullName property ................................................................................................. 209 GraphicsWinBackgrndColor property ......................................................................... 209 Handle property..................................................................................................... 210 HasAttributes property............................................................................................ 210 HasExtensionDictionary property .............................................................................. 211 Height property ..................................................................................................... 211 HistoryLines property ............................................................................................. 211 HorizontalAlignment property .................................................................................. 212

vi

................................................. 214 Item property........................................................ 214 Invisible property.................................................................... 227 StyleName property ........................................... 218 MaxAutoCADWindow property......... 222 PlotStyleName property ..................................................................................... 227 StartPoint property.............................................................................................................................................................................. 219 Mode property ............................................................................................................................................................................................................................................................................................ 220 ObliqueAngle property ........ 226 StartAngle property.......................................................................................................................................... 223 Preferences property ....... 219 Normal property ................................. 226 SolidFill property............................................................................................................................................. 218 LogFileOn property ............ 216 LineWeight property ......................................... 225 Saved property................................................................ 226 SegmentPerPolyline property .................................................................................... 225 Rotation property.......................................................................................................................................................... 213 Index property ................................................................................................................................................................................................................................... 227 TagString property ...................................................................................................................................................................................................... 215 Length property ................................. 221 PaperOrientation property ............................................................................. 213 ImageWidth property .................................................................................................................................................... 228 TextAlignmentPoint property ................. 228 vii ......................................... 217 LocaleID property ............................................................................................................................................... 215 Layer property........................................... 224 RenderSmoothness property.......................................... 224 ReadOnly property .............................................................................................. 223 PromptString property ............................................................................................................................................................................ 214 IsXRef property ..................................................... 212 ImageHeight property............ 216 LinetypeScale property .......................................................................... 221 Origin property ............. 218 LogFilePath property............................................................................................................. 215 LineType property ............................................................................. 220 ObjectName property ............................................................................................ 221 PaperSpace property .......................................................................................... 214 InsertionPoint property .............................................................................................................................................................. 218 MaxActiveViewports property ............................... 213 ImageVisibility property ................................................................................................................................................................................ 219 Name property .................................................................................................................................................................................................................................................................................................................................................................................................... 225 ScaleFactor property ............... 224 Radius property ......... 222 PlotManager property ...............................................................................................Table Of Contents ImageFile property.......................................................................................................................................................................................................................... 228 TextFrameDisplay property.................................................... 223 Preset property............................... 222 Path property ..................................................................................................

...................................................................................................................................... 234 Methods ..................... 243 AddItems method ...................... 231 Verify property ......... 235 Add3DMesh method .................................................................................................................................................................................. 238 AddCone method ............................................... 230 URL property .................................... 244 AddLine method..... 234 XScaleFactor property.............................................. 244 viii .......................................... 233 XRefLayerVisibility property .................................................................................... 237 AddAttributeDef method ................................ 239 AddDimAngular method ........................................................... 241 AddHatch method .................... 238 AddCylinder method ............................................................... 230 VBE property........................................................................................................................................................... 242 AddXLine method................................................................................................................................................................................................................................................................................................................................................................... 233 WindowTop property ........................................................................................................................... 239 AddDim3PointAngular method......... 231 Version property ................. 240 AddDimOrdinate method ..................................................................................................... 236 Add3dPoly method .......................................................................................................................... 235 Activate method ........................ 243 AddLeader method ............................................ 232 ViewToPlot property ............................................................................................................................... 229 Units property ... 235 Add3dFace method................................................................................................................................................................................................................................................................................................................................ 236 AddArc method...................Bricscad V10 .....................................................................................................................................Developer Reference TextGenerationFlag property ......................................................................................................................... 232 VisibilityEdgeX property ....................................................... 238 AddDimAligned method........................................................ 240 AddDimRadial method ............................... 244 AddMtext method.................. 229 Thickness property .................................................................. 229 TextString property ...................................................................................... 232 Visible property ........................... 233 Width property ........................ 240 AddDimRotated method ............................................................................................................................ 239 AddDimDiametric method........................................................................................................................................... 242 AddRaster method .......................................................... 241 AddFitPoint method ............................................... 234 ZScaleFactor property............................................................................................... 241 AddEllipse method ....... 235 Add method ...................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... 234 YScaleFactor property.................................................................................................................................................................................................................................................... 236 AddBox method .... 243 AddLightWeightPolyline method ................... 237 AddCircle method....................................................................................................................................................................................... 231 VerticalAlignment property ......................................................................................................................................................................................................................................................................

.................................................................... 254 DeleteFitPoint method ...................................... 260 GetWidth method......................................................................................................................................................................................................................................................................................................................................................................................................................................... 258 GetGridSpacing method ....................................................................................................................................................................Table Of Contents AddPoint method ......................................................................................................................................................................................................... 250 AppendVertex method .. 253 Copy method.............................................................................................................................................................................................................................................. 255 Erase method ........................................................................... 249 AngleFromXAxis method ................................................................. 245 AddPolyline method........................................................................................... 252 Clear method ............ 259 GetSnapSpacing method ............ 253 Delete method...................................................................................................... 247 AddTolerance method ............................................................................................................................................................................................. 254 Detach method ................................................................... 255 Export method......................................................................... 247 AddSpline method ............................................................................................................................................ 259 GetUCSMatrix method ...................................................... 258 GetInvisibleEdge method ........................................ 255 Explode method............... 252 Bind method ................................................... 257 GetExtensionDictionary method .................................. 247 AddText method ...................................................................................................................... 245 AddPViewport method ........................................... 258 GetInterfaceObject method .............................................................................................................................................................. 254 Display method........... 250 ArrayPolar method .................................. 245 AddPolyfaceMesh method ............ 248 AddTorus method...................................................................................... 259 GetVariable method........................................... 256 GetBulge method .............................................................................. 250 AngleToString method ......................................... 246 AddSolid method ................................................................... 248 AddVertex method ............................................................... 256 GetBoundingBox method........................................................... 253 Close method ................................................ 249 AddWedge method ............................. 246 AddRay method ........................................................................................................................................................................................................................................................................................................................................................................... 256 GetAttributes method .................................................................................................................................................................................................... 257 GetControlPoint method .................... 248 AddTrace method............................................................................................................ 251 AttachExternalReference method....... 257 GetCorner method .......................................................................... 260 ix ......................................................................................................................................... 246 AddSphere method ...... 251 ArrayRectangular method...................................................................................................................................................................................................................................................... 254 DefineFunction method ............................................................................................................................ 249 AngleToReal method.......................................... 255 GetAngle method ......................................................................................................................

.... 273 SetVariable method...................................................................................................................................................................................................................................................................... 266 PlotToFile method ................................................................ 272 SetGridSpacing method ................... 275 Unload method .....................................Developer Reference GetXData method ....................................................................................... 263 Item method .................................................................................................................... 260 GetXData and SetXData method example ........... 270 SelectAtPoint method ......................................................................................................................................................... 264 Offset method ...................................................................................................................................................................................................... 265 Parent property ................................................................................................................... 274 Split method ........................................................................................................................................................... 274 SetXData method................................................................................................................................................... 266 Quit method..................................................................................................................................................................................................................................................................................................................................................................................................................... 267 Reload method ................................................................... 262 InsertBlock method ................................................................................... 261 HandleToObject method.......................... 267 Regen method ............................................................... 265 Open method ....................................................................................................................Bricscad V10 ........................ 262 Import method ........................................................................................................................................................................................................................................................................................................................................................................................................... 272 SetInvisibleEdge method........... 268 RunCommand method ....... 263 IntersectWith method .......................................................... 268 Rotate3D method............................................................................................................................................................................................. 269 Save method................................................................. 271 SetBulge method ................ 268 RunScript method ....................... 269 SaveAs method ............................................................................. 276 x ........................ 275 Update method....................................... 274 SetWidth method ................................................. 264 Move method ................................. 263 Mirror method ............................................................................................................................................................................... 273 SetView method .. 273 SetSnapSpacing method ....... 265 DisplayPlotPreview method.............................................................................................................................................................. 267 Rotate method.............................................................................................................................................................................................................. 264 Mirror3D method ........................................................ 275 UndefineFunction method.................... 269 ScaleEntity method .................................................................................................................................................................................. 265 PlotToDevice method ........................................................................................................................................................................... 271 SelectOnScreen method ................................... 269 Select method ............................................... 272 SetPattern method ............ 262 Highlight method ...................... 275 TransformBy method ...................................................................................... 270 SelectByPolygon method ..................................................................................... 266 PurgeAll method ............................................................. 267 RemoveItems method .........................................................................................................

.................................................................................... 279 AcAttachmentPoint .................................................................................................. 276 ZoomExtents method .......................................................................................................................................... 286 AcViewportSplitType............................................................................................................................................................................................................................................................................................................................................................................ 286 AcTextFontStyle.................................................. 286 AcUnits........................................................................................... 279 AcColor ........................................ 285 AcPlotOrientation ............................................................................. 283 acPlotPaperUnits ............. 282 AcPatternType ............................................................................. 279 AcAttributeMode .... 283 AcSaveAsType .................................................................... 280 AcDimHorizontalJustification ................................................................................................................................................... 285 AcPolylineType ...................................................................................................................... 276 ZoomAll method ............................................................................................................ 286 AcSelect ......................................................... 280 AcDimPrecision ....... 285 AcRegenType .............................................................................................................................................................................................................................................................................. 280 AcDimTextMovement ............................................................................................... 282 AcMenuItemType ............................................................................................................................... 281 AcDrawingDirection ........ 281 AcDimToleranceMethod.................................. 286 AcVerticalAlignment ............................................................................. 285 AcPolymeshType ............................................................................................... 283 AcHorizontalAlignment ............................................................................................................................................................................... 280 AcDimLUnits............. 286 acViewportScale .............................................................................................................................................................................................................................. 280 AcDimToleranceJustify .......... 279 AcActiveSpace ............................................................................................................................................................................................................................................................. 277 ZoomPickWindow method ....Table Of Contents WBlock method .... 286 AcTextGenerationFlag ................. 277 ZoomScaled method............... 287 xi ...................................................................................................................................... 285 AcLeaderType...................................................... 281 AcEntityName.................................................................................................................................................................................................................................................... 284 acPlotScale .................................................................................................................................................................................................................................................................................................................................................................................................................. 280 AcDimFractionType ........................................................... 276 ZoomCenter method....................................................................... 282 AcHatchStyle......................................................................................................................................................................................... 284 AcPlotType ..................................................................................................................... 278 Constants ......................... 283 AcLineWeight ............................................... 284 acPlotRotation ............................................................................................................................ 281 AcDimVerticalJustification.................................. 277 ZoomWindow method ............... 282 AcMenuGroupType ..................................... 279 Overview of Constants ................................................................................................................ 281 AcExtendOption .....................................................

.................................. ................ 301 Following SDS functions are no longer supported since Bricscad V8:.......................................................................................................................................................Bricscad V10 ..... 290 BRX SDK ....................................................................................... 290 DRX .......................... 295 Deprecated ............................................................................................................................................................................................................................................................. 291 DRX applications........................Developer Reference AcWindowState........................................................................................................................................................................................................................................ 295 Compiling SDS applications .............................................................................................................................................................................................................Q......................... 287 AcZoomScaleType .......................... 293 Compatibility between Bricscad and the DRX SDK........................................................... 289 Code compatibility ..............................................................DCL functions ................................................................................................................................................................................................................................................................................ 288 BRX ....................................... 302 Index ................................................................................... 289 Features............................................................................................................... 293 Samples ...................... 293 Manual ........................................ 290 Quality Assurance ................................................................................... 290 Final notes............ 290 F............................................................................................................A................................................................................................. 303 xii ........... 289 Compiling BRX applications ................................................................................................................................................. 294 DRX project configuration ........................................................................ 289 Sample ................................ 295 Breaking changes from Bricscad V7 to V8 (or higher) .............................................. 291 Terminology................................................................... 294 Extensions useful for DRX and SDS applications . 295 Sample project ...................... 291 The better alternative: BRX ..................................................................................................................................................... 294 SDS (deprecated).................................................................... 296 Supported SDS ........................................................................................................................................................................................................................................................................................................................................... 289 Version ....... 293 Downloading the DRX SDK ............................................... 296 Supported SDS functions ..... 291 DRX and ARX compared: similarities and differences............................

Bricscad offers several API's : COM. a C/C++ language interface.dvb project files (VBA macro files) originally created on AutoCAD should run without modification on Bricscad. click the appropriate link below: 1 . which is used by other applications such as Lisp/SDS/DRX/BRX to customize dialog boxes.NET. However SDS is considered to be deprecated. code-compatible with the AutoCAD Runtime eXtension (ARX) interface in AutoCAD. With Bricscad. including LISP. a C/C++ language interface compatible with the AutoCAD Development System (ADS) interface in AutoCAD. Bricscad offers . Bricscad still includes SDS. To write applications in C or C++. DRX and (SDS). you can use programs written entirely in AutoLISP with no modification. BRX. You can use all DCL files unmodified within Bricscad. Bricscad supports the AutoCAD dialog control language (DCL). you can run many programs originally created for use with AutoCAD. Also .Developer Reference Overview You can customize Bricscad by adding custom programs written in any of several programming languages that run within Bricscad. C/C++. VB/VBA/VB. For more information about adding custom programs to Bricscad in one of the compatible programming languages. Specifically.

.

system variables. LISP is similar to AutoLISP. Most of the functions included allow the manipulation of graphical entities in Bricscad.number1 number2 ) (*) Return the product of all numbers (* number1 number2 ) (/) Divide the first number by the following numbers (/ number1 number2 ) (~) Apply the 1s compliment (bitwise NOT) (~ number) (=) Compares arguments for equality (= item1 item2 ) (/=) Compares arguments for inequality (/= item1 item2 ) 3 . This section of the developer's reference is currently being completely re-written.LISP (LISt Processing) Programming overview of LISP language LISP is an acronym for LISt Processing. line types. For further assistance please contact Bricsys Support. etc. LISP greatly extends the commands and functionality that are available in Bricscad. Supported LISP functions (+) Return the sum of all numbers (+ number1 number2 ) (-) Subtract second (and following) from first number (. colors. radii. It is a interpretive programming language that you can use to call Bricscad commands. and dialog boxes. The properties of these graphical entities are returned as association lists in which DXF "group codes" are paired with values that indicate properties such as points. layers.

Bricscad V10 .number) (abs) Return absolute value of number (abs number) (acad_colordlg) Display the Select Color dialog box (acad_colordlg color-number [flag]) (acad_strlsort) Sort list of strings in alphabetical order (acad_strlsort list) (action_tile) Respond when the user clicks a dialog box tile (action_tile key expression) (add_list) Add some text to an existing dialog box string (add_list string) 4 .Developer Reference (<) Return T if first argument is less than others ( (<=) Return T if first argument is less than or equal toall other arguments (<= item1 item2 )</p> (>) Return T if first argument is less than all other arguments (> item1 item2 ) (>=) Return T if first argument is less than or equal all other arguments (>= item1 item2 ) (1) Increment number by 1 (1+ number) (-1) Decrement number by 1 (1.

LISP (LISt Processing) (ads) Check what applications are loaded into Bricscad (ads) (alert) Display a message box (alert string) (alloc) Set the memory segment size for LISP (alloc integer) (and) Return logical AND of the supplied arguments (and expression ) (angle) Return the angle (radians) of the line defined by two points (angle point1 point2) (angtof) Convert string representation of angle to radians (angtof string [mode]) (angtos) Convert angle (radians) to string representation (angtos angle [mode [precision]]) (append) Append list arguments to one list (append list1 list2 ) (apply) Apply the specified function for each argument supplied iin the list (apply function list) (arx) Returns a list of the currently loaded ObjectARX applications (arx) (arxload) Loads an ObjectARX application (arxload application [onfailure]) 5 .

Developer Reference (arxunload) Unloads an ObjectARX application (arxunload application [onfailure]) (ascii) Convert the first character of string to its ASCII char code (integer) (ascii string) (assoc) Find the first matching item in the list (assoc item list) (atan) Return arctangent (atan number1 [number2]) (atof) Convert a string to a real number (atof string) (atoi) Convert a string to an integer (atoi string) (atom) Confirm that an item is an atom (atom item) (atoms-family) Return a list of the currently defined symbols (atoms-family format [symbol1 symbol2 ]) (autoload) Automatically load the LISP application when one of its commands is used (autoload application list) (boole) Apply the bitwise Boolean function (boole function integer1 integer2 ) (boundp) Confirm that this item has a value bound to it (boundp item) 6 .Bricscad V10 .

LISP (LISt Processing) (caddr) Return the third item of the list (caddr list) (cadr) Return the second item of the list (cadr list) (car) Return the first item of the list (car list) (cdr) Return everything in the list execpt the first item (cdr list) (chr) Convert the integer (ASCII char code) to a single-character string (chr integer) (client_data_tile) Associate data with a dialog box tile (client_data_table key data) (close) Close an open file (close file-descriptor) (command) Launch this Bricscad command (command cmd [arguments] ) (cond) Common conditional function in LISP (cond (statement1 result1 ) ) (cons) Add this item to the beginning of the list (cons item list) (cos) Calculate the cosine (cos angle) 7 .

Bricscad V10 .Developer Reference (cvunit) Convert a value from one unit of measurement to another (cvunit value from to) (defun) Define a LISP function (defun [c:] name ([arg1 arg2 ] / [local-var1 local-var2 ]) expression) (dictadd) Add a nongraphical object to a dictionary (dictadd ename symbol newobj) (dictnext) Find the next item in a dictionary (dictnext ename [rewind]) (dictremove) Remove an item from a dictionary (dictremove ename symbol) (dictrename) Rename a dictionary entry (dictrename ename oldsym newsym) (dictsearch) Search a dictionary for an item (dictsearch ename symbol [setnext]) (distance) Determine the distance between two points (distance point1 point2) (distof) Convert a string to a real number (distof string [mode]) (done_dialog) Terminate a dialog box (done_dialog [flag]) (end_image) End the creation of a dialog box image (end_image) 8 .

LISP (LISt Processing) (end_list) End the processing of a dialog box list (end_list) (entdel) Delete entity (entdel entity-name) (entget) Retrieve the entity's definition data (entget entity-name [application-list]) (entlast) Get the last entity in the drawing (entlast) (entmake) Add an entity to the drawing (entmake [entity-list]) (entmakex) Make a new entity. give it a handle and return it's new entity name (entmakex [entity-list]) (entmod) Modify the entity (entmod entity-list) (entnext) Return the next entity in the drawing (entnext [entity-name]) (entsel) Prompt the user to select an entity (entsel [prompt]) (entupd) Redraw the entity (entupd entity-name) (eq) Determine whether two expressions are bound to the same symbol (eq statement1 statement2) 9 .

Bricscad V10 .Developer Reference (equal) Determine whether two statements are the same (equal statement1 statement2 [tolerance]) (*error*) Display an error message (*error* string) (eval) Evaluate LISP expression (eval statement) (exit) Terminate (exit) (exp) Calculate the natural exponent (exp number) (expand) Allocates additional memory for LISP (expand integer) (expt) Raise number to the specified power (expt base power) (fill_image) Fill a dialog box's rectangle with color (fill_image x y width height color) (findfile) Search for the specified file or directory (findfile filename) (fix) Convert a real number to the nearest integer (fix number) (float) Convert an integer to a real (float number) 10 .

LISP (LISt Processing) (foreach) Evaluate the expression to every item in the list (foreach variable list expression ) (gc) Perform garbage collection (gc) (gcd) Calculate the greatest common denominator (gcd integer1 integer2) (get_attr) Determine the attribute of a dialog box's key (get_attr key attribute) (get_tile) Determine the value of a dialog box's tile (get_tile key) (getangle) Prompt the user to specify an angle (getangle [point] [prompt]) (getcfg) Determine the value of the parameter (getcfg parameter) (getcname) Determine the localized command name (getcname [ _ ]command-name) (getcorner) Prompt the user to specify the second corner of a rectangle (getcorner point [prompt]) (getdist) Prompt the user to specify two points (getdist [point] [prompt]) (getenv) Determine the value of the operating system variable (getenv variable) 11 .

Bricscad V10 .Developer Reference (getfiled) Display the Open File dialog (getfiled title filename ext flags) (getint) Prompt the user to enter an integer (getint [prompt]) (getkword) Prompt the user to select a keyword (getkword [prompt]) (getorient) Prompt the user to specify an angle (getorient [pt] [prompt]) (getpoint) Prompt the user to select a point (getpoint [point] [prompt]) (getreal) Prompt the user to select a real number (getreal [prompt]) (getstring) Prompt the user to enter a string (getstring [flag] [prompt]) (getvar) Return the value of a system variable (getvar sysvar) (graphscr) Switch to the graphics window (graphscr) (grclear) Clear the viewport (grclear) (grdraw) Draw a line (grdraw point1 point2 color [highlight]) 12 .

LISP (LISt Processing) (grread) Read the data coming in from the input devices (grread [flag] [bits [cursor]]) (grtext) Write text on the status line (grtext [flag text]) (grvecs) Draw one or more lines (grvecs vector-lists [trans]) (handent) Return the entity name based on its handle (handent handle) (help) Launch help (help [filename [topic [flag]]]) (if) Conditionally evaluates expressions (if test statement1 [statement2]) (initdia) Force the dialog box version of a command (initdia [flag]) (initget) Initialize the keywords for next user-input (initget [bits] [string]) (inters) Find the intersection (inters point1 point2 point3 point4 [flag]) (itoa) Convert integer to string (itoa integer) (lambda) Define an unnamed LISP function (lambda arguments expression ) 13 .

Bricscad V10 .Developer Reference (last) Return the last item in the list (last list) (length) Return the number of elements contained in a list (length list) (list) Create a list (list expression �) (listp) Confirm that an item is a list (listp item) (load) Load that LISP file (load filename [flag]) (load_dialog) Load a DCL file (load_dialog filename) (log) Calculate the natural logarithm (log number) (log10) Calculate the common logarithm (log10 number) (logand) Determine what is the logical AND (logand integer1 integer2 �) (logior) Determine what is the logical OR (logior integer1 integer2 �) (lsh) Do a bitwise shift (lsh integer1 integer2) 14 .

LISP (LISt Processing) (mapcar) Apply the function to the list (mapcar function list1 [list2 ]) (max) Return the largest number (max number1 number2 �) (mem) Display the status of the LISP memory (mem) (member) Identify the first occurrence of an item in the list (member item list) (menucmd) Execute that menu command (menucmd string) (menugroup) Determine whether a menu group is loaded (menugroup name) (min) Return the smallest number (min number1 number2 �) (minusp) Determine whether a value is a negative number (minusp number) (mode_tile) Set the mode of the dialog box tile (mode_tile key mode) (namedobjdict) Return the current drawing's named object dictionary (Root) (namedobjdict) (nentsel) Prompt the user to select an entity within a complex entity (nentsel [prompt]) 15 .

Developer Reference (nentselp) Same functionality as nentsel but without user input (nentselp [prompt] [point]) (new_dialog) Display a dialog box (new_dialog dialog dcl-id [function point]) (not) Determine whether an item is nil (not item) (nth) Determine the nth item in the list (nth integer list) (null) Determine whether the item is bound to nil (null item) (numberp) Determine whether an item is a number (numberp item) (open) Open file for access by LISP IO functions (open filename mode) (or) Calculate the logical OR (or statement ) (osnap) Return 3D point as result of applying the specified entity snap (osnap point mode) (polar) Return 3D point defined by angle and distance of specified point (polar point angle distance) (prin1) Print string (prin1 [expression [file-descriptor]]) 16 .Bricscad V10 .

LISP (LISt Processing) (princ) Print string taking into account control characters (princ [expression [file-descriptor]]) (print) Print string using formatted printing (print [expression [file-descriptor]]) (progn) Evaluates each expression sequentially and returns the value of the last expression (progn statement1 statement2 ) (prompt) Print message on the command line (prompt string) (quit) Quit the current LISP routine (quit) (quote) Returns an expression without evaluating it (quote statement) (read) Determine the first item in a string (read string) (read-char) Read a single character (read-char [file-descriptor]) (read-line) Read a whole line (read-line [file-descriptor]) (redraw) Redraw the viewport or just a single entity (redraw [ename [mode]]) (regapp) Register the application (regapp appname) 17 .

Bricscad V10 .Developer Reference (rem) Determine the remainder of this division operation (rem number1 number2 [number3 ]) (repeat) Evaluate each expression a specified number of times (repeat number statement1 [statement2 ]) (reverse) Returns a copy of a list with its elements reversed (reverse list) (rtos) Convert real to string (rtos number [mode [precision]]) (set) Assign the statement to the symbol (set �symbol statement) (set_tile) Set the value of the dialog box tile (set_tile key value) (setcfg) Set the parameter to the value (setcfg parameter value) (setenv) Set the operating system variable to that value (setenv variable value) (setfunhelp) Register the command with that Help file (setfunhelp "c:filename" [helpfile [topic [command-name]]]]) (setq) Set the symbol to the statement (setq symbol1 statement1 [symbol2 statement2] ) (setvar) Set the system variable to that value (setvar sysvar value) 18 .

LISP (LISt Processing) (setview) Create a 3-D viewpoint (setview view-descriptor [vport]) (sin) Calculate the sine (sin angle) (slide_image) Display a slide in the dialog box (slide_image x y width height slide) (snvalid) Determine whether the symbol is made-up of valid characters (snvalid symbol [flag]) (sqrt) Calculate the square root (sqrt number) (ssadd) Add entity to the selection set (ssadd [entity-name [selection-set]]) (ssdel) Delete entity from the selection set (ssdel entity-name selection-set) (ssget) Create a selection set (ssget [mode] [point1 [point2]] [point-list] [filter-list]) (ssgetfirst) Determine which entities are highlighted and/or gripped (ssgetfirst) (sslength) Determine how many entities are in the selection set (sslength selection-set) (ssmemb) Determine whether an entity is in the selection set (ssmemb entity-name selection-set) 19 .

Developer Reference (ssname) Identify the nth entity in the selection set (ssname selection-set index) (ssnamex) Retrieves information about how a selection set was created (ssnamex selection-set index) (sssetfirst) Determines which objects are selected and gripped (sssetfirst grip-set [pick-set]) (startapp) Launch Windows application (startapp appname [filename]) (start_dialog) Start that dialog box (start_dialog) (start_image) Start creating a dialog box image (start_image key) (start_list) Start processing a list box (start_list key [operation [index]]) (strcase) Convert string to all upper.or all lower-case (strcase string [flag]) (strcat) Concatenate strings (strcat string1 [string2] �) (strlen) Return the number of characters in a string (strlen [string1] [string2] �) (subst) Returns a copy of a list with its elements substituted (subst new old list) 20 .Bricscad V10 .

LISP (LISt Processing) (substr) Return a substring of a string (substr string start [length]) (tablet) Retrieves and sets digitizer (tablet) calibrations (tablet code [row1 row2 row3 direction]) (tan) Determine the tangent of an angle (tan angle) (tblnext) Find the next item in a symbol table (tblnext table-name [flag]) (tblobjname) Return the entity name of a specified symbol table entry (tblobjname table-name symbol) (tblsearch) Search the table for a symbol (tblsearch table-name symbol [flag]) (term_dialog) Terminate all dialog boxes (term_dialog) (terpri) Print a carriage return (terpri) (textbox) Return the bounding box of a text entity (textbox entity-list) (textpage) Switches focus from the drawing area to the text screen (textpage) (textscr) Switches focus from the drawing area to the text screen (textscr) 21 .

Bricscad V10 .Developer Reference (trace) Turn on debug mode (trace function ) (trans) Translate that point from one coordinate system to another (trans point from to [flag]) (trim) Remove leading and trailing blanks (trim string [flag]) (type) Returns the type of a specified item (type item) (unload_dialog) Unload that dialog box (unload_dialog dcl_id) (untrace) Turn off debug mode (untrace function ) (vector_image) Draw a vector in the dialog box (vector_image x1 y1 x2 y2 color) (ver) Determine the version number of this LISP (ver) (vmon) Turn on virtual memory (vmon) (vports) Get information about this viewport (vports) (wcmatch) Performs a wild-card pattern match on a string (wcmatch string pattern) 22 .

LISP (LISt Processing) (while) Evaluate other expressions while test expression is true (while test statement �) (write-char) Write that character to a file (write-char character [file-descriptor]) (write-line) Write that string to a file (write-line string [file-descriptor]) (xdroom) Determine how much xdata space is still available for an entity (xdroom entity-name) (xdsize) Determine how much space a list takes up as xdata (xdsize list) (zerop) Determine whether this number is zero (zerop number) 23 .

this id string provides a licensing/hardlocking feature for Lisp applications (acos x) Returns the arc cosine of x.also are available in Bricscad. hard disk serial number. (floor x) Returns the greatest integer less than or equal to x. otherwise it returns nil. Additional functions not available in AutoLISP® : (get_diskserialid) returns a 9-digit unique id string. the 9-digit unique id string is based on the serial number of the 1. (ceiling x) Returns the smallest integer that is not smaller than x. (cosh x) Returns the hyperbolic cosine of x. based on the 1. partition. 24 . (asin x) Returns the arc sine of x. (atanh x) Returns the hyperbolic arc tangent of x. (find item list) Returns item if item is found in list. (getpid) Returns the process ID of the current process.Developer Reference Additional LISP functions Following functions -which are not part of standard AutoLISP®. if the hard disk serial number can not be obtained in very rare caes. (sinh x) Returns the hyperbolic sine of x.Bricscad V10 . (log10 x) Returns the base-10 logarithm of x.

(until test-expression [expression . (vla-collection->list <collection-object>) this returns a collection as a normal LISP list 25 . (round x) Returns the integer nearest to x...LISP (LISt Processing) (position item list) Returns the index ot item in list or nil (first index is 0) (remove item list) Returns the input list. with item removed from the list.) given milliseconds (string-split string-of-delimiters string) Returns a list of strings divided by any character in string-of-delimiters. ]) Repeats the expression(s) until test-expression evaluates as T (true).x must be in radians.ccc." "aaa bbb. (search list1 list2) Searches for list1 in list2 and returns the index where found or nil (first index is 0) (sleep millisecs) Delays execution for (approx. Example : (string-split " .ddd") => ("aaa" "bbb" "ccc" "ddd") (tan x) Returns the tangent of x .. (tanh x) Returns the hyperbolc tangent of x.

Bricscad V10 .Developer Reference ExpressTools Utility Functions : (acet-sys-control-down) (acet-sys-shift-down) (acet-sys-lmouse-down) (acet-sys-mmouse-down) (acet-sys-rmouse-down) (acet-ui-progress-init title maxstep) (acet-ui-progress-safe pos) (acet-ui-progress-done) (acet-autoload <filelist>) (acet-autoload2 <filelist>) (acet-autoloadarx <filelist>) 26 .

LISP (LISt Processing) VL functions implemented as Dummy (No-Operation) : vl-load-com vl-load-reactors vl-list-loaded-vlx vl-unload-vlx vl-vlx-loaded-p 27 .

. vlr-command-reactor vlr-editor-reactor vlr-mouse-reactor vlr-lisp-reactor vlr-dwg-reactor vlr-dxf-reactor vlr-miscellaneous-reactor vlr-deepclone-reactor vlr-sysvar-reactor vlr-window-reactor vlr-toolbar-reactor vlr-insert-reactor vlr-wblock-reactor vlr-undo-reactor vlr-docmanager-reactor vlr-linker-reactor vlr-xref-reactor vlr-object-reactor vlr-acdb-reactor vlr-pers vlr-pers-list vlr-pers-p vlr-pers-release vlr-add 28 ..Bricscad V10 .Developer Reference VLR VisualLisp functions (Reactors) : vlr-.

LISP (LISt Processing) vlr-added-p vlr-beep-reaction vlr-current-reaction-name vlr-data vlr-data-set vlr-notification vlr-owners vlr-owner-add vlr-owner-remove vlr-reactions vlr-reactors vlr-reaction-set vlr-reaction-names vlr-remove vlr-remove-all vlr-set-notification vlr-trace-reaction vlr-type vlr-types 29 .

vla-get-isquiescent vla-get-version vla-get-caption vla-get-localeid vla-get-hwnd vla-get-windowstate vla-get-windowleft vla-get-windowtop vla-get-active vla-get-activedocument vla-get-activespace vla-get-activelayout vla-get-activelayer vla-get-activelinetype vla-get-activetextstyle vla-get-activedimstyle vla-get-activeucs vla-get-activeviewport vla-get-activepviewport vla-get-activeselectionset vla-get-activeprofile vla-get-activematerial vla-get-statusid vla-get-saved 30 .Bricscad V10 ..Developer Reference VLA VisualLisp functions : vla-..

LISP (LISt Processing) vla-get-readonly vla-get-name vla-get-categoryname vla-get-layoutid vla-get-layerstate vla-get-hasvpassociation vla-get-fullname vla-get-description vla-get-WindowTitle vla-get-path vla-get-handle vla-get-objectname vla-get-ownerid vla-get-objectid vla-get-parent vla-objectidtoobject vla-handletoobject vla-get-database vla-get-xrefdatabase vla-get-application vla-get-document vla-get-hasextensiondictionary vla-get-modelspace vla-get-paperspace vla-get-mspace 31 .

Developer Reference vla-get-activespace vla-get-layout vla-get-utility vla-get-documents vla-get-layers vla-get-blocks vla-get-textstyles vla-get-linetypes vla-get-views vla-get-usercoordinatesystems vla-get-viewports vla-get-dimstyles vla-get-registeredapplications vla-get-dictionaries vla-get-layouts vla-get-groups vla-get-plotconfigurations vla-get-plot vla-get-filedependencies vla-get-summaryinfo vla-get-sectionmanager vla-get-materials vla-get-vbe vla-get-preferences vla-get-profiles 32 .Bricscad V10 .

LISP (LISt Processing) vla-get-selectionsets vla-get-pickfirstselectionset vla-get-files vla-get-display vla-get-OpenSave vla-get-Output vla-get-System vla-get-User vla-get-Drafting vla-get-Selection vla-get-Profiles vla-get-menubar vla-get-menugroups vla-get-toolbars vla-get-menus vla-get-menufile vla-get-menufilename vla-get-largebuttons vla-get-dockstatus vla-get-left vla-get-top vla-get-floatingrows vla-get-count vla-get-closed vla-get-color 33 .

Developer Reference vla-get-freeze vla-get-layeron vla-get-lock vla-get-used vla-get-viewportdefault vla-get-truecolor vla-get-layer vla-get-linetype vla-get-lineweight vla-get-linetypescale vla-get-linetypegeneration vla-get-visible vla-get-plotstylename vla-get-position vla-get-center vla-get-radius vla-get-diameter vla-get-circumference vla-get-totalangle vla-get-arclength vla-get-area vla-get-material vla-get-thickness vla-get-length vla-get-delta 34 .Bricscad V10 .

LISP (LISt Processing) vla-get-hyperlinks vla-get-limits vla-get-plottable vla-get-origin vla-get-height vla-get-lastheight vla-get-width vla-get-insertionpoint vla-get-rotation vla-get-scalefactor vla-get-obliqueangle vla-get-stylename vla-get-textstring vla-get-alignment vla-get-attachmentpoint vla-get-drawingdirection vla-get-linespacingfactor vla-get-linespacingstyle vla-get-linespacingdistance vla-get-backgroundfill vla-get-textgenerationflag vla-get-upsidedown vla-get-backward vla-get-promptstring vla-get-tagstring 35 .

Developer Reference vla-get-fieldlength vla-get-mode vla-get-invisible vla-get-constant vla-get-verify vla-get-preset vla-get-lockposition vla-get-type vla-get-annotation vla-get-coordinates vla-get-startpoint vla-get-endpoint vla-get-startangle vla-get-endangle vla-get-majorradius vla-get-minorradius vla-get-radiusratio vla-get-startparameter vla-get-endparameter vla-get-angle vla-get-coordinate vla-get-textcolor vla-get-textposition vla-get-textrotation vla-get-textalignmentpoint 36 .Bricscad V10 .

LISP (LISt Processing) vla-get-textgap vla-get-textfont vla-get-bigfontfile vla-get-fontfile vla-get-textfontsize vla-get-textfontstyle vla-get-textprefix vla-get-textsuffix vla-get-decimalseparator vla-get-visibilityedge1 vla-get-visibilityedge2 vla-get-visibilityedge3 vla-get-visibilityedge4 vla-get-numberofvertices vla-get-numberoffaces vla-get-mclose vla-get-nclose vla-get-mdensity vla-get-ndensity vla-get-mvertexcount vla-get-nvertexcount vla-get-justification vla-get-mlinescale vla-get-hasattributes vla-get-effectivename 37 .

Developer Reference vla-get-isdynamicblock vla-get-propertyname vla-get-show vla-get-allowedvalues vla-get-value vla-get-unitstype vla-get-iscloned vla-get-isownerxlated vla-get-isprimary vla-get-key vla-get-scalewidth vla-get-scaleheight vla-get-lockaspectratio vla-get-oleitemtype vla-get-oleplotquality vla-get-olesourceapp vla-get-comments vla-get-units vla-get-explodable vla-get-blockscaling vla-get-columns vla-get-columnspacing vla-get-rows vla-get-rowspacing vla-get-translateids 38 .Bricscad V10 .

LISP (LISt Processing) vla-get-mask vla-get-shadowdisplay vla-get-brightness vla-get-contrast vla-get-fade vla-get-transparency vla-get-imagewidth vla-get-imageheight vla-get-imagefile vla-get-imagevisibility vla-get-clippingenabled vla-get-showrotation vla-get-measurement vla-get-tolerancejustification vla-get-tolerancedisplay vla-get-textmovement vla-get-textoverride vla-get-textstyle vla-get-textheight vla-get-horizontaltextposition vla-get-verticaltextposition vla-get-suppresszerofeet vla-get-suppresszeroinches vla-get-arrowheadsize vla-get-arrowheadtype 39 .

Developer Reference vla-get-arrowheadblock vla-get-arrowhead1type vla-get-arrowhead1block vla-get-arrowhead2type vla-get-arrowhead2block vla-get-arcpoint vla-get-centerpoint vla-get-leader1point vla-get-leader2point vla-get-ispartial vla-get-arcstartparam vla-get-arcendparam vla-get-hasleader vla-get-symbolposition vla-get-textprecision vla-get-dimlineinside vla-get-forcelineinside vla-get-textinside vla-get-textinsidealign vla-get-textoutsidealign vla-get-dimensionlinecolor vla-get-dimensionlineweight vla-get-dimensionlinetype vla-get-dimensionlineextend vla-get-extensionlinecolor 40 .Bricscad V10 .

LISP (LISt Processing) vla-get-extensionlineweight vla-get-extensionlineextend vla-get-extensionlineoffset vla-get-dimlinesuppress vla-get-dimline1suppress vla-get-dimline2suppress vla-get-extline1suppress vla-get-extline2suppress vla-get-fit vla-get-unitsformat vla-get-linearscalefactor vla-get-rounddistance vla-get-extline1point vla-get-extline2point vla-get-extline1startpoint vla-get-extline2startpoint vla-get-extline1endpoint vla-get-extline2endpoint vla-get-extline1linetype vla-get-extline2linetype vla-get-extlinefixedlensuppress vla-get-extlinefixedlen vla-get-textfill vla-get-textfillcolor vla-get-angleformat 41 .

Bricscad V10 .Developer Reference vla-get-anglevertex vla-get-tolerancesuppresszerofeet vla-get-tolerancesuppresszeroinches vla-get-toleranceprecision vla-get-toleranceheightscale vla-get-tolerancelowerlimit vla-get-toleranceupperlimit vla-get-centertype vla-get-centermarksize vla-get-suppressleadingzeros vla-get-suppresstrailingzeros vla-get-tolerancesuppressleadingzeros vla-get-tolerancesuppresstrailingzeros vla-get-primaryunitsprecision vla-get-fractionformat vla-get-altunits vla-get-altunitsprecision vla-get-altunitsscale vla-get-altunitsformat vla-get-altrounddistance vla-get-alttextprefix vla-get-alttextsuffix vla-get-alttoleranceprecision vla-get-altsuppressleadingzeros vla-get-altsuppresstrailingzeros 42 .

LISP (LISt Processing) vla-get-altsuppresszerofeet vla-get-altsuppresszeroinches vla-get-alttolerancesuppressleadingzeros vla-get-alttolerancesuppresstrailingzeros vla-get-alttolerancesuppresszerofeet vla-get-alttolerancesuppresszeroinches vla-get-overridecenter vla-get-joglocation vla-get-jogangle vla-get-chordpoint vla-get-lowerleftcorner vla-get-upperrightcorner vla-get-orthoon vla-get-gridon vla-get-viewporton vla-get-displaylocked vla-get-standardscale vla-get-customscale vla-get-xscalefactor vla-get-yscalefactor vla-get-zscalefactor vla-get-xeffectivescalefactor vla-get-yeffectivescalefactor vla-get-zeffectivescalefactor vla-get-insunits 43 .

Developer Reference vla-get-insunitsfactor vla-get-direction vla-get-xvector vla-get-yvector vla-get-directionvector vla-get-volume vla-get-momentofinertia vla-get-principaldirections vla-get-principalmoments vla-get-productofinertia vla-get-radiiofgyration vla-get-perimeter vla-get-solidtype vla-get-url vla-get-urldescription vla-get-basepoint vla-get-secondpoint vla-get-normal vla-get-elevation vla-get-elevationmodelspace vla-get-elevationpaperspace vla-get-objectsnapmode vla-get-snapbasepoint vla-get-snaprotationangle vla-get-snapon 44 .Bricscad V10 .

LISP (LISt Processing) vla-get-ucsiconon vla-get-ucsiconatorigin vla-get-twistangle vla-get-lenslength vla-get-target vla-get-arcsmoothness vla-get-shadeplot vla-get-clipped vla-get-ucsperviewport vla-get-modelview vla-get-sheetview vla-get-labelblockid vla-get-hassheetview vla-get-label vla-get-enable vla-get-check vla-get-macro vla-get-flyout vla-get-submenu vla-get-index vla-get-helpstring vla-get-endsubmenulevel vla-get-namenomnemonic vla-get-shortcutmenu vla-get-onmenubar 45 .

Developer Reference vla-get-constantwidth vla-get-centroid vla-get-modeltype vla-get-block vla-get-taborder vla-get-canonicalmedianame vla-get-configname vla-get-paperunits vla-get-plotviewportborders vla-get-plottype vla-get-viewtoplot vla-get-plothidden vla-get-centerplot vla-get-plotrotation vla-get-showplotstyles vla-get-scalelineweights vla-get-plotwithlineweights vla-get-plotviewportsfirst vla-get-stylesheet vla-get-plotorigin vla-get-plotwithplotstyles vla-get-isplanar vla-get-isperiodic vla-get-isrational vla-get-degree 46 .Bricscad V10 .

LISP (LISt Processing) vla-get-numberofcontrolpoints vla-get-numberoffitpoints vla-get-controlpoints vla-get-fitpoints vla-get-knots vla-get-weights vla-get-starttangent vla-get-endtangent vla-get-fittolerance vla-get-numberofloops vla-get-patterntype vla-get-patternname vla-get-patternangle vla-get-patternscale vla-get-patternspace vla-get-isopenwidth vla-get-patterndouble vla-get-associativehatch vla-get-hatchstyle vla-get-hatchobjecttype vla-get-gradientcolor1 vla-get-gradientcolor2 vla-get-gradientangle vla-get-gradientcentered vla-get-gradientname 47 .

Bricscad V10 .Developer Reference vla-get-entitycolor vla-get-colorname vla-get-bookname vla-get-red vla-get-blue vla-get-green vla-get-colormethod vla-get-colorindex vla-get-author vla-get-hyperlinkbase vla-get-keywords vla-get-lastsavedby vla-get-revisionnumber vla-get-subject vla-get-title vla-get-action vla-get-password vla-get-providertype vla-get-providername vla-get-algorithm vla-get-keylength vla-get-issuer vla-get-serialnumber vla-get-comment" vla-get-timeserver 48 .

LISP (LISt Processing) vla-get-bitflags vla-get-flowdirection vla-get-horzcellmargin vla-get-vertcellmargin vla-get-titlesuppressed vla-get-headersuppressed vla-get-minimumtablewidth vla-get-minimumtableheight vla-get-tablestyleoverrides vla-get-hassubselection vla-get-regeneratetablesuppressed vla-get-plotlegacy vla-get-quieterrormode vla-get-numberofcopies vla-get-batchplotprogress vla-get-supportpath vla-get-driverspath vla-get-helpfilepath vla-get-defaultinterneturl vla-get-configfile vla-get-texteditor vla-get-maindictionary vla-get-customdictionary vla-get-altfontfile vla-get-fontfilemap 49 .

Developer Reference vla-get-printfile vla-get-printspoolexecutable vla-get-postscriptprologfile vla-get-printspoolerpath vla-get-autosavepath vla-get-templatedwgpath vla-get-logfilepath vla-get-tempfilepath vla-get-tempxrefpath vla-get-texturemappath vla-get-alttabletmenufile vla-get-printerconfigpath vla-get-printerdescpath vla-get-printerstylesheetpath vla-get-workspacepath vla-get-colorbookpath vla-get-toolpalettepath vla-get-qnewtemplatefile vla-get-plotlogfilepath vla-get-pagesetupoverridestemplatefile vla-get-projectfilepath vla-get-enterprisemenufile vla-get-customiconpath vla-get-layoutdisplaymargins vla-get-layoutdisplaypaper 50 .Bricscad V10 .

LISP (LISt Processing) vla-get-layoutdisplaypapershadow vla-get-layoutshowplotsetup vla-get-layoutcreateviewpor vla-get-displayscrollbars vla-get-displayscreenmenu vla-get-cursorsize vla-get-dockedvisiblelines vla-get-showrasterimage vla-get-graphicswinlayoutbackgrndcolor vla-get-graphicswinmodelbackgrndcolor vla-get-textwinbackgrndcolor vla-get-textwintextcolor vla-get-autotrackingveccolor vla-get-layoutcrosshaircolor vla-get-modelcrosshaircolor vla-get-historylines vla-get-maxautocadwindow vla-get-displaylayouttabs vla-get-imageframehighlight vla-get-truecolorimages vla-get-xreffadeintensity vla-get-savepreviewthumbnail vla-get-incrementalsavepercent vla-get-autosaveinterval vla-get-createbackup 51 .

Bricscad V10 .Developer Reference vla-get-fullcrcvalidation vla-get-logfileon vla-get-tempfileextension vla-get-xrefdemandload vla-get-demandloadarxapp vla-get-proxyimage vla-get-showproxydialogbox vla-get-autoaudit vla-get-saveastype vla-get-mrunumber vla-get-defaultoutputdevice vla-get-printerspoolalert vla-get-printerpapersizealert vla-get-olequality vla-get-uselastplotsettings vla-get-plotpolicy vla-get-defaultplotstyletable vla-get-defaultplotstyleforobjects vla-get-defaultplotstyleforlayer vla-get-continuousplotlog vla-get-automaticplotlog vla-get-defaultplottofilepath vla-get-singledocumentmode vla-get-displayolescale vla-get-storesqlindex 52 .

LISP (LISt Processing) vla-get-tablesreadonly vla-get-enablestartupdialog vla-get-beeponerror vla-get-showwarningmessages vla-get-loadacadlspinalldocuments vla-get-keyboardaccelerator vla-get-keyboardpriority vla-get-hyperlinkdisplaycursor vla-get-hyperlinkdisplaytooltip vla-get-adcinsertunitsdefaultsource vla-get-adcinsertunitsdefaulttarget vla-get-shortcutmenudisplay vla-get-scmdefaultmode vla-get-scmeditmode vla-get-scmcommandmode vla-get-scmtimemode vla-get-scmtimevalue vla-get-autosnapmarker vla-get-autosnapmagnet vla-get-autosnapaperture vla-get-autosnapaperturesize vla-get-autosnaptooltip vla-get-autosnapmarkercolor vla-get-autosnapmarkersize vla-get-polartrackingvector 53 .

Developer Reference vla-get-fullscreentrackingvector vla-get-autotracktooltip vla-get-alignmentpointacquisition vla-get-pickfirst vla-get-pickadd vla-get-pickdrag vla-get-pickauto vla-get-pickboxsize vla-get-displaygrips vla-get-displaygripswithinblocks vla-get-gripcolorselected vla-get-gripcolorunselected vla-get-gripsize vla-get-pickgroup vla-get-solidfill vla-get-xrefedit vla-get-xreflayervisibility vla-get-olelaunch vla-get-allowlongsymbolnames vla-get-objectsortbyselection vla-get-objectsortbysnap vla-get-objectsortbyredraws vla-get-objectsortbyregens vla-get-objectsortbyplotting vla-get-objectsortbypsoutput 54 .Bricscad V10 .

LISP (LISt Processing) vla-get-contourlinespersurface vla-get-displaysilhouette vla-get-maxactiveviewports vla-get-rendersmoothness vla-get-segmentperpolyline vla-get-textframedisplay vla-get-lineweightdisplay vla-put-windowstate vla-put-windowleft vla-put-windowtop vla-put-activedocument vla-put-activespace vla-put-mspace vla-put-activelayout vla-put-activelayer vla-put-activelinetype vla-put-activetextstyle vla-put-activedimstyle vla-put-activeucs vla-put-activeviewport vla-put-activepviewport vla-put-activeprofile vla-put-activematerial vla-put-closed vla-put-color 55 .

Developer Reference vla-put-freeze vla-put-layeron vla-put-lock vla-put-viewportdefault vla-put-truecolor vla-put-layer vla-put-linetype vla-put-lineweight vla-put-linetypescale vla-put-linetypegeneration vla-put-visible vla-put-plotstylename vla-put-position vla-put-center vla-put-radius vla-put-diameter vla-put-circumference vla-put-area vla-put-material vla-put-thickness vla-put-constantwidth vla-put-taborder vla-put-canonicalmedianame vla-put-configname vla-put-paperunits 56 .Bricscad V10 .

LISP (LISt Processing) vla-put-plotviewportborders vla-put-plottype vla-put-viewtoplot vla-put-plothidden vla-put-centerplot vla-put-plotrotation vla-put-showplotstyles vla-put-scalelineweights vla-put-plotwithlineweights vla-put-plotviewportsfirst vla-put-stylesheet vla-put-plotorigin vla-put-plotwithplotstyles vla-put-supportpath vla-put-driverspath vla-put-helpfilepath vla-put-defaultinterneturl vla-put-texteditor vla-put-maindictionary vla-put-customdictionary vla-put-altfontfile vla-put-fontfilemap vla-put-printfile vla-put-printspoolexecutable vla-put-postscriptprologfile 57 .

Developer Reference vla-put-printspoolerpath vla-put-autosavepath vla-put-templatedwgpath vla-put-logfilepath vla-put-tempfilepath vla-put-tempxrefpath vla-put-texturemappath vla-put-alttabletmenufile vla-put-printerconfigpath vla-put-printerdescpath vla-put-printerstylesheetpath vla-put-workspacepath vla-put-colorbookpath vla-put-toolpalettepath vla-put-qnewtemplatefile vla-put-plotlogfilepath vla-put-pagesetupoverridestemplatefile vla-put-enterprisemenufile vla-put-customiconpath vla-setprojectfilepath vla-put-layoutdisplaymargins vla-put-layoutdisplaypaper vla-put-layoutdisplaypapershadow vla-put-layoutshowplotsetup vla-put-layoutcreateviewport 58 .Bricscad V10 .

LISP (LISt Processing) vla-put-displayscrollbars vla-put-displayscreenmenu vla-put-cursorsize vla-put-dockedvisiblelines vla-put-showrasterimage vla-put-graphicswinlayoutbackgrndcolor vla-put-graphicswinmodelbackgrndcolor vla-put-textwinbackgrndcolor vla-put-textwintextcolor vla-put-autotrackingveccolor vla-put-layoutcrosshaircolor vla-put-modelcrosshaircolor vla-put-historylines vla-put-maxautocadwindow vla-put-displaylayouttabs vla-put-imageframehighlight vla-put-truecolorimages vla-put-xreffadeintensity vla-put-savepreviewthumbnail vla-put-incrementalsavepercent vla-put-autosaveinterval vla-put-createbackup vla-put-fullcrcvalidation vla-put-logfileon vla-put-tempfileextension 59 .

Bricscad V10 .Developer Reference vla-put-xrefdemandload vla-put-demandloadarxapp vla-put-proxyimage vla-put-showproxydialogbox vla-put-autoaudit vla-put-saveastype vla-put-mrunumber vla-put-defaultoutputdevice vla-put-printerspoolalert vla-put-printerpapersizealert vla-put-olequality vla-put-uselastplotsettings vla-put-plotpolicy vla-put-defaultplotstyletable vla-put-defaultplotstyleforobjects vla-put-defaultplotstyleforlayer vla-put-continuousplotlog vla-put-automaticplotlog vla-put-defaultplottofilepath vla-put-singledocumentmode vla-put-displayolescale vla-put-storesqlindex vla-put-tablesreadonly vla-put-enablestartupdialog vla-put-beeponerror 60 .

LISP (LISt Processing) vla-put-showwarningmessages vla-put-loadacadlspinalldocuments vla-put-keyboardaccelerator vla-put-keyboardpriority vla-put-hyperlinkdisplaycursor vla-put-hyperlinkdisplaytooltip vla-put-adcinsertunitsdefaultsource vla-put-adcinsertunitsdefaulttarget vla-put-shortcutmenudisplay vla-put-scmdefaultmode vla-put-scmeditmode vla-put-scmcommandmode vla-put-scmtimemode vla-put-scmtimevalue vla-put-autosnapmarker vla-put-autosnapmagnet vla-put-autosnapaperture vla-put-autosnapaperturesize vla-put-autosnaptooltip vla-put-autosnapmarkercolor vla-put-autosnapmarkersize vla-put-polartrackingvector vla-put-fullscreentrackingvector vla-put-autotracktooltip vla-put-alignmentpointacquisition 61 .

Bricscad V10 .Developer Reference vla-put-pickfirst vla-put-pickadd vla-put-pickdrag vla-put-pickauto vla-put-pickboxsize vla-put-displaygrips vla-put-displaygripswithinblocks vla-put-gripcolorselected vla-put-gripcolorunselected vla-put-gripsize vla-put-pickgroup vla-put-solidfill vla-put-xrefedit vla-put-xreflayervisibility vla-put-olelaunch vla-put-allowlongsymbolnames vla-put-objectsortbyselection vla-put-objectsortbysnap vla-put-objectsortbyredraws vla-put-objectsortbyregens vla-put-objectsortbyplotting vla-put-objectsortbypsoutput vla-put-contourlinespersurface vla-put-displaysilhouette vla-put-maxactiveviewports 62 .

LISP (LISt Processing) vla-put-rendersmoothness vla-put-segmentperpolyline vla-put-textframedisplay vla-put-lineweightdisplay vla-put-limits vla-put-plottable vla-put-origin vla-put-height vla-put-lastheight vla-put-width vla-put-insertionpoint vla-put-rotation vla-put-scalefactor vla-put-obliqueangle vla-put-stylename vla-put-textstring vla-put-alignment vla-put-attachmentpoint vla-put-drawingdirection vla-put-linespacingfactor vla-put-linespacingstyle vla-put-linespacingdistance vla-put-backgroundfill vla-put-url vla-put-urldescription 63 .

Developer Reference vla-put-basepoint vla-put-secondpoint vla-put-textgenerationflag vla-put-upsidedown vla-put-backward vla-put-promptstring vla-put-tagstring vla-put-fieldlength vla-put-mode vla-put-invisible vla-put-constant vla-put-verify vla-put-preset vla-put-lockposition vla-put-type vla-put-annotation vla-put-coordinates vla-put-startpoint vla-put-endpoint vla-put-startangle vla-put-endangle vla-put-majorradius vla-put-minorradius vla-put-radiusratio vla-put-startparameter 64 .Bricscad V10 .

LISP (LISt Processing) vla-put-endparameter vla-put-coordinate vla-put-visibilityedge1 vla-put-visibilityedge2 vla-put-visibilityedge3 vla-put-visibilityedge4 vla-put-mclose vla-put-nclose vla-put-mdensity vla-put-ndensity vla-put-justification vla-put-mlinescale vla-put-controlpoints vla-put-fitpoints vla-put-knots vla-put-weights vla-put-starttangent vla-put-endtangent vla-put-fittolerance vla-put-patternangle vla-put-patternscale vla-put-patternspace vla-put-isopenwidth vla-put-patterndouble vla-put-associativehatch 65 .

Developer Reference vla-put-hatchstyle vla-put-hatchobjecttype vla-put-gradientcolor1 vla-put-gradientcolor2 vla-put-gradientangle vla-put-gradientcentered vla-put-gradientname vla-put-entitycolor vla-put-colormethod vla-put-colorindex vla-put-author vla-put-hyperlinkbase vla-put-keywords vla-put-lastsavedby vla-put-revisionnumber vla-put-subject vla-put-title vla-put-action vla-put-password vla-put-providertype vla-put-providername vla-put-algorithm vla-put-keylength vla-put-issuer vla-put-serialnumber 66 .Bricscad V10 .

LISP (LISt Processing) vla-put-comment" vla-put-timeserver vla-put-bitflags vla-put-flowdirection vla-put-horzcellmargin vla-put-vertcellmargin vla-put-titlesuppressed vla-put-headersuppressed vla-put-columnwidth vla-put-rowheight vla-put-regeneratetablesuppressed vla-put-plotlegacy vla-put-quieterrormode vla-put-numberofcopies vla-put-batchplotprogress vla-put-brightness vla-put-contrast vla-put-fade obj vla-put-transparency vla-put-imagewidth vla-put-imageheight vla-put-imagefile vla-put-imagevisibility vla-put-clippingenabled vla-put-showrotation 67 .

Bricscad V10 .Developer Reference vla-put-textcolor vla-put-textposition vla-put-textrotation vla-put-textalignmentpoint vla-put-textgap vla-put-textfont vla-put-bigfontfile vla-put-fontfile vla-put-textfontsize vla-put-textfontstyle vla-put-textprefix vla-put-textsuffix vla-put-tolerancejustification vla-put-tolerancedisplay vla-put-textmovement vla-put-textoverride vla-put-textstyle vla-put-textheight vla-put-horizontaltextposition vla-put-verticaltextposition vla-put-suppresszerofeet vla-put-suppresszeroinches vla-put-arrowheadsize vla-put-arrowheadtype vla-put-arrowheadblock 68 .

LISP (LISt Processing)

vla-put-arrowhead1type vla-put-arrowhead1block vla-put-arrowhead2type vla-put-arrowhead2block vla-put-arcpoint vla-put-centerpoint vla-put-leader1point vla-put-leader2point vla-put-ispartial vla-put-arcstartparam vla-put-arcendparam vla-put-hasleader vla-put-symbolposition vla-put-textprecision vla-put-dimlineinside vla-put-forcelineinside vla-put-textinside vla-put-textinsidealign vla-put-textoutsidealign vla-put-dimensionlinecolor vla-put-dimensionlineweight vla-put-dimensionlinetype vla-put-dimensionlineextend vla-put-extensionlinecolor vla-put-extensionlineweight

69

Bricscad V10 - Developer Reference

vla-put-extensionlineextend vla-put-extensionlineoffset vla-put-dimlinesuppress vla-put-dimline1suppress vla-put-dimline2suppress vla-put-extline1suppress vla-put-extline2suppress vla-put-fit vla-put-unitsformat vla-put-linearscalefactor vla-put-rounddistance vla-put-extline1point vla-put-extline2point vla-put-extline1startpoint vla-put-extline2startpoint vla-put-extline1endpoint vla-put-extline2endpoint vla-put-extline1linetype vla-put-extline2linetype vla-put-extlinefixedlensuppress vla-put-extlinefixedlen vla-put-textfill vla-put-textfillcolor vla-put-angleformat vla-put-anglevertex

70

LISP (LISt Processing)

vla-put-tolerancesuppresszerofeet vla-put-tolerancesuppresszeroinches vla-put-toleranceprecision vla-put-toleranceheightscale vla-put-tolerancelowerlimit vla-put-tolerancelowerlimit vla-put-centertype vla-put-centermarksize vla-put-suppressleadingzeros vla-put-suppresstrailingzeros vla-put-tolerancesuppressleadingzeros vla-put-tolerancesuppresstrailingzeros vla-put-primaryunitsprecision vla-put-fractionformat vla-put-altunits vla-put-altunitsprecision vla-put-altunitsscale vla-put-altunitsformat vla-put-altrounddistance vla-put-alttextprefix vla-put-alttextsuffix vla-put-alttoleranceprecision vla-put-altsuppressleadingzeros vla-put-altsuppresstrailingzeros vla-put-altsuppresszerofeet

71

Bricscad V10 - Developer Reference

vla-put-altsuppresszeroinches vla-put-alttolerancesuppressleadingzeros vla-put-alttolerancesuppresstrailingzeros vla-put-alttolerancesuppresszerofeet vla-put-alttolerancesuppresszeroinches vla-put-leaderlength vla-put-overridecenter vla-put-joglocation vla-put-jogangle vla-put-chordpoint vla-put-decimalseparator vla-put-name vla-put-description vla-put-categoryname vla-put-layoutid vla-put-layerstate vla-put-hasvpassociation vla-put-path vla-put-menufile vla-put-largebuttons vla-put-left vla-put-top vla-put-floatingrows vla-put-orthoon vla-put-gridon

72

LISP (LISt Processing)

vla-put-viewporton vla-put-displaylocked vla-put-standardscale vla-put-customscale vla-put-xscalefactor vla-put-yscalefactor vla-put-zscalefactor vla-put-xeffectivescalefactor vla-put-yeffectivescalefactor vla-put-zeffectivescalefactor vla-put-value vla-put-scalewidth vla-put-scaleheight vla-put-lockaspectratio vla-put-oleitemtype vla-put-oleplotquality vla-put-olesourceapp vla-put-comments vla-put-units vla-put-explodable vla-put-blockscaling vla-put-direction vla-put-xvector vla-put-yvector vla-put-directionvector

73

Bricscad V10 - Developer Reference

vla-put-columns vla-put-columnspacing vla-put-rows vla-put-rowspacing vla-put-translateids vla-put-mask vla-put-shadowdisplay vla-put-normal vla-put-elevation vla-put-elevationmodelspace vla-put-elevationpaperspace vla-put-objectsnapmode vla-put-snapbasepoint vla-put-snaprotationangle vla-put-snapon vla-put-ucsiconon vla-put-ucsiconatorigin vla-put-twistangle vla-put-lenslength vla-put-target vla-put-arcsmoothness vla-put-shadeplot vla-put-ucsperviewport vla-put-modelview vla-put-sheetview

74

LISP (LISt Processing) vla-put-labelblockid vla-put-label vla-put-enable vla-put-check vla-put-macro vla-put-helpstring vla-put-endsubmenulevel vla-item vla-activate vla-update vla-erase vla-highlight vla-delete vla-explode vla-offset vla-copy vla-getattributes vla-getconstantattributes vla-getextensiondictionary vla-scaleentity vla-move vla-rotate vla-rotate3d vla-mirror vla-mirror3d 75 .

Bricscad V10 .Developer Reference vla-intersectwith vla-attachexternalreference vla-reload vla-unload vla-detach vla-bind vla-fieldcode vla-generateusagedata vla-getdynamicblockproperties vla-resetblock vla-converttoanonymousblock vla-converttostaticblock vla-syncmodelview vla-setnames vla-setrgb vla-setcolorbookcolor vla-numcustominfo vla-setcustombyindex vla-setcustombykey vla-addcustominfo vla-removecustombyindex vla-removecustombykey vla-getcustombyindex vla-getcustombykey vla-addobject 76 .

LISP (LISt Processing) vla-addxrecord vla-addpviewport vla-addcustomobject vla-add3dface vla-add3dmesh vla-add3dpoly vla-addarc vla-addattribute vla-addbox vla-addcircle vla-addcone vla-addcylinder vla-addellipse vla-addellipticalcone vla-addellipticalcylinder vla-addextrudedsolid vla-addextrudedsolidalongpath vla-addleader vla-addmleader vla-addmtext vla-addpoint vla-addlightweightpolyline vla-addpolyline vla-addray vla-addregion 77 .

Developer Reference vla-addrevolvedsolid vla-addshape vla-addsolid vla-addsphere vla-addspline vla-addtext vla-addtolerance vla-addtorus vla-addtrace vla-addwedge vla-addxline vla-addhatch vla-addraster vla-addline vla-addminsertblock vla-addpolyfacemesh vla-addmline vla-adddim3pointangular vla-adddimaligned vla-adddimangular vla-adddimdiametric vla-adddimrotated vla-adddimordinate vla-adddimradial vla-add-dimradiallarge 78 .Bricscad V10 .

LISP (LISt Processing) vla-add-dimarc vla-addtable vla-addsection vla-copyfrom vla-insertblock vla-getinvisibleedge vla-setinvisibleedge vla-getwidth vla-setwidth vla-getbulge vla-setbulge vla-getweight vla-setweight vla-getcontrolpoint vla-setcontrolpoint vla-getfitpoint vla-setfitpoint vla-addfitpoint vla-deletefitpoint vla-purgefitdata vla-setpattern vla-evaluate vla-appendinnerloop vla-appendouterloop vla-insertloopat 79 .

Bricscad V10 .Developer Reference vla-getloopat vla-appendvertex vla-addvertex vla-elevateorder vla-movetobottom vla-movetotop vla-movebelow vla-moveabove vla-swaporder vla-block vla-getfulldraworder vla-getrelativedraworder vla-setrelativedraworder vla-getcolumnwidth vla-setcolumnwidth vla-getrowheight vla-setrowheight vla-getcontentcolor vla-setcontentcolor vla-cleartablestyleoverrides vla-getcelltype vla-setcelltype vla-getcellextents vla-getattachementpoint vla-getcellalignment 80 .

LISP (LISt Processing) vla-setcellalignment vla-getcellbackgroundcolornone vla-setcellbackgroundcolornone vla-getcellbackgroundcolor vla-setcellbackgroundcolor vla-getcellcontentcolor vla-setcellcontentcolor vla-getcellstyleoverrides vla-deletecellcontent vla-getrowtext vla-gettext vla-settext vla-getcelltextstyle vla-setcelltextstyle vla-getcelltextheight vla-setcelltextheight vla-gettextrotation vla-settextrotation vla-getautoscale vla-setautoscale vla-getblocktablerecordid vla-setblocktablerecordid vla-getblockscale vla-setblockscale vla-getblockrotation 81 .

Developer Reference vla-setblockrotation vla-getblockattributevalue vla-setblockattributevalue vla-getcellgridlineweight vla-setcellgridlineweight vla-getcellgridlcolor vla-setcellgridlcolor vla-getcellgridvisibility vla-setcellgridvisibility vla-insertcolumns vla-insertrows vla-deletecolumns vla-deleterows vla-mergecells vla-unmergecells vla-ismergedcell vla-getfieldid vla-setfieldid vla-generatelayout vla-recomputetableblock vla-hittest vla-selectsubregion vla-reselectsubregion vla-getsubselection vla-setsubselection 82 .Bricscad V10 .

LISP (LISt Processing) vla-clearsubselection vla-boolean vla-checkinterference vla-sectionsolid vla-slicesolid vla-arraypolar vla-arrayrectangular vla-transformby vla-getxdata vla-setxdata vla-getxrecorddata vla-setxrecorddata vla-setdatabase vla-deleteprofile vla-resetprofile vla-importprofile vla-exportprofile vla-renameprofile vla-getallprofilenames vla-getboundingbox vla-getgridspacing vla-setgridspacing vla-getsnapspacing vla-setsnapspacing vla-getucsmatrix 83 .

Bricscad V10 .Developer Reference vla-split vla-setview vla-deleteconfiguration vla-display vla-clipboundary vla-getvariable vla-setvariable vla-getacadstate vla-sendcommand vla-regen vla-auditinfo vla-purgeall vla-startundomark vla-endundomark vla-loadshapefile vla-wblock vla-export vla-import vla-getplotdevicenames vla-refreshplotdeviceinfo vla-getcanonicalmedianames vla-getplotstyletablenames vla-getlocalemedianame vla-getpapermargins vla-getpapersize 84 .

LISP (LISt Processing) vla-getwindowtoplot vla-setwindowtoplot vla-getcustomscale vla-setcustomscale vla-displayplotpreview vla-plottofile vla-plottodevice vla-setlayoutstoplot vla-startbatchmode vla-float vla-dock vla-addsubmenu vla-addtoolbarbutton vla-addseparator vla-insertinmenubar vla-removefrommenubar vla-insertmenuinmenubar vla-removemenufrommenubar vla-getbitmaps vla-setbitmaps vla-attachtoolbartoflyout vla-add vla-load vla-additems vla-removeitems 85 .

Bricscad V10 .Developer Reference vla-appenditems vla-clear vla-select vla-selectatpoint vla-selectbypolygon vla-selectonscreen vla-rename vla-remove vla-replace vla-getobject vla-getname vla-reverse vla-restore vla-copyobjects vla-getfont vla-setfont vla-getentity vla-getsubentity vla-prompt vla-angletoreal vla-angletostring vla-distancetoreal vla-realtostring vla-translatecoordinates vla-initializeuserinput 86 .

LISP (LISt Processing) vla-getinteger vla-getinput vla-getkeyword vla-getstring vla-getangle vla-getcorner vla-getdistance vla-getorientation vla-getpoint vla-polarpoint vla-anglefromxaxis vla-isurl vla-putremotefile vla-getremotefile vla-isremotefile vla-launchbrowserdialog vla-sendmodelessoperationstart vla-sendmodelessoperationended vla-createtypedarray vla-gettextstyle vla-settextstyle vla-gettextheight vla-settextheight vla-getalignment vla-setalignment 87 .

Developer Reference vla-getcolor vla-setcolor vla-getbackgroundcolor vla-setbackgroundcolor vla-getbackgroundcolornone vla-setbackgroundcolornone vla-getgridlineweight vla-setgridlineweight vla-getgridcolor vla-setgridcolor vla-getgridvisibility vla-setgridvisibility vla-loadads vla-loadarx vla-unloadads vla-unloadarx vla-listads vla-listarx vla-loaddvb vla-unloaddvb vla-runmacro vla-zoomall vla-zoomextents vla-zoomprevious vla-zoompickwindow 88 .Bricscad V10 .

LISP (LISt Processing) vla-zoomcenter vla-zoomscaled vla-zoomwindow vla-open vla-save vla-saveas vla-close vla-quit 89 .

.Developer Reference VLAX VisualLisp functions : vlax-.. vlax-product-key vlax-get-acad-object vlax-get-object vlax-create-object vlax-get-or-create-object vlax-release-object vlax-object-released-p vlax-typeinfo-available-p vlax-property-available-p vlax-method-applicable-p vlax-import-type-library vlax-get vlax-get-property vlax-put vlax-put-property vlax-invoke-method vlax-dump-object vlax-add-cmd vlax-remove-cmd vlax-queueexpr vlax-2d-point vlax-3d-point vlax-ename->vla-object vlax-vla-object->ename 90 .Bricscad V10 .

LISP (LISt Processing) vlax-erased-p vlax-read-enabled-p vlax-write-enabled-p vlax-for vlax-map-collection vlax-make-safearray vlax-make-variant vlax-variant-type vlax-variant-value vlax-variant-change-type vlax-safearray-fill vlax-safearray-get-dim vlax-safearray-get-l-bound vlax-safearray-get-u-bound vlax-safearray-type vlax-safearray->list vlax-safearray-get-element vlax-safearray-put-element vlax-tmatrix vlax-curve-getarea vlax-curve-getstartparam vlax-curve-getendparam vlax-curve-getstartpoint vlax-curve-getendpoint vlax-curve-getdistatparam 91 .

Bricscad V10 .Developer Reference vlax-curve-getparamatdist vlax-curve-getdistatpoint vlax-curve-getpointatdist vlax-curve-getparamatpoint vlax-curve-getpointatparam vlax-curve-getfirstderiv vlax-curve-getsecondderiv vlax-curve-isclosed vlax-curve-isperiodic vlax-curve-isplanar vlax-curve-getclosestpointto vlax-curve-getclosestpointtoprojection vlax-ldata-put vlax-ldata-get vlax-ldata-list vlax-ldata-delete vlax-ldata-test VLISP VisualLisp functions : vlisp-. vlisp-import-symbol vlisp-export-symbol vlisp-import-exsubrs 92 ...

LISP (LISt Processing) Constants: :vlax-null :vlax-true :vlax-false :constants-prefix :methods-prefix :properties-prefix :tlb-filename :prog-id vlax-vbabort vlax-vbabortretryignore vlax-vbapplicationmodal vlax-vbarchive vlax-vbarray vlax-vbboolean vlax-vbcancel vlax-vbcritical vlax-vbcurrency vlax-vbdataobject vlax-vbdate vlax-vbdefaultbutton1 vlax-vbdefaultbutton2 vlax-vbdefaultbutton3 vlax-vbdirectory vlax-vbdouble 93 .

Developer Reference vlax-vbempty vlax-vberror vlax-vbexclamation vlax-vbhidden vlax-vbhiragana vlax-vbignore vlax-vbinformation vlax-vbinteger vlax-vbkatakana vlax-vblong vlax-vblowercase vlax-vbnarrow vlax-vbno vlax-vbnormal vlax-vbnull vlax-vbobject vlax-vbok vlax-vbokcancel vlax-vbokonly vlax-vbpropercase vlax-vbquestion vlax-vbreadonly vlax-vbretry vlax-vbretrycancel vlax-vbsingle 94 .Bricscad V10 .

LISP (LISt Processing) vlax-vbstring vlax-vbsystem vlax-vbsystemmodal vlax-vbuppercase vlax-vbvariant vlax-vbvolume vlax-vbwide vlax-vbyes vlax-vbyesno vlax-vbyesnocancel ac0degrees ac100_1 ac10_1 ac180degrees ac1ft_1ft ac1in_1ft ac1_1 ac1_10 ac1_100 ac1_128in_1ft ac1_16 ac1_16in_1ft ac1_2 ac1_20 95 .

Developer Reference ac1_2in_1ft ac1_30 ac1_32in_1ft ac1_4 ac1_40 ac1_4in_1ft ac1_50 ac1_64in_1ft ac1_8 ac1_8in_1ft ac270degrees ac2_1 ac3dface ac3dpolyline ac3dsolid ac3in_1ft ac3_16in_1ft ac3_32in_1ft ac3_4in_1ft ac3_8in_1ft ac4_1 ac6in_1ft ac8_1 ac90degrees acabove 96 .Bricscad V10 .

LISP (LISt Processing) acactiveviewport acalignmentaligned acalignmentbottomcenter acalignmentbottomleft acalignmentbottomright acalignmentcenter acalignmentfit acalignmentleft acalignmentmiddle acalignmentmiddlecenter acalignmentmiddleleft acalignmentmiddleright acalignmentright acalignmenttopcenter acalignmenttopleft acalignmenttopright acalignpntacquisitionautomatic acalignpntacquisitionshifttoacquire acallviewports acarc acarchitectural acarrowarchtick acarrowboxblank acarrowboxfilled acarrowclosed 97 .

Bricscad V10 .Developer Reference acarrowclosedblank acarrowdatumblank acarrowdatumfilled acarrowdefault acarrowdot acarrowdotblank acarrowdotsmall acarrowintegral acarrownone acarrowoblique acarrowopen acarrowopen30 acarrowopen90 acarroworigin acarroworigin2 acarrowsmall acarrowsonly acarrowuserdefined acattachmentpointbottomcenter acattachmentpointbottomleft acattachmentpointbottomright acattachmentpointmiddlecenter acattachmentpointmiddleleft acattachmentpointmiddleright acattachmentpointtopcenter 98 .

LISP (LISt Processing) acattachmentpointtopleft acattachmentpointtopright acattribute acattributemodeconstant acattributemodeinvisible acattributemodepreset acattributemodeverify acattributereference acbasemenugroup acbestfit acbeziersurfacemesh acblockreference acblue acbottomtotop acbyblock acbylayer acbystyle accenterline accentermark accenternone accircle accubicspline3dpoly accubicsplinepoly accubicsurfacemesh accyan 99 .

Developer Reference acdecimal acdefaultunits acdegreeminuteseconds acdegrees acdemandloadcmdinvoke acdemandloaddisabled acdemandloadenabled acdemandloadenabledwithcopy acdemandloadonobjectdetect acdemanloaddisable acdiagonal acdim3pointangular acdimaligned acdimangular acdimarchitectural acdimarchitecturalstacked acdimdecimal acdimdiametric acdimengineering acdimfractional acdimfractionalstacked acdimlarchitectural acdimldecimal acdimlengineering acdimlfractional 100 .Bricscad V10 .

LISP (LISt Processing) acdimlinewithtext acdimlscientific acdimlwindowsdesktop acdimordinate acdimprecisionzero acdimprecisionone acdimprecisiontwo acdimprecisionthree acdimprecisionfour acdimprecisionfive acdimprecisionsix acdimprecisionseven acdimprecisioneight acdimradial acdimrotated acdimscientific acdimwindowsdesktop acdisplay acdisplaydcs acdragdisplayautomatically acdragdisplayonrequest acdragdonotdisplay acellipse acengineering acenglish 101 .

Bricscad V10 .Developer Reference acextendboth acextendnone acextendotherentity acextendthisentity acextents acexternalreference acfalse acfirstextensionline acfitcurvepoly acfontbold acfontbolditalic acfontitalic acfontregular acfractional acfullpreview acgrads acgreen acgroup achatch achatchlooptypedefault achatchlooptypederived achatchlooptypeexternal achatchlooptypepolyline achatchlooptypetextbox achatchpatterntypecustomdefined 102 .

LISP (LISt Processing) achatchpatterntypepredefined achatchpatterntypeuserdefined achatchstyleignore achatchstylenormal achatchstyleouter achorizontal achorizontalalignmentaligned achorizontalalignmentcenter achorizontalalignmentfit achorizontalalignmentleft achorizontalalignmentmiddle achorizontalalignmentright achorzcentered acinches acinsertunitsangstroms acinsertunitsastronomicalunits acinsertunitsautoassign acinsertunitscentimeters acinsertunitsdecameters acinsertunitsdecimeters acinsertunitsfeet acinsertunitsgigameters acinsertunitshectometers acinsertunitsinches acinsertunitskilometers 103 .

Developer Reference acinsertunitslightyears acinsertunitsmeters acinsertunitsmicroinches acinsertunitsmicrons acinsertunitsmiles acinsertunitsmillimeters acinsertunitsmils acinsertunitsnanometers acinsertunitsparsecs acinsertunitsprompt acinsertunitsunitless acinsertunitsyards acintersection acjis ackeyboardentry ackeyboardentryexceptscripts ackeyboardrunningobjsnap aclayout acleader aclefttoright aclimits acline aclinenoarrow aclinespacingstyleatleast aclinespacingstyleexactly 104 .Bricscad V10 .

LISP (LISt Processing) aclinewitharrow aclnwt000 aclnwt005 aclnwt009 aclnwt013 aclnwt015 aclnwt018 aclnwt020 aclnwt025 aclnwt030 aclnwt035 aclnwt040 aclnwt050 aclnwt053 aclnwt060 aclnwt070 aclnwt080 aclnwt090 aclnwt100 aclnwt106 aclnwt120 aclnwt140 aclnwt158 aclnwt200 aclnwt211 105 .

Developer Reference aclnwtbyblock aclnwtbylayer aclnwtbylwdefault acmagenta acmax acmenufilecompiled acmenufilesource acmenuitem acmenuseparator acmenusubmenu acmetric acmillimeters acmin acminsertblock acmline acmodelspace acmovetextaddleader acmovetextnoleader acmtext acnative acnorm acnotstacked acoff acon acoqgraphics 106 .Bricscad V10 .

LISP (LISt Processing)

acoqhighphoto acoqlineart acoqphoto acoqtext acoutside acoverfirstextension acoversecondextension acpalettebydrawing acpalettebysession acpaperspace acpaperspacedcs acpartialmenugroup acpartialpreview acpenwidth013 acpenwidth018 acpenwidth025 acpenwidth035 acpenwidth050 acpenwidth070 acpenwidth100 acpenwidth140 acpenwidth200 acpenwidthunk acpixels acplotorientationlandscape

107

Bricscad V10 - Developer Reference

acplotorientationportrait acpoint acpolicylegacydefault acpolicylegacylegacy acpolicylegacyquery acpolicynewdefault acpolicynewlegacy acpolyfacemesh acpolyline acpolylinelight acpolymesh acpreferenceclassic acpreferencecustom acprinteralertonce acprinteralwaysalert acprinterneveralert acprinterneveralertlogonce acproxyboundingbox acproxynotshow acproxyshow acpviewport acquadspline3dpoly acquadsplinepoly acquadsurfacemesh acr12_dxf

108

LISP (LISt Processing)

acr13_dwg acr13_dxf acr14_dwg acr14_dxf acr15_dwg acr15_dxf acr15_template acradians acraster acray acred acregion acrighttoleft acscaletofit acscientific acsecondextensionline acselectionsetall acselectionsetcrossing acselectionsetcrossingpolygon acselectionsetfence acselectionsetlast acselectionsetprevious acselectionsetwindow acselectionsetwindowpolygon acshape

109

Bricscad V10 - Developer Reference

acsimple3dpoly acsimplemesh acsimplepoly acsolid acspline acsplinenoarrow acsplinewitharrow acsubtraction actext actextandarrows actextflagbackward actextflagupsidedown actextonly actolbasic actolbottom actoldeviation actolerance actollimits actolmiddle actolnone actolsymmetrical actoltop actoolbarbutton actoolbarcontrol actoolbardockbottom

110

LISP (LISt Processing)

actoolbardockleft actoolbardockright actoolbardocktop actoolbarfloating actoolbarflyout actoolbarseparator actoptobottom actrace actrue acucs acunion acunknown acvertcentered acverticalalignmentbaseline acverticalalignmentbottom acverticalalignmentmiddle acverticalalignmenttop acview acviewport2horizontal acviewport2vertical acviewport3above acviewport3below acviewport3horizontal acviewport3left acviewport3right

111

Bricscad V10 - Developer Reference

acviewport3vertical acviewport4 acvp100_1 acvp10_1 acvp1ft_1ft acvp1in_1ft acvp1_1 acvp1_10 acvp1_100 acvp1_128in_1ft acvp1_16 acvp1_16in_1ft acvp1_2 acvp1_20 acvp1_2in_1ft acvp1_30 acvp1_32in_1ft acvp1_4 acvp1_40 acvp1_4in_1ft acvp1_50 acvp1_64in_1ft acvp1_8 acvp1_8in_1ft acvp2_1

112

LISP (LISt Processing) acvp3in_1ft acvp3_16in_1ft acvp3_32in_1ft acvp3_4in_1ft acvp3_8in_1ft acvp4_1 acvp6in_1ft acvp8_1 acvpcustomscale acvpscaletofit acwhite acwindow acworld acxline acyellow aczoomscaledabsolute aczoomscaledrelative aczoomscaledrelativepspace 113 .

Type the following command: BcadLispEncrypt. 2.exe is not delivered with Bricscad.lsp] [EncryptedFileName. This decrypted LISP requires protection.lsp. NOTE BcadLispEncrypt. To encrypt a LISP file 1.exe is a command line tool that uses hard encryption to encrypt LISP files. Download Lisp encryption tool. The purpose of the extension ". The ". Bricscad supports this type of encryption.enc" is only to avoid unintended deletion of the original LISP files.Developer Reference LISP Encryption BcadLispEncrypt. To load an encrypted LISP file 1.Bricscad V10 . to a file or to an entity.enc" extension is not recognized by Bricscad. Load the encrypted LISP file in the same as for a non encrypted LISP file. In that case the encrypted file will have the name LispFileName.exe [LispFileName. Open a new command line window. Bricscad automatically decrypts the encrypted LISP file in order to be able to use it. 114 . NOTE The output filename can be omitted.enc. The Bricscad LISP protection mechanism replaces the decrypted LISP by the word "PROTECTED" when the decrypted LISP code or parts of it are extracted at runtime to be printed to the command line.lsp] The encrypted LISP file is created.

COM (or SDS) . what it should contain (buttons. The DCL functions are most typically called from a lisp application. The specialised DCL commands are used to load (parse) a DCL file and create runtime instances of the user interface as it is defined in the DCL file.. The usage of DCL requires a DCL file and the calling of specialised DCL functions. editboxes. The samples in this document are all lisp oriented since this is the most typical usage. cluster tiles (or clusters). This section of the developer's reference is currently being completely re-written. a separate programming language that you can use with Bricscad to create custom dialog boxes. "DCL" or "Dialog Control Language" is a means to display custom dialog boxes inside the CAD application. you work with elements called tiles. and attributes. For further assistance please contact Bricsys Support. but they can also be accessed through BRX.). In creating dialog boxes with DCL. sliders.Programming overview of DCL language DCL is an acronym for Dialog Control Language.. 115 . The DCL file describes how the dialog should look like.

.

Programming overview of Diesel language DIESEL is an acronym for Direct Interactively Evaluated String Expression Language. 117 . This section of the developer's reference is currently being completely re-written. For further assistance please contact Bricsys Support.

.

You can use Automation to manipulate Bricscad objects both from within Bricscad and from other environments that incorporate ActiveX Automation: Using ActiveX Automation ActiveX Automation. including lines. complement Bricscad VBA with additional components such as an external database engine and report-writing capabilities. Since it is an in-process controller. and various drawing entities.contained in Bricscad drawings. The object model shows you which object provides access to the next level of objects. properties. and methods applicable to Bricscad can be found in The Bricscad automation object model. VBA is a core component of Microsoft® Office applications such as Excel. Bricscad VBA has full Visual Basic language syntax. Word. The objects are structured in a hierarchical fashion called the object model.including Microsoft® Word documents and Microsoft Excel charts . 119 . It also provides application integration with other VBA-enabled applications using ActiveX Automation techniques. The stand-alone editions of Visual Basic. A diagram of the Bricscad object model and a description of the objects. you can combine the features of many applications in a single application for communication with other programs. Using ActiveX Automation. Overview of automation Overview of automation Automation is a technology used to program individual applications such as Bricscad. allows you to manipulate programmable objects from internal environments such as VBA (Visual Basic for Applications) or external environments such as Microsoft® Visual Basic and other applications that incorporate VBA. such as the active document. formerly known as OLE (Object Linking and Embedding) Automation.VBA (Visual Basic for Applications) Visual Basic for Applications (VBA) is an object-based Microsoft® programming environment designed to allow rapid development of custom solutions. and text. and PowerPoint. and support for ActiveX Controls. the active window. NOTE In order to access Bricscad VBA you will need a PRO License. With ActiveX Automation. You manipulate Bricscad objects through properties and methods applicable to each object. Within Bricscad. standard forms. VBA within Bricscad generally produces better performance than external programming environments. which must be purchased separately. Using the Object Model Objects are the main building blocks of VBA applications. Each exposed object represents a precise part of Bricscad. you can create and manipulate Bricscad objects from any application that serves as an automation controller. arcs. you can use VBA to edit and manipulate embedded ActiveX objects . In addition to being included within Bricscad.

you can start it as follows: To start VBA 1. choose Visual Basic and click Visual Basic Editor. This is the area where you develop the interface. A blank UserForm is displayed. To insert a UserForm 1. which contains controls that you can insert on your UserForm. or window that users will see when they run the program. The VBA Interactive Development Environment (IDE) is displayed. click UserForm. Inserting UserForms One of the first tasks you will want to perform when building a VBA program is to insert a UserForm. From the Tools menu. The VBA IDE.Bricscad V10 .Developer Reference Starting VBA If you have included VBA in your Bricscad installation options. along with the Toolbox . 120 . From the Insert menu in the VBA Editor.

Once inside the Code window. It can be displayed any of the following methods:    From the View menu in VBA. the first and last lines of a subroutine are created for the control. you can create code by typing in VBA statements. You place controls by dragging them from the Toolbox onto your UserForm. Creating code Program code -. A blank UserForm displayed in the VBA IDE.the statements that tell the program what to do .VBA (Visual Basic for Applications) Adding controls to a UserForm After you have inserted a UserForm. and other items contained in your user interface. Double-click any control on a UserForm. or using Intellisense to place items. you will generally want to add controls . along with the Toolbox. Press the F7 key.the buttons.is contained in the Code window of the VBA IDE. copying and pasting code from other sources. text boxes. such as the following lines for a command button: Private Sub CommandButton1_Click() End Sub 121 . If you open the Code window by double-clicking a control that has no code yet associated with it. click Code.

as shown in the following code: Public myVariable as Double Sub anyMacro () UserForm1. however. Click the Run icon in the Toolbar.Developer Reference Using modules A module contains procedures. you can include multiple UserForms in your project and you can also run your project as a macro from the Tools menu in Bricscad or by using the VBARUN command. data and type declarations. point to Visual Basic and click Macros.) Create code in the Code window just as you would for your controls. From the Insert menu in VBA. By creating a module.DVB file. (You must have included a module and a macro name to run a macro. type a name for your module.Bricscad V10 . Module-level code generally contains just the general statements and macro assignments. and classes can be exchanged between dissimilar projects using the IMPORT and EXPORT VBA commands in the VBA IDE. To insert and use a module 1. Module2. Running a VBA program To run a program from the VBA IDE 1. modules. 3.Show End Sub Managing VBA projects Bricscad™ VBA projects are stored in separate . 3. etc. In the Properties window. and definitions. To run a program as a macro: 1.) Click Run. 2. but there are advantages to doing so. Press F5. (You can also accept the default name Module1. click Module. Your VBA project does not need to include a module. Highlight the macro you wish to run. Do one of the following:    From the Run menu. 122 . 2. forms. click Run Sub/UserForm. From the Tools menu in Bricscad. Macros contained within the DVB file or in the common project file are not directly compatible with stand-alone Visual Basic projects (VBP files).

VBA (Visual Basic for Applications) Events in Bricscad VBA =implemented = NOT implemented Application Events Bricscad AppActivate AppDeactivate ARXLoaded ARXUnloaded BeginCommand BeginFileDrop BeginLisp BeginModal BeginOpen BeginPlot BeginQuit BeginSave EndCommand EndLisp EndModal EndOpen EndPlot EndSave LispCancelled NewDrawing SysVarChanged WindowChanged AutoCAD Document Events Activate BeginClose BeginCommand BeginDocClose BeginDoubleClick BeginLisp BeginPlot BeginRightClick BeginSave BeginShortcutMenuCommand BeginShortcutMenuDefault BeginShortcutMenuEdit BeginShortcutMenuGrip BeginShortcutMenuOsnap Deactivate EndCommand EndLisp EndPlot EndSave EndShortcutMenu LayoutSwitched LispCancelled ObjectAdded ObjectErased ObjectModified SelectionChanged WindowChanged WindowMovedOrResized Bricscad AutoCAD (*) (*) (*) (*) (*) 123 .

dvb is loaded (vbaload). Within AutoCAD's VBA IDE the AcadDocument object is implicitly available : there is no need to explicitly use a WithEvents declaration or initialization. This oDocEvents object will implement the needed events. There is no entry point or Sub Main: the events get caught as soon as the . 2. Object Events Modified Bricscad AutoCAD Difference with AutoCAD : Following VBA code works on AutoCAD but NOT on Bricscad: Option Explicit Private Sub AcadDocument_BeginCommand(ByVal CommandName As String) MsgBox "AcadDocument_BeginCommand ::Command= " & CommandName End Sub Private Sub AcadDocument_Activate() MsgBox "AcadDocument_Activate" End Sub Private Sub AcadDocument_Deactivate() MsgBox "AcadDocument_Deactivate" End Sub 1. In our example following document events will be caught: _BeginCommand. See next section 'Keeping tabs on the Active Document'.Application. 4. _EndCommand._Activate and _Deactivate. However in Bricscad you will need to explicitly declare (using a WithEvents clause) and initialize it in order to successfully catch events. Above code uses events implicitly provided by AcadDocument. The Sub synchDoc is responsible for keeping the oDocEvents synchronized with the currently active drawing. Keeping tabs on the Active Document : The code below declares and initializes oDocEvents using 'WithEvents'.ActiveDocument. They all use the parameter ShortcutMenu (declared as AcadPopupMenu on AutoCAD and Object on Bricscad). 3.Name) Error 0 If sDocName = vbNullString Then 124 . Above code follows the active drawing: when switching between drawings the document events keep working.Name) sCurName = UCase(ThisDrawing. AcadPopupMenu is currently not implemented by Bricscad's COM.Bricscad V10 .Developer Reference Note (*): Events marked with (*) in list above are currently ignored. Bricscad's VBA IDE also provides the AcadDocument and corresponding events drop-down list. As you can see it gets called at several places. Option Explicit Public WithEvents oDocEvents As AcadDocument Sub main() synchDoc End Sub Private Sub synchDoc() Dim sCurName As String: sCurName = vbNullString Dim sDocName As String: sDocName = vbNullString On Error Resume Next 'workaround oDocEvents possible Nodocument error sDocName = UCase(oDocEvents.

ActiveDocument End If If sDocName <> sCurName Then Set oDocEvents = ThisDrawing.Print sMessage 'MsgBox sMessage 'ThisDrawing.ActiveDocument End If End Sub Private Function logEvent(sMessage As String) 'comment/uncomment as needed Debug.Utility.VBA (Visual Basic for Applications) Set oDocEvents = ThisDrawing.Application.Prompt sMessage End Function '-------DOCUMENT EVENT HANDLERS------------Private Sub oDocEvents_BeginCommand(ByVal CommandName As String) logEvent "oDocEvents_BeginCommand ::Command= " & CommandName End Sub Private Sub oDocEvents_EndCommand(ByVal CommandName As String) If CommandName = "NEW" Then synchDoc If CommandName = "OPEN" Then synchDoc logEvent "oDocEvents_EndCommand ::Command= " & CommandName End Sub Private Sub oDocEvents_Activate() logEvent "oDocEvents_Activate" End Sub Private Sub oDocEvents_Deactivate() synchDoc logEvent "oDocEvents_Deactivate" End Sub 125 .Application.

.

each with a unique identity. COM objects are discrete components.COM (Component Object Model) COM is a software architecture developed by Microsoft to build component-based applications.. COM objects are more versatile than Win32 DLLs because they are completely language-independent. Methods or Events are still 'Not implemented'. Note: In this version of the COM help emphasis has been to bring the COM documentation up to level with the underlying COM object. 127 . Also. You should find that this version of COM is much closer to the 'AutoCAD COM model' than the COM which shipped with V7 versions. which expose interfaces that allow applications and other components to access their features. some Classes or of their underlying Properties.. Please note that this on-line help does NOT claim to be complete. at the time of writing. Please refer to VBA's Object Browser to check whether or not a function is implemented. and easily fit into an object-oriented program design. have built-in interprocess communications capability. ActiveX also is based on COM.

Click an item to see its details. 128 .Bricscad V10 .Developer Reference The Bricscad automation object model A diagram of the Bricscad object model is shown below.

Creates an infinite line passing through two points and adds it to the drawing. Creates a polyline and adds it to the drawing. and define certain properties such as color. but does not necessarily pass through the intermediate control points. To create point entities. start angle. and end angle. use one of the following methods: Add3Dpoly AddPolyline Creates a 3D polyline and adds it to the drawing. To create splines. Drawing Circles A circle is actually a special case of an arc . use the following method: AddPoint Creates a PointEntity object and adds it to the drawing. Drawing Arcs An arc is defined by its center point. 129 .COM (Component Object Model) User Guide Drawing Lines and Arcs Drawing Lines A line is defined by its starting and ending point. To create new lines. You can create polylines by specifying coordinates for each vertex of the polyline. You can create an arc using the following method: AddArc Creates an arc and adds it to the drawing. radius. Creating Splines A spline is a curve generated along the path of three or more control points. change the PDMODE and PDSIZE system variables using the SetVariable method. use the AddSpline method. Creating Other Objects Creating Points A point entity consists of a single x-.one that sweeps a full 360-degree arc. and z-coordinate location. y-. use one of the following methods: AddLine AddXlline Creates a line passing through two points and adds it to the drawing. The curve passes through the start and end points. To create polylines. To change the appearance of point entities. and is represented by one of several symbols. You can create a circle with the following method: AddCircle Creates a circle and adds it to the drawing. Drawing Polylines A polyline is a connected sequence of lines and arcs that is treated as a single entity. You can create lines by specifying starting and ending points. linetype. and layer.

size. and oblique angle does not change existing text but does change subsequently created text objects. use the AddText method. use paragraph text (Mtext). the width of the text window. The width is a real number defining the width of the text window in drawing units. or other hatch patterns. is a paragraph of characters that fits within a boundary and is contained in the Mtext object. Except for the default STANDARD style. you need to provide three values as input: the text string. 130 . If you have longer notes that may exceed one line. Once this is done. or multi-line text. It is useful for labels and short notes. The Add method takes a TextStyle name as input. Working with Text Styles Each text object has a style associated with it. you specify the hatch boundaries. The first step in hatching an area is to create the Hatch object.all contained in the TextStyle object. angle. New text uses properties from the current text style. It is useful for long notes and other entries that may extend onto several lines. you must create any text style you want to use. use the Add method to create a new TextStyle object and add it to the TextStyles Collection object. The insertion point is a Variant indicating the coordinate location for placing the text. You need to provide three input parameters: the insertion point. and the text string. and other text characteristics -. To create a Mtext object. all text using that style is changed to use the new font or orientation.entered as either a string variable or as a literal string enclosed in quotes.Bricscad V10 . The insertion point is a Variant indicating the coordinate location for placing the text. The text height is a real number defining the height of the upper-case characters in drawing units. Creating Paragraph Text Paragraph text. Creating a Hatch Object To create a hatch object. If you change an existing style's font or orientation. crosshatching. The text string is the text you wish displayed . The current text style sets the font. use the AddHatch method. orientation. In either case. Changing text height. the insertion point. use the AddMtext method. To create a text style. The text string is the text you wish displayed .Developer Reference Adding Hatching Hatching fills a specified area with lines. and the height of the text.entered as either a string variable or as a literal string enclosed in quotes. To create single-line text. Adding Text to Drawings Creating Single-Line Text Single-line text is an individual line of text contained in one Text object. width factor.

Using Viewports A Viewport is a window that displays all or part of a drawing's model space. Deleting Views To delete a named view. use the following line of code: SideView. the viewing position and scale of the view are saved. as shown in the following line of code: ThisDocument.Delete Either of the above methods can be used at any time.Views("FRONTVIEW"). you can always go through the Views collection to delete the view. Creating and Naming Views Views are named when they are created. Otherwise. to delete a view (SIDEVIEW) from the current views collection. use the Delete method. To modify viewport settings. When you save the drawing.Delete You can also delete named view (FRONTVIEW). The Delete method for the View object lies on the View object itself. To create a new view. not its parent. you can delete it. For example. 131 . you can also do this through VBA. When you no longer need the view. If you have saved a reference to a view you can delete the view directly. use the Add method to add a new view to the Views collection object.COM (Component Object Model) Working with Views Using Named Views Just as you can name and save a view in a Bricscad drawing. use the methods and properties of the Viewport object.

You can use the AcCmColor object to set colors and perform other color-related operations on objects. Methods Properties SetColorBookColor Blue SetNames BookName SetRGB ColorIndex ColorMethod ColorName EntityColor Green Red Application object Class AcadApplication Member of BricscadApp The Application object represents an instance of the Bricscad application.Bricscad V10 . This object can hold an RGB value. The active document (Bricscad drawing) can be accessed using the ActiveDocument property. Use the Quit method to end the Bricscad session. The properties associated with the Application object reflect the properties of the main application window. or a named color. The methods control the loading or listing of the currently loaded external applications and interface objects. 132 .Developer Reference Reference Guide Objects AcCmColor Class AcadAcCmColor Member of BricscadDb The AcCmColor object represents colors. an ACI number (an integer from 1 to 255).

COM (Component Object Model) Methods Properties Events DefineFunction ActiveDocument AppActivate GetAcadState Application AppDeactivate GetInterfaceobject Caption ARXLoaded ListArx Documents ARXUnloaded LoadArx FullName BeginCommand LoadDVB Height BeginFileDrop Quit HWND BeginLisp RunCommand LocaleID BeginModal RunMacro MenuBar BeginOpen RunScript MenuGroups BeginPlot UndefineFunction Name BeginQuit UnloadArx Path BeginSave UnloadDVB Preferences EndCommand Update StatusId * EndLisp ZoomAll VBE * EndModal ZoomCenter Version EndOpen ZoomExtents Visible EndPlot ZoomPickWindow Width EndSave ZoomPrevious WindowLeft LispCancelled ZoomScaled Windowstate NewDrawing ZoomWindow WindowTop SysVarChanged WindowChanged WindowMovedOrResized ApplicationPreferences object Class AcadPreferences Member of BricscadApp The ApplicationPreferences object contains certain settings for the current session of Bricscad. The ApplicationPreferences object has no applicable methods. but can be accessed with the following properties: Methods Display Drafting Files OpenSave Output Profiles Selection System User 133 .

use either the AddArc method. Methods Properties ArrayPolar Application ArrayRectangular ArcLength Copy Area Delete Center GetBoundingBox Document GetExtensionDictionary EndAngle GetXData EndPoint Highlight Handle IntersectWith HasExtensionDictionary Mirror Hyperlinks Mirror3D Linetype Move LinetypeScale Offset Lineweight Rotate Material * Rotate3D Normal ScaleEntity ObjectID SetXData ObjectName TransformBy OwnerID Update PlotStyleName Radius StartAngle StartPoint Thickness TotalAngle TrueColor Visible 134 . use the following methods and properties. To access the Arc object. To create an arc.Developer Reference Arc object Class AcadArc Member of BricscadDb The Arc object represents a segment of a circle or ellipse.Bricscad V10 .

COM (Component Object Model) Attribute object Class AcadAttribute Member of BricscadDb An Attribute (known as Attribute Definition in Bricscad) defines the prompt. When you insert a block into a drawing you get a BlockRef object. Each Attribute is an individual instantiation of the Attribute Definition object in the Block. default value. use the following methods and properties: Methods Properties ArrayPolar Alignment ArrayRectangular Application Copy Backward Delete Constant GetBoundingBox Document GetExtensionDictionary FieldLength GetXData Handle Highlight HasExtensionDictionary Hyperlinks Height IntersectWith Hyperlinks Mirror InsertionPoint Mirror3D Invisible Move Layer Rotate Linetype Rotate3D LinetypeScale ScaleEntity Lineweight SetXData LockPosition * TransformBy Material * Update Mode Normal ObjectID ObjectName ObliqueAngle OwnerID PlotStyleName Rotation ScaleFactor StyleName TagString TextAlignmentPoint TextGenerationFlag TextString Thickness TrueColor 135 . tag string. It is this Attribute object that contains the value of the attribute." you can iterate through the Attribute objects in the Attributes collection using the HasAttributes property. If the BlockRef "has attributes. To access the Attribute object. and display characteristics of an attribute.

Attribute references are added to the drawing when a block containing an attribute definition is inserted into the drawing. This method returns an array of all attribute references attached to the inserted block. use the GetAttributes method. Methods Properties ArrayPolar Alignment ArrayRectangular Application Copy Backward Delete Constant GetBoundingBox Document GetExtensionDictionary FieldLength GetXData Handle Highlight HasExtensionDictionary IntersectWith Height Mirror Hyperlinks Mirror3D InsertionPoint Move Invisible Rotate Layer Rotate3D Linetype ScaleEntity LinetypeScale SetXData Lineweight TransformBy Material * Update Normal ObjectID ObjectName ObliqueAngle OwnerID PlotStyleName Rotation ScaleFactor StyleName TagString TextAlignmentPoint TextGenerationFlag TextString Thickness TrueColor UpsideDown Visible 136 .Developer Reference AttributeReference object Class AcadAttributeReference Member of BricscadDb Text that links to a block. An object containing text that links to a block. To access the AttributeReference object. To access an attribute reference of an inserted block.Bricscad V10 . You cannot directly create an Attribute Reference. use the following methods and properties.

To edit or query a block definition. use the InsertBlock method. To insert a block into a drawing. The Block definition contains a name and a set of entities. use the following methods and properties: Methods Properties Add3DFace Application Add3DMesh BlockScaling Add3DPoly Comments AddArc Count AddAttribute Document AddBox Explodable AddCircle Handle AddCone HasExtensionDictionary AddCylinder IsDynamicBlock AddDim3PointAngular IsLayout AddDimAligned IsXRef AddDimAngular Layout AddDimDiametric Name AddDimOrdinate ObjectID AddDimRadial ObjectName AddDimRotated Origin AddEllipse OwnerID AddHatch Path AddImage Units AddLeader XRefDatabase AddLightWeightPolyline AddLine AddMText AddPoint AddPolyfaceMesh AddPolyline AddRay AddRegion AddRevolvedSolid AddSection AddShape AddSolid AddSphere AddSpline AddTable AddText AddTolerance AddTorus AddTrace AddWedge AddXLine AttachExternalReference Bind Delete Detach GetExtensionDictionary GetXData InsertBlock 137 .COM (Component Object Model) Block object Class AcadBlock Member of BricscadDb The Block object represents one or more entities grouped together to create a single entity.

To create a block reference. use the following methods and properties: Methods Properties ArrayPolar Application ArrayRectangular Color Copy Document Delete EntityName Erase EntityType Explode Handle GetAttributes HasAttributes GetBoundingBox HasExtensionDictionary GetExtensionDictionary Hyperlinks GetXData InsertionPoint Highlight Layer IntersectWith Linetype Mirror LinetypeScale Mirror3D Lineweight Move Name Rotate Normal Rotate3D Parent ScaleEntity PlotStyleName SetXData Rotation TransformBy Visible Update XScaleFactor YScaleFactor ZScaleFactor Blocks collection object Class AcadBlocks Member of BricscadDb The Blocks collection object is the collection of all blocks in a drawing. To query or edit an existing block reference. use the following methods and properties: Methods Properties Add Application Delete Count GetExtensionDictionary Document GetXData Handle Item HasExtensionDictionary SetXData ObjectID ObjectName OwnerID 138 .Bricscad V10 . To access the Blocks collection object.Developer Reference Methods Item Reload SetXData Unload WBlock Properties Block Refercence object Class AcadBlockReference Member of BricscadDb The BlockReference (=BlockInsert) object represents an instance of a block definition inserted into a drawing. use the InsertBlock method.

use the following methods and properties: Methods Properties ArrayPolar Application ArrayRectangular Area Copy Center Delete Circumference GetBoundingBox Diameter GetExtensionDictionary Document GetXData Handle Highlight HasExtensionDictionary IntersectWith Hyperlinks Mirror Layer Mirror3D Linetype Move LinetypeScale Offset Lineweight Rotate Material Rotate3D Normal ScaleEntity ObjectID SetXData ObjectName TransformBy OwnerID Update PlotStyleName Radius Thickness TrueColor Visible Dictionary object Class AcadDictionary Member of BricscadDb To access the Dictionary object. To create a circle use the AddCircle method. use the following methods and properties: Methods Properties AddObject Application AddXRecord Count Delete Document GetExtensionDictionary Handle GetName HasExtensionDictionary GetObject Name GetXData ObjectID Item ObjectName Remove OwnerID Rename Replace SetXData 139 . To access the Circle object.COM (Component Object Model) Circle object Class AcadCircle Member of BricscadDb The Circle object represents a full circle.

use the following methods and properties: Methods ArrayPolar ArrayRectangular Copy Delete GetBoundingBox GetExtensionDictionary GetXData Highlight IntersectWith Mirror Mirror3D Move Rotate Rotate3D ScaleEntity SetXData TransformBy Update Properties AngleFormat AngleVertex Application Arrowhead1Block Arrowhead1Type Arrowhead2Block Arrowhead2Type ArrowheadSize DecimalSeparator DimensionLineColor DimLine1Suppress DimLine2Suppress DimLineInside Document ExtensionLineColor ExtensionLineExtend ExtensionLineOffset ExtLine1EndPoint ExtLine1StartPoint ExtLine1Suppress ExtLine2EndPoint ExtLine2StartPoint ExtLine2Suppress Fit ForceLineInside Handle HasExtensionDictionary HorizontalTextPosition Hyperlinks Layer Linetype LinetypeScale Lineweight Measurement 140 . To create a 3-point angular dimension. use the AddDim3PointAngular method. To access the Dim3PointAngular object.Bricscad V10 . use the following methods and properties: Methods Properties Add Application Delete Count GetExtensionDictionary Document GetXData Handle Item HasExtensionDictionary SetXData Parent Dim3PointAngular object Class AcadDim3PointAngular Member of BricscadDb A dimension measuring the angular distance between three points.Developer Reference Dictionaries collection object To access the Dictionaries collection object.

COM (Component Object Model) Methods Properties Normal ObjectID ObjectName OwnerID PlotStyleName Rotation ScaleFactor StyleName SuppressLeadingZeroes SuppressTrailingZeroes TextColor TextFill * TextFillColor * TextGap TextHeight TextInside TextInsideAlign TextMovement TextOutsideAlign TextOverride TextPosition TextPrecision TextPrefix TextRotation TextString TextStyle TextSuffix ToleranceDisplay ToleranceHeightScale ToleranceJustification ToleranceLowerLimit TolerancePrecision ToleranceSuppressLeadingZero es ToleranceSuppressTrailingZero es ToleranceSuppressZeroFeet ToleranceSuppressZeroInches ToleranceUpperLimit TrueColor VerticalTextPosition Visible 141 .

use the following methods and properties: Methods Properties ArrayPolar AltRoundDistance ArrayRectangular AltSuppressLeadingZeroes Copy AltSuppressTrailingZeroes Delete AltSuppressZeroFeet GetBoundingBox AltSuppressZeroInches GetExtensionDictionary AltTextPrefix GetXData AltTextSuffix Highlight AltTolerancePrecision IntersectWith AltToleranceSuppressLeadingZeroes Mirror AltToleranceSuppressTrailingZeroes Mirror3D AltToleranceSuppressZeroFeet Move AltToleranceSuppressZeroInches Rotate AltUnits Rotate3D AltUnitsFormat ScaleEntity AltUnitsPrecision SetXData AltUnitsScale TransformBy Application Update Arrowhead1Block Arrowhead1Type Arrowhead2Block Arrowhead2Type ArrowheadSize DecimalSeparator DimensionLineColor DimensionLineExtend DimLine1Suppress DimLine2Suppress DimLineInside Document ExtensionLineColor ExtensionLineExtend ExtensionLineOffset ExtLine1Point ExtLine1Suppress ExtLine2Point ExtLine2Suppress Fit ForceLineInside FractionFormat Handle HasExtensionDictionary HorizontalTextPosition Hyperlinks Layer LinearScaleFactor Linetype LinetypeScale 142 . To create an aligned dimension.Developer Reference DimAligned object Class AcadDimAligned Member of BricscadDb A linear dimension displayed along a line parallel with a line connecting two points. To access the DimAligned object.Bricscad V10 . use the AddDimAligned method.

COM (Component Object Model) Methods Properties Lineweight Material Measurement Normal ObjectID ObjectName OwnerID PlotStyleName PrimaryUnitsPrecision Rotation RoundDistance ScaleFactor StyleName SuppressLeadingZeroes SuppressTrailingZeroes SuppressZeroFeet SuppressZeroInches TextColor TextGap TextHeight TextInside TextInsideAlign TextMovement TextOutsideAlign TextOverride TextPosition TextPrecision TextPrefix TextRotation TextString TextStyle TextSuffix ToleranceDisplay ToleranceHeightScale ToleranceJustification ToleranceLowerLimit TolerancePrecision ToleranceSuppressLeadingZeroes ToleranceSuppressTrailingZeroes ToleranceSuppressZeroFeet ToleranceSuppressZeroInches ToleranceUpperLimit TrueColor UnitsFormat VerticalTextPosition Visible 143 .

Bricscad V10 .Developer Reference DimAngular object Class AcadDimAngular Member of BricscadDb A dimension measuring the angular distance between two lines or between the angle of a circular arc. use the AddDimAngular method. use the following methods and properties: Methods Properties ArrayPolar AngleVertex ArrayRectangular Application Copy Arrowhead1Block Delete Arrowhead1Type GetBoundingBox Arrowhead2Block GetExtensionDictionary Arrowhead2Type GetXData ArrowheadSize Highlight DecimalSeparator IntersectWith DimensionLineColor Mirror DimLine1Suppress Mirror3D DimLine2Suppress Move DimLineInside Rotate Document Rotate3D ExtensionLineColor ScaleEntity ExtensionLineExtend SetXData ExtensionLineOffset TransformBy ExtLine1EndPoint Update ExtLine1StartPoint ExtLine1Suppress ExtLine2EndPoint ExtLine2StartPoint ExtLine2Suppress Fit ForceLineInside Handle HasExtensionDictionary HorizontalTextPosition Hyperlinks Layer Linetype LinetypeScale Lineweight Measurement Normal ObjectID ObjectName OwnerID PlotStyleName Rotation ScaleFactor StyleName SuppressLeadingZeroes SuppressTrailingZeroes TextColor TextFill * TextFillColor * TextGap 144 . To create an angular dimension. To access the Dim3PointAngular object.

COM (Component Object Model) Methods Properties TextHeight TextInside TextInsideAlign TextMovement TextOutsideAlign TextOverride TextPosition TextPrecision TextPrefix TextRotation TextString TextStyle TextSuffix ToleranceDisplay ToleranceHeightScale ToleranceJustification ToleranceLowerLimit TolerancePrecision ToleranceSuppressLeadingZeroes ToleranceSuppressTrailingZeroes ToleranceSuppressZeroFeet ToleranceSuppressZeroInches ToleranceUpperLimit TrueColor VerticalTextPosition Visible 145 .

use the following methods and properties: Methods Properties ArrayPolar AltRoundDistance ArrayRectangular AltSuppressLeadingZeroes Copy AltSuppressTrailingZeroes Delete AltSuppressZeroFeet GetBoundingBox AltSuppressZeroInches GetExtensionDictionary AltTextPrefix GetXData AltTextSuffix Highlight AltTolerancePrecision IntersectWith AltToleranceSuppressLeadingZeroes Mirror AltToleranceSuppressTrailingZeroes Mirror3D AltToleranceSuppressZeroFeet Move AltToleranceSuppressZeroInches Rotate AltUnits Rotate3D AltUnitsFormat ScaleEntity AltUnitsPrecision SetXData AltUnitsScale TransformBy Application Update Arrowhead1Block Arrowhead1Type Arrowhead2Block Arrowhead2Type ArrowheadSize CenterMarkSize CenterType DecimalSeparator DimensionLineColor DimLine1Suppress DimLine2Suppress Document ExtensionLineOffset Fit ForceLineInside FractionFormat Handle HasExtensionDictionary HorizontalTextPosition Hyperlinks Layer LeaderLength LinearScaleFactor Linetype LinetypeScale Lineweight Measurement Normal ObjectID ObjectName OwnerID 146 . To create a diametric dimension. To access the DimDiametric object.Developer Reference DimDiametric object Class AcadDimDiametric Member of BricscadDb A dimension measuring the diameter of a circle.Bricscad V10 . use the AddDimDiametric method.

COM (Component Object Model) Methods Properties PlotStyleName PrimaryUnitsPrecision Rotation RoundDistance ScaleFactor StyleName SuppressLeadingZeroes SuppressTrailingZeroes SuppressZeroFeet SuppressZeroInches TextColor TextGap TextHeight TextInside TextInsideAlign TextMovement TextOutsideAlign TextOverride TextPosition TextPrecision TextPrefix TextRotation TextString TextStyle TextSuffix ToleranceDisplay ToleranceHeightScale ToleranceJustification ToleranceLowerLimit TolerancePrecision ToleranceSuppressLeadingZeroes ToleranceSuppressTrailingZeroes ToleranceSuppressZeroFeet ToleranceSuppressZeroInches ToleranceUpperLimit TrueColor UnitsFormat VerticalTextPosition Visible 147 .

To create a dimension.Bricscad V10 .Developer Reference Dimension object Class AcadDimension Member of BricscadDb The Dimension object represents a dimension in a drawing. use one of the AddDimXXX methods. use the following methods and properties: Methods Properties ArrayPolar Application ArrayRectangular DecimalSeparator Copy Document Delete Handle GetBoundingBox HasExtensionDictionary GetExtensionDictionary Hyperlinks GetXData Layer Highlight Linetype IntersectWith LinetypeScale Mirror Lineweight Mirror3D Material * Move Normal Rotate ObjectID Rotate3D ObjectName ScaleEntity OwnerID SetXData PlotStyleName TransformBy Rotation Update ScaleFactor StyleName SuppressLeadingZeroes SuppressTrailingZeroes TextColor TextFill * TextGap TextHeight TextMovement TextOverride TextPosition TextPrefix TextRotation TextString TextStyle TextSuffix ToleranceDisplay ToleranceHeightScale ToleranceJustification TolearanceLowerLimit TolerancePrecision ToleranceSuppressLeadingZeroes ToleranceSuppressTrailingZeroes ToleranceSuppressZeroFeet ToleranceSuppressZeroInches ToleranceUpperLimit TrueColor UnitsFormat VerticalTextPosition Visible 148 . linear. radial. or one of several other types. Dimensions may be angular. To query or edit an existing dimension.

use the following methods and properties: Methods Properties Delete Application GetExtensionDictionary Document GetXData Handle SetXData HasExtensionDictionary Name ObjectID ObjectName OwnerID DimensionStyles collection object Class AcadDimStyles Member of BricscadDb The DimensionStyles collection object is the collection of all dimension styles in a drawing.COM (Component Object Model) DimensionStyle object Class AcadDimStyle Member of BricscadDb The DimStyle object contains the settings that determine the appearance of a dimension. To access the DimeStyle object. use the following methods and properties: Methods Properties Add Application Delete Count GetExtensionDictionary Document GetXData Handle Item HasExtensionDictionary SetXData ObjectID ObjectName OwnerID 149 . To access the DimensionStyles collection object.

To access the DimOrdinate object. use the following methods and properties: Methods Properties ArrayPolar AltRoundDistance ArrayRectangular AltSuppressLeadingZeroes Copy AltSuppressTrailingZeroes Delete AltSuppressZeroFeet GetBoundingBox AltSuppressZeroInches GetExtensionDictionary AltTextPrefix GetXData AltTextSuffix Highlight AltTolerancePrecision IntersectWith AltToleranceSuppressLeadingZeroes Mirror AltToleranceSuppressTrailingZeroes Mirror3D AltToleranceSuppressZeroFeet Move AltToleranceSuppressZeroInches Rotate AltUnits Rotate3D AltUnitsFormat ScaleEntity AltUnitsPrecision SetXData AltUnitsScale TransformBy Application Update ArrowheadSize DecimalSeparator Document ExtensionLineColor ExtensionLineOffset ExtensionLineWeight ExtLineFixedLen FractionFormat Handle HasExtensionDictionary Hyperlinks Layer LinearScaleFactor Linetype LinetypeScale Lineweight Material * Measurement Normal ObjectID ObjectName OwnerID PlotStyleName PrimaryUnitsPrecision Rotation RoundDistance ScaleFactor StyleName SuppressLeadingZeroes SuppressTrailingZeroes SuppressZeroFeet 150 .Bricscad V10 . To create an ordinate dimension.Developer Reference DimOrdinate object Class AcadDimOrdinate Member of BricscadDb A linear dimension measuring the absolute X or Y position of a point from the origin. use the AddDimOrdinate method.

COM (Component Object Model) Methods Properties SuppressZeroInches TextColor TextFill * TextFillColor * TextGap TextHeight TextMovement TextOverride TextPosition TextPrefix TextRotation TextString TextStyle TextSuffix ToleranceDisplay ToleranceHeightScale ToleranceJustification ToleranceLowerLimit TolerancePrecision ToleranceSuppressLeadingZeroes ToleranceSuppressTrailingZeroes ToleranceSuppressZeroFeet ToleranceSuppressZeroInches ToleranceUpperLimit TrueColor UnitsFormat VerticalTextPosition Visible 151 .

Bricscad V10 .Developer Reference DimRadial object Class AcadDimRadial Member of BricscadDb A dimension measuring the radius of a circle or arc. use the following methods and properties: Methods Properties ArrayPolar AltRoundDistance ArrayRectangular AltSuppressLeadingZeroes Copy AltSuppressTrailingZeroes Delete AltSuppressZeroFeet GetBoundingBox AltSuppressZeroInches GetExtensionDictionary AltTextPrefix GetXData AltTextSuffix Highlight AltTolerancePrecision IntersectWith AltToleranceSuppressLeadingZeroes Mirror AltToleranceSuppressTrailingZeroes Mirror3D AltToleranceSuppressZeroFeet Move AltToleranceSuppressZeroInches Rotate AltUnits Rotate3D AltUnitsFormat ScaleEntity AltUnitsPrecision SetXData AltUnitsScale TransformBy Application Update ArrowheadBlock ArrowheadSize ArrowheadType CenterMarkSize CenterType DecimalSeparator DimensionLineColor DimLineSuppress Document ExtensionLineOffset Fit ForceLineInside FractionFormat Handle HasExtensionDictionary HorizontalTextPosition Hyperlinks Layer LeaderLength LinearScaleFactor Linetype LinetypeScale Lineweight Measurement Normal ObjectID ObjectName OwnerID PlotStyleName PrimaryUnitsPrecision Rotation 152 . To access the DimRadial object. use the AddDimRadial method. To create a radial dimension.

COM (Component Object Model) Methods Properties RoundDistance ScaleFactor StyleName SuppressLeadingZeroes SuppressTrailingZeroes SuppressZeroFeet SuppressZeroInches TextColor TextGap TextHeight TextInside TextInsideAlign TextMovement TextOutsideAlign TextOverride TextPosition TextPrecision TextPrefix TextRotation TextString TextStyle TextSuffix ToleranceDisplay ToleranceHeightScale ToleranceJustification ToleranceLowerLimit TolerancePrecision ToleranceSuppressLeadingZeroes ToleranceSuppressTrailingZeroes ToleranceSuppressZeroFeet ToleranceSuppressZeroInches ToleranceUpperLimit TrueColor UnitsFormat VerticalTextPosition Visible 153 .

use the following methods and properties: Methods Properties ArrayPolar AltRoundDistance ArrayRectangular AltSuppressLeadingZeroes Copy AltSuppressTrailingZeroes Delete AltSuppressZeroFeet Erase AltSuppressZeroInches GetBoundingBox AltTextPrefix GetExtensionDictionary AltTextSuffix GetXData AltTolerancePrecision Highlight AltToleranceSuppressLeadingZeroes IntersectWith AltToleranceSuppressTrailingZeroes Mirror AltToleranceSuppressZeroFeet Mirror3D AltToleranceSuppressZeroInches Move AltUnits Rotate AltUnitsFormat Rotate3D AltUnitsPrecision ScaleEntity AltUnitsScale SetXData Application TransformBy Arrowhead1Block Update Arrowhead1Type Arrowhead2Block Arrowhead2Type ArrowheadSize Color DecimalSeparator DimensionLineColor DimensionLineExtend DimLine1Suppress DimLine2Suppress DimLineInside Document EntityName EntityType ExtensionLineColor ExtensionLineExtend ExtensionLineOffset ExtLine1Suppress ExtLine2Suppress Fit ForceLineInside FractionFormat Handle HasExtensionDictionary HorizontalTextPosition Hyperlinks Layer LinearScaleFactor Linetype LinetypeScale 154 . use the AddDimRotated method.Bricscad V10 . To create a radial dimension. To access the DimRotatel object.Developer Reference DimRotated object Class AcadDimRotated Member of BricscadDb A dimension measuring the radius of a circle or arc.

COM (Component Object Model) Methods Properties Lineweight Measurement Normal Parent PlotStyleName PrimaryUnitsPrecision Rotation RoundDistance ScaleFactor StyleName SuppressLeadingZeroes SuppressTrailingZeroes SuppressZeroFeet SuppressZeroInches TextColor TextGap TextHeight TextInside TextInsideAlign TextMovement TextOutsideAlign TextOverride TextPosition TextPrecision TextPrefix TextRotation TextString TextStyle TextSuffix ToleranceDisplay ToleranceHeightScale ToleranceJustification ToleranceLowerLimit TolerancePrecision ToleranceSuppressLeadingZeroes ToleranceSuppressTrailingZeroes ToleranceSuppressZeroFeet ToleranceSuppressZeroInches ToleranceUpperLimit UnitsFormat VerticalTextPosition Visible 155 .

To create or open a Document object. use the New or Open methods. The active document (Bricscad drawing) can be accessed using ThisDrawing in VBA or through the ActiveDocument property in VB. To edit or query a Document object.Developer Reference Document object Class AcadDocument Member of BricscadApp The Document object represents the active Bricscad drawing. properties and events: Methods Properties Events Activate Active Activate AuditInfo ActiveDimStyle BeginClose Close ActiveLayer BeginCommand CopyObjects ActiveLayout BeginDocClose EndUndoMark ActiveLinetype BeginDoubleClick Export ActivePViewport BeginLisp GetVariable ActiveSelectionSet BeginPlot HandleToObject ActiveSpace BeginRightClick Import ActiveTextStyle BeginSave LoadShapeFile ActiveUCS BeginShortcutMenuCommand New ActiveViewport BeginShortcutMenuDefault ObjectIdToObject Application BeginShortcutMenuEdit PurgeAll Blocks BeginShortcutMenuGrip Regen Database BeginShortcutMenuOsnap Save Dictionaries Deactivate SaveAs DimStyles EndCommand SendCommand ElevationModelSpace EndLisp SetVariable ElevationPaperSpace EndPlot StartUndoMark FileDependencies EndSave Wblock FullName EndShortcutMenu Groups LayoutSwitched Height LispCancelled HWND ObjectAdded Layers ObjectErased Layouts ObjectModified Limits SelectionChanged Linetypes WindowChanged Materials WindowMovedOrResized ModelSpace MSpace Name ObjectSnapMode PaperSpace Path PickfirstSelectionSet Plot PlotConfigurations Preferences ReadOnly RegisteredApplications Saved SectionManager SelectionSets SummaryInfo Textstyles 156 . use the following methods.Bricscad V10 .

use the following methods and properties: Methods Properties Add Close Item Open Application Count 157 . but can be accessed with the following properties: Properties Application ContourLinesPerSurface DisplaySilhouette MaxActiveViewports Parent RenderSmoothness SegmentPerPolyline SolidFill TextFrameDisplay XRefLayerVisibility Documents collection object Class AcadDocuments Member of BricscadApp The Documents collection object is the collection of all open documents (drawings).The DocumentPreferences object has no applicable methods.COM (Component Object Model) Methods Properties UserCoordinateSystems Utility Viewports Views Width WindowState WindowTitle Events DocumentPreferences object Class AcadDatabasePreferences Member of BricscadDb The DocumentPreferences object contains certain settings for the active document (drawing). To access the Documents collection object. The settings of a document that are saved in a drawing (not the registry).

To access the Ellipse object. use the following methods and properties.Bricscad V10 . Methods Properties ArrayPolar Application ArrayRectangular Area Copy Center Delete Document GetBoundingBox EndAngle GetExtensionDictionary EndParameter GetXData EndPoint Highlight Handle IntersectWith HasExtensionDictionary Mirror Hyperlinks Mirror3D Layer Move Length Offset Linetype Rotate LinetypeScale Rotate3D Lineweight ScaleEntity MajorAxis SetXData MajorRadius TransformBy Material * Update MinorAxis MinorRadius Normal ObjectID ObjectName OwnerID PlotStyleName RadiusRatio StartAngle StartParameter StartPoint TrueColor Visible 158 .Developer Reference Ellipse object Class AcadEllipse Member of BricscadDb The Ellipse object represents an elliptical arc or full ellipse. To create an ellipse use the AddEllipse method.

It includes the following methods and properties: Methods Properties ArrayPolar Application ArrayRectangular Document Copy Handle Delete HasExtensionDictionary GetBoundingBox Hyperlinks GetExtensionDictionary Layer GetXData Linetype Highlight LinetypeScale IntersectWith Lineweight Mirror Material * Mirror3D ObjectID Move ObjectName Rotate OwnerID Rotate3D PlotStyleName ScaleEntity TrueColor SetXData Visible TransformBy Update 159 .COM (Component Object Model) Entity object Class AcadEntity Member of BricscadDb The Entity object exposes methods and properties common to All Drawing objects.

Bricscad V10 . To query or edit an existing external reference.Developer Reference ExternalReference object Class AcadExternalReference Member of BricscadDb An instance of an external reference inserted into a drawing. use the following methods and properties: Methods Properties ArrayPolar Application ArrayRectangular Document Copy EffectiveName Delete Handle GetAttributes HasAttributes GetBoundingBox HasExtensionDictionary GetExtensionDictionary Hyperlinks GetXData InsertionPoint Highlight InsUnits IntersectWith InsUnitsFactor Mirror IsDynamicBlock Mirror3D Linetype Move LinetypeScale Rotate Lineweight Rotate3D Material * ScaleEntity Name SetXData Normal TransformBy ObjectID Update ObjectName OwnerID Path PlotStyleName Rotation TrueColor Visible XEffectiveScaleFactor XScaleFactor YEffectiveScaleFactor YScaleFactor ZEffectiveScaleFactor ZScaleFactor 160 .

use the following methods and properties: Methods Properties AppendItems Application Delete Color GetExtensionDictionary Count GetXData Document Highlight Handle Item HasExtensionDictionary RemoveItems Layer SetXData Linetype Update LinetypeScale Lineweight Name Parent PlotStyleName Visible 161 . use the Add3DFace method.COM (Component Object Model) Face3D object Class Acad3DFace Member of BricscadDb The Face3D object represents a 3D triangle or quadrilateral plane section. To create a 3D face. To edit or query a 3D Face. use the following methods and properties: Methods Properties ArrayPolar Application ArrayRectangular Color Copy Coordinates Delete Document Erase EntityName GetBoundingBox EntityType GetExtensionDictionary Handle GetInvisibleEdge HasExtensionDictionary GetXData Hyperlinks Highlight Layer IntersectWith Linetype Mirror LinetypeScale Mirror3D Lineweight Move Parent Rotate PlotStyleName Rotate3D VisibilityEdge1 ScaleEntity VisibilityEdge2 SetXData VisibilityEdge3 SetInvisibleEdge VisibilityEdge4 TransformBy Visible Update Group object Class AcadGroup Member of BricscadDb To access the Group object.

use the following methods and properties: Methods Properties Add Item Application Count 162 . use the following methods and properties: Methods Properties Add Application Delete Count GetExtensionDictionary Document GetXData Handle Item HasExtensionDictionary SetXData Parent Hyperlink object Class AcadHyperlink Member of BricscadDb To access the Hyperlink object. use the following methods and properties: Methods Properties Delete Application URL URLDescription URLNamedLocation Hyperlinks collection object Class AcadHyperlinks Member of BricscadDb To access the Hyperlinks object.Bricscad V10 .Developer Reference Groups collection object Class AcadGroups Member of BricscadDb To access the Groups collection object.

COM (Component Object Model) Hatch object Class AcadHatch Member of BricscadDb The Hatch object represents an area fill consisting of a pattern of lines. first create the Hatch object using the AddHatch method. To create a hatch. To query or edit an existing block reference. use the following methods and properties: Methods Properties AppendInnerLoop Application AppendOuterLoop Area ArrayPolar AssociativeHatch ArrayRectangular Document Copy Elevation Delete GradientAngle GetBoundingBox GradientCentered GetExtensionDictionary GradientColor1 GetLoopAt GradientColor2 GetXData GradientName Highlight Handle InsertLoopAt HasExtensionDictionary IntersectWith HatchObjectType Mirror HatchStyle Mirror3D Hyperlinks Move ISOPenWidth Rotate Layer Rotate3D Linetype ScaleEntity LinetypeScale SetPattern Lineweight SetXData Material TransformBy Normal Update NumberOfLoops ObjectID ObjectName OwnerID PatternAngle PatternDouble PatternName PatternScale PatternSpace PatternType TrueColor Visible 163 .

To create a raster image use the AddImage method.Bricscad V10 . To edit or query a raster image.Developer Reference Image object Class AcadRasterImage Member of BricscadDb The Image object represents a raster image consisting of a rectangular grid of small squares or dots known as pixels. use the following methods and properties: Methods Properties ArrayPolar Application ArrayRectangular Color Copy Document Delete EntityName Erase EntityType GetBoundingBox Handle GetExtensionDictionary HasExtensionDictionary GetXData Height Highlight Hyperlinks IntersectWith ImageFile Mirror ImageHeight Mirror3D ImageVisibility Move ImageWidth Rotate Layer Rotate3D Linetype ScaleEntity LinetypeScale SetXData Lineweight TransformBy Origin Update Parent PlotStyleName Visible Width 164 .

To access the Ellipse object.COM (Component Object Model) InfiniteLine object Class AcadXline Member of BricscadDb The InfiteLine object represents an line extending infinitely in both directions. To create an infinite line. use the AddInfiniteLine method. Methods Properties ArrayPolar Application ArrayRectangular BasePoint Copy Color Delete DirectionVector GetBoundingBox Document GetExtensionDictionary Handle GetXData HasExtensionDictionary Highlight Hyperlinks IntersectWith Layer Mirror Linetype Mirror3D LinetypeScale Move Lineweight Offset PlotStyleName Rotate SecondPoint Rotate3D TrueColor ScaleEntity Visible SetXData TransformBy Update 165 . use the following methods and properties.

The Layer object provides access to various methods and properties for setting and obtaining layer characteristics such as color. linetype.Developer Reference Layer object Class AcadLayer Member of BricscadDb A layer is a grouping of drawing entities into logical sets. use the following methods and properties: Methods Properties Delete Application GetExtensionDictionary Description GetXData Document SetXData Freeze Handle HasExtensionDictionary LayerOn Linetype Lineweight Lock Material Name ObjectID ObjectName OwnerID PlotStyleName Plottable TrueColor Used ViewportDefault Layers collection object Class AcadLayers Member of BricscadDb The Layers collection object is the collection of all layers in a drawing. use the following methods and properties: Methods Properties Add Application Delete Count GenerateUsageData Document GetExtensionDictionary Handle GetXData HasExtensionDictionary Item ObjectID SetXData ObjectName OwnerID 166 .Bricscad V10 . To access the Layers collection object. To access the Layer object. and on/off status.

COM (Component Object Model) Layout object Class AcadLayout Member of BricscadDb To access the Layout object. use the following methods and properties: Methods Properties Add Application Delete Count GetExtensionDictionary Document GetXData Handle Item HasExtensionDictionary SetXData ObjectID ObjectName OwnerID 167 . use the following methods and properties: Methods Properties CopyForm Application Delete Block GetCanonicalMediaNames CanonicalMediaName GetCustomScale CenterPlot GetExtensionDictionary ConfigName GetLocaleMediaName Document GetPaperMargins Handle GetPaperSize HasExtensionDictionary GetPlotDeviceNames ModelType GetPlotStyleTableNames Name GetWindowToPlot PaperUnits GetXData Parent RefreshPlotDeviceInfo PlotHidden SetCustomScale PlotOrigin SetWindowToPlot PlotRotation SetXData PlotType PlotViewportBorders PlotWithLineweights PlotWithPlotStyles ScaleLineweights ShowPlotStyles StandardScale StyleSheet TabOrder UseStandardScale ViewToPlot Layouts collection object Class AcadLayouts Member of BricscadDb To access the Layouts collection object.

To create a leader. To access the Leader object.Bricscad V10 . use the AddLeader method. such as a dimension. use the following methods and properties: Methods Properties ArrayPolar Annotation ArrayRectangular Application Copy Color Delete Coordinates Erase Document GetBoundingBox EntityName GetExtensionDictionary EntityType GetXData Handle Highlight HasExtensionDictionary IntersectWith Hyperlinks Mirror Layer Mirror3D Linetype Move LinetypeScale Rotate Lineweight Rotate3D Normal ScaleEntity Parent SetXData PlotStyleName TransformBy StyleName Update TrueColor Type VerticalTextPosition Visible 168 .Developer Reference Leader object Class AcadLeader Member of BricscadDb The Leader object represents a line leading from a feature of the drawing to an annotation.

use the AddLine method. To create a line. use the following methods and properties: Methods Properties Delete Application GetXData Description GetExtensionDictionary Document SetXData Handle HasExtensionDictionary Name ObjectID ObjectName OwnerID 169 . To access the Linetype object. use the following methods and properties: Methods Properties ArrayPolar Angle ArrayRectangular Application Copy Document Delete Delta Erase EndPoint GetBoundingBox Handle GetExtensionDictionary HasExtensionDictionary GetXData Hyperlinks Highlight Layer IntersectWith Length Mirror Linetype Mirror3D LinetypeScale Move Lineweight Offset Normal Rotate ObjectID Rotate3D ObjectName ScaleEntity OwnerID SetXData PlotStyleName TransformBy StartPoint Update Thickness TrueColor Visible Linetype object Class AcadLineType Member of BricscadDb The Linetype object defines the appearance of a line. dots.COM (Component Object Model) Line object Class AcadLine Member of BricscadDb The Line object represents a single line segment. To edit or obtain information about a line. and blank spaces. A line can be solid (continuous) or a pattern of dashes.

use the AddPolyline method. To create a polyline. To edit or obtain information about a line. To access the Linetypes collection object.Bricscad V10 . use the following methods and properties: Methods Properties Add Application Delete Count GetExtensionDictionary Document GetXData Handle Item ObjectID Load ObjectName SetXData OwnerID Parent LWPolyline object Class AcadLWPolyline Member of BricscadDb The LWPolyline (lightweight polyline) object represents a drawing entity composed of one or more connected line or arc segments treated as a single entity.Developer Reference Linetypes collection object Class AcadLineTypes Member of BricscadDb The Linetypes collection object is the collection of all line types in a drawing. use the following methods and properties: Methods Properties AddVertex Application ArrayPolar Area ArrayRectangular Closed Copy ConstantWidth Delete Coordinate Explode Coordinates GetBoundingBox Document GetBulge Elevation GetExtensionDictionary Handle GetWidth HasExtensionDictionary GetXData Hyperlinks Highlight Layer IntersectWith Length Mirror Linetype Mirror3D LinetypeGeneration Move LinetypeScale Offset Lineweight Rotate Material Rotate3D Normal ScaleEntity ObjectID SetBulge ObjectName SetWidth OwnerID SetXData PlotStyleName TransformBy Thickness Update TrueColor Visible 170 .

some or all of which may be currently be displayed. When a menu group is loaded as the base menu. To remove a menu from the current menu bar. The PopupMenus collection contains all the menus within the menu group and can be accessed through the Menus property. Likewise. use the InsertInMenuBar method found on the PopupMenu object. Methods Properties Save SaveAs Unload Application MenuFileName Menus Name Parent Toolbars Type 171 . To display a menu on the menu bar. Any menu from a currently loaded menu group can be displayed on the menu bar. the Type property for that menu group will be set to acBaseMenuGroup. use the RemoveFromMenuBar method also found on the PopupMenu object. Each menu group contains a PopupMenus collection and a Toolbars collection. the Toolbars collection contains all the toolbars within the menu group and can be accessed through the Toolbars property. You cannot create or delete the MenuBar collection. To query the menus currently displayed on the menu bar.COM (Component Object Model) MenuBar object Class AcadMenuBar Member of BricscadApp The MenuBar object is a collection object. It contains all the menus that are currently displayed on the menu bar. use the following methods and properties: Methods Properties Item Application Count Parent MenuGroup object Class AcadMenuGroup Member of BricscadApp A menu group contains menus and toolbars.

The menu group is then added to the MenuGroups collection. To edit or query the menu groups in this collection. To load a new menu group into this collection. individual menus can be inserted into the menu bar and toolbars can be displayed. use the Unload method found on the MenuGroup object. some or all of which may be displayed on the menu bar. This method loads a specified customization file that contains the menu group.Developer Reference MenuGroups object Class AcadMenuGroups Member of BricscadApp The MenuGroups collection contains all the menu groups that are loaded in the current Bricscad session. The Load method also provides a mechanism to load the menu group as the base menu in the same manner as the MENU command in Bricscad. Once loaded. Menu groups are loaded into the Bricscad session using the Load method. To unload a menu group from this collection. the menu groups also contain all the toolbars that are available to the current Bricscad session. use the Load method. In addition to the menus. Menu groups contain all the menus that are available to the Bricscad session.Bricscad V10 . use the following methods and properties: Methods Properties Item Load Application Count Parent 172 .

) To edit or query the ModelSpaceEntities collection object.COM (Component Object Model) ModelSpace collection object Class AcadModelSpace Member of BricscadDb The ModelSpace object is a special collection object containing all model space entities. use the following methods and properties: Methods Properties Add3DFace Application Add3DMesh BlockScaling Add3DPoly Comments AddArc Count AddAttributeDef Document AddBox Explodable AddCircle Handle AddCone HasExtensionDictionary AddCylinder IsDynamicBlock AddDim3PointAngular IsLayout AddDimAligned IsXRef AddDimAngular Layout AddDimDiametric Name AddDimOrdinate ObjectID AddDimRadial ObjectName AddDimRotated Origin AddEllipse OwnerID AddHatch Path AddImage Units AddInfiniteLine XRefDatabase AddLeader AddLightWeightPolyline AddLine AddMText AddPointEntity AddPolyfaceMesh AddPolyline AddRay AddShape AddSolid AddSphere AddSpline AddText AddTolerance AddTorus AddTrace AddWedge AttachExternalReference InsertBlock Item Reload SetXData Unload 173 . (The other is paper space. The model space is one of two primary spaces where Bricscad objects reside.

To modify or obtain information about a point entity.Bricscad V10 . use the following methods and properties: Methods Properties Events ArrayPolar Application Modified ArrayRectangular AttachmentPoint Copy BackgroundFill Delete Document GetBoundingBox DrawingDirection GetExtensionDictionary Handle GetXData HasExtensionDictionary Highlight Height IntersectWith Hyperlinks Mirror InsertionPoint Mirror3D Layer Move Linetype Rotate LinetypeScale Rotate3D Lineweight ScaleEntity Normal SetXData Parent TransformBy PlotStyleName Update Rotation StyleName TextString Visible Width 174 .Developer Reference MText object Class AcadMText Member of BricscadDb The MText object represents multi-line text. or a paragraph of characters that fits within a boundary. use the AddMText or method. To create an MText object.

use the following methods and properties: Methods Properties Add3DFace Application Add3DMesh BlockScaling Add3DPoly Comments AddArc Count AddAttributeDef Document AddBox Explodable AddCircle Handle AddCone HasExtensionDictionary AddCylinder IsDynamicBlock AddDim3PointAngular IsLayout AddDimAligned IsXRef AddDimAngular Layout AddDimDiametric Name AddDimOrdinate ObjectID AddDimRadial ObjectName AddDimRotated Origin AddEllipse OwnerID AddHatch Path AddImage Units AddInfiniteLine XRefDatabase AddLeader AddLightWeightPolyline AddLine AddMText AddPointEntity AddPolyfaceMesh AddPolyline AddRay AddShape AddSolid AddSphere AddSpline AddText AddTolerance AddTorus AddTrace AddWedge AttachExternalReference InsertBlock Item Reload SetXData Unload 175 . (The other is model space. The paper space is one of two primary spaces where Bricscad objects reside.COM (Component Object Model) PaperSpace collection object Class AcadPaperSpace Member of BricscadDb The PaperSpace object is a special collection object containing all paper space entities.) To edit or query the PaperSpace object.

Bricscad V10 . use the following methods and properties: Methods Properties Add Application Delete Count GetExtensionDictionary Document GetXData Handle Item HasExtensionDictionary SetXData ObjectID ObjectName OwnerID 176 .Developer Reference PlotConfiguration object Class AcadPlotConfiguration Member of BricscadDb To access the PlotConfiguration object. use the following methods and properties: Methods Properties CopyForm Application Delete CanonicalMediaName GetCanonicalMediaNames CenterPlot GetCustomScale ConfigName GetExtensionDictionary Document GetLocaleMediaName Handle GetPaperMargins HasExtensionDictionary GetPaperSize ModelType GetPlotDeviceNames Name GetPlotStyleTableNames PaperUnits GetWindowToPlot Parent GetXData PlotHidden RefreshPlotDeviceInfo PlotOrigin SetCustomScale PlotRotation SetWindowToPlot PlotType SetXData PlotViewportBorders PlotWithLineweights PlotWithPlotStyles ScaleLineweights ShowPlotStyles StandardScale StyleSheet UseStandardScale ViewToPlot PlotConfigurations collection object Class AcadPlotConfigurations Member of BricscadDb To access the PlotConfigurations collection object.

z-coordinate location and displayed as one of several point symbols. use the following methods and properties: Methods Properties ArrayPolar Application ArrayRectangular Color Copy Coordinates Delete Document GetBoundingBox Handle GetExtensionDictionary HasExtensionDictionary GetXData Layer Highlight Linetype IntersectWith LinetypeScale Mirror Lineweight Mirror3D Material Move Normal Rotate ObjectID Rotate3D ObjectName ScaleEntity OwnerID SetXData PlotStyleName TransformBy Thickness Update TrueColor Visible 177 .COM (Component Object Model) Plot object Class AcadPlot Member of BricscadApp The set of methods and properties used for plotting layouts. as shown in following methods and properties: Methods Properties DisplayPlotPreview Application PlotToDevice BatchPlotProgress PlotToFile NumberOfCopies SetLayoutsToPlot QuietErrorMode StartBatchMode Point object Class AcadPoint Member of BricscadDb The Point object represents a drawing entity consisting of a single x. y. To modify or obtain information about a point entity. use the AddPoint method. To create a new point entity at a given location. The Plot object provides a means of obtaining and setting plot parameters.

use the following methods and properties: Methods Properties ArrayPolar Application ArrayRectangular Coordinate Copy Coordinates Delete Document GetBoundingBox Handle GetExtensionDictionary HasExtensionDictionary GetWidth Hyperlinks GetXData Layer Highlight Linetype IntersectWith LinetypeScale Mirror Lineweight Mirror3D Material Move NumberOfFaces Offset NumberOfVertices Rotate ObjectID Rotate3D ObjectName ScaleEntity OwnerID SetXData PlotStyleName TransformBy TrueColor Update Visible 178 . use the AddPolyfaceMesh method.Developer Reference PolyfaceMesh object Class AcadPolyfaceMesh Member of BricscadDb The PolyfaceMesh object is a 3D mesh consisting of a series of connected polygon faces.Bricscad V10 . To access a PolyfaceMesh object. To create a PolyfaceMesh object.

To access a PolygonMesh object. A mesh can be open or closed in either or both the M and N directions. To create a PolygonMesh object. It is identified as an M x N mesh where M represents the number of vertices in a row of the mesh and N represents the number of vertices in a column of the mesh. use the Add3DMesh method. A mesh that is closed in a given direction is considered to be continuous from the last row or column on to the first row or column. use the following methods and properties: Methods Properties AppendVertex Application ArrayPolar Coordinate ArrayRectangular Coordinates Copy Document Delete Handle Erase HasExtensionDictionary Explode Hyperlinks GetBoundingBox Layer GetExtensionDictionary Linetype GetXData LinetypeScale Highlight Lineweight IntersectWith Material Mirror MClose Mirror3D MDensity Move MVertexCount Rotate Nclose Rotate3D NDensity ScaleEntity NVertexCount SetXData Parent TransformBy PlotStyleName Update TrueColor Type Visible 179 .COM (Component Object Model) PolygonMesh object Class AcadPolygonMesh Member of BricscadDb The PolygonMesh object is a free-form mesh consisting of a series of connected polygon faces.

Bricscad V10 .Developer Reference Polyline object Class AcadPolyline Member of BricscadDb The Polyline object represents a drawing entity composed of one or more connected line or arc segments treated as a single entity. To edit or obtain information about a line. To create a polyline. use the following methods and properties: Methods Properties AppendVertex Application ArrayPolar Area ArrayRectangular Closed Copy ConstantWidth Delete Coordinate Explode Coordinates GetBoundingBox Document GetBulge Elevation GetExtensionDictionary Handle GetWidth HasExtensionDictionary GetXData Hyperlinks Highlight Layer IntersectWith Length Mirror Linetype Mirror3D LinetypeGeneration Move LinetypeScale Offset Lineweight Rotate Material Rotate3D Normal ScaleEntity ObjectID SetBulge ObjectName SetWidth OwnerID SetXData PlotStyleName TransformBy Thickness Update TrueColor Visible 180 . use the AddPolyline method.

you can then add a menu with the label "POP0". use the following methods and properties: Methods Properties AppendVertex Application ArrayPolar Closed ArrayRectangular Coordinate Copy Coordinates Delete Document Explode Handle GetBoundingBox HasExtensionDictionary GetExtensionDictionary Hyperlinks GetWidth Layer GetXData Length Highlight Linetype IntersectWith LinetypeScale Mirror Lineweight Mirror3D Material Move Normal Offset ObjectID Rotate ObjectName Rotate3D OwnerID ScaleEntity PlotStyleName SetBulge TrueColor SetWidth Visible SetXData TransformBy Update PopupMenu object Class AcadPopupMenu Member of BricscadApp There are two types of menus:   Pull-down menus (menus accessed from the menu bar) Shortcut menus (menus accessed from a mouse right-click) A pull-down menu can contain up to 999 menu items. This label will tell Bricscad that you want to create a shortcut menu. use the Add method to add a new PopupMenu object to the PopupMenus collection. If a pull-down or shortcut menu is taller than the available space on the graphics screen. To access the Polyline3D object. Bricscad ignores the extra items. You can identify the shortcut menu by using the ShortcutMenu property. To create a new shortcut menu. You can add new menu entries or separators to the menu using the AddMenuItem and AddSeparator methods. There can be only one shortcut menu per menu group. you must first delete any existing shortcut menu. 181 . If the number of menu items in a menu exceed these limits. it is truncated to fit on the screen. If there is no other shortcut menu in a menu group. You can create submenus using the AddSubmenu method. A shortcut menu can contain up to 499 menu items.COM (Component Object Model) Polyline3D object Class Acad3DPolyline Member of BricscadDb The Polyline3D object represents a polyline with three dimensional characteristics. The shortcut menu is a special menu in the base menu group. To create a new menu.

use the following methods and properties: Methods Properties Add Application Item Count RemoveMenuFromMenuBar Parent PopupMenuItem object Class AcadPopupMenuItem Member of BricscadApp A popup menu item represents an entry in a menu. some or all of which may be currently displayed. The index for a separator specifies where on the menu the separator is to appear. This tag uniquely identifies the menu item within a given menu. use the RemoveMenuFromMenuBar method.Developer Reference You can add the menu to the menu bar using the InsertInMenuBar method. To edit or query a menu. There are three types of popup menu items available:    Simple menu item (a menu that contains no submenu items) Separator (a border that appears on a menu) Submenu (a menu containing submenu items) Simple menu items have an index. Conversly. and a macro. To remove a menu from the menu bar. To load an existing menu into the current session. Separators have only an index. To create a new menu. you can remove menus from the menu bar by using the RemoveFromMenuBar method. To edit or query the PopupMenu objects in the collection. Instead. load the menu group containing the menu using the Load method. use the Add method. The label is a string that defines the content and formatting of the menu item as it appears to the user. use the following methods and properties: Methods Properties AddMenuItem Application AddSeparator Count AddSubMenu Name InsertInMenuBar NameNoMnemonic Item OnMenuBar RemoveFromMenuBar Parent ShortcutMenu Type PopupMenus object Class AcadPopupMenus Member of BricscadApp The PopupMenus collection represents all the menus loaded in the current AutoCAD session. Submenu items also have an index. a tag. they have an entire PopupMenu object associated with them. To find a PopupMenu object associated with a submenu item. They do not have a macro associated with them. Menu items may have identical labels within the menu. The macro is a series of commands that execute specific actions when a menu item is selected. The end user does not see the tag. use the SubMenu property. a label. To display a menu on the menu bar. 182 . The tag is a string consisting of alphanumeric and underscore (_) characters. The index is the position on the menu where the individual menu item is located. a label. use the InsertMenuInMenuBar method. but they cannot have identical tags. and a tag. This PopupMenu object is the menu that appears when the user selects the submenu item.Bricscad V10 .

or AddSubmenu methods of the PopupMenu object.COM (Component Object Model) To add a new menu item. AddSeparator. To edit or query an existing menu item. use the AddMenuItem. The object contains following properties: Properties Application Display Drafting Files OpenSave Output Profiles Selection System User 183 . use the following methods and properties: Methods Properties Delete Application Caption Check Enable EndSubMenuLevel HelpString Index Label Macro Parent SubMenu Tagstring Type Preferences object Class AcadPreferences Member of BricscadApp The Preferences object contains User Profile settings (stored in registry).

Developer Reference PViewport object Class AcadPViewport Member of BricscadDb The PViewport object represents a window that displays all or part of a drawing's paper space.Bricscad V10 . To access the PViewport object. use the following methods and properties: Methods Properties ArrayPolar Application ArrayRectangular ArcSmoothness Copy Center Delete Clipped Display CustomScale GetBoundingBox Direction GetExtensionDictionary DisplayLocked GetGridSpacing Document GetSnapSpacing GridOn GetXData Handle Highlight HasExtensionDictionary IntersectWith Height Mirror Hyperlinks LabelBlockId Mirror3D Layer Move LensLength Rotate Linetype Rotate3D LinetypeScale ScaleEntity Lineweight SetGridSpacing Material SetSnapSpacing ObjectID SetXData ObjectName SyncModelView OwnerID TransformBy PlotStyleName Update ShadePlot SheetView SnapBasePoint SnapOn SnapRotationAngle StandardScale Target TrueColor TwistAngle UCSIconAtOrigin UCSIconOn ViewportOn Visible VisualStyle Width 184 .

use the AddRay method.COM (Component Object Model) Ray object Class AcadRay Member of BricscadDb The Ray object is a line that starts at a designated point and runs infinitely. To access a ray. use the following methods and properties: Methods Properties ArrayPolar Application ArrayRectangular BasePoint Copy DirectionVector Delete Document GetBoundingBox Handle GetExtensionDictionary HasExtensionDictionary GetXData Hyperlinks Highlight Layer IntersectWith Linetype Mirror LinetypeScale Mirror3D Lineweight Move Material Rotate ObjectID Rotate3D ObjectName ScaleEntity OwnerID SetXData PlotStyleName TransformBy SecondPoint Update TrueColor Visible 185 . To create a Ray object.

Bricscad V10 . To edit or query a RegisteredApplication object. use the following methods and properties: Methods Properties ArrayPolar Application ArrayRectangular Area Boolean Centroid Copy Document Delete Handle Explode HasExtensionDictionary GetBoundingBox Layer GetExtensionDictionary Linetype GetXData LinetypeScale Highlight Lineweight IntersectWith Material Mirror MomentOfInertia Mirror3D Normal Move ObjectID Rotate ObjectName Rotate3D OwnerID ScaleEntity Perimeter SetXData PlotStyleName TransformBy PrincipalDirections Update PrincipalMoments ProductOfInertia RadiiOfGiration TrueColor Visible RegisteredApplication object Class AcadRegisteredApplication Member of BricscadDb An external application that has been added to the drawing. To register an application. use the following methods and properties: Methods Properties Delete Application GetExtensionDictionary Document GetXData Handle SetXData HasExtensionDictionary Name ObjectID ObjectName OwnerID 186 .Developer Reference Region object Class AcadCircle Member of BricscadDb To access the Region object. add it to the RegisteredApplications collection object using the Add method.

use the following methods and properties: Methods Properties AddItems Application Clear Count Copy Name Delete Visible Erase Highlight Item RemoveItems Select SelectAtPoint SelectByPolygon SelectOnScreen Update ScaleEntity SelectionSets collection object Class AcadSelectionSets Member of BricscadApp The SelectionSets collection object is the collection of all selection sets in a drawing. To access the SelectionSet object. To work with members of the RegisteredApplications collection object. use the following methods and properties: Methods Properties Add Application Delete Count GetExtensionDictionary Document GetXData Handle Item HasExtensionDictionary SetXData ObjectID ObjectName OwnerID SelectionSet object Class AcadSelectionSet Member of BricscadApp The SelectionSet object represents one or more drawing entities which can be operated on as a single unit.COM (Component Object Model) RegisteredApplications collection object Class AcadRegisteredApplications Member of BricscadDb The collection of all registered applications (external applications added to the drawing). To access the SelectionSets collection object. use the following methods and properties: Methods Properties Add Item Application Count 187 .

Developer Reference Shape object Class AcadPolyfaceMesh Member of BricscadDb To access the Shape object.Bricscad V10 . use the following methods and properties: Methods Properties ArrayPolar Application ArrayRectangular Document Copy Handle Delete HasExtensionDictionary GetBoundingBox Height GetExtensionDictionary Hyperlinks GetXData InsertionPoint Highlight Layer IntersectWith Linetype Mirror LinetypeScale Mirror3D Lineweight Move Material Rotate Name Rotate3D Normal ScaleEntity ObjectID SetXData ObjectName TransformBy ObliqueAngle Update OwnerID PlotStyleName Rotation ScaleFactor TrueColor Thickness Visible 188 .

use the following methods and properties: Methods Properties ArrayPolar Application ArrayRectangular Coordinate Copy Coordinates Delete Document GetBoundingBox Handle GetExtensionDictionary HasExtensionDictionary GetXData Hyperlinks Highlight Layer IntersectWith Linetype Mirror LinetypeScale Mirror3D Lineweight Move Material Rotate Normal Rotate3D ObjectID ScaleEntity ObjectName SetXData OwnerID TransformBy PlotStyleName Update Thickness TrueColor Visible 189 . To create a Solid object. use the AddSolid or CreateSolid methods.COM (Component Object Model) Solid object Class AcadSolid Member of BricscadDb The Solid object is a solid-filled polygon. To access a solid.

Developer Reference Solid3D object Class Acad3DSolid Member of BricscadDb To access the Solid3D object. use the following methods and properties: NOT IMPLEMENTED Methods Properties AddBox Application AddCone Parent AddCylinder AddEllipticalCone AddEllipticalCylinder AddExtrudedSolid AddExtrudedSolidAlongPath AddRegion AddResolvedSolid AddSphere AddTorus AddWedge 190 . use the following methods and properties: Methods Properties ArrayPolar Application ArrayRectangular Centroid Boolean Document CheckInterference Handle Copy HasExtensionDictionary Delete History GetBoundingBox Hyperlinks GetExtensionDictionary Layer GetXData Linetype Highlight LinetypeScale IntersectWith Lineweight Mirror Material Mirror3D MomentOfInertia Move ObjectID Rotate ObjectName Rotate3D OwnerID ScaleEntity PlotStyleName SectionSolid Position SetXData PrincipalDirections SliceSolid PrincipalMoments TransformBy ProductOfInertia Update RadiiOfGiration ShowHistory SolidType TrueColor Visible Volume SolidCreator object To access the SolidCreator object.Bricscad V10 .

use the AddSpline or method. To access a spline. use the following methods and properties: Methods Properties AddFitPoint Application ArrayPolar Area ArrayRectangular Closed Copy ControlPoints Delete Degree DeleteFitPoint Document ElevateOrder EndTangent GetBoundingBox FitPoints GetControlPoint FitTolerance GetExtensionDictionary Handle GetFitPoint HasExtensionDictionary GetWeight Hyperlinks GetXData IsPeriodic Highlight Isplanar IntersectWith IsRational Mirror Knots Mirror3D Layer Move Linetype Offset LinetypeScale PurgeFitData Lineweight Reverse NumberOfControlPoints Rotate NumberOfFitPoints Rotate3D ObjectID ScaleEntity ObjectName SetControlPoint OwnerID SetFitPoint PlotStyleName SetWeight StartTangent SetXData TrueColor TransformBy Visible Update Weights 191 . but does not necessarily pass through the intermediate control points.COM (Component Object Model) Spline object Class AcadSpline Member of BricscadDb The Spline object is a free-form curve generated along the path of three or more control points. The curve passes through the start and end points. To create a Spline object.

use the following methods and properties: Methods Properties Events ArrayPolar Alignment Modified ArrayRectangular Application Copy Backward Delete Document GetBoundingBox Handle GetExtensionDictionary HasExtensionDictionary GetXData Height Highlight Hyperlinks IntersectWith InsertionPoint Mirror Layer Mirror3D Linetype Move LinetypeScale Rotate Lineweight Rotate3D Material ScaleEntity Normal SetXData ObjectID TransformBy ObjectName Update ObliqueAngle OwnerID PlotStyleName Rotation ScaleFactor StyleName TextAlignmentPoint TextGenerationFlag TextString Thickness TrueColor UpsideDown Visible 192 . use the AddText method. To modify or obtain information about text.Bricscad V10 . To create text.Developer Reference Text object Class AcadText Member of BricscadDb The Text object represents single-line text.

To access the TextStyles collection object.COM (Component Object Model) TextStyle object Class AcadTextStyle Member of BricscadDb The TextStyle object contains the settings that determine the appearance of text. To access the TextStyle object. use the following methods and properties. Methods Properties Delete Application GetExtensionDictionary BigFontFile GetFont Document GetXData FontFile SetFont Handle SetXData HasExtensionDictionary Height LastHeight Name ObjectID ObjectName ObliqueAngle OwnerID TextGenerationFlag Width TextStyles collection object Class AcadTextStyles Member of BricscadDb The TextStyles collection object is the collection of all text styles in a drawing. use the following methods and properties: Methods Properties Add Application Delete Count GetExtensionDictionary Document GetXData Handle Item HasExtensionDictionary SetXData ObjectID ObjectName OwnerID 193 .

Bricscad V10 .Add. To modify or obtain information about a Tolerance object.Developer Reference Tolerance object Class AcadTolerance Member of BricscadDb The Tolerance object represents geometric tolerance. use the AddTolerance method. To edit or query a toolbar object . use the following methods and properties: Methods Properties ArrayPolar Application ArrayRectangular DimensionLineColor Copy DirectionVector Delete Document GetBoundingBox Handle GetExtensionDictionary HasExtensionDictionary GetXData Hyperlinks Highlight InsertionPoint IntersectWith Layer Mirror Linetype Mirror3D LinetypeScale Move Lineweight Rotate Normal Rotate3D ObjectID ScaleEntity ObjectName SetXData OwnerID TransformBy PlotStyleName Update ScaleFactor StyleName TextColor TextHeight TextString TextStyle TrueColor Visible Toolbar object Class AcadToolbar Member of BricscadApp To create a Toolbar use: Toolbars. To get a reference to a toolbar object use: Toolbars.Item. use the following methods and properties: Methods Properties AddSeparator Application AddToolbarButton Count Delete DockStatus Dock FloatingRows Float Height Item HelpString left Name Parent TagString top Visible Width 194 . To create tolerance.

To load an existing toolbar into the current session. To create tolerance. some or all of which may be currently displayed in AutoCAD. To create a new toolbar. load the menu group that contains the toolbar using the Load method. use the following methods and properties: Methods Properties Add Item Application Count LargeButtons Parent Trace object Class AcadTrace Member of BricscadDb The Trace object is a 2D solid line of specified width. use the AddTrace method.COM (Component Object Model) Toolbars object Class AcadToolbars Member of BricscadApp The Toolbars collection represents all the toolbars loaded in the current Bricscad session. To edit or query Toolbars collection. To modify or obtain information about a Trace object. use the following methods and properties: Methods Properties ArrayPolar Application ArrayRectangular Coordinate Copy Coordinates Delete Document GetBoundingBox Handle GetExtensionDictionary HasExtensionDictionary GetXData Hyperlinks Highlight Layer IntersectWith Linetype Mirror LinetypeScale Mirror3D Lineweight Move Normal Rotate ObjectID Rotate3D ObjectName ScaleEntity OwnerID SetXData PlotStyleName TransformBy Thickness Update TrueColor Visible 195 . use the Add method.

use the following methods and properties: Methods Properties Delete Application GetExtensionDictionary Document GetUCSMatrix Handle GetXData HasExtensionDictionary SetXData Name ObjectID ObjectName Origin OwnerID Xvector Yvector UserCoordSystems collection object Class AcadUCSs Member of BricscadDb The UserCoordSystems collection object is the collection of all user coordinate systems in a drawing. To access the UserCoordSystems collection object. use the following methods and properties: Methods Properties Add Application Delete Count GetExtensionDictionary Document GetXData Handle Item HasExtensionDictionary SetXData ObjectID ObjectName OwnerID 196 . To access the UserCoordSystem object. Y.Developer Reference UserCoordSystem object Class AcadUCS Member of BricscadDb The UserCoordSystem object represents a coordinate system defined by the user for determining the orientation of the X.Bricscad V10 . and Z axes.

Methods AngleFromXAxis AngleToReal AngleToString CreateTypedArray DistanceToReal GetAngle GetCorner GetDistance GetEntity GetInput GetInteger GetKeyword GetOrientation GetPoint GetReal GetRemoteFile GetString GetSubEntity InitializeUserInput IsRemoteFile IsURL LaunchBrowserDialog LogMessage PolarPoint Prompt PutRemoteFile RealToString TranslateCoordinates 197 .COM (Component Object Model) Utility object Class AcadUtility Member of BricscadApp The Utility object provides access to following methods for user input and data conversion.

To access the View object.Developer Reference View object Class AcadView Member of BricscadDb The View object defines a representation of a drawing or a portion of a drawing from a specific viewpoint in three-dimensional space.Bricscad V10 . To access the Views collection object. use the following methods and properties: Methods Properties Delete Application GetExtensionDictionary CategoryName GetXData Center SetXData Direction Document Handle HasExtensionDictionary HasVpAssociation Height LayerState LensLength LayoutId Name ObjectID ObjectName OwnerID Target Width Views collection object The Views collection object is the collection of all views in a drawing. use the following methods and properties: Methods Properties Add Item Application Count Handle Parent 198 .

use the following methods and properties: Methods Properties Add Application Delete Count DeleteConfiguration Document GetExtensionDictionary Handle GetXData HasExtensionDictionary Item ObjectID SetXData ObjectName OwnerID 199 . use the following methods and properties: Methods Properties Delete Application GetExtensionDictionary Center GetGridSpacing Direction GetSnapSpacing Document GetXData GridOn SetGridSpacing Handle SetSnapSpacing HasExtensionDictionary SetView Height SetXData LowerLeftCorner Split Name ZoomAll OrthoOn ZoomCenter Parent ZoomExtents SnapBasePoint ZoomPickWindow SnapOn ZoomScaled SnapRotationAngle ZoomWindow Target UCSIconAtOrigin UCSIconOn UpperRightCorner Width Viewports collection object Class AcadViewports Member of BricscadDb The Viewports collection object is the collection of all viewports in a drawing. To access the Viewports collection object. To access the Viewport object.COM (Component Object Model) Viewport object Class AcadViewport Member of BricscadDb The Viewport object represents a window that displays all or part of a drawing's model space.

Access these settings with the following properties: Methods Properties ActiveDocument AddinRun Application BeforeExit Name Close Parent Exit New Open Reinitialize Save Startup 200 . use the following methods and properties: Methods Properties Activate Application Close Caption GetWindowRect Document Scroll Parent SetWindowRect Visible WindowHandle32 WindowState Windows collection object The Windows collection object is the collection of all open windows. To access the Windows collection object. use the following methods and properties: Methods Properties Add Arrange CloseAll Item Application Count Parent Workspace object The Workspace object contains certain settings for the space used for working with drawing information.Developer Reference Window object The Window object represents an open window in a Bricscad session. To access the Window object.Bricscad V10 . Types of workspaces are paper space and model space.

ActiveDocument Where: objectVariable is a variable representing a Document object.. object is the Application object. AltFontFile property example 201 .. object is the ApplicationPreferences object. Syntax stringVariable = object. ActiveDocument property example AltFontFile property Sets or returns the alternate font file to be used... Specifies the location of the font file to use if Bricscad can't locate the original font and an alternate font is not specified in the font mapping file.AltFontFile = <string> Where: stringVariable is a variable for storing the name of the alternate font file. Examples.COM (Component Object Model) XRecord object Class AcadXRecord Member of BricscadDb To access the XRecord object. Examples . Syntax objectVariable = object.AltFontFile object. use the following methods and properties: Methods Properties Delete Application GetExtensionDictionary Document GetXData Handle GetXRecordData HasExtensionDictionary SetXData Name SetXRecordData ObjectID ObjectName OwnerID TranslateIDs Properties ActiveDocument property Returns the ActiveDocument object.

circle. Hatch. Object is an Arc.. object is a valid object.AutoSaveInterval = <integer> Where: integerVariable is an Integer variable (or value) setting the interval.Developer Reference Application property Returns the application object. LightweightPolyline.. Ellipse.. Examples.. Polyline. polyline.Application Where: objectVariable is a variable representing an Application object. Examples .. Syntax DoubleVariable = object.AutoSaveInterval object. AutoSaveInterval property example 202 .Area Where: DoubleVariable is a double-precision variable. Syntax integerVariable = object. Circle. Examples. Syntax objectVariable = object.Bricscad V10 . Application property example Area property Returns the area of an arc. ellipse. or spline. object is the ApplicationPreferences object. Region or Spline object.. Area property example AutoSaveInterval property Sets or returns the automatic save time interval in minutes.

Syntax object.. Circle.Circumference Where: DoubleVariable is a double-precision variable for storing the circumference. Object is a Circle object. CenterPlot property example Circumference property Returns the circumference of a circle.Caption where: stringVariable is a variable for storing the contents of the Caption... Note: View and Viewport is a 2D coordinate Variant (two-element array) Object is an Arc. PlotConfiguration CenterPlot: Boolean Examples .COM (Component Object Model) Caption property Returns the title of the Application window.. 203 . Ellipse. Examples. object is the Application object. Examples. Syntax DoubleVariable = object.Center Where: ObjectVariable is a Variant (three-element array of doubles) coordinates representing the center of the object. circle.. Syntax stringVariable = object. Center property example CenterPlot property Sets or returns the centering of a plot on a page property. Caption property example Center property Sets or returns the center point of an arc. view or viewport Syntax ObjectVariable = object. View or Viewport object. ellipse.CenterPlot Where: Object : Layout..

Closed Where: BooleanVariable specifies whether the object is closed (True) or not (False). object is the entity object for which you set or return the color.Developer Reference Closed property Sets or returns if the entity is closed. Examples. Syntax integerVariable = object. Polyline.Color object. you can also use constants shown below.. For the standard seven colors and the ByBlock and ByLayer designations. LightweightPolyline. Closed property example Color property Sets or returns the color of an entity. Object is the entity a 3DPolyline... Colors can be set and read as numeric index values ranging from 0 to 256. Syntax BooleanVariable = object.. Colors Constant acByBlock acByLayer acRed acYellow acGreen acCyan acBlue acMagenta acWhite Index Value 0 256 1 2 3 4 5 6 7 Examples. Spline for which you set or return the Closed property.Bricscad V10 .Color = <integer> where: integerVariable is a variable for storing the color index value. Color property example 204 . The default color designation is ByLayer (0).

COM (Component Object Model) Constant property Sets or returns whether the attribute mode is Constant (True) or not (False). Solid or Trace.Constant object. object is the DocumentPreferences object. Syntax BooleanVariable = object. Examples. LWPolyline.ContourLinesPerSurface object. Syntax objectVariable = object. object is the Attribute or AttributeReference object. PolyfaceMesh. preset. Examples . An attribute may exist as one of four optional modes: constant. Attribute properties example ContourLinesPerSurface property Sets or returns the number of contour lines per surface for entities in a given document. invisible. Coordinates property example 205 .ContourLinesPerSurface = <integer> where: integerVariable is a variable for storing the number of contour lines. The value of this property is stored in the ISOLINES system variable.Coordinates Where: objectVariable is a variable for storing the coordinates. Leader. object is the entity object for which you set or return the coordinates. 3Dpolyline. A constant attribute is one that maintains the same value in every occurrence... PointEntity. PolygonMesh.. ContourLinesPerSurface property example Coordinates property Sets or returns the coordinates of one of the following entities: 3Dface. Examples .. or verify.Constant = <Boolean> Where: BooleanVariable specifies whether the attribute mode is constant (True) or not (False). Syntax integerVariable = object.. Polyline..

Count Where: integerVariable is a Long integer variable for storing the Count value. Examples. Diameter property example 206 .Diameter = <double> Where: DoubleVariable is a double-precision variable.CursorSize object. Count property example CursorSize property Sets or returns cursor crosshairs size as a percentage of the total screen. Syntax DoubleVariable = object.. Examples. Examples ..Diameter object. Group.. Object is a Circle object.Developer Reference Count property Returns the number of items in All Collections. Syntax integerVariable = object.Bricscad V10 . object is the ApplicationPreferences object...CursorSize = <integer> Where: integerVariable is a Long Integer variable (or value) setting the cursor size. or SelectionSet objects Syntax IntegerVariable = object. Block. CursorSize property example Diameter property Sets or returns the diameter of a Circle object. MenuBar. Dictionary.. object is a collection object.

DockedVisibleLines property example 207 . Examples ...DisplaySilhouette object. Examples .COM (Component Object Model) DisplayScrollBars property Sets or returns whether the bottom and right scroll bars are visible. Syntax integerVariable = object. Syntax BooleanVariable = object.DisplaySilhouette = <Boolean> where: BooleanVariable determines whether the curves are displayed (True) or not (False). DisplayScrollBars property example DisplaySilhouette property Sets or returns whether the silhouette curves of solids are displayed. object is the PreferencesDisplay object.DisplayScrollBars object.. object is the PreferencesDisplay object.DockedVisibleLines = <integer> Where: integerVariable sets the number of lines. Syntax BooleanVariable = object. DisplaySilhouette property example DockedVisibleLines property Sets or returns the number of lines of text displayed in the command window.... The value of this property is stored in the DISPSILH system variable. Examples .DisplayScrollBars = <Boolean> Where: BooleanVariable determines whether the scroll bars are displayed (True) or not (False).DockedVisibleLines object. object is the DocumentPrefernces object.

EndAngle = <double> Where: DoubleVariable is a double-precision variable representing an angle (in radians)..EndAngle object.. ellipse. Examples. Object is an Arc... Syntax DoubleVariable = object. Ellipse.. or Line object.. Syntax ObjectVariable = object. EndAngle property example EndPoint property Returns the end point of an arc. Document property example Documents property Returns the documents collection object. Syntax object.Bricscad V10 . or line. Object is an Arc or Ellipse object.Document Where: object is the entity object for which you return the Document property.EndPoint Where: ObjectVariable is a Variant (three-element array of doubles) specifying the endpoint coordinates. Examples.Documents Examples. Syntax objectVariable = Application. Documents property example EndAngle property Sets or returns the ending angle of an arc or ellipse. EndPoint property example 208 ... Examples.Developer Reference Document property Returns the document associated with the object.

object is the Attribute or AttributeReference object. FullName property example GraphicsWinBackgrndColor property Sets or returns the background color of the graphics window. Attribute properties example FullName property Returns the name (including the path) of the application... object is the ApplicationPreferences object.. Syntax integerVariable = object. Examples. 209 . Examples . Syntax ColorsConstant = object. GraphicsWinBackgrndColor = ColorsConstant Where: ColorsConstant is one of the OLE_COLOR constants shown below.COM (Component Object Model) FieldLength property Sets or returns the field length for the attribute.. Syntax stringVariable = object. object is the Application object.FullName Where: stringVariable is a variable for storing the FullName.GraphicsWinBackgrndColor object.FieldLength object.FieldLength = <integer> Where: integerVariable is a long-integer variable (or value) specifying the field length.

ExternalReference or MInsertBlock attributes Examples.. object is a valid entity object. Examples.HasAttributes Where: BooleanVariable specifies whether the BlockRef . GraphicsWinBackgrndColor property example Handle property Returns the handle of the item.Developer Reference OLE Colors Constant vbBlack vbRed vbYellow vbGreen vbCyan vbBlue vbMagenta vbWhite Examples . Syntax BooleanVariable = object. Syntax stringVariable = object. Attribute properties example has 210 . Handle property example HasAttributes property Returns whether the BlockRef ..Handle Where: stringVariable is a variable for storing the Handle...Bricscad V10 ... ExternalReference or MInsertBlock has attributes (True) or not (False).

HistoryLines object. object is the object this property applies to. Syntax BooleanVariable = object. Raster. The Height property is used as a scale factor for both the height and width of the text. Viewport.. Application: The height of the main application window in pixels. Shape... GetExtensionDictionary method example Height property Sets or returns the height of following objects: Application.COM (Component Object Model) HasExtensionDictionary property Determines if the object has an extension dictionary associated with it.HistoryLines = <integer> Where: integerVariable sets the number of lines. AttributeReference. MText. object is the object or objects this property applies to.it can be one of the following: All Drawing Objects. DimStyle. Height property example HistoryLines property Sets or returns the number of lines in the text window that is kept in history. Attribute. MText. Text: The height of the uppercase text. Syntax integerVariable = object. PViewport.. View Syntax integerVariable = object. TextStyle. Viewport.Height Where: integerVariable is a double variable for storing the Height property. XRecord Group. Text. UCS. TextStyle. Dictionary. AttributeReference.. Layer. Examples. Height is measured in the drawing units. Linetype. object is the PreferencesDisplay object. View: The height of a view is the Y axis measurement of the area within a viewport that is used to display the model.. Toolbar. (Integer) Viewport: The height of a viewport is the Y axis measurement of the viewport frame. Raster: (Read-Only) The height of the raster image in pixels. HistoryLines property example 211 . Examples. Examples. RegisteredApplication.HasExtensionDictionary Where: BooleanVariable is a variable (True or False) specifying whether the window has an extension dictionary or not. View. (Integer) Attribute.

Bricscad V10 - Developer Reference

HorizontalAlignment property
Sets or returns the horizontal alignment for Attribute, AttributeReference or Text. It is set or returned using the HorizontalAlignment constants shown below. The default property is acHorizontalAlignmentLeft (0). Syntax integerVariable = object.HorizontalAlignment object.HorizontalAlignment = <integer> where: integerVariable is a variable (or the constant itself) representing the horizontal alignment value. object is the entity object for which you set or return the color. Horizontal Alignment Constant acHorizontalAlignmentLeft acHorizontalAlignmentCenter acHorizontalAlignmentRight acHorizontalAlignmentAligned acHorizontalAlignmentMiddle acHorizontalAlignmentFit

Index Value 0 1 2 3 4 5

Examples... Alignment property example

ImageFile property
Sets or returns the image file name. Syntax stringVariable = object.ImageFile object.ImageFile = <string> Where: stringVariable is a variable for storing the file name. object is a Raster object. Examples... AddImage method example

212

COM (Component Object Model)

ImageHeight property
Sets or returns the height of the image in current units. Syntax doubleVariable = object.ImageHeight object.ImageHeight = <double> Where: doubleVariable is a double-precision variable (or value) representing the image height (in current units). object is an Image object. Note: The .ImageHeight property specifies the height of the Raster in current units, whereas the .Height property specifies the height of the image in pixels. Examples... AddImage method example

ImageVisibility property
Sets or returns whether the image is visible. Syntax BooleanVariable = object.ImageVisibility object.ImageVisibility = <Boolean> where: BooleanVariable determines whether the image is visible (True) or not (False). object is an Raster object. Examples... AddImage method example

ImageWidth property
Sets or returns the width of the image in current units. Syntax doubleVariable = object.ImageWidth object.ImageWidth = <double> Where: doubleVariable is a double-precision variable (or value) representing the image width (in drawing units). object is an Raster object. Examples... AddImage method example

213

Bricscad V10 - Developer Reference

Index property
Specifies the index of the menu or toolbar item. Syntax iIndex = object.Index Where: iIndex is an Integer variable; Object is a PopupMenuItem, or a ToolbarItem object.

InsertionPoint property
Sets or returns the insertion point for one of the following objects: Attribute, AttributeReference, BlockInsert, ExternalReference, MText, MInsertBlock, Text, Tolerance. Syntax objectVariable = object.InsertionPoint object.InsertionPoint = <variant> where: objectVariable coordinates. a Variant (three-element array of doubles) specifying the InsertionPoint

object is one of the objects that has an InsertionPoint property. Examples... InsertionPoint property example

Invisible property
Sets or returns whether the Attribute or AttributeDef object is Invisible (True) or not (False). An invisible attribute will not be displayed or plotted. An attribute may exist as one of four optional modes: constant, preset, invisible, or verify. Syntax BooleanVariable = object.Invisible object.Invisible = <Boolean> Where: BooleanVariable specifies whether the attribute mode is visible or not. object is the Attribute or AttributeDef object. Examples... Attribute properties example

IsXRef property
Returns whether the Block represents an External Reference (True) or not (False). Syntax BooleanVariable = object.IsXRef Where: BooleanVariable specifies whether the Block is an External Reference. object is a Block object.

214

COM (Component Object Model)

Item property
Returns the member object at a given index in a collection, group, or selection set. Syntax objectVariable = object.Item(Index) Where: objectVariable is a variable representing the Item property. object is the Application object; Index is a Long integer representing the index number of the item. Examples... Item property example

Layer property
Sets or returns the layer of an entity. If you don't specify a layer, the current active layer is used for a new entity. If a layer is specified for an entity, the current active layer is ignored. Each layer has associated properties that can be set and queried through the Layer object. Syntax stringVariable = object.Layer object.Layer = <string> Where: stringVariable is a variable for storing the layer name. object is the applicable entity object; string is the name of a layer to be assigned to an entity. Examples... Layer property example

Length property
Returns the length of one of the following objects: Arc, Ellipse, Line, LWPolyline, Polyline, 3Dpolyline, Spline. Syntax doubleVariable = object.Length Where: doubleVariable is a double-precision variable for storing the length; object is the applicable entity object. Examples... Length property example

215

Bricscad V10 - Developer Reference

LineType property
Sets or returns the linetype of an entity. The default linetype is the linetype of the layer (BYLAYER). Applies to All Drawing objects, AttributeReference, Group or Layer Syntax stringVariable = object.Linetype object.Linetype = <string> Where: stringVariable is a variable for storing the linetype name. object is the applicable entity object; string is the name of a linetype to be assigned to an entity. Examples... LineType property example

LinetypeScale property
Sets or returns the linetype scale of an entity. Applies to All Drawing objects, AttributeReference or Group. The linetype scale of an object specifies the relative length of dash-dot linetypes per drawing unit. The value is a positive real number. The default is 1.0 Syntax doubleVariable = object.LinetypeScale object.LinetypeScale = <double> Where: doubleVariable is a double-precision variable or number for storing the linetype scale. object is the applicable entity object; double is the value of the linetype scale. Examples... LineTypeScale property example

216

COM (Component Object Model)

LineWeight property
Sets or returns the lineweight of a plotter pen. Applies to All Drawing objects, DatabasePreferences or Layer object Syntax intgerVariable = object.LineWeight object.LineWeight = <integer> Where: integerVariable is a variable (or AcLineWeight constant) representing the LineWeight of the object. object is All Drawing objects, DatabasePreferences or Layer

LineWeight constant

Value

LineWeight constant acLnWt040 acLnWt050 acLnWt053 acLnWt060 acLnWt070 acLnWt080 acLnWt090 acLnWt100 acLnWt106 acLnWt120 acLnWt140 acLnWt158 acLnWt200 acLnWt211

Value 40 50 53 60 70 80 90 100 106 120 142 158 200 211

acLnWtByLwDefault -3 acLnWtByBlock acLnWtByLayer acLnWt000 acLnWt005 acLnWt009 acLnWt013 acLnWt015 acLnWt018 acLnWt020 acLnWt025 acLnWt030 acLnWt035 -2 -1 0 5 9 13 15 18 20 25 30 35

217

object is the Application object..Bricscad V10 . object is the DatabasePreferences object. Syntax BooleanVariable = object.LogFileOn object.MaxActiveViewports = <integer> where: integerVariable is a variable for storing the number of viewports.MaxActiveViewports object.LogFileOn = <Boolean> where: BooleanVariable determines whether the commands are logged (True) or not (False).. MaxActiveViewports property Sets or returns the maximum number of active viewports (MAXACTVP). object is the PreferencesFiles object. object is the PreferencesOpenSave object.LocaleID where: longVariable is a variable for storing the contents of the LocaleID.LogFileName = <string> Where: stringVariable stores the name of the log file. Examples. Syntax longVariable = object. LogFileOn property Sets or returns whether the commands are logged to a file.Developer Reference LocaleID property Returns a long value that contains the Locale identification of the user. Syntax stringVariable = object.LogFileName object. LogFilePath property Sets or returns the log file path. MaxActiveViewports property example 218 . Syntax integerVariable = object.

Document. Linetype. Examples. PaperSpace. ModelSpace. Syntax integerVariable = object. SelectionSet.. such as the application. 219 .COM (Component Object Model) MaxAutoCADWindow property Sets or returns whether the Bricscad window should be maximized on startup. Syntax stringVariable = object.Mode = <integer> Where: integerVariable determines the mode based on one of the following constants. DimStyle.Name= <string> Where: stringVariable is a variable for storing the Name property. Block. object is an Application. SelectionSet. view.MaxAutoCADWindow = <Boolean> Where: BooleanVariable determines whether the window is maximized (True) or not (False). UserCoordSystem. Layer. object is the ApplicationPreferences object. or Viewport object. MaxAutoCADWindow property example Mode property Sets or returns the mode of the attribute definition..Name (when not read-only) object. AttributeMode Constant acAttributeModeNormal acAttributeModeInvisible acAttributeModeConstant acAttributeModeVerify acAttributeModePreset Index Value 0 1 2 4 8 Name property Sets (where applicable) and returns the name of an object. MenuGroup. document. object is the Attribute object.Mode object.object. Syntax BooleanVariable = object. Document. block. TextStyle. View. layer. TextStyle. Read-only for the following objects: Application.

Hatch. Solid. Layout. Raster. Tolerance. ExternalReference. MText. DimRadial.Developer Reference Read/Write for the following objects: Block. ObjectName property example 220 . Dim3PointAngular. Dictionary.ObjectName Where: object is a valid entity object. Normal property example ObjectName property Returns the class name of the entity. ToolbarItem.Normal object. Line . RegisteredApplication.Bricscad V10 . DimRotated. UCS. XRecord. Toolbar. Attribute. Linetype.. BlockRef. Name property example Normal property Property Normal As Vector Specifies or returns the x. DimRadialLarge. Region. DimStyle.. DimArcLength. LightweightPolyline. MInsertBlock. Leader. Group. Shape. BlockRef.. object is the applicable entity object. Layer. Examples. Circle. Text. MLeaderStyle. PlotConfiguration.. applies to following objects: Arc. Material. and z coordinates of the normal direction vector for the entity. DimDiametric. PopupMenu. Examples. Examples. y.Normal = <variant> where: objectVariable Variant (three-element array of doubles) representing a 3D normal unit vector in WCS. Point. Trace. Ellipse. DimOrdinate. View. Syntax object. Syntax objectVariable = object.. Section. Shape. DimAngular. AttributeReference. Section. Viewport.. DimAligned. Polyline.

COM (Component Object Model)

ObliqueAngle property
Sets or returns the oblique angle (in Radians) , which defines the object's "slant" away from its vertical axis. Syntax doubleVariable = object.Rotation object.Rotation= <double> where: doubleVariable is a double-precision variable (or value) representing the ObliqueAngle property. object is one of the objects that has a Rotation property: Attribute, AttributeReference, Shape, Text, TextStyle Examples... ObliqueAngle property example

Origin property
Sets or returns the origin of an applicable object in WCS coordinates. Applies to following objects: Block, Hatch, Layout, PlotConfiguration, Raster, UCS Syntax objectVariable = object.Origin object.Origin = <variant> Where: objectVariable is Variant (three-element array of doubles) specifying the 3D WCS coordinate origin of the object object is a Block, Hatch, Layout, PlotConfiguration, Raster or UCS object. Examples... Origin property example

PaperOrientation property
Sets or returns a value determining the orientation of paper for plotting. Syntax objectVariable = object.PaperOrientation object.PaperOrientation = <objectVariable> Where: objectVariable represents the paper orientation according to the constants shown below. object is the PlotManager object. Orientation Constant Landscape Portrait Index Value 1 0

221

Bricscad V10 - Developer Reference

PaperSpace property
Returns the PaperSpace collection object. Syntax ObjectVariable = object.PaperSpace Where: ObjectVariable is the PaperSpace collection for the document. object is the Document object. Examples... PaperSpace property example

Path property
Returns the path of the application (excluding the file name). Syntax stringVariable = object.Path Where: stringVariable is a variable for storing the path name. object is the Application object. Examples... Path property example

PlotManager property
Returns the application's PlotManager that controls the Plot settings. Syntax objectVariable = object.PlotManager Where: objectVariable is a variable representing the PlotManager object. object is the Application object. Examples... PlotManager property example

222

COM (Component Object Model)

PlotStyleName property
Sets or returns the PlotStyleName of an object.. Syntax objectVariable = object.PlotStyleName object.PlotStyleName= <string> Where: objectVariable is a variable representing the PlotStyleName object is the All Drawing objects, Group, Layer object. Examples...

Preferences property
Returns the Application level user Preferences object. Syntax objectVariable = object.Preferences Where: objectVariable is a variable representing the Preferences object. object is the Application object.

Preset property
Sets or returns whether the Attribute or AttributeDef is a preset attribute (True) or not (False). A preset attribute sets the attribute to its default, or preset, value when the user inserts the block. An attribute may exist as only one of four optional modes: constant, preset, invisible, or verify. Syntax BooleanVariable = object.Preset object.Preset = <Boolean> Where: BooleanVariable specifies whether the attribute mode is preset or not. object is the Attribute object. Examples... Attribute properties example

223

Bricscad V10 - Developer Reference

PromptString property
Returns the prompt for an attribute definition. This string appears when a block containing this attribute is inserted. Syntax stringVariable = object.PromptString Where: stringVariable represents the prompt string. object is the Attribute object. Examples... Attribute properties example

Radius property
Sets or returns the radius of an Arc or Circle object. Syntax DoubleVariable = object.Radius object.Radius = <double> Where: DoubleVariable is a double-precision variable; Object is an Arc or Circle object. Examples... Radius property example

ReadOnly property
Returns whether or not the document is a read-only document. Syntax BooleanVariable = object.ReadOnly Where: BooleanVariable is a variable (True or False) specifying whether or not the document is readonly. object is the Document object. Examples... ReadOnly property example

224

COM (Component Object Model)

RenderSmoothness property
Sets or returns the smoothness of shaded objects. The value of this property is stored in the FACETRES system variable. The valid range is 0.01 to 10.0, with the initial value 0.5. Syntax doubleVariable = object.RenderSmoothness object.RenderSmoothness = <integer> where: doubleVariable is a variable for storing the RenderSmoothness. object is the DocumentPrefernces object. Examples... RenderSmoothness property example

Rotation property
Sets or returns the rotation angle for an object. Syntax doubleVariable = object.Rotation object.Rotation = <double> where: doubleVariable is a double-precision variable (or value) representing the rotation angle in radians. object is one of the objects that has a Rotation property. Examples... Rotation property example

Saved property
Specifies whether the document contains any unsaved changes TRUE: The document has no unsaved changes. FALSE: The document has unsaved changes. Syntax BooleanVariable = object.Saved Where: BooleanVariable is a variable (True or False) specifying whether or not the document has any unsaved changes. object is the Document object. Examples... Saved property example

225

Bricscad V10 - Developer Reference

ScaleFactor property
Sets or returns the scale factor for an object. Applies to following objects: Attribute, AttributeReference, Dim3PointAngular, DimAligned, DimAngular, DimArcLength, DimDiametric, DimOrdinate, DimRadial, DimRadialLarge, DimRotated, DwfUnderlay, Leader, MLeaderStyle, Raster, Shape, Text, Tolerance Syntax doubleVariable = object.ScaleFactor object.ScaleFactor = <double> where: doubleVariable is a double-precision variable (or value) representing the ScaleFactor property. object is one of the objects that has a ScaleFactor property. Examples... ScaleFactor property example

SegmentPerPolyline property
Property SegmentPerPolyline As Long Sets or returns the number of line segments generated for each polyline. The value of this property is stored in the SPLINESEGS system variable. The value can range from 0 to 32767, with an initial value of 8. Syntax integerVariable = object.SegmentPerPolyline object.SegmentPerPolyline = <integer> Where: integerVariable is a variable for storing the SegmentPerPolyline. object is the DatabasePrefernces object. Examples... SegmentPerPolyline property example

SolidFill property
Sets or returns whether traces, solids and hatches are filled in. The value of this property is stored in the FILLMODE system variable. The initial value of this property is True. Syntax BooleanVariable = object.SolidFill object.SolidFill = <Boolean> Where: BooleanVariable determines whether fill is applied (True) or not (False). object is the DocumentPreferences object. Examples... SolidFill property example

226

MText. DimDiametric... DimRadial. ellipse. a Variant (three-element array of doubles) specifying the startpoint Object is an Arc.. DimAngular. Examples. StyleName property example 227 ..StartAngle object.StyleName = <string> where: stringVariable is a String representing the style name.StartPoint Where: ObjectVariableis coordinates. MLine. Syntax ObjectVariable = object. DimAligned... Syntax DoubleVariable = object. Leader. AttributeReference. StartAngle property example StartPoint property Returns the start point of an arc.COM (Component Object Model) StartAngle property Sets or returns the starting angle of an arc or ellipse. Object is an Arc or Ellipse object. Object The object this property applies to: Attribute. Examples. Text. DimArcLength. Tolerance. Ellipse. DimRadialLarge. or Line object. or line. EndPoint property example StyleName property Sets or returns the name of the style used with the object Syntax stringVariable = object. Dim3PointAngular. DimRotated.StyleName object. Examples. DimOrdinate.StartAngle= <double> Where: DoubleVariable is a double-precision variable representing an angle (in radians).

.. AttributeReference.. InsertionPoint property example TextFrameDisplay property Sets or returns whether the frame of the text object is displayed instead of the text itself (QTEXTMODE). AttributeReference. Examples.TextFrameDisplay = <Boolean> Where: BooleanVariable determines whether the frame is displayed (True) or not (False).TagString = <string> Where: stringVariable is a variable representing the tag.TextAlignmentPoint = <variant> Where: ObjectVariable iis a Variant (three-element array of doubles) specifying the coordinates of the Text Aligment Point. Syntax BooleanVariable = object. or Text object. Examples..Developer Reference TagString property Sets or returns the attribute tag. which identifies each occurrence of the attribute. Syntax stringVariable = object. Object is an Attribute.. object is the DocumentPreferences object. Examples. Syntax ObjectVariable = object.Bricscad V10 .TextFrameDisplay object.. object.TextAlignmentPoint object. TextFrameDisplay property example 228 .TagString object. or Text object. Attribute properties example TextAlignmentPoint property Sets or returns the Alignment point for an Attribute. Object is an Attribute or AttributeReference.

. Text.COM (Component Object Model) TextGenerationFlag property Sets or returns the text generation flags. It is applicable to an Attribute. or Text object. Circle.TextString where: stringVariable is a String representing the text contained in the applicable object. Point.. TextFlag Constant acTextFlagNormal acTextFlagBackward acTextFlagUpsideDown Index Value 0 2 4 TextString property Sets or returns the text string for an Attribute. The thickness specifies the distance a 2D object is extruded above or below its elevation Syntax DoubleVariable = object.. Thickness property example 229 . Solid. or Text object.TextGenerationFlag = <integer> Where: integerVariable is an Integer (or the constant itself) representing the TextFlag. using the TextFlag constants shown below. or Trace object. Syntax stringVariable = object. TextString property example Thickness property Sets or returns the thickness of an object. Object is an Arc.Thickness = <double> Where: DoubleVariable is a double-precision variable representing the thickness.. Polyline. Syntax integerVariable = object. Example. Examples. Object is the name of a Text object or an object containing text. AttributeReference. AttributeDef.Thickness object.TextGenerationFlag object. Object is the name of a Text object or an object containing text. Line.

Bricscad V10 ..URL object. object is the Block object.. Insert Units Constant acInsertUnitsUnitless acInsertUnitsInches acInsertUnitsFeet acInsertUnitsMiles acInsertUnitsMillimeters acInsertUnitsCentimeters acInsertUnitsMeters acInsertUnitsKilometers acInsertUnitsMicroinches acInsertUnitsMils acInsertUnitsYards Index Value 0 1 2 3 4 5 6 7 8 9 10 Insert Units Constant acInsertUnitsAngstroms acInsertUnitsNanometers acInsertUnitsMicrons acInsertUnitsDecimeters acInsertUnitsDecameters acInsertUnitsHectometers acInsertUnitsGigameters Index Value 11 12 13 14 15 16 17 acInsertUnitsAstronomicalUnits 18 acInsertUnitsLightYears acInsertUnitsParsecs 19 20 URL property Sets or returns the URL for a Hyperlink object. Example. Object is a Hyperlink object.Units = <integer> Where: integerVariable is a variable (or the constant itself) represents the AcInsertUnits. Syntax integerVariable = object.Developer Reference Units property Sets or returns the native units of measure for the block.URL = <string> where: stringVariable is a String representing the text contained in the applicable object.Units object. Syntax stringVariable = object. URL property example 230 .

COM (Component Object Model) VBE property Returns the Visual Basic for Applications editor object. object is the Application object. preset. An attribute may exist as only one of four optional modes: constant. Syntax stringVariable = object..VBE Where: objectVariable is a variable representing the VBE object.Verify = <Boolean> Where: BooleanVariable specifies whether the attribute mode is set for verification...Version Where: stringVariable is a variable storing the version of the application. Syntax BooleanVariable = object.Verify object. Examples. Examples . invisible. An attribute set to verify prompts the user for verification that the attribute value is correct when inserting the block. Syntax objectVariable = object. Version property example 231 .. Attribute properties example Version property Returns the Version of the Application object. object is the Attribute or AttributeReference object. or verify. object is the Application object. Verify property Sets or returns whether the Attribute or AttributeReference object is set for verification (True) or not (False).

Developer Reference VerticalAlignment property Sets or returns the Vertical alignment for Attribute. Syntax integerVariable = object.Bricscad V10 . or 4 of a 3D Face. Horizontal Alignment Constant acVerticalAlignmentBaseline acVerticalAlignmentBottom acVerticalAlignmentMiddle acVerticalAlignmentTop Index Value 0 1 2 3 ViewToPlot property Sets or returns the name of the view to plot. object is the Layout or PlotConfiguration object. object is a 3D Face object. VisibilityEdgeX property Sets or returns the edge visiblity for Edge 1. It is set or returned using the VerticalAlignment constants shown below. object is the entity object for which you set or return the vertical alignment.ViewToPlot = <string> Where: stringVariable is a variable representing the name of the view to plot.VisibilityEdge4 Where: BooleanVariable is a specifies whether the edge is visible (True) or not (False).VisibilityEdge3 object. 232 .ViewToPlot object.VisibilityEdge3 object.VerticalAlignment object.VisibilityEdge1 object.VerticalAlignment = <integer> Where: integerVariable is a variable (or the constant itself) representing the vertical alignment value. 3. AttributeReference or Text. Syntax BooleanVariable BooleanVariable BooleanVariable BooleanVariable = = = = object.VisibilityEdge4 = = = = <Boolean> <Boolean> <Boolean> <Boolean> or object. Syntax stringVariable = object.VisibilityEdge1 object.VisibilityEdge2 object.VisibilityEdge2 object. 2.

Sets or returns the width of following objects: Application. or main application window.. (Integer) Viewport: The width of a viewport is the X axis measurement of the viewport frame.. Height is measured in the drawing units. Toolbar Examples. object is the Application object. Viewport.WindowTop Where: integerVariable is a Long integer variable specifying the Top property (in screen pixels). Visible property example Width property Sets or returns the width of the objects such as text boundary. TextStyle. Syntax integerVariable = object. Width property example WindowTop property Specifies the distance from the top edge of the screen to the top edge of the main application window. Syntax BooleanVariable = object. Group. View: The width of a view is the X axis measurement of the area within a viewport that is used to display the model. AttributeReference. object is the object of interest.. Text: The width of the uppercase text.COM (Component Object Model) Visible property Specifies visibility of a drawing object or Application window.. (Integer) Attribute. MText. Toolbar. Application.Width Where: integerVariable is a Long integer variable specifying the Width property (in drawing units). MText. The Height property is used as a scale factor for both the height and width of the text. view. View Syntax integerVariable = object. Application: The width of the main application window in pixels. image. Shape. Text. Raster.Visible = <boolean> Where: BooleanVariable is a variable (True or False) specifying whether the object is visible or not. Raster: (Read-Only) The width of the raster image in pixels. PViewport. object is All Drawing objects.Visible object. WindowTop property example 233 ... toolbar. Examples. Examples.

Developer Reference XRefLayerVisibility property Sets or returns the visibility of layers in external references. YScaleFactor property Sets or returns the Y scale factor for the BlockRef or ExternalReference Syntax DoubleVariable = object. The initial value of this property is True.YScaleFactor = <double> Where: object is a BlockInsert or ExternalReference object. Examples.XScaleFactor = <double> Where: object is a BlockRef or ExternalReference object.YScaleFactor object. YScaleFactor is a double-precision variable (or value) representing the scale.ZScaleFactor object. XScaleFactor is a double-precision variable (or value) representing the scale.XScaleFactor object. ZScaleFactor is a double-precision variable (or value) representing the scale.ZScaleFactor = <double> Where: object is a BlockInsert or ExternalReference object. XRefLayerVisibilty specifies whether changes to layers and paths of an external reference are saved with the document.XRefLayerVisibility = <Boolean> Where: BooleanVariable determines whether the Xref layer is visible (True) or not (False).Bricscad V10 ..XRefLayerVisibility object. ZScaleFactor property Sets or returns the Z scale factor for the BlockRef or ExternalReference Syntax DoubleVariable = object.. Syntax BooleanVariable = object. The value of this property is stored in the VISRETAIN system variable. XRefLayerVisibility property example XScaleFactor property Sets or returns the X scale factor for the BlockRef or ExternalReference Syntax DoubleVariable = object. 234 . object is the DocumentPreferences object.

. Syntax Sub Activate() Examples.Add3DFace(Point1. Point2. Add3dFace method example 235 . Point4) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object. Examples.. Linetypes. YAxisPoint. Views. Name) Where: Name is a string representing the name of the object to be created. TextStyles. InsertionPoint is a Variant representing the coordinates where the Blocks Collection object will be added. the fourth vertex is optional. and Point4 are Point objects specifying locations of the 3DFace corners. XAxisPoint. Syntax object. Point3. Point1. Point2. and Viewports. Origin is a Variant representing the coordinates where the UCS will be added. InsertBlock method example Add3dFace method Creates a 3D face object and adds it to the drawing. The syntax varies depending on which object is being created. Layers.Add(InsertionPoint. SelectionSets.Name) For the UCSs collection object: objectVariable = object. Xaxis and Yaxis are Vector objects representing the respective axes of the UCS..COM (Component Object Model) Methods Activate method Activates the first window associated with the document. use the following syntax: objectVariable = object. Point3. Input parameters are: default (Null) or three to four vertices. Syntax For the following collection objects: DimensionStyles.Add(Name) For the Blocks collection object: objectVariable = object..Add(Origin. Activate method example Add method Creates a member object and adds it to the appropriate collection.. Examples..

Vertices are a series of Point objects specifying coordinate locations for each vertex of the mesh. AddArc method example 236 . Radius is a double-precision variable or number representing the radius of the arc. Syntax object. Vertices are a series of vertices specifying coordinate locations for each polyline vertex. Syntax objectVariable = object.Add3DMesh(M. StartAngle and EndAngle are double-precision variables or numbers representing the starting and ending angles (in Radians) of the arc.Add3DPoly(Vertices) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object. N.. Add3dPoly method example AddArc method Creates a new arc object and adds it to the drawing.AddArc(Center. object is one of the ModelSpace or PaperSpace collection objects or a Block object. Add3dPoly method Creates a 3D polyline and adds it to the drawing. M and N are Long integer variables representing the size of the mesh (the dimensions of the point array). You can also input the number of vertices in each direction and their coordinates..Developer Reference Add3DMesh method Adds a 3DMesh given the coordinates and mesh information. Examples. EndAngle) Where: objectVariable is an AcadArc object. Examples. StartAngle... Radius. Input parameters are vertices for the polyline. Center is a Variant representing the center of the arc. Syntax objectVariable = object. Vertices) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object.Bricscad V10 .

. The box is drawn as a 3dSolid. Tag.AddAttributeDef(Height. Height is a double-precision variable representing the height (in drawing units) of the attribute text. length. Tag is a string variable identifying each occurrence of the attribute. Value is a string variable representing the default value of the attribute. Length. Prompt. Height) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object. Mode. Syntax objectVariable = object. Length is a double-precision variable representing the length of the box.COM (Component Object Model) AddBox method Adds a box given the origin. Examples. width and height. Syntax objectVariable = object. Width is a double-precision variable representing the width of the box. Width. AddBox method example AddAttributeDef method Adds an Attribute Definition at the given insertion point and other attribute information. Origin is a Variant identifying the origin of the box..AddBox(Origin. Height is a double-precision variable representing the height of the box. InsertionPoint. Value) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object. Mode is one of the following (acAttributeMode) attribute modes: acAttributeModeNormal acAttributeModeInvisible acAttributeModeConstant acAttributeModeVerify acAttributeModePreset Prompt is a string variable representing the text to be displayed to the user. InsertionPoint is a Variant representing the location of the attribute. 237 .

object is one of the ModelSpace or PaperSpace collection objects or a Block object.Developer Reference AddCircle method Creates a new circle and adds it to the drawing. BaseRadius. Center is a Variant identifying the center of the cylinder. base radius. Center is a Variant representing the center of the circle. BaseRadius is a double-precision variable representing the radius of the cone at its base. AddCircle method example AddCone method Adds a cone given the center. The cylinder is drawn as a 3dSolid. Syntax objectVariable = object. Height is a double-precision variable representing the height of the cylinder.. Center is a Variant identifying the center of the cone... Examples. Examples. and height.AddCircle(Center. Radius..AddCylinder(Center. Height is a double-precision variable representing the height of the cone. Syntax objectVariable = object.Bricscad V10 .. AddCone method example AddCylinder method Adds a cylinder given the center. and height. The cone is drawn as a 3dSolid.AddCone(Center.. Radius is a double-precision variable representing the radius of the cylinder. AddCylinder method example 238 . Height) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object. base radius. Height) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object. Examples. Syntax objectVariable = object. Radius is a double-precision variable or number representing the radius of the circle. Radius) Where: objectVariable is a AcadCircle object.

FirstEndPoint is a Variant identifying the point through which the first extension line passes. or the common vertex between the two dimensioned lines. FirstEndPoint. ExtPoint2 is a Variant identifying the second endpoint of the extension line. TextLocation is a Variant identifying the location of the text. TextLocation is a Point object identifying the location of the text. SecondEndPoint. FirstEndPoint is a Variant identifying the point through which the first extension line passes. AddDim3PointAngular method Adds a 3 Point Angular dimension object.AddDim3PointAngular(AngleVertex. FirstEndPoint. Syntax objectVariable = object. TextLocation) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object. AddDimAngular method Adds an Angular dimension object. Syntax objectVariable = object. 239 . ExtPoint2.AddDimAligned(ExtPoint1.COM (Component Object Model) AddDimAligned method Adds an Aligned dimension object. TextLocation is a Variant identifying the location of the text. SecondEndPoint is a Variant identifying the point through which the second extension line passes. SecondEndPoint. ExtPoint1 is a Variant identifying the first endpoint of the extension line. Syntax objectVariable = object.AddDimAngular(AngleVertex. TextLocation) Where: AngleVertex is a Variant identifying the center of the circle or arc. TextLocation) Where: AngleVertex is a Variant identifying the center of the circle or arc. SecondEndPoint is a Variant identifying the point through which the second extension line passes. or the common vertex between the two dimensioned lines.

LeaderLength is a double-precision variable specifying the length from the ChordPoint to the annotation text or dogleg. UseXAxis is a Boolean value specifying whether or not to display the X-axis value. AddDimOrdinate method Adds an Ordinate dimension object. LeaderLength is a double-precision variable specifying the length from the ChordPoint to the annotation text or dogleg. LeaderEndPoint is a Variant identifying the endpoint of the leader. LeaderEndPoint. LeaderLength) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object.AddDimRadial(Center.Bricscad V10 . Syntax objectVariable = object.Developer Reference AddDimDiametric method Adds a Diameter dimension object. ChordPoint is a Variant identifying the first diameter point on the circle or arc. LeaderLength) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object. ChordPoint. FALSE: Creates an ordinate dimension displaying the Y-axis value. where the dimension text is displayed. Syntax Function AddDimOrdinate(DefintionPoint. FarChordPoint is a Variant identifying the second diameter point on the circle or arc. FarChordPoint. ChordPoint is a Variant identifying the point on the circle or arc to attach the leader line.AddDimDiametric(ChordPoint. TRUE: Creates an ordinate dimension displaying the X-axis value. Center is a Variant identifying the center point on the arc. UseXAxis) Where: DefinitionPoint is a Variant identifying the point to be dimensioned. AddDimRadial method Adds a Radius dimension object. Syntax objectVariable = object. 240 .

Syntax objectVariable = object. ExtPoint2. then the point is added to the end of the spline. Center is a Variant representing the center of the ellipse.. Index is a Long Integer variable (or value) identifying the position in which to add the fit point.COM (Component Object Model) AddDimRotated method Adds a Rotated dimension object. ExtPoint2 is a Variant identifying the second endpoint of the extension line. If the index is a negative number. Syntax object. in radians.AddEllipse(Center. RadiusRatio is a double-precision variable or number defining the major to minor axis ratio of an ellipse. AddEllipse method Creates a new ellipse and adds it to the drawing.0 defines a circle. FitPoint is a Variant representing 3D WCS coordinates of the fit point to be added 241 .AddFitPoint(Index. from one end to the other.. then the point is added to the beginning of the spline.AddDimRotated(ExtPoint1. MajorAxis. Rotation) Where: ExtPoint1 is a Variant identifying the first endpoint of the extension line. FitPoint) Where: object is a Spline object. If the index exceeds the number of fit points in the spline. MajorAxis is a Variant representing the orientation of the major axis (the line which defines the longest distance across an ellipse. Syntax objectVariable = object. A radius ratio of 1. Rotation is a double-precision angle. of rotation displaying the linear dimension. AddEllipse method example AddFitPoint method Adds a fit point to the spline. RadiusRatio) Where: objectVariable is an Ellipse object. object is one of the ModelSpace or PaperSpace collection objects or a Block object. Examples. DimLineLocation. DimLineLocation is a Variant identifying a point on the dimension line.

Syntax objectVariable = object. AddHatch method example AddRaster method Adds a raster image to the drawing. Associativity Boolean whether or not the hatch is associative. The default image scale factor is 1.AddRaster(ImageFile. Associativity . ScaleFactor.. The scale factor must be a positive number. [InsertionPoint.Developer Reference AddHatch method Creates a new hatch object and adds it to the drawing. InsertionPoint is a Variant identifying the point at which the image will be inserted.. object is one of the ModelSpace or PaperSpace collection objects or a Block object. RotationAngle is a double-precision variable (or value) representing the rotation angle in radians for the raster image. RotationAngle]) Where: ImageFile is a string representing the full path and file name of the image.Bricscad V10 . Syntax objectVariable = object. ScaleFactor is a double-precision variable (or value) representing the raster image scale factor. [HatchObjectType]) Where: objectVariable is a AcadHatch object. PatternName.. AddRaster method example 242 ..AddHatch(PatternType . Examples. PatternType is a Long integer representing one of the following HatchType constants: acHatchPatternTypePreDefined = 1 acHatchPatternTypeUserDefined = 0 acHatchPatternTypeCustomDefined = 2 PatternName is a String representing the name of the hatch pattern to be used. Examples.

type) Where: objectVariable is a Leader object. Point2 is a Variant representing a second point on the line.AddLeader(Points.. FALSE = Objects will not be deleted. Syntax objectVariable = object. Annotation.. Syntax object. AddItems method example AddLeader method Creates a leader and adds it to the drawing. Points is a collection of points defining the leader line.. Examples.. object is one of the ModelSpace or PaperSpace collection objects or a Block object.COM (Component Object Model) AddXLine method Creates a new infinite line and adds it to the drawing..AddXLine(Point1. object is one of the ModelSpace or PaperSpace collection objects or a Block object. Annotation is a String of text or a dimension to be associated with the leader. [DeleteOriginals]) Where: object is a Block or SelectionSet object. Syntax objectVariable = object. Entities is a selection set object to which the items are to be added. type is a Long integer representing one of the following LeaderType constants: 0 1 LeaderLineWithNoArrow LeaderLineWithArrow Examples. Examples.. TRUE = Objects will be deleted. Point1 is a Variant representing one point on the line. AddXLine method example AddItems method Adds a group of entities to a block or selection set. AddLeader method example 243 . Point2) Where: objectVariable is an AcadXLine object. DeleteOriginals is a Boolean variable (or value) indicating whether or not to delete the original objects.AddItems(Entities.

.. Width is a double-precision variable or number representing the width of the bounding box. EndPoint) Where: objectVariable is a AcadLine object.AddLine(StartPoint.Developer Reference AddLightWeightPolyline method Creates a lightweight polyline and adds it to the drawing. AddMtext method example 244 .. Text is a String representing the text to appear in the window. object is one of the ModelSpace or PaperSpace collection objects or a Block object. EndPoint is a Variant representing the ending point of the line. Text) Where: objectVariable is an AcadMtext object. Examples..Bricscad V10 .AddLightWeightPolyline(Vertices) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object. Syntax objectVariable = object. Vertices Variant (array of doubles) specifying coordinate locations for each polyline vertex. InsertionPoint is a Variant representing the location to insert the text. StartPoint is a Variant representing the starting point of the line. AddLine method example AddMtext method Creates an Mtext (multi-line text) object and adds it to the drawing.AddMtext(InsertionPoint.. Syntax objectVariable = object. object is one of the ModelSpace or PaperSpace collection objects or a Block object. Syntax objectVariable = object. Examples.. AddLightWeightPolyline method example AddLine method Creates a line and adds it to the drawing. Width. Examples.

AddPoint method example AddPolyfaceMesh method Creates a new polyface mesh object and adds it to the drawing.. AddPolyfaceMesh method example AddPolyline method Creates a polyline and adds it to the drawing. Syntax objectVariable = object. Point is a Variant representing the location to insert the PointEntity.AddPolyline(Vertices) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object. Examples.AddPoint(Point) Where: objectVariable is a AcadPoint object. Vertices is Variant (array of doubles). This is an array of 3D WCS coordinates used to create the polyface mesh vertices. This is an array of integers representing the vertex numbers for each face. object is one of the ModelSpace or PaperSpace collection objects or a Block object.. AddPolyline method example 245 .It represents a series of coordinate locations for each polyline vertex.COM (Component Object Model) AddPoint method Creates a point entity and adds it to the drawing. Syntax objectVariable = object. At least four points (twelve elements) are required for constructing a polyface mesh object. Examples. The array size must be a multiple of three. FacesList a Variant (array of Integers).AddPolyfaceMesh(VerticesList. so the size of this array must be a multiple of four. Syntax objectVariable = object.... Faces are defined in groups of four vertex index values. FacesList) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object.. VerticesList a Variant (array of doubles). Examples.

Values must be positive Examples. AddSolid method example 246 .. Point2 is a Variant representing the second point of the ray.Bricscad V10 . etc. AddRay method example AddSolid method Adds a two-dimensional solid polygon.AddRay(Point1.Developer Reference AddPViewport method Adds a Paperspace Viewport given the center. Examples. [Width]. Syntax objectVariable = object. Examples. Width and Height are double-precision variables representing the dimensions of the viewport.. width and height.AddSolid([Point1]. Point2) Where: objectVariable is a Ray object. Syntax objectVariable = object. Syntax objectVariable = object. [Point3]. Point1 is a Variant representing the starting point of the ray. [Point4]) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object. are Variant (three-element array of doubles) specifying coordinate locations for each solid vertex. [Height]) where: Center is a Variant (three-element array of doubles) specifying the coordinate location for viewport center.. object is one of the ModelSpace or PaperSpace collection objects or a Block object.. Point1.AddPViewport([Center].. Add PViewport method example AddRay method Creates a ray and adds it to the drawing. [Point2]. Point2..

AddText method example 247 .AddText(TextString. StartTangent. InsertionPoint.AddSphere(Center. Radius) Where: Center is a Variant representing the center of the sphere.AddSpline(Points.. Radius is a double-precision variable or number representing the radius of the sphere. object is one of the ModelSpace or PaperSpace collection objects or a Block object. TextString is a String representing the text to place in the drawing. Syntax objectVariable = object. The sphere object is created as a 3dSolid Syntax objectVariable = object. EndTangent) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object. Examples.COM (Component Object Model) AddSphere method Adds a sphere given the center point and radius. InsertionPoint is a Point object representing the location to insert the text. Syntax objectVariable = object.. Height) Where: objectVariable is an AcadText object. AddSphere method example AddSpline method Adds a spline object given the input coordinates as a points collection. Height is a double-precision variable or number representing the height of the text. Examples. StartTangent and EndTangent are vector objects indicating the tangents at the two ends of the spline. AddText method Creates a text object and adds it to the drawing.. Points is a collection of points for defining the spline curve..

Text is a String representing the tolerance text. The torus object is created as a polygon mesh. [Direction]) Where: objectVariable is an Mtext object. object is one of the ModelSpace or PaperSpace collection objects or a Block object. TorusRadius is a double-precision variable representing the radius of the torus (distance from center of torus to center of tube). Points Variant (array of doubles).. [TorusRadius]. [TubeRadius]) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object. Syntax objectVariable = object.AddTrace(Points) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object.. AddTorus method example AddTrace method Adds a Trace entity given the coordinates as a points collection. An array of 3D WCS coordinates specifying the trace endpoints. InsertionPoint is a Point object representing the location to insert the tolerance.AddTorus([Center]. Center is a Variant representing the center point of the torus..Developer Reference AddTolerance method Creates a Tolerance entity. torus radius and tube radius. [InsertionPoint]. Direction is a Vector object representing the direction of the tolerance symbol.Bricscad V10 . Syntax objectVariable = object. TubeRadius is a double-precision variable representing the radius of the tube.AddTolerance([Text]. Examples. AddTolerance method example AddTorus method Adds a torus given the location. Examples. Syntax objectVariable = object.. 248 .

Point2) Where: object is the Utility object. Length.COM (Component Object Model) AddVertex method Adds a vertex to a lightweight polyline. width and height. The angle is measured counterclockwise. Syntax objectVariable = object. Point is a Bricscad Point object locating the vertex to be appended.. Examples. Height) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object. Point) Where: Index is an Integer variable (or value) defining where the vertex will be added in the lightweight polyline. Height is a double-precision variable representing the height of the wedge. Point2 Variant (three-element array of doubles): the end point of the line.. Examples. Width.AddWedge(Origin. Syntax Sub AddVertex(Index. AddVertex method example AddWedge method Adds a Polygon Mesh wedge given the length.. Syntax object.. Point1 Variant (three-element array of doubles): the start point of the line. Width is a double-precision variable representing the width of the wedge. 249 . AddWedge method example AngleFromXAxis method Returns the angle of a line from the X-axis. Origin is a Variant identifying the origin of the wedge.AngleFromXAxis(Point1. Length is a double-precision variable representing the length of the wedge.

Angle is a String representation of an angle.AngleToReal(Angle. Angle is a double-precision variable (or value) representing an angle.Developer Reference AngleToReal method Converts a string to an angle. Unit is one of the following AngleUnits to which the string will be converted: acDegreeMinuteSeconds = 1 acDegrees = 0 acGrads = 2 acRadians = 3 acSurveyorUnits = 4 AngleToString method Converts an angle to a string. AppendVertex method example 250 . [Unit]) Where: object is the Utility object..Bricscad V10 . or polygon mesh. Unit is one of the following AngleUnits from which the angle will be converted: acDegreeMinuteSeconds = 1 acDegrees = 0 acGrads = 2 acRadians = 3 acSurveyorUnits = 4 Precision is a Long integer variable (or value) representing the number of decimal places for the angle. Syntax object. [Unit]. Examples. Syntax Sub AppendVertex(Vertex) Where: Vertex Variant (three-element array of doubles): object locating the vertex to be appended. Precision) Where: object is the Utility object.. Syntax object. AppendVertex method Adds a vertex to a polyline. 3D polyline.AngleToString(Angle.

ArrayPolar method example ArrayRectangular method Creates a rectangular array. GapBetweenColumns.. with a positive value specifying counterclockwise rotation. A positive number causes the array to be expanded in the positive direction. while a negative number causes the array to be built downward. A positive number causes the array to be built to the right of the source object.. [GapBetweenLevels]) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object. while a negative number causes the array to be built to the left.. The default is False (no rotation). RotateObjects is an optional Boolean variable indicating whether to rotate objects or not.COM (Component Object Model) ArrayPolar method Creates a polar array. NumberOfColumns is the number of rows (vertical elements) in the array. GapBetweenLevels is the distance between levels. IncludedAngle is the angle to fill in radians. Syntax objectVariable = object. GapBetweenColumns is the distance between rows.. CenterPoint is a Variant (three-element array of doubles) specifying the center point of the polar array. NumberOfRows is the number of rows (horizontal elements) in the array. A positive number causes the array to be built upward. Examples. [PointOnAxis]. [RotateObjects]) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object. NumberOfLevels is the number of levels in a 3D array. CenterPoint. GapBetweenRows is the distance between rows. [NumberOfLevels]. NumberOfColumns.ArrayRectangular(NumberOfObjects. PointOnAxis is an optional Variant (three-element array of doubles) indicating the point on the axis of rotation. Syntax objectVariable = object. IncludedAngle. NumberOfObjects is the number of objects in the array. ArrayRectangular method example 251 . GapBetweenRows. Examples. while a negative number causes the array to be expanded in a negative direction.ArrayRectangular(NumberOfRows.

. The xref instance is an attachment. Syntax objectVariable = object. [XScale].Bind(bPrefixName) Where: object is a Block object. bPrefixName is a Boolean variable (or value) indicating whether the reference is an overlay or attachment TRUE: FALSE: Symbol names are not prefixed Symbol names are prefixed with <blockname>$x$.Bricscad V10 . bOverlay is a Boolean variable (or value) indicating whether the reference is an overlay or attachment TRUE: FALSE: The xref instance is an overlay.AttachExternalReference(PathName.. [InsertionPoint].Developer Reference AttachExternalReference method Attaches a specified drawing as an ExternalReference. [Name]. [YScale]. Rotation is a double-precision variable (or value) representing the rotation angle (in radians) for the external reference. Name is a string representing the name of external reference to be created. and ZScale are double-precision variables (or values) representing the scaling factors for the drawing along each coordinate plane. AttachExternalReference method example Bind method Binds an ExternalReference (xref) to a drawing. Syntax objectVariable = object. [Rotation]. 252 . XScale. [Zscale]. YScale. [bOverlay]) Where: object is one of the ModelSpace or PaperSpace collection objects or a Block object. InsertionPoint is a Point object representing the point at which the drawing will be inserted. Examples. PathName is a string representing the full path and file name of the drawing.

Copy Where: object is the entity to be copied. [File]) Close([SaveChanges]. The selection set will still exist.. [File]) Where: object is a Document object.. File is an optional string naming the file to be saved. Close method example Copy method Creates a copy of the entity. Syntax objectVariable = object. AddItems method example Close method Closes the document and all associated windows. Syntax object. SaveChanges is an optional Boolean variable indicating whether to save changes made since the last save (A value of True saves the changes. Examples. Examples. Copy method example 253 . Syntax objectVariable = object... but will contain no items. while a value of False does not)..Close([SaveChanges]. Examples.Clear() Where: object is a SelectionSet object.COM (Component Object Model) Clear method Empties the selection set..

Syntax Sub DefineFunction(FunctionName. Pviewport.Developer Reference Delete method Deletes a specified object. Block. Linetype. Examples. layer. FunctionPointer is the address of the function to be called. It is similar to (defun c:cmd) in LISP. FunctionPointer) Where: FunctionName is a string variable representing the name of the macro. Detach method example 254 . Examples.. Syntax object. DeleteFitPoint method Deletes a fit point from the spline.. SelectionSet. The object may be one of the following: All Drawing Objects. Syntax XRef. Syntax object.DeleteFitPoint(Index) Where: object is a AcadSpline object. Layer..Delete Where: object is the name of the object to be deleted.Detach() Where: XRef is the name of the external reference to detach. UCS. such as a drawing entity or a block. Detach method Detachs an external reference (xref) from a drawing. Index is a Long Integer variable (or value) identifying the position in which to delete the fit point. Delete method example DefineFunction method Adds a macro to the Bricscad command list. View. TextStyle.. Viewport. or linetype.Bricscad V10 .

. The selection set still exists. pass in a selection set to export only a part of the file. Extension. Syntax object. SelectionSet is a Bricscad selection set to be exported (optional). Examples.Explode() Where: object is a 3DPolyline..Display(Status) Where: object is a PViewport object Status is a Boolean variable specifying whether to display (True) or hide (False) the viewport.. ExternalReference..Erase() Where: object is a SelectionSet object. Export method Exports the file to any of the supported formats. BlockReference. [SelectionSet]) Where: FileName is a string variable representing the name of the file to export. Syntax object. Erase method example Explode method Explodes the entity into sub-entities. LWPolyline. Region object. PolygonMesh. Optionally. Format is based on the extension in the FileName (default is the DXF format) Syntax Sub Export(FileName. MInsertBlock. Polyline. Syntax object.COM (Component Object Model) Display method Display the viewport. Examples. Extension is a string variable representing the extension of the file name. The items that previously resided in the selection set no longer exist. Display method example Erase method The Erase method deletes all items in a selection set. 255 . but won't contain any items. or hide it.

GetAngle method example GetAttributes method Returns the attributes in a BlockInsert or External Reference. Examples.GetAttributes Where: object is a BlockReference. Syntax objectVariable = object. Syntax object.. [Prompt]) Where: object is the Utility object. MinPoint and MaxPoint are Variant (array of doubles) representing the lower-left and upperright corners of a box enclosing a particular object. Point is a Variant representing the base point for the angle.GetBoundingBox(MinPoint.Developer Reference GetAngle method Allows the user to specify the angle on the graphics window. MaxPoint) Where: object is a Drawing Entity object.. ExternalReference or MInsertBlock object. GetBoundingBox method Returns the minimum and maximum point of an entity's bounding box: the box that encloses a specified entity...Bricscad V10 .GetAngle([Point]. GetBoundingBox method example 256 . Prompt is is a String prompting the user to pick the angle. Examples. Syntax object.

GetCorner method example 257 .. [Prompt]) Where: object is a Utility object. GetBulge method example GetControlPoint method Returns the control point to the spline at the given index. coordinates specifying the base point of the rectangle.. Index is a Long integer variable (or value) specifying the position of the control point. Syntax object. Examples.. Examples.COM (Component Object Model) GetBulge method Returns the bulge value at a given vertex of a polyline or lightweight polyline. Syntax object.GetControlPoint(Index) Where: object is a Bricscad Spline object.GetBulge(Index) Where: object is a Polyline or Lightweight polyline object. GetCorner method Gets a corner of a rectangle. Point is Variant (three-element array of doubles). Syntax objectVariable = object.GetCorner(Point.. Index is a Long integer variable (or value) specifying the polyline segment.

Bricscad V10 . Linetype. the ProgID for Bricscad is BricscadApp. View. TextStyle. Block...Developer Reference GetExtensionDictionary method Returns the extension dictionary associated with an object Syntax RetObject = object.AcadApplication. UCS. PlotConfigurations. DimStyle. Xrecord. Yspacing) Where: object is a Viewport or PViewport object.. AttributeReference. Group. Examples. Xspacing and Yspacing are double-precision variables (or values) representing the spacing of grids along the x and y axes. GetExtensionDictionary method example GetGridSpacing method Sets or returns the current grid spacing setting value. Syntax object. GetGridSpacing method example GetInterfaceObject method Creates an object specified by the ProgID and returns its Dispatch interface pointer. Layer.GetGridSpacing(Xspacing. RegisteredApplication. Viewport. Objects are defined in the registry and identified by their ProgID. 258 . For example.it can be one of the following: All Drawing Objects.GetExtensionDictionary Where: The object this method applies to.. RetObject is Dictionary object Examples. Syntax Function GetInterfaceObject(ProgID) Where: ProgID is a string variable representing the program's definition in the registry. Dictionary.

. object is a UCS object. Syntax retVal = object... GetSnapSpacing method example GetUCSMatrix method Returns the transformation matrix associated with a User Coordinate System. Index is an Integer representing the index number of the face. Syntax object. Examples. Examples.GetInvisibleEdge(Index) Where: object is a 3DFace object.GetUCSMatrix() Where: retVal is a Variant (4x4 array of doubles): The UCS matrix. Yspacing) Where: object is a Viewport or PViewport object.COM (Component Object Model) GetInvisibleEdge method Gets the invisibility setting for a 3DFace edge at a given index... Xspacing and Yspacing are double-precision variables (or values) representing the spacing of grids along the x and y axes. Examples.GetSnapSpacing(Xspacing.. Syntax object. GetInvisibleEdge method example GetSnapSpacing method Sets or returns the current snap spacing setting value. GetUCSMatrix method example 259 .

.. 1003 for a layer name.GetVariable(Name) Where: Object: Document Name: String. Syntax object.GetWidth(Index. Examples. and so on) as Lisp.0. VBA sees XData as a pair of arrays. EndWidth) Where: object is a Bricscad polyline or lightweight polyline object. The first array tells you what type of data (e. The value of the specified system variable the name of the variable. GetWidth method example GetXData method Returns the extended entity data (Xdata) associated with an object.g. string or 3D point) is in the corresponding location in the second array (e. you pass two empty arrays to GetXData.. You can then iterate through the arrays and read the data.0). VBA uses the same datatype codes (1000 for a string. respectively.g. To get an entity's XData. Examples.. StartWidth. GetXData populates these arrays with the entity's XData.. Syntax Sub GetXData(AppName.. of the polyline. "Hi there" or 3.Developer Reference GetVariable method Returns the value of a system variable. The name of the variable to return RetVal : Variant. StartWidth and EndWidth are double-precision variables representing the starting width and ending width. DataArray) Where: AppName is a string representing the name of the application. GetWidth method Returns the start and end width for a polyline or lightweight polyline.Bricscad V10 . TypeArray. Syntax RetVal = object. Index is a Long integer variable (or value) specifying the polyline segment. GetXData method example 260 .

GetEntity anObj. ReDim Preserve xdataType(LBound(xdataType) To UBound(xdataType) + 1) ReDim Preserve xdataValue(LBound(xdataValue) To UBound(xdataValue) + 1) 261 . xdataType. "Select an entity: " ' get its xdata. Dim lbnd As Integer. ThisDrawing.GetXData APP_NAME.Utility. Dim xdataType As Variant Dim xdataValue As Variant Dim appName As String Dim sBuf As String anObj. xdataValue If (vbEmpty = VarType(xdataType)) Then Dim tmp(0 To 0) As Integer xdataType = tmp ReDim xdataValue(0 To 0) ' the first item in the XData should be a 1001 ' code giving the app's name. xdataValue ' iterate through the XData. pt.GetEntity anObj. ubnd As Integer Dim i As Integer If (vbEmpty <> VarType(xdataType)) Then lbnd = LBound(xdataType) ubnd = UBound(xdataType) sBuf = "Xdata for app " & APP_NAME For i = lbnd To ubnd If 1010 = xdataType(i) Or 1011 = xdataType(i) Or 1012 = xdataType(i) Or 1013 = xdataType(i) Then Dim ptX As Variant ptX = xdataValue(i) sBuf = sBuf & vbCrLf & "XData Type: " & xdataType(i) & " Xdata Value: " & ptX(0) & ". xdataType(0) = 1001 xdataValue(0) = APP_NAME End If ' redimension the XData arrays. Dim xdataType As Variant Dim xdataValue As Variant anObj. ThisDrawing." & ptX(1) & ". "Select an entity: " ' get its xdata." & ptX(2) Else sBuf = sBuf & vbCrLf & "XData Type: " & xdataType(i) & " Xdata Value: " & xdataValue(i) End If Next i Else sBuf = "No XData for application " & APP_NAME End If MsgBox sBuf Set anObj = Nothing End Sub Sub SetXData_Example() ' This example gets an entity and adds Xdata to it Const APP_NAME As String = "TEST_APP" Dim anObj As Object Dim pt(0 To 2) As Double ' get the entity.GetXData APP_NAME.Utility.COM (Component Object Model) GetXData and SetXData method example Sub GetXData_Example() ' This example gets an entity and its Xdata (if it exists) and ' prints the info in msgbox Const APP_NAME As String = "TEST_APP" Dim anObj As Object Dim pt(0 To 2) As Double ' get the entity. pt. preserving their ' contents. xdataType.

[InsertionPoint]. A location of 0.0. ScaleFactor is a double-precision variable representing the scale factor for the imported information. Syntax object. I was added!" ' store the data..Developer Reference ' stuff some new data in. xdataValue Set anObj = Nothing End Sub HandleToObject method Finds an object with the given handle.Bricscad V10 . xdataType(UBound(xdataType)) = 1000 xdataValue(UBound(xdataValue)) = "Hi.0 is assumed if this parameter is omitted. 262 .SetXData xdataType. Highlight method Highlights (or dehighlights) an entity. Syntax Function HandleToObject(Handle) As Object Where: Handle is a string representing the name of the object. InsertionPoint is a Point object (optional) representing the location to insert the file. Highlight method example Import method Imports files in DXF and other supported formats. anObj. Syntax Sub Import(FileName. [ScaleFactor = 1]) Where: FileName is a string representing the name of the file to be imported. Examples..Erase(HighlightFlag As Boolean) Where: object is a Bricscad entity. The default value is 1.

.COM (Component Object Model) InsertBlock method Adds a new Block Insert object. [ZScale]. Option is one of the following constants (AcExtendOption) for intersections: acExtendBoth = 3 (extends both entities if necessary) acExtendNone = 0 (does not extend either entity) acExtendOtherEntity = 2 (extends the second entity) acExtendThisEntity = 1 (extends the first entity) Examples.IntersectWith(intersectingObject. XScale. PopupMenu.Item(Index) Where: object is a All Collections. MenuGroups. Examples. InsertBlock method example IntersectWith method Member of BricscadDb. 263 . BlockName is a string representing the name of the block. YScale.AcadAttribute Returns the intersection points between given objects. Rotation is a double-precision variable (or value) representing the rotation angle (in radians) for the external reference. [Rotation]) Where: InsertionPoint is a Variant representing the point at which the block will be inserted. Syntax objectVariable = theObject. Toolbar. Syntax objectVariable = object. AcExtendOption) Where: theObject is the first Bricscad entity to be intersected.. [XScale]. group.. intersectingObject is the second Bricscad entity to be intersected. Syntax objectVariable = object. and ZScale are double-precision variables (or values) representing the scaling factors for the drawing along each coordinate plane. BlockName. [YScale]. object is one of the ModelSpace or PaperSpace collection objects or a Block object. Toolbars. or selection set. PopupMenus.InsertBlock([InsertionPoint]. IntersectWith method example Item method Gets the member object at a given index in a collection. ExternalReference or BlockReference object..

Bricscad V10 . Syntax object.Mirror(Point1.Move(Point1.. Point3) Where: object is a Bricscad entity. Point2. Point1 is a Variant (three-element array of doubles) representing the base point. Mirror method example Mirror3D method Mirrors an object about a plane defined by three points. Point2) Where: object is a Bricscad entity..Mirror(Point1. Mirror3D method example Move method Moves an object. Point2) Where: object is a Bricscad entity.. Syntax object. Syntax object. Point2. Point2 is a Variant (three-element array of doubles) representing the displacement point.. Point1 and Point2 are Variant (array of Doubles) representing the axis for mirroring. Point1.Developer Reference Mirror method Mirrors an object about an axis defined by two points. Examples. Examples. 264 . and Point3 are Variant (three-element array of doubles) representing the plane for mirroring.

265 .DisplayPlotPreview Preview Object:Plot The object or objects this method applies to... + and . PopupMenus. PopupMenu.COM (Component Object Model) Offset method Creates an offset entity at a given distance from another entity. Open method Opens an existing document and adds it to the Documents collection. ToolbarItem object. optional [ReadOnly]: TRUE: Opens the drawing as a read-only drawing. FALSE: Opens the drawing as a read-write drawing. Toolbars. MenuGroups. MenuGroup. Toolbar. Examples. Toolbar. Open method example DisplayPlotPreview method Previews a document with the current print settings. Syntax object. PopupMenu. MenuBar. Syntax returnValue=object. Preview AcPreviewMode enum(acFullPreview) Parent property Gets the parent of the object. MenuGroups.Open(Filename. PopupMenuItem.Offset(OffsetDistance) Where: object is a Bricscad entity. [ReadOnly]. Toolbars object. Default setting: FALSE optional [PassWord]: Password to open an encrypted drawing. returnValue is a Application. [PassWord]) Where: object is a Documents collection object. Filename: is the name of the file to open. PopupMenus.represent the two sides for offset.Parent Where: object is a MenuBar. MenuGroup. Syntax object. OffsetDistance is a double-precision variable (or value) representing the distance to offset the entity. Syntax object.

. optional. the current configuration will be used. table. the method will search the printer configuration path for the file before it defaults to the current configuration. the method will search the printer configuration path for the file before it defaults to the current configuration. When plotting multiple layouts..PurgeAll Where: object is a Document object. Syntax BooleanVariable = object. Examples. Syntax object. optional The full path and file name of the PC3 file to use instead of the current configuration. If the configuration file is not found at the specified path. PlotToDevice example PlotToFile method Plots a layout to a device. BooleanVariable is a Boolean: TRUE: The plot was successfully sent to the device. Syntax BooleanVariable = object.Bricscad V10 . If the configuration file is not found at the specified path.Developer Reference PlotToDevice method Plots a layout to a device. the current configuration will be used. If this parameter is not provided. FALSE: The plot was not sent to the device.PlotToFile([fileName]) Where: object is a AcadPlot object. Examples.. FALSE: The plot was not sent to the device. Either the plot process failed or the plot was cancelled. the file name for each plot will be generated by concatenating the drawing and layout name. etc) objects. If this parameter is not provided.The name of the file to plot the active layout to. The full path and file name of the PC3 file to use instead of the current configuration. Either the plot process failed or the plot was cancelled. 266 .plotConfig]) Where: object is a AcadPlot object plotFile is a String input-only. plotConfig is a String input-only. BooleanVariable is a Boolean: TRUE: The plot was successfully sent to the device. fileName is a String input-only. PlotToFile example PurgeAll method Purges the document of all unused named references (blocks. layers..PlotToDevice(plotFile [.

Reload method Reloads the External Reference. Syntax object. RemoveItems method example 267 .RemoveItems(Entities) Where: object is a Group or SelectionSet object. Reload method example RemoveItems method Sub RemoveItems(Entities) Removes one or more entities from the SelectionSet.. Examples. Syntax object. with 0 = the active viewport and 1 = all viewports. Syntax object. in this case the Application object... Examples..Quit Where: object is a valid object.. Syntax Sub Regen([Viewports = acActiveViewport]) Where: Viewports is the enumerated value of acWhichViewport. Entities is a selection set object to which the items are to be added.Reload() Where: object is a Block object.. Quit method example Regen method Regenerates the drawing for the indicated viewports.COM (Component Object Model) Quit method Closes the drawing file and exits the application. Examples.

. Syntax object.Rotate3D(Point1.RunCommand(Command) Where: object Application. The direction of the axis is from point1 to point2. Point2 is a Variant (three-element array of doubles) representing the second point of the axis about which objects will be rotated. Point1 is a Variant (three-element array of doubles) representing the first point of the axis about which objects will be rotated. RotationAngle is a double-precision variable (or value) representing the angle in radians. Syntax object..Developer Reference Rotate method Rotates an object or selection set. Command is a string variable representing the name of a Bricscad command. Point2. BasePoint is a Variant (three-element array of doubles) representing the point about which objects will be rotated. RotationAngle is a double-precision variable (or value) representing the angle in radians. Copy method example Rotate3D method Rotates the selection set and all its members about an axis formed by two points. Examples.. RotationAngle) Where: object is a Bricscad entity.. Rotate3D method example RunCommand method Executes a Bricscad command as if it were typed at the command line. Examples.Bricscad V10 . Syntax Sub object. RotationAngle) Where: object is a Bricscad entity.Rotate(BasePoint. RunCommand method example 268 .

The active document takes on the new name. SecurityParams] Where: Object Document Filename String. ScaleFactor) Where: object is a Bricscad entity. Syntax Save Examples. ScriptName is a string variable representing the name of the script file.RunSript(ScriptName) Where: object Application.. Syntax object.. or valid URL address. Syntax object. Save method Saves the active document. FileType [optional] AcSaveAsType Examples.ScaleEntity(BasePoint. SaveAs method example ScaleEntity method Scales the entity or members of a selection set by a given scale factor. for the file.. 269 .SaveAs FileName. FileType [. Syntax Sub object.The full path and new file name. BasePoint is a Variant (three-element array of doubles) representing the point about which the entity will be scaled. ScaleFactor is a double-precision variable (or value) representing the factor by which to scale the entity or entities.. Save method example SaveAs method Saves the document to a different name.COM (Component Object Model) RunScript method Runs a specified script file.

[Point1]. [FilterData]) Where: object is a SelectionSet object. FilterType is an optional parameter for specifying how to filter data selection.Bricscad V10 . Syntax object. and adds them to the SelectionSet. Point is a Variant (three-element array of doubles) specifying the point to use for selection.Developer Reference Select method Selects objects within the rectangle specified by two points. FilterData is an optional parameter for specifying filter data. [FilterType]. [Point2].Select(Type. and adds them to the SelectionSet. FilterData is an optional parameter for specifying filter data. [FilterType]. 270 . Type is one of the following SelectionSetType constants corresponding to the various selection modes: acSelectionSetAll = 11 acSelectionSetCrossingCircle = 3 acSelectionSetCrossingPolygon = 0 acSelectionSetCrossingWindow = 6 acSelectionSetFence = 12 acSelectionSetInsideCircle = 5 acSelectionSetInsidePolygon = 2 acSelectionSetInsideWindow = 8 acSelectionSetLast = 10 acSelectionSetOutsideCircle = 4 acSelectionSetOutsidePolygon = 1 acSelectionSetOutsideWindow = 7 acSelectionSetPrevious = 9 Point1 and Point2 are Variant (three-element array of doubles) defining a rectangle for those applicable selection modes. FilterType is an optional parameter for specifying how to filter data selection. [FilterData]) Where: object is a SelectionSet object. SelectAtPoint method Member of SelectionSet Selects objects passing through a point. Syntax object. SelectAtPoint(Point.

and adds them to the SelectionSet.COM (Component Object Model) SelectByPolygon method Selects objects within a polygon specified by the points. FilterData is an optional parameter for specifying filter data. FilterType is an optional parameter for specifying how to filter data selection. Syntax object.SelectByPolygon(Type. FilterType is an optional parameter for specifying how to filter data selection. Type is one of the following SelectionSetType constants corresponding to the various selection modes: vicSelectionSetAll = 11 vicSelectionSetCrossingCircle = 3 vicSelectionSetCrossingPolygon = 0 vicSelectionSetCrossingWindow = 6 vicSelectionSetFence = 12 vicSelectionSetInsideCircle = 5 vicSelectionSetInsidePolygon = 2 vicSelectionSetInsideWindow = 8 vicSelectionSetLast = 10 vicSelectionSetOutsideCircle = 4 vicSelectionSetOutsidePolygon = 1 vicSelectionSetOutsideWindow = 7 vicSelectionSetPrevious = 9 PolygonPoints is a collection of Bricscad Points defining the polygon. Syntax object. [FilterData]) Where: objewct is a SelectionSet object. SelectOnScreen method Selects objects as picked by the user on the screen. [FilterType]. FilterData is an optional parameter for specifying filter data. and adds them to the SelectionSet.SelectOnScreen([FilterType]. 271 . PolygonPoints. [FilterData]) Where: object is a SelectionSet object.

State) Where: object is a Viewport or PViewport object.. Examples. Bulge) Where: object is a polyline or lightweight polyline object. Syntax object. SetGridSpacing method example SetInvisibleEdge method Sets the visibility for a 3DFace edge at a given index. Syntax object..Developer Reference SetBulge method Sets the bulge value for a given segment of a polyline or lightweight polyline.. State is a Boolean variable specifying whether the visibility is on (True) or off (False). Bulge is a double-precision variable (or value) representing the bulge factor..SetBulge(Index. Examples. SetInvisibleEdge method example 272 . Yspacing) Where: object is a Viewport or PViewport object. Index is an Integer representing the index number of the face. Syntax object.SetGridSpacing(Xspacing. Index is a Long integer variable (or value) specifying the polyline segment. Xspacing and Yspacing are double-precision variables (or values) representing the spacing of grids along the x and y axes...Bricscad V10 .SetInvisibleEdge(Index. GetBulge method example SetGridSpacing method Sets or returns the grid spacing value for the viewport. Examples.

Value is a Variant holding the new value for the specified system variablere.SetVariable Name. Name is a string representing the name of the variable.SetSnapSpacing(Xspacing As Double. Syntax object.SetPattern(Type. Yspacing As Double) Where: object is a Viewport or PViewport object..PatternName) Where: object is the name of the object to which hatch will be applied. Examples. Value Where: Object Document. 273 .. Syntax object. Syntax object. SetSnapSpacing method example SetVariable method Sets the value of the specified system variable. Type is one of the following HatchTypes: acHatchPatternTypeCustomDefined = 2 acHatchPatternTypePreDefined = 1 acHatchPatternTypeUserDefined = 0 PatternName is a string identifying the pattern. Xspacing and Yspacing are double-precision variables (or values) representing the snap spacing along the x and y axes. SetSnapSpacing method Sets or returns the snap spacing value for the viewport.COM (Component Object Model) SetPattern method Sets the pattern name and type of the hatch..

and so on) as LISP.0. Syntax object. StartWidth. 1003 for a layer name. StartWidth and EndWidth are double-precision variables representing the starting width and ending width. respectively. you pass two empty arrays to GetXData. GetWidth method example SetXData method Sets the extended entity data (Xdata) associated with an entity.g. SetXData method example 274 . The first array tells you what type of data (e. You can then iterate through the arrays and read the data. Syntax object. View is a View object. "Hi there" or 3. DataArray) Examples.. string or 3D point) is in the corresponding location in the second array (e.. of the polyline. Index is a Long integer variable (or value) specifying the polyline segment.0). VBA sees XData as a pair of arrays. SetWidth method Sets the start and end width for a polyline or lightweight polyline. EndWidth) Where: object is a Polyline or Lightweight Polyline object.Bricscad V10 .g. Examples.GetWidth(Index...SetView View Where: Object is a ViewPort object. Syntax Sub SetXData(TypeArray.. GetXData populates these arrays with the entity's XData. VBA uses the same datatype codes (1000 for a string.. To get an entity's XData.Developer Reference SetView method Sets the view to a saved view in the Views collection.

Syntax object. Syntax Sub UndefineFunction(FunctionName) Where: FunctionName is a string variable representing the name of the macro. Examples. Unload method example 275 . NumberOfWIndows is one of the following AcViewportSplitType values: acViewport2Horizontal acViewport2Vertical acViewport3Left acViewport3Right acViewport3Horizontal acViewport3Vertical acViewport3Above acViewport3Below acViewport4 TransformBy method Applies a rigid motion transformation to an object. UndefineFunction method Removes a previously defined VBA macro from the Bricscad command list.TransformBy(Matrix) Where: object is a SelectionSet object. Syntax object..COM (Component Object Model) Split method Splits the viewport based on the split type specified. Matrix is a Matrix object.Unload() Where: object is a Block or Global object. Syntax object. Unload method Unloads the External Reference.Split(NumberOfWindows) Where: object is a Viewport or PViewport object..

.Developer Reference Update method Updates the display of the object. SelectionSet Where: FileName is a string variable representing the name of the file to be created. WBlock method Writes out the given selection set as a new drawing file. Syntax object. ZoomFactor) Where: object Application Center is a Variant (three-element array of doubles) representing the WCS coordinates.Bricscad V10 .ZoomAll() Where: object Application Examples.ZoomCenter(Center. Syntax object. Zoom methods examples 276 . ZoomAll method Displays the complete drawing in the current viewport. Zoom methods examples ZoomCenter method Displays the drawing at a given center point and specified zoom factor. SelectionSet is a selection set containing the blocks to be written... Syntax object.Update() Where: object is an entity or selection set.. Examples. Syntax object. ZoomFactor is a double-precision variable (or value) representing the magnification factor.WBlock FileName.

Syntax object.ZoomPickWindow () Where: object Application Examples. relative to the drawing limits) acZoomScaledRelative = 1 (relative to the current view) acZoomScaledRelativePSpace = 2 (relative to paper space units) Examples. ScaleType is one of the following constants that determines how the scale factor is applied: acZoomScaledAbsolute = 0 (scaled absolutely.. Syntax object. Zoom methods examples 277 . Syntax object..COM (Component Object Model) ZoomExtents method Displays the drawing extents.. Zoom methods examples ZoomPickWindow method Zooms into an area picked in a screen window... ScaleType) Where: object Application Scale is a double-precision variable or value representing the scale factor to use for zooming..ZoomScaled(Scale.ZoomExtents() Where: object Application Examples. Zoom methods examples ZoomScaled method Displays the drawing at a user specified zoom scale factor.

Developer Reference ZoomWindow method Zooms into an area bounded by a window. Examples. UpperRight) Where: object Application LowerLeft and UpperRight are Variant (three-element array of doubles) representing the WCS corners of the window to display.ZoomWindow(LowerLeft. Syntax object. Zoom methods examples 278 ..Bricscad V10 ..

COM (Component Object Model) Constants Overview of Constants Constants are values that do not change. Bricscad VBA includes a variety of predefined constants: AttachmentPoint AttributeMode Colors DrawingDirection DistancetoReal EntityType HatchStyle HorizontalAlignment LeaderType TextFlag VerticalAlignment ZoomScale AcActiveSpace acPaperSpace = 0 acModelSpace = 1 AcAttachmentPoint acAttachmentPointTopLeft = 1 acAttachmentPointTopCenter = 2 acAttachmentPointTopRight = 3 acAttachmentPointMiddleLeft = 4 acAttachmentPointMiddleCenter = 5 acAttachmentPointMiddleRight = 6 acAttachmentPointBottomLeft = 7 acAttachmentPointBottomCenter = 8 acAttachmentPointBottomRight = 9 AcAttributeMode acAttributeModeNormal = 0 acAttributeModeInvisible = 1 acAttributeModeConstant = 2 acAttributeModeVerify = 4 acAttributeModePreset = 8 279 .

Developer Reference AcColor acByBlock = 0 acRed = 1 acYellow = 2 acGreen = 3 acCyan = 4 acBlue = 5 acMagenta = 6 acWhite = 7 acByLayer = 256 AcDimFractionType acHorizontal = 0 acDiagonal = 1 acNotStacked = 2 AcDimHorizontalJustification acHorzCentered = 0 acFirstExtensionLine = 1 acSecondExtensionLine = 2 acOverFirstExtension = 3 acOverSecondExtension = 4 AcDimLUnits acDimLScientific = 1 acDimLDecimal = 2 acDimLEngineering = 3 acDimLArchitectural = 4 acDimLFractional = 5 acDimLWindowsDesktop = 6 AcDimPrecision acDimPrecisionZero = 0 acDimPrecisionOne = 1 acDimPrecisionTwo = 2 acDimPrecisionThree = 3 acDimPrecisionFour = 4 acDimPrecisionFive = 5 acDimPrecisionSix = 6 acDimPrecisionSeven = 7 acDimPrecisionEight = 8 AcDimTextMovement acDimLineWithText = 0 acMoveTextAddLeader = 1 acMoveTextNoLeader = 2 280 .Bricscad V10 .

COM (Component Object Model) AcDimToleranceJustify acTolBottom = 0 acTolMiddle = 1 acTolTop = 2 AcDimToleranceMethod acTolNone = 0 acTolSymmetrical = 1 acTolDeviation = 2 acTolLimits = 3 acTolBasic = 4 AcDimVerticalJustification acVertCentered = 0 acAbove = 1 acOutside = 2 acJIS = 3 AcDrawingDirection acLeftToRight = 1 acRightToLeft = 2 acTopToBottom = 3 acBottomToTop = 4 acByStyle = 5 AcEntityName ac3dFace = 1 ac3dPolyline = 2 ac3dSolid = 3 acArc = 4 acAttribute = 5 acAttributeReference = 6 acBlockReference = 7 acCircle = 8 acDimAligned = 9 acDimAngular = 10 acDimDiametric = 12 acDimOrdinate = 13 acDimRadial = 14 acDimRotated = 15 acEllipse = 16 acHatch = 17 acLeader = 18 acLine = 19 acMtext = 21 281 .

Bricscad V10 .Developer Reference acPoint = 22 acPolyline = 23 acPolylineLight = 24 acPolymesh = 25 acRaster = 26 acRay = 27 acRegion = 28 acShape = 29 acSolid = 30 acSpline = 31 acText = 32 acTolerance = 33 acTrace = 34 acPViewport = 35 acXline = 36 acGroup = 37 acMInsertBlock = 38 acPolyfaceMesh = 39 acMLine = 40 acDim3PointAngular = 41 acExternalReference = 42 acTable = 43 acDimArcLength = 44 acDimRadialLarge = 45 acDgnUnderlay = 47 acMLeader = 48 AcExtendOption acExtendNone = 0 acExtendThisEntity = 1 acExtendOtherEntity = 2 acExtendBoth = 3 AcHatchStyle acHatchStyleNormal = 0 acHatchStyleOuter = 1 acHatchStyleIgnore = 2 AcMenuGroupType acBaseMenuGroup = 0 acPartialMenuGroup = 1 AcMenuItemType acMenuItem = 0 acMenuSeparator = 1 acMenuSubMenu = 2 282 .

COM (Component Object Model) AcPatternType acHatchPatternTypeUserDefined = 0 acHatchPatternTypePreDefined = 1 acHatchPatternTypeCustomDefined = 2 AcSaveAsType acR09_dxf = -5 acR10_dxf = -4 acR12_dwg = -3 acUnknown = -1 acR12_dxf = 1 acR13_dwg = 4 acR13_dxf = 5 acR14_dwg = 8 acR14_dxf = 9 ac2000_dwg = 12 ac2000_dxf = 13 ac2000_Template = 14 ac2004_dwg = 24 ac2004_dxf = 25 ac2004_Template = 26 ac2007_dwg = 36 ac2007_dxf = 37 ac2007_Template = 38 acNative = 36 acR15_dwg = 12 acR15_dxf = 13 acR15_Template = 14 acR18_dwg = 24 acR18_dxf = 25 acR18_Template = 26 AcHorizontalAlignment acHorizontalAlignmentLeft = 0 acHorizontalAlignmentCenter = 1 acHorizontalAlignmentRight = 2 acHorizontalAlignmentAligned = 3 acHorizontalAlignmentMiddle = 4 acHorizontalAlignmentFit = 5 AcLineWeight acLnWtByLwDefault = -3 acLnWtByBlock = -2 acLnWtByLayer = -1 acLnWt000 = 0 acLnWt005 = 5 acLnWt009 = 9 283 .

Bricscad V10 .Developer Reference acLnWt013 = 13 acLnWt015 = 15 acLnWt018 = 18 acLnWt020 = 20 acLnWt025 = 25 acLnWt030 = 30 acLnWt035 = 35 acLnWt040 = 40 acLnWt050 = 50 acLnWt053 = 53 acLnWt060 = 60 acLnWt070 = 70 acLnWt080 = 80 acLnWt090 = 90 acLnWt100 = 100 acLnWt106 = 106 acLnWt120 = 120 acLnWt140 = 140 acLnWt158 = 158 acLnWt200 = 200 acLnWt211 = 211 acPlotPaperUnits acInches = 0 acMillimeters = 1 acPixels = 2 acPlotRotation ac0degrees = 0 ac90degrees = 1 ac180degrees = 2 ac270degrees = 3 acPlotScale acScaleToFit = 0 ac1_128in_1ft = 1 ac1_64in_1ft = 2 ac1_32in_1ft = 3 ac1_16in_1ft = 4 ac3_32in_1ft = 5 ac1_8in_1ft = 6 ac3_16in_1ft = 7 ac1_4in_1ft = 8 ac3_8in_1ft = 9 ac1_2in_1ft = 10 ac3_4in_1ft = 11 ac1in_1ft = 12 284 .

COM (Component Object Model) ac3in_1ft = 13 ac6in_1ft = 14 ac1ft_1ft = 15 ac1_1 = 16 ac1_2 = 17 ac1_4 = 18 ac1_8 = 19 ac1_10 = 20 ac1_16 = 21 ac1_20 = 22 ac1_30 = 23 ac1_40 = 24 ac1_50 = 25 ac1_100 = 26 ac2_1 = 27 ac4_1 = 28 ac8_1 = 29 ac10_1 = 30 ac100_1 = 31 AcPlotType acDisplay = 0 acExtents = 1 acLimits = 2 acView = 3 acWindow = 4 acLayout = 5 AcRegenType acActiveViewport = 0 acAllViewports = 1 AcLeaderType acLineNoArrow = 0 acSplineNoArrow = 1 acLineWithArrow = 2 acSplineWithArrow = 3 AcPlotOrientation acPlotOrientationPortrait = 0 acPlotOrientationLandscape = 1 AcPolymeshType acSimpleMesh = 0 acQuadSurfaceMesh = 5 acCubicSurfaceMesh = 6 acBezierSurfaceMesh = 8 285 .

Developer Reference AcPolylineType acSimplePoly = 0 acFitCurvePoly = 1 acQuadSplinePoly = 2 acCubicSplinePoly = 3 AcSelect acSelectionSetWindow = 0 acSelectionSetCrossing = 1 acSelectionSetFence = 2 acSelectionSetPrevious = 3 acSelectionSetLast = 4 acSelectionSetAll = 5 acSelectionSetWindowPolygon = 6 acSelectionSetCrossingPolygon = 7 AcTextGenerationFlag acTextFlagNormal =0 acTextFlagBackward = 2 acTextFlagUpsideDown = 4 AcTextFontStyle acFontRegular = 0 acFontItalic = 1 acFontBold = 2 acFontBoldItalic = 3 AcUnits acDefaultUnits = -1 acScientific = 1 acDecimal = 2 acEngineering = 3 acArchitectural = 4 acFractional = 5 AcVerticalAlignment acVerticalAlignmentBaseline = 0 acVerticalAlignmentBottom = 1 acVerticalAlignmentMiddle = 2 acVerticalAlignmentTop = 3 acViewportScale acVpScaleToFit = 0 acVpCustomScale = 1 acVp1_1 = 2 acVp1_2 = 3 acVp1_4 = 4 286 .Bricscad V10 .

COM (Component Object Model) acVp1_8 = 5 acVp1_10 = 6 acVp1_16 = 7 acVp1_20 = 8 acVp1_30 = 9 acVp1_40 = 10 acVp1_50 = 11 acVp1_100 = 12 acVp2_1 = 13 acVp4_1 = 14 acVp8_1 = 15 acVp10_1 = 16 acVp100_1 = 17 acVp1_128in_1ft = 18 acVp1_64in_1ft = 19 acVp1_32in_1ft = 20 acVp1_16in_1ft = 21 acVp3_32in_1ft = 22 acVp1_8in_1ft = 23 acVp3_16in_1ft = 24 acVp1_4in_1ft = 25 acVp3_8in_1ft = 26 acVp1_2in_1ft = 27 acVp3_4in_1ft = 28 acVp1in_1ft = 29 acVp1and1_2in_1ft = 30 acVp3in_1ft = 31 acVp6in_1ft = 32 acVp1ft_1ft = 33 AcViewportSplitType acViewport2Horizontal = 0 acViewport2Vertical = 1 acViewport3Left = 2 acViewport3Right = 3 acViewport3Horizontal = 4 acViewport3Vertical = 5 acViewport3Above = 6 acViewport3Below = 7 acViewport4 = 8 AcWindowState acNorm = 1 acMin = 2 acMax = 3 287 .

Bricscad V10 .Developer Reference AcZoomScaleType acZoomScaledAbsolute = 0 acZoomScaledRelative = 1 acZoomScaledRelativePSpace = 2 288 .

you only need to maintain one set of source code for your modules.. getCurrentPlotStyleName. Besides different header include paths and lib paths. . AcDbDatabaseReactor. this can be set up easily through multiple build configurations.c and *.BRX Bricscad Pro provides a C/C++ API. ) transactions: AcDbTransactionManager. AcDbEntity. such as acdbSetDbmod. 289 . reactors: AcApDocManagerReactor. The necessary *.. AcTransactionManager. AcCm. BRX stands for "Bricscad Runtime eXtension". AcGs. AcUt. the settings can be identical. ads_queueexpr. AcGe. AcAp. GetListOfPlotStyles. AcApDocManager. Please note that this list is not limitative.h. . ObjectARX. . called the "BRX API". and visa versa a module compiled with the BRX SDK can not load in AutoCAD. AcEdInputPointMonitor jigs: AcEdJig MFC based user interface extensions: AcUi and AdUi categories protocol extensions COM interfaces callable from C++. acedPostCommand.. Compiling BRX applications Your application needs to be compiled with Visual Studio 2005 (Service Pack 1 recommended). several "undocumented" but popular ARX functions. for commands registered through the AcadAppInfo interface. Code compatibility BRX is 100% code compatible with the standard C++ interface of AutoCAD.0 of the Microsoft CRT and MFC libraries. Note that binary compatibility is not available: a module compiled with ObjectARX can not load in Bricscad. acedEvaluateLisp. AcGi. . to serve multiple CAD platforms:   compile and link your code with ObjectARX to run on AutoCAD compile and link the same code with the BRX SDK to run on Bricscad. .. input point processing: AcEdInputPointManager. AcDb. like BRX. AcEditorReactor...tlb files are included in the BRX SDK. AcEd. ... Version BRX is code compatible with ObjectARX version 2007 (or higher). Ads. or any higher version that is compatible with version 8. As an application developer. load on demand. AcApDocumentIterator. Features A glimpse of the various items supported in BRX:             common basic functionality. *. is code compatible with AutoCAD. as a consequence all the interfaces support unicode. Multiple Document Interface: AcApDocument.... The COM API of Bricscad.. In a project. custom objects and entities (your objects derived from AcDbObject. in categories such as AcRx.

Search for the keyword "BRX" to find the related topics.Developer Reference Sample Amongst the sample applications installed with Bricscad. F. The BRX API has been developed by Bricsys.bricsys. and is exclusively available for Bricscad only. During registration.bricsys. including the correct flow of your error handling routines. Bricscad V7 or earlier versions do not support BRX. change log) The BRX SDK is not installed with Bricscad itself. you can find a BRX sample project that shows some features of the BRX API (custom entity. dockable dialog. You can get free access to the BRX SDK. Every function is checked for normal operation and error return values. Final notes    The BRX API is only supported on Bricscad Pro versions. On the Bricsys website (www. backward compatibility of your application across different Bricscad versions.. simply by registering yourself as an application developer on the Bricsys website (www. 290 . The higher the Bricscad version. documentation (reference guide. The sample contains different build configurations. support section. but is distributed through a separate download source. to back up all supported BRX functions.. check our knowledge base for frequently asked questions and answers. Quality Assurance Alongside with the development of the BRX SDK. and you will receive the necessary information to get started.com). . the more BRX functions are supported. and the identical behavior can be checked on both CAD platforms.Bricscad V10 . Bricsys has developed an extensive suite of automated tests. The code can be compiled with the BRX SDK and ObjectARX. BRX SDK The BRX SDK consists of:    a set of code compatible C++ headers the necessary lib files to link against. By this way we maximize:    the correct functioning across different Bricscad versions.).A. mark the check box for "ARX/BRX/DRX". targeting Bricscad and AutoCAD.com). not on Bricscad Classic versions. compatibility with the AutoCAD platform.Q. BRX is supported on Bricscad versions V8 or higher. porting manual.

291 . we hope to give you a clear view on this subject. This is logical. in particular the choice of API. However. . to read and write DWG files. The way certain basic operations are done. please read the following sections carefully.. will not be found in the DRX SDK. AcApDocManager.. DRX SDK: A free C++ SDK. that need to be caught by the client code. If you look at the help files or headers delivered with the DRX SDK. This documentation is intended to help you make the best decision for your application strategy. Since version V8. The full library is only available for ODA founding members.opendesign. However. consisting of the headers and libs of the DwgDirect library.com) DRX applications Since Bricscad V8 (or higher) is based on the DwgDirect libraries. there are some differences in the class hierarchy of objects. there are a number of fundamental differences that can be summarized as followed:      The DRX SDK enforces the use of smart pointers in client code. . the control flow of error handling will be different in ARX and DRX applications. such modules have the extension ".DRX Terminology DwgDirect: A library provided by the Open Design Aliance (www. As a consequence. methods and functions look very similar to the ones found in ObjectARX.. Important editor related ARX interfaces..opendesign. and provided by the Open Design Aliance. AcEdInputPointMonitor. fire database related reactors.. A major part of the error handling is based on exceptions thrown by the DwgDirect libraries. Those are installed with the Bricscad product. AcApDocument. Although minor. The DRX SDK contains only a subset of functionality that is available in ObjectARX. etc. such as AcEdJig. Bricscad is based on this library. opening entities. such as the Bricsys company. about how exactly DRX and DwgDirect relate to ObjectARX. The way of constructing and destructing objects is different from ARX. you will recognize a lot of things when you have some experience in ARX development. In this section. since the DwgDirect library can not be compared to a full CAD application. DRX and ARX compared: similarities and differences There is some confusion in the market today. if you would consider to work with the DRX SDK. AcUi and AdUi interfaces.drx". At first sight. Typically. such as retreiving the active database instance. DRX modules compiled with the DRX SDK can be loaded to run in Bricscad. the DRX classes.This SDK can be downloaded freely on the public section of the ODA website (www.. generate graphic display objects of DWG entities. is often different from ARX.com). Further on this is illustrated with a code sample. The DwgDirect runtime dlls are not included in this SDK.

you need to call the ptEnd(10. please compare following code samples.dbCmdCtx = OdDbCommandContext::cast(pCmdCtx). //5. >workingDatabase(). get model space BTR //difference: the AcDbBlockTable* pBlockTable = NULL. OutputDebugString(_T("\nDwgDirect exception")). OdDbObjectId modelSpaceId = pDbAcDb::kForRead). For the clarity of the sample. which can not be worked around. close all objects //6.0. //difference: you can not call the ptStart(0. AcGePoint3d lineId. message to command line //difference: requires a command context and OdEdUserIO instance.0. pBlockTable->close(). AcGePoint3d constructor of OdDbLine. create new line entity //4. pUserIO->putString(_T("\nCreating a new line entity. OdEdUserIO* pUserIO = pCmdCtx>userIO().0. //2. //6.) { //difference: exception based error handling. pLine). ID. returned. OdDbLinePtr odLine = OdDbLine::desc()->create(). append entity to model space pBlockTableRecord//difference: the object ID of the line is >appendAcDbEntity(lineId.0.")). AcDb::kForWrite). } smart pointers so they don't need to be closed explicitly } catch (. //difference: you can only set the start and end point of the line. objects.0).0. OdDbDatabase* pDb = dbCmdCtx->database(). 10..0. lineId = modelSpace->appendOdDbEntity(odLine.are opened by calling a method on the object >getAt(ACDB_MODEL_SPACE. ptEnd).0. all objects are >close(). there are differences in nearly each line of code.get()). modelSpaceId.safeOpenObject(OdDb::kForWrite). pBlockTable. OdDbCommandContextPtr AcDbDatabase* pDb = pServices.0. void createLine() { //1. //4. such as adding a line to a drawing. There are no argument constructors.0).. get active database //2. close all objects //difference: in DRX pBlockTableRecord->close(). OdDbBlockTableRecordPtr modelSpace = pBlockTableRecord. As a consequence. message to //difference: command function needs command command line context argument.0)). 0. will require two separate sets of source code ! 292 . The objective of the sample is simple: add a new line entity to the active drawing. { //1.0)). pLine. append entity to model space //5.0. error handling has been minimized. void acutPrintf(ACRX_T("\nCreating a new createLine(OdEdCommandContext* pCmdCtx) { try line entity. ID. get active database //difference: the AcDbHostApplicationServices* pServices active database is provided through the = acdbHostApplicationServices().there are no calls here.10.Developer Reference To illustrate this.. AcDbBlockTableRecord* >getModelSpaceId().. get model space BTR //3.0. odLine>setEndPoint(OdGePoint3d(10.0. } } Conclusion: even for a simple operation. How it's done in ARX: How it's done in DRX: Note: The differences with the corresponding ARX code are added as comments in the code. after it has been created. command context. 0.. AcDbLine* OdRxClass::create function to construct pLine = new AcDbLine(ptStart. not passed as an argument. odLine>setStartPoint(OdGePoint3d(0.")). //difference: entities pBlockTableRecord = NULL. create new line entity OdDbObjectId AcDbObjectId lineId. modelspace BTR is provided through its object pDb->getSymbolTable(pBlockTable..Bricscad V10 . 0. //3. maintaining an ARX and DRX version of your application.

please find some important information listed in the following paragraphs. "2. you can run your application on Bricscad. reduced memory usage full support for advanced geometric functions (OdGe category in DwgDirect) increased compatibility In all of this. Tip: the version number of the DwgDirect runtime dlls that are installed with Bricscad. entity selection. (www. DD_Db_2. We strongly recommend to use this API for C++ client applications.Drx The better alternative: BRX To overcome the differences explained above.06_8. Compatibility between Bricscad and the DRX SDK Bricsys is a founding member of the Open Design Alliance (ODA). In order to bring Bricscad to the level of high quality CAD platform it represents today. and advanced OdGe. it was not possible to keep the DwgDirect runtime libraries that are installed with Bricscad 100% binary compatible with the DRX SDK as provided by the ODA. By looking into the Bricscad install folder. OdGs. Manual A detailed manual and reference guide is included in the DRX SDK. in particular those categories required for basic functionality:     OdDb basic OdGe types (points. The recent release versions of Bricscad are based on DwgDirect 2. DD_Ge_2. It's important that you select the version that matches the version of the DwgDirect libaries installed with Bricscad.opendesign. for different purposes:     increased performance.. The advantages compared to DRX can be of major influence for reducing the time and resources spent to bring your application to the Bricscad platform:   no need to rewrite and convert existing ARX code to DRX code no need to maintain 2 source code sets of your application: by simply recompiling your existing code with the BRX SDK. vectors.dll. .06. This API is called "BRX". and therefore has access to all the source code of the DwgDirect libraries. can be seen in the names of those dlls. However. the Bricscad Runtime eXtension. you will find dll's such as DD_Root_2.com). Bricsys has developed another C++ API that is fully code compatible with ObjectARX.06_8.06" indicates the DwgDirect version. on different aspects such as graphic update. Different versions of the DRX SDK are presented there. suffix "_8" indicates that the dll's were built with VC8 (Visual Studio 2005).dll. undo mechanism. ..06_8. In this naming. matrices) DD root DD alloc Downloading the DRX SDK The DRX SDK can be downloaded freely at the public section of the ODA website. By maintaining one source code set that is ARX based. some parts of the DwgDirect libraries were rewritten or extended by Bricsys.. In case you do prefer to work with the DRX SDK. a major part of the DwgDirect libraries are kept binary compatible. please check the BRX section of this developer reference. The most affected categories are OdGi. For more information.. 293 . you can serve both CAD platforms AutoCAD and Bricscad.

od_ed_input. you can find some header files that contain useful extensions to the DRX interfaces. The symbol NO_STRICT should not be defined. OdApDocManagerReactor.h: plot related interfaces: OdPlPlotProgress. this instructs your module to be linked dynamically with the DwgDirect runtime dll's.Bricscad V10 . OdApDocument. OdPlPlotReactor DRX project configuration Some required Visual Studio project settings for DRX modules:    Project setting C/C++ -> Language -> "Treat wchar_t as Built-in Type" must be switched to "No".h : MDI interfaces OdApDocManager. OdPlPlotReactorMgr.Developer Reference Samples Some sample DRX modules are included in the DRX SDK. As explained above. Extensions useful for DRX and SDS applications In the API folder that is installed with Bricscad. OdApDocumentIterator. OdEdInputPointMonitor od_ed_jig. these are mainly extensions required to provide access to some important functions of the editor environment of the CAD platform:     od_doc_man.h: jig interface OdEdJig od_plot_man.h: input point processing interfaces: OdEdInputPointManager. 294 . The preprocessor symbol _TOOLKIT_IN_DLL_ must be defined. It changes your module's entry point signature (defines HMODULE to void*) and will cause a loading failure.

However. Starting with V8. include and link with the DRX SDK. SDS application are loaded in the main thread of Bricscad. There is a new entrypoint function. SDS is still supported. that is similar to the ADS API of AutoCAD. Most of the SDS functions have an equal similar global function in BRX. From V8 version on. OdEdCommandStackReactor. Instead. in the API sub folder. SDS reactor functions used to be registered with the sds_setcallbackfunc function. it will need to be migrated and recompiled for Bricscad V8. Simplified threading: In V7 and earlier. each SDS application used to be loaded in its own separate thread. we advise to use BRX above SDS for new developments. and can be downloaded freely from their website. 295 . This is the DwgDirect based SDK provided by the Open Design Aliance. At the same time these changes increased the compatibility with AutoCAD. OdDbDatabaseReactor. Deprecated Up to Bricscad V7.    Compiling SDS applications In order to compile your SDS application. These files are installed with Bricscad.SDS (deprecated) The SDS API is a C-style API.0 of the CRT and MFC libraries. you need to:   include sds. problems were often reported. this function is no longer supported. If you have an existing V7 based SDS application. Bricscad V8 has undergone a complete rewrite compared to Bricscad V7. which is fully code compatible with ADS and ObjectARX of AutoCAD. Note that there is no binary compatibility for compiled applications between Bricscad V7 and Bricscad V8 (or higher). you can use the reactors provided by the DRX SDK: OdEditorReactor.lib. where client SDS code was executed while it was expected to pause and wait for a response from the Bricscad application. SDS was the only C-style API available. As a consequence. for reasons of backward compatibility with existing SDS applications. so these threading problems can no longer occur. there is a new C/C++ BRX API. SDS dlls are compiled and loaded as DwgDirect based modules.. We advise to use Microsoft Visual Studio 2005 that is compatible with version 8. Since Bricscad V8.h and link with sds. Therefore. See the DRX section of this developer reference for more info. Breaking changes from Bricscad V7 to V8 (or higher)   All SDS functions have switched to unicode. Reactors: In V7 and earlier. Creating a workaround for such synchronization problems was often a cumbersome task. This implicates that SDS applications need to be compiled and loaded as DRX modules.. code compatible with AutoCAD's entry point. . some breaking changes were necessary to fit into the design of Bricscad V8. It is now based on the popular DwgDirect libraries provided by the Open Design Alliance. acrxEntryPoint.

Supported SDS functions return type HDC* int int HPALETTE HWND HWND HWND HWND CWinApp* CWnd* CView* CDocument* HINSTANCE IDispatch* int int int int int double int int int int int int int int struct sds_resbuf* int int int int struct sds_resbuf* function sds_getviewhdc(void). const wchar_t *szValue). int nUnitType. double *pdAngle). sds_angle(const sds_point ptStart. sds_angtos_absolute(double *szAngle). 296 . int nPrecision.. sds_getmainwnd(void). sds_arxloaded(void). sds_angtos(double dAngle. wchar_t *szAngle). sds_getacadvalue(int nColor). dAngle. sds_getviewhwnd(void). int nPrecision. wchar_t *szAngle). sds_getidispatch(BOOL bAddRef). sds_angtof_absolute(const wchar_t *szAngle. struct sds_resbuf *lineParam. wchar_t *szAngle). int nUnitType. sds_asetenv(const wchar_t *szSymbol. sds_getmainhwnd(void). This sample SDS application illustrates all the changes that have been made compared to V7. int nDimazin). wchar_t *szVariable). int width. int nUnitType. double *pdAngle). In particular. wchar_t sds_arxload(const wchar_t *szARXProgram). Please check this project and the included readme. BOOL bFill). int nUnitType.txt for a full list of changes. sds_getviewwnd(void).Developer Reference Sample project Amongst the sample applications installed with Bricscad. sds_getviewdoc(void). sds_asetcfg(const wchar_t *szSymbol. sds_drawLinePattern(HDC h_dc. sds_previewdwg(wchar_t *dwgfile. int nUnitType. int nPrecision. const wchar_t *szValue). double dAngle. sds_arxunload(const wchar_t *szARXProgram). sds_getpalette(void). sds_getrgbvalue(int nColor). sds_agetenv(const wchar_t *szSymbol. sds_getresourceinstance(void). int height). sds_angtos_end(double dAngle. sds_bmpout(const wchar_t* pFile. sds_angtos_dim(int ignoremode. int nUnitType.Bricscad V10 . sds_gettextcmdlinehwnd(void). . the project demonstrates the new solution for all kinds of reactors. sds_alert(const wchar_t *szAlertMsg). wchar_t *szVariable). you will find the "sdsMigrate" project. ds_angtof(const wchar_t *szAngle.).. wchar_t *szAngle. int nUnitType. sds_getwinapp(void). RECT rect. double dAngle. HWND hWnd). sds_angtos_convert(int ignoremode. sds_buildlist(int nRType. const sds_point ptEnd). sds_agetcfg(const wchar_t *szSymbol. int nPrecision. int nPrecision. sds_getdockcmdlinehwnd(void).

. sds_point ptDestPoint). wchar_t **pszEnglish). sds_entmakex(const struct sds_resbuf *prbEntList. sds_distof(const wchar_t *szDistance. const wchar_t *szAddThis. sds_dictnext(const sds_name nmDict. sds_name nmNewEnt). int swFirst). sds_dictadd(const sds_name nmDict. sds_name nmNextEnt). int (*fnDragEnts)(sds_point ptCursorLoc. sds_entnext(const sds_name nmKnownEnt. const wchar_t *szNewName). sds_fail(const wchar_t *szFailMsg). sds_enthandle(const sds_name nmEntity. sds_entgetx(const sds_name nmEntity. sds_entsel(const wchar_t *szSelectMsg. int nLength). wchar_t* handle). int nCursor. sds_getargs(void). sds_distance(const sds_point ptFrom. double struct sds_dobjll* sds_dispobjs(const sds_name nmEntity.int nDispMode).). sds_defun(const wchar_t *szFuncName. sds_entmake(const struct sds_resbuf *prbEntList). sds_getangle(const *pdRadians). const sds_name nmNonGraph).. const wchar_t *szCornerMsg. sds_dictrename(const sds_name nmDict. const wchar_t *szFindThis. sds_matrix mxTransform). const wchar_t *szDelThis). wchar_t *szVariable. sds_findfile(const wchar_t *szLookFor. sds_entget(const sds_name nmEntity). sds_cviewport(sds_name nmViewport). int nUnitType. int swFirst). sds_point ptStart. sds_entmod(const struct sds_resbuf *prbEntList). sds_dictdel(const sds_name nmDict. const wchar_t *szDistMsg. sds_entupd(const sds_name nmEntity). sds_free(void *pMemLoc). ds_entdel(const sds_name nmEntity). double *pdDistance). const wchar_t *szOldUnit. size_t sizeBytesEach). const wchar_t *szNewUnit. sds_freedispobjs(struct sds_dobjll *pDispObjs). const wchar_t *szDragMsg. sds_name nmEntity. sds_getcorner(const sds_point ptStart. sds_getcfg(const wchar_t *szSymbol. sds_getdist(const sds_point ptStart. int nFuncCode). const sds_point ptTo). const struct sds_resbuf *prbAppList)..void *pUserData). sds_cvunit(double dOldNum. sds_getcname(const wchar_t *szOtherLang. sds_entseqend(const sds_name nmEntity. const wchar_t *szAngleMsg. sds_dictsearch(const sds_name nmDict.SDS (deprecated) struct sds_blockTree* int void* int int int int int int int struct sds_resbuf* int struct sds_resbuf* double int int int struct sds_resbuf* struct sds_resbuf* int int int int int int int int int void int void void int struct sds_resbuf* int int int int sds_buildBlockTree(int type_mask). double *pdNewNum). sds_entlast(sds_name nmLastEnt). sds_name nmSeqendEntity). 297 . sds_point ptSelected). wchar_t *szPathFound). sds_cmd(const struct sds_resbuf *prbCmdList). sds_command(int nRType. double *pdDistance). sds_point ptOpposite). sds_calloc(size_t sizeHowMany. sds_draggen(const sds_name nmSelSet. const wchar_t *szOldName. sds_callinmainthread(int (*fnDragEnts)(void *).

wchar_t *szString. sds_grtext(int nWhere. int sds_grread(int bsAllowed. const sds_point ptTo. wchar_t *szString). struct sds_point sds_resbuf sds_isalnum(int nASCIIValue). const sds_point ptTo1. struct sds_resbuf *prbVarInfo). int swFinite. sds_getfiled(const wchar_t *szTitle. sds_initget(int bsAllowed. sds_isgraph(int nASCIIValue). sds_iscntrl(int nASCIIValue). sds_invoke(const **pprbReturn). sds_matrix mxDispTrans). double dStartAngle. int swHighlight). sds_getstringb(int swSpaces. sds_getinput(wchar_t *szEntry). sds_getstring(int swSpaces. double dEndAngle. sds_getfuncode(void). int bufsize). int *pnInteger). int bsOptions. sds_islower(int nASCIIValue). const sds_point ptTo2. sds_point ptPoint). sds_help(const wchar_t *szHelpFile. ds_handent(const wchar_t *szEntHandle. const wchar_t *dlgname. sds_isupper(int nASCIIValue). sds_grfill(const sds_point *pptPoints. const wchar_t *szTextMsg. int swHighlight). double sds_getpoint(const sds_point ptReference. double *pdReal). sds_getsym(const wchar_t *szSymbol. sds_getfilenavdialog(const wchar_t *szTitle. sds_layoutsearch(const wchar_t* szName. int nColor. sds_getvar(const wchar_t *szSysVar. const wchar_t *szExtension. wchar_t *szKWord).Bricscad V10 . sds_layoutmake(const wchar_t* szName. sds_getreal(const wchar_t *szRealMsg. sds_name nmLayout). int nNumPoints. sds_graphscr(void). sds_point ptStart. sds_inters(const sds_point ptFrom1. const wchar_t *szDefaultPath. sds_isxdigit(int nASCIIValue). sds_grvecs(const struct sds_resbuf *prbVectList. const wchar_t *szPointMsg. sds_isprint(int nASCIIValue). const wchar_t *szDefaultPath. int nColor.Developer Reference struct sds_resbuf* int int int int int int int int int int int int int int int int int int int int int int int int int int int int int int int int int int int int int int int sds_getdoclist(void). struct sds_resbuf *prbInputValue). const wchar_t *szOrientMsg. int nMapNumber). sds_getkword(const wchar_t *szKWordMsg. sds_isspace(int nASCIIValue). sds_point ptIntersection). sds_getint(const wchar_t *szIntMsg. struct sds_resbuf *prbFileName). int nColor. sds_grdraw(const swHighlight). const wchar_t *szContextID. const wchar_t *szStringMsg. sds_isdigit(int nASCIIValue). sds_grclear(void). int *pnInputType. 298 . sds_grarc(const sds_point ptCenter. int swHighlight). const sds_name nmSrcLayout). struct sds_resbuf **pprbSymbolInfo). sds_ispunct(int nASCIIValue). struct sds_resbuf **prbFileName). sds_name nmEntity). struct sds_resbuf *prbArguments. const ptFrom2. const wchar_t *szExtension. sds_getorient(const *pdRadians). sds_point ptFrom. double dRadius. int bsOptions. const wchar_t *szStringMsg. const wchar_t *szKeyWordList). sds_isalpha(int nASCIIValue).

wchar_t 299 . sds_regfunc(int (*nFuncName)(void). sds_putsym(const wchar_t *szSymbol. sds_retpoint(const sds_point ptReturn3D). sds_layoutsetcur(const sds_name nmLayout). sds_menugroup(const wchar_t *pMemuGroupName).. sds_matrix mxECStoWCS. sds_realloc(void *pOldMemLoc. sds_sendmessageex(const separated by \n wchar_t *szCommandMsg).double dNumberY. sds_regen(). sds_newrb(int nTypeOrDXF). sds_regapp(const wchar_t *szApplication). sds_rett(void). struct sds_resbuf **pprbNestBlkList). sds_progressstop(void). wchar_t allows multiline input sds_setfunhelp(wchar_t *szFunctionName. int nReturnType). sds_nentselp(const wchar_t *szNEntMsg. sds_retvoid(void). double angleRad). sds_relBlockTree(struct sds_blockTree *pTree). sds_nentsel(const wchar_t *szNEntMsg.int *pPixelY). sds_menucmd(const wchar_t *szPartToDisplay). sds_polar(const sds_point ptPolarCtr. size_t sizeBytes). sds_retname(const sds_name nmReturnName. sds_retreal(double dReturnReal). int swSaveAsR12). sds_point ptECStoWCS[4]. sds_osnap(const sds_point ptAperCtr. ds_printf(const wchar_t *formatString. int nUnitType. sds_retnil(void). *szHelpFile. struct sds_resbuf **pprbNestBlkList). sds_malloc(size_t sizeBytes). *szContextID. sds_printout(const TCHAR *szPrintThis). sds_progresspercent(int iPercentDone). const wchar_t *szSnapModes. wchar_t *szNumber). int nFuncCode). sds_point ptEntPoint. sds_name nmEntity. double dDistance.int *pPixelX. sds_relrb(struct sds_resbuf *prbReleaseThis). sds_point ptEntPoint. sds_retstr(const wchar_t *szReturnString). sds_rtos(double dNumber.SDS (deprecated) int int void* int int int int int int int struct sds_resbuf* int void int int int int int int int void* int int int int int int void int int int int int int int int int int int int int int int sds_layoutgetcur(sds_name nmLayout). int nMapNumber). sds_progressstart(void). sds_rp2pix(double dNumberX. sds_point ptPoint). int nHowToDraw). sds_regappx(const wchar_t *szApplication. sds_redraw(const sds_name nmEntity. double dAngle. sds_retint(int nReturnInt). sds_namedobjdict(sds_name nmDict). sds_point ptPoint). sds_nchords(double rad. sds_retlist(const struct sds_resbuf *prbReturnList).). sds_msize(void *pvBuffer). int nPrecision. . sds_prompt(const wchar_t *szPromptMsg).. struct sds_resbuf *prbSymbolInfo). sds_retval(const struct sds_resbuf *prbReturnValue). sds_sendmessage(const wchar_t *szCommandMsg). int swUserPick. sds_name nmEntity.

sds_textbox(const struct sds_resbuf *prbTextEnt. int nFuncCode). long *plMemAvail). const wchar_t *szFindThis. sds_matrix mxTransform). sds_undef(const wchar_t *szFuncName.Developer Reference int int int int int int int int int int int int int int int struct sds_resbuf* int struct sds_resbuf* int int int int int int int int int int int int int int int int int int int int int sds_setvar(const wchar_t *szSysVar. const sds_name nmSelSet). sds_name nmNewSet). struct sds_resbuf *prbGetOrSet. sds_ssnamexex(struct sds_resbuf **pprbEntName. sds_point ptCorner. struct sds_resbuf **pprbPickfirst). sds_vports(struct sds_resbuf **prbViewSpecs).struct sds_resbuf *param). unsigned int flags=0). const sds_name nmSelSet. sds_ssmemb(const sds_name nmEntity. long lSetIndex. sds_xdroom(const sds_name nmEntity. sds_tablet (const **pprbCalibration).const sds_point ptCorner1. sds_tblobjname(const wchar_t *szTable. sds_xstrcase(wchar_t *szString). const wchar_t *szToThis). sds_wcmatchex(const wchar_t *szCompareThis.Bricscad V10 . void sds_ssgetfirst(struct sds_resbuf **unused. const *pSecondPoint. sds_name nmEntity). const long iIndex).const sds_point ptCorner2). int swFirst). ds_tolower(int nASCIIValue). const long iIndex. sds_usrbrk(void). const sds_name nmSelSet. sds_ucs2rp(sds_point ptSour3D. const struct sds_resbuf *prbCoordTo. int swAllowPipe). sds_trans(const sds_point ptVectOrPtFrom. BOOL bIgnoreCase). sds_toupper(int nASCIIValue).//arguments changed according to latest acedSSGetFirst sds_sslength(const sds_name nmSelSet. sds_xdsize(const struct sds_resbuf *prbEntData. struct sds_resbuf sds_tblnext(const wchar_t *szTable. sds_tblsearch(const wchar_t *szTable. long *plNumberOfEnts). sds_ssfree(sds_name nmSetToFree). sds_xformss(const sds_name nmSetName. const wchar_t *szEntInTable. sds_vbaload(const wchar_t *szDvbFile). const void *pFirstPoint. sds_wcmatch(const wchar_t *szCompareThis. sds_ssnamex(struct sds_resbuf **pprbEntName. int swNextItem). //arguments changed according to latest acedSSSetFirst sds_swapscreen(void). const struct sds_resbuf *prbVarInfo). sds_ssdel(const sds_name nmEntToDel. const sds_name nmSelSet). const wchar_t *szToThis. sds_point ptOpposite). sds_name nmNewSet). sds_update(int nWhichVPort. sds_snvalid(const wchar_t *szTableName. sds_ssadd(const sds_name nmEntToAdd. sds_vbarun(const wchar_t *szMacro). sds_textpage(void).sds_point ptDest3D). const sds_name unused). sds_ssget(const wchar_t *szSelMethod. sds_name nmEntName). sds_sssetfirst(const sds_name pickfirstset. sds_ssname(const sds_name nmSelSet. sds_textscr(void). sds_point ptVectOrPtTo).// Not documented 300 . const struct sds_resbuf *prbCoordFrom. const struct sds_resbuf *prbFilter. sds_textout (const TCHAR *szPrintThis). const sds_name nmSelSet. long *plMemUsed). sds_xref(wchar_t action. int swVectOrDisp.

LPTSTR szAttribInfo. int nWhichItem). long* pLicenseID). dlg_get_tile(sds_hdlg lInfoMaxLength). sds_point high). hDialog. int *nMessage). dlg_start_dialog(sds_hdlg hDialog. dlg_start_image(sds_hdlg hDialog. sds_point low.long dlg_action_tile(sds_hdlg hDialog. int nColor). dlg_new_positioned_dialog(LPTSTR szDialogName. sds_setdbmod(int iBitMask). sds_getlicenseinfo(wchar_t* szUserName.LPTSTR szControlKey.void *pfnControlFunc). int nXPos. dlg_term_dialog(void). hDialog. sds_initdialog(BOOL bUseDialog). int nWidthLess1. dlg_slide_image(int nULCornerX. sds_getcolordialog(int defcol. int *nYPos). dlg_unload_dialog(int nDialogFileID). dlg_set_tile(sds_hdlg hDialog. dlg_get_attr(sds_hdlg hDialog. wchar_t **pszDest). int nYVectEnd. LPTSTR szControlKey. int nXVectEnd. Supported SDS .DCL functions return type int int int int int int int int int int int int int int int int int int int int int int int int function dlg_new_dialog(LPTSTR szDialogName. int nHeightLess1. void nDialogFileID. dlg_fill_image(int nULCornerX. int lInfoMaxLength). LPTSTR szAttribName. LPTSTR szControlKey. int nULCornerY.int *pfnDef_Callback. int nStringLength. void dlg_dimensions_tile(sds_hdlg hDialog. int mode). LPTSTR szControlKey. int *pfnDef_Callback. short *nHeightLess1). LPTSTR szControlKey. sds_exit(int swAbnormalExit). long lInfoMaxLength). LPTSTR szSnapshotName). sds_getlocalisedcolorstring(int iColorIdx). sds_getappname(void). LPTSTR szControlInfo).LPTSTR szControlKey. dlg_get_attr_string(sds_htile hControl.SDS (deprecated) wchar_t* int const wchar_t* int int int BOOL int int wchar_t* void void sds_xstrsave(wchar_t *szSource. dlg_load_dialog(LPTSTR szFileToLoad. int nHeightLess1. int nChangeAddNew. int nYPos. LPTSTR szListString. LPTSTR szControlKey. char* szLicenseKey.LPTSTR szControlInfo. dlg_mode_tile(sds_hdlg hDialog. sds_hdlg *hDialog). sds_abort(const wchar_t *szAbortMsg). 301 . int *retcol. dlg_get_list_string(sds_hdlg hDialog. sds_popdbmod(). sds_pushdbmod().long nMessage).int nDialogFileID. hDialog.// Not documented sds_bbox(const sds_name entity. int nULCornerY. dlg_client_data_tile(sds_hdlg *pApplicationData).void dlg_done_positioned_dialog(sds_hdlg hDialog. LPTSTR szControlKey. LPTSTR szAttribName. LPTSTR szAttribInfo. dlg_start_list(sds_hdlg nWhichItem). int nColor). dlg_add_list(LPTSTR szAddToList). LPTSTR szControlKey). dlg_done_dialog(sds_hdlg hDialog.LPTSTR szControlKey. dlg_end_list(void). dlg_vector_image(int nXVectStart. int *nXPos. int nTileState). short *nWidthLess1. int nYVectStart. int nMessage. int nWidthLess1.int *nDialogFileID).sds_hdlg *hDialog).

sds_init(int nARGC. wchar_t *nARGV[]).Bricscad V10 . const TCHAR *szText).void *arg2. Following SDS functions are no longer supported since Bricscad V8: return type void int int int int int function sds_abortintellicad(void). dlg_set_window_text(sds_hdlg hDialog. LPCTSTR pathForErrorLog= _T(""). sds_setcallbackfunc(int (*cbfnptr)(int flag. dlg_set_audit_level(int auditLevel).dcl").void *arg3)). dlg_set_default_callback(void* pCallbackFunction ). sds_xload(const wchar_t *szApplication).Developer Reference int int int int int dlg_end_image(void). 302 . struct sds_resbuf* sds_loaded(void). sds_link(int nRSMsg). sds_xunload(const wchar_t *szApplication).void *arg1. BOOL generateErrorLog = false. dlg_init_dialog(LPCTSTR pathOfBaseDCL = _T("base. void* pCallbackFunction=0).

................................ 249 AngleFromAxis....................................................................................... 251 AttachExternalReference method .......................................................................................................................................................................................................................................................................................... 246 AddRay method .................. 134 Area property .................................. 237 AddBox method ........................................ 238 AddCylinder method ................................................................ 115 programming overview................. 240 AddDimRadial method................... 250 Application property ............................... 244 AddPfaceMesh method .............. 267 Add method ........... 203 children tiles....................................................................... 252 Block object ........... 241 AddFitPoint method ... 253 Close method ........................................ 235 Add3dFace method.............................. 235 active tiles ........ 206 Creating Code........ 130 Creating Splines................ 243 AddLeader method ............. 243 AddLightWeightPolyline method.................. 236 AddArc method ........ 238 AddCone method ............................................................... 249 AngleToReal method............ 202 ArrayPolar method .................................................... 250 AppendVertex method ............................... 239 AddDimDiametric method.............................. 115 Coordinates property .................................................................... 115 programming overview .. 245 AddPointEntity method.................................. 115 Circle object . 279 Attribute Definition object .......... 240 AddDimOrdinate method ............. 130 Creating Points ........................ 248 AddTrace method......... 249 AddWedge method ............. 242 AddInfiniteLine method .......... 253 Closed property ........................ 237 AddCircle method............ 236 AddAttributeDef method.... 121 Creating Paragraph Text ............ 236 Add3dPoly method .......................................... 245 AddPViewport method.................................... 280 comments (DCL).... 239 AddDimAngular method .......................................................................................................................................................... 247 AddText method ...................... 129 Creating Single-Line Text .......... 242 AddImage method.... 250 AngleToString method ....... 136 AttributeMode................................. 135 Attribute object...................................... 238 AddDim3PointAngular method..................... 246 AddSphere method............ 138 Blocks collection object .......... 203 Center property .............................................................................................. 248 AddTorus method............ 241 AddEllipse method. 115 Color property ................................. 253 Count property ....................................... 235 Add3DMesh method ........ 130 AddItems method ............................................ 115 colon prefix ......................................................................................... 244 AddLine method........... 252 AttachmentPoint ..... 240 AddDimRotated method ............................................................................ 205 Copy method................................. 247 AddSpline method . 115 ActiveDocument property .. 251 ArrayRectangular method................... 244 AddMtext method..... 239 AddDimAligned method ........ 248 AddVertex method .......................... 139 Clear method .......................... 138 C Caption property ................................... 246 AddSolid method................................................... 245 AddPolyline method ............................ 204 cluster tiles .............. 129 303 .......................................Index A Activate method........................................ 247 AddTolerance method .... 202 Arc object ...... 243 Adding Controls to a UserForm .................................................................. 137 BlockInsert object .............................. 241 AddHatch method .................. 204 Colors ................................................................................................. 279 B Bind method.... 121 Adding Hatching........................

... 115 cluster tiles.......... 259 GetUCSMatrix method ........................ 258 GetInvisibleEdge method................. 220 EntityType . 255 DistanceToReal .................................................................... 167 Leader object ......................... 167 Layouts collection object ............................................... 286 Document object........................ 256 GetBulge method ........ 115 InfiniteLineobject ............................ 149 DimOrdinate object .................... 254 Detach method .... 168 LeaderType ..... 257 GetGridSpacing method ............................ 148 Dimension Styles collection object .................................................. 281 Erase method ..........................Developer Reference Explode method ......................... 120 IntersectWith ................................................................ 254 dialog boxes ........ 260 GetWidth method . 215 Layers collection object .................................... 115 DCL (Dialog Control Language).....................................Bricscad V10 ............................................................................... 115 Dictionaries collection object .............................. 160 F file formats (DCL) ............................................................. 281 E Ellipse object ........... 208 Entity object........................ 115 D DCL programming 304 ...................... 162 Dim3PointAngular object ......................... 144 DimDiametric object .................. 256 GetAttributes method ................. 163 HatchStyle ............................. 259 GetSnapSpacing method ...................................................................... 263 Inserting Modules .... 263 Item property ............... 285 attributes ................................................................. 257 GetCorner method............................................................................................................. 115 programming overview............... 208 EndPoint property ........... 149 DimensionStyle object .................... 255 Export method...... 262 include directive (DCL).............................................................................................................. 129 Drawing Circles.............................. 255 error handler tiles ... 129 DrawingDirection ................... 215 L Layer object .............................. 210 HandleToObject method ............. 162 H Handle property ................................................... 282 Height property .................................................................................. 262 Horizontal Alignment ... 115 error handling DCL programming ... 166 Layer property........................ 154 Display method.............................................. 157 Documents property ............................ 115 decorator tiles ... 254 Delete method ..... 258 GetInterfaceObject method ................ 161 Groups collection object ......... 140 Dictionary object. 260 Group object .... 129 Drawing Lines.............. 254 DeleteFitPoint method......... 159 EntityName property ......................... 152 DimRotated object ............................................................................................. 262 Hatch object......... 158 EndAngle property................................................................................ 259 GetVariable method.............. 142 DimAngular object................................................ 209 G GetAngle method ......................... 208 Drawing Arcs ............................................... 208 Documents collection object .................................................................................. 115 programming overview................................... 129 Drawing Polylines .............. 115 programming overview.................. 115 DefineFunction method ................................. 257 GetControlPoint method ................................ 115 FullName property.................... 146 Dimension object ..... 140 DimAligned object ................................ 283 I Import method .. 255 ExternalReference object. 166 Layout object ................................................................................................... 122 Inserting UserForms ................... 260 GetXData method ........................................... 211 Highlight method .................................................................................................................................................. 165 InsertBlock method .............. 150 DimRadial object .............................................. 256 GetBoundingBox method.............................. 156 Document property ...........

................... 115 Tolerance object ........................................................................................................................ 132 The object model ........ 122 Mirror method ................. 273 SetVariable method ................... 115 programming overview .................................................................................................. 267 restricted tiles . 264 Mirror3D method................................................................................................. 216 Linetypes collection object ................................................................... 215 Line object ............................ 268 Running a VBA Program ................................................................................................................. 189 Solid3D object ....... 267 Region object ............................................. 266 PViewport object . 190 SolidCreator object....... 272 SetPattern method ............................................................................. 268 Rotate3D method...... 193 TextStyles collection object ....... 222 PlotConfiguration object .................................. 269 SaveAs method........................ 169 Linetype property...................... 186 Reload method ................................................ 170 M Managing a VBA Project .............. 115 TextFlag ......... 271 semicolon terminator .................... 194 305 ............ 115 SetBulge method .............................................................. 178 PolygonMesh object ................... 269 S Save method ...................................... 219 O Offset method .......................... 180 Polyline3D object ..................... 227 Starting VBA ................................ 265 PurgeAll method .............. 222 PointEntity object ........................... 269 Saved property ..... 119 P PaperSpace object........ 222 Path property ................................................ 120 StartPoint property.................................. 223 PrintPreview ................................................................................... 225 ScaleEntity method .... 192 text tiles ................ 271 SelectionSet object..... 115 Rotate method............. 128 Thickness property ....... 274 Shape object .............................................................................. 188 Solid object ............................................... 272 SetInvisibleEdge method.......... 265 Origin property ................. 176 PlotManager property ............. 185 ReadOnly property ...................... 273 SetView method.................................................................................................... 115 programming overview ....... 267 RemoveItems method............................ 169 Linetype object ................ 184 R Radius property ............................................................... 176 PlotConfigurations collection object ..... 193 The Application object.................................................... 227 T Text object................. 175 PaperSpace property ............................................................. 170 LinetypeScale property ...... 221 Overview ............................... 275 StartAngle property .......... 115 restricted tiles........ 173 Move method ............................................... 274 SetXData method.......................................................... 273 SetSnapSpacing method .... 216 LWPolyline object .................................................. 264 ModelSpace object ............................ 279 Overview of Automation .................................. 269 Select method .................... 268 RunCommand method ................................ 264 MText object ....................................... 177 PolyfaceMesh object ........... 190 Spline object ........................................................................................... 122 RunScript method ......... 265 Open method ....... 174 N Name property .... 224 Regen method ....................................... 270 SelectAtPoint method .......................................................... 274 SetWidth method ... 272 SetGridSpacing method ...............................................................................Managing Drawings Length property .................................................................. 286 TextStyle object.......... 270 SelectByPolygon method ...................... 229 tiles .................................................................. 187 SelectionSets object .......... 181 Preferences property .................................. 179 Polyline object .......................................................................... 224 Ray object.. 191 Split method ........................ 187 SelectOnScreen method ..............

........................ 198 VisibilityEdgeX property ................ 277 ZoomWindow method ..........................................Bricscad V10 ........................................... 119 Using Viewports ......................................... 119 Using Named Views .............................. 200 Working with Text Styles...................... 196 Using ActiveX Automation.......... 199 Viewports collection object ........... 276 Width property ............................ 231 VerticalAlignment ......... 196 UserCoordSystems collection object ...... 276 ZoomExtents method ......... 277 ZoomPickWindow method................. 199 Views collection object ................................ 233 Window object ...... 197 V VBE property ........................... 276 UserCoordSystem object .... 195 TransformBy ...... 275 U UndefineFunction method ...................................................................................................... 233 W WBlock method. 130 X XRecord object ............................................. 286 View object ........................... 232 Visible property ........................................ 275 Unload method ..................... 277 ZoomScale ...... 276 ZoomCenter method............................................. 275 Update method ... 200 Windows collection object.................................................... 278 306 ... 131 Utility object... 131 Using the Object Model ..................... 233 Trace object .......... 231 Version property ...........................................................Developer Reference Top property .................................................................... 198 Viewport object..................................................................................................... 288 ZoomScaled method.................................... 201 Z ZoomAll method ...........................................................

Sign up to vote on this title
UsefulNot useful