Viewer
    Preparing search index...

    Interface IDrawingParameterSettings

    General properties of a drawing tools parameter.

    interface IDrawingParameterSettings {
        behavior?: {
            displayUnit?: string;
            enableDeletion?: boolean;
            enableInsertion?: boolean;
            enableSelection?: boolean;
            enableTranslation?: boolean;
        };
        controls?: IControlSettings[];
        general?: {
            activeMode?: "default"
            | "activeOnStart";
            options?: {
                showDistanceLabels?: boolean;
                showPointerPosition?: boolean;
                showPointLabels?: boolean;
                snapToEdges?: boolean;
                snapToFaces?: boolean;
                snapToVertices?: boolean;
            };
            prompt?: {
                activeText?: string;
                activeTitle?: string;
                inactiveTitle?: string;
            };
        };
        geometry?: {
            autoClose: boolean;
            close: boolean;
            mode: "points"
            | "lines";
            constraints?: {
                position?: {
                    x?: [number, number];
                    y?: [number, number];
                    z?: [number, number];
                };
                size?: {
                    x?: [number, number];
                    y?: [number, number];
                    z?: [number, number];
                };
            };
            disabledPoints?: number[];
            maxPoints?: number;
            minPoints?: number;
            weightedAdjacency?: { to: number; weights: [number, number, number] }[][];
        };
        keyBindings?: {
            cancel?: string
            | string[];
            confirm?: string | string[];
            delete?: string | string[];
            insert?: string | string[];
            redo?: string | string[];
            undo?: string | string[];
        };
        restrictions?: RestrictionDefinition[];
        visualization?: Partial<IVisualizationSettings>;
    }
    Index

    Properties

    behavior?: {
        displayUnit?: string;
        enableDeletion?: boolean;
        enableInsertion?: boolean;
        enableSelection?: boolean;
        enableTranslation?: boolean;
    }

    Type Declaration

    • OptionaldisplayUnit?: string

      The unit that will be displayed in the distance and point labels. For some units, special formatting is applied ("mile", "feet", "inches", "kilometer", "meter", "centimeter", "millimeter"), for other units, the unit is simply appended to the value in the end.

      ''
      
    • OptionalenableDeletion?: boolean

      If points can be deleted in general. If this setting is set to false, the user cannot delete points by using the delete key.

      true
      
    • OptionalenableInsertion?: boolean

      If points can be added in general. If this setting is set to false, the user cannot add new points by clicking or using the insert key.

      true
      
    • OptionalenableSelection?: boolean

      If points can be selected in general. If this setting is set to false, the user cannot select points by clicking or using the select key.

      true
      
    • OptionalenableTranslation?: boolean

      If points can be translated by dragging them. If this setting is set to false, the user cannot move existing points by dragging them.

      The pointer is also not changed to a move pointer when hovering over points, since they cannot be moved.

      In this mode, the drawing tools are used for display purposes.

      true
      
    controls?: IControlSettings[]

    The controls of the drawing tool.

    Here you can define the controls that are used when interacting with the drawing tool. Controls are used to manipulate the points of the drawing tool in specific ways, such as moving a point along an edge or within a plane defined by other points.

    general?: {
        activeMode?: "default" | "activeOnStart";
        options?: {
            showDistanceLabels?: boolean;
            showPointerPosition?: boolean;
            showPointLabels?: boolean;
            snapToEdges?: boolean;
            snapToFaces?: boolean;
            snapToVertices?: boolean;
        };
        prompt?: {
            activeText?: string;
            activeTitle?: string;
            inactiveTitle?: string;
        };
    }

    Type Declaration

    • OptionalactiveMode?: "default" | "activeOnStart"

      The mode to determine when the parameter is active. (default: 'default')

    • Optionaloptions?: {
          showDistanceLabels?: boolean;
          showPointerPosition?: boolean;
          showPointLabels?: boolean;
          snapToEdges?: boolean;
          snapToFaces?: boolean;
          snapToVertices?: boolean;
      }
      • OptionalshowDistanceLabels?: boolean

        If true, the distance labels are shown. (default: true)

      • OptionalshowPointerPosition?: boolean

        If true, the pointer position is shown. (default: true)

      • OptionalshowPointLabels?: boolean

        If true, the point labels are shown. (default: false)

      • OptionalsnapToEdges?: boolean

        If true, the snapping to edges is enabled, if there is a geometry restriction. (default: true)

      • OptionalsnapToFaces?: boolean

        If true, the snapping to faces is enabled, if there is a geometry restriction. (default: true)

      • OptionalsnapToVertices?: boolean

        If true, the snapping to vertices is enabled, if there is a geometry restriction. (default: true)

    • Optionalprompt?: { activeText?: string; activeTitle?: string; inactiveTitle?: string }

      A prompt that can be defined which is displayed instead of the default prompt.

      • OptionalactiveText?: string

        The text when the parameter is inactive.

      • OptionalactiveTitle?: string

        The title when the parameter is active.

      • OptionalinactiveTitle?: string

        The title when the parameter is inactive.

    geometry?: {
        autoClose: boolean;
        close: boolean;
        mode: "points" | "lines";
        constraints?: {
            position?: {
                x?: [number, number];
                y?: [number, number];
                z?: [number, number];
            };
            size?: {
                x?: [number, number];
                y?: [number, number];
                z?: [number, number];
            };
        };
        disabledPoints?: number[];
        maxPoints?: number;
        minPoints?: number;
        weightedAdjacency?: { to: number; weights: [number, number, number] }[][];
    }

    Type Declaration

    • autoClose: boolean

      If the mode is set to 'lines', if the line is automatically closed. If the mode is set to 'points', this setting is ignored.

      The first and last point are always connected if the line is automatically closed.

      true
      
    • close: boolean

      If the mode is set to 'lines', if it is a closed line or not. If the mode is set to 'points', this setting is ignored.

      A line can be closed by connecting the last point with the first point.

      true
      
    • mode: "points" | "lines"

      The mode of the geometry.

      If the mode is set to 'lines', the points are connected in the order they are defined. If the mode is set to 'points', the points are not connected.

      'lines'
      
    • Optionalconstraints?: {
          position?: {
              x?: [number, number];
              y?: [number, number];
              z?: [number, number];
          };
          size?: { x?: [number, number]; y?: [number, number]; z?: [number, number] };
      }

      Constraints on the geometry. This can be used to restrict the movement of points to a specific area. The constraints are separated into position and size constraints, which can be defined per axis. Each constraint is defined as a tuple of two numbers, where the first number is the minimum value and the second number is the maximum value. If a number is number is not defined, there is no constraint on that axis.

      For the size constraints, the constraint is applied to the size of the geometry, which is defined as the distance between the furthest points in each axis.

    • OptionaldisabledPoints?: number[]

      The indices of points that are disabled. Disabled points cannot be moved, selected or deleted, but they can be inserted next to. This is useful for points that should be fixed in place, such as the endpoints of a line. The pointer is also not changed to a move pointer when hovering over disabled points, since they cannot be moved.

    • OptionalmaxPoints?: number

      The maximum amount of points, if undefined, the geometry is not restricted. This value is checked whenever the user tries to update or finish the drawing tool.

      undefined
      
    • OptionalminPoints?: number

      The minimum amount of points, if undefined, the geometry is not restricted. This value is checked whenever the user tries to update or finish the drawing tool.

      undefined
      
    • OptionalweightedAdjacency?: { to: number; weights: [number, number, number] }[][]

      Per-point adjacency graph. When a real point is dragged, its corrected delta is propagated to each listed target via component-wise weight multiplication. Entries with all-zero weights are no-ops and can be omitted. Processing order follows the array declaration order.

    keyBindings?: {
        cancel?: string | string[];
        confirm?: string | string[];
        delete?: string | string[];
        insert?: string | string[];
        redo?: string | string[];
        undo?: string | string[];
    }

    The key binding settings of the drawing tool.

    Here you can define which keys are used for the different actions of the drawing tool.

    Type Declaration

    • Optionalcancel?: string | string[]

      The key that is used to cancel drawing.

      'Escape'
      
    • Optionalconfirm?: string | string[]

      The key that is used to confirm actions.

      'Enter'
      
    • Optionaldelete?: string | string[]

      The key that is used to delete a point.

      ['Delete','-']
      
    • Optionalinsert?: string | string[]

      The key that is used to insert a point.

      ['Insert','+']
      
    • Optionalredo?: string | string[]

      The keys that are used to redo the last action.

      'Control+Y'
      
    • Optionalundo?: string | string[]

      The keys that are used to undo the last action.

      'Control+Z'
      
    restrictions?: RestrictionDefinition[]
    visualization?: Partial<IVisualizationSettings>