ObjectSortBySnap Property (ActiveX)

Toggles sorting of drawing objects by object snap.

Supported platforms: Windows only

Signature

VBA:

object.ObjectSortBySnap
object

Type: DatabasePreferences

The object this property applies to.

Property Value

Read-only: No

Type: Boolean

Remarks

The initial value of this property is False.

AutoCAD initially enables sorting for plotting and PostScript output only. Setting additional sorting options can result in slower regeneration and redrawing times.

Note: The value of this property is stored in the SORTENTS system variable.

Examples

VBA:

Sub Example_ObjectSortBySnap()
    ' This example reads and modifies the preference value that controls
    ' the sorting of drawing objects by object snap.
    ' When finished, this example resets the preference value back to
    ' its original value.
    
    Dim ACADPref As AcadDatabasePreferences
    Dim originalValue As Variant, newValue As Variant
    
    ' Get the user preferences object
    Set ACADPref = ThisDrawing.preferences
    
    ' Read and display the original value
    originalValue = ACADPref.ObjectSortBySnap
    MsgBox "The ObjectSortBySnap preference is set to: " & originalValue

    ' Modify the ObjectSortBySnap preference by toggling the value
    ACADPref.ObjectSortBySnap = Not (ACADPref.ObjectSortBySnap)
    newValue = ACADPref.ObjectSortBySnap
    MsgBox "The ObjectSortBySnap preference has been set to: " & newValue

    ' Reset the preference back to its original value
    '
    ' * Note: Comment out this last section to leave the change to
    '         this preference in effect
    ACADPref.ObjectSortBySnap = originalValue
    MsgBox "The ObjectSortBySnap preference was reset back to: " & originalValue
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_ObjectSortBySnap()
    ;; This example reads and modifies the preference value that controls
    ;; the sorting of drawing objects by object snap.
    ;; When finished, this example resets the preference value back to
    ;; its original value.
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))  
    (setq preferences (vla-get-Preferences doc))
    
    ;; Read and display the original value
    (setq originalValue (vla-get-ObjectSortBySnap preferences))
    (alert (strcat "The ObjectSortBySnap preference is set to: " (if (= originalValue :vlax-true) "True"  "False")))

    ;; Modify the ObjectSortBySnap preference by toggling the value
    (vla-put-ObjectSortBySnap preferences (if (= originalValue :vlax-true) :vlax-false :vlax-true))
    (setq newValue (vla-get-ObjectSortBySnap preferences))
    (alert (strcat "The ObjectSortBySnap preference has been set to: " (if (= newValue :vlax-true) "True"  "False")))

    ;; Reset the preference back to its original value
    ;;
    ;; * Note: Comment out this last section to leave the change to
    ;;         this preference in effect
    (vla-put-ObjectSortBySnap preferences originalValue)
    (alert (strcat "The ObjectSortBySnap preference was reset back to: " (if (= originalValue :vlax-true) "True"  "False")))
)